| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attached is a patch for this problem.
The root cause was that S_scan_const() was not recoding to utf8 under
some circumstances when it should be.
I also changed it so that in all places, the flag that indicates the
output is in utf8 is changed from false to true if and only if the
destination is recoded to utf8. One place was skipping this, and then
setting it unconditionally later on.
In one place in the routine, the routine had code to do the recoding
itself. In the other places, it called sv_utf8_upgrade(). I changed it
to call the subroutine in all cases.
I fixed a bug that would appear only on EBCDIC machines where constants
of the form \N{U+....} would have been interpreted as EBCDIC.
And in inspecting the code, I realized there were problems with growing
the scalar value to fit the input. I cleaned those up.
I also added a number of comments to document things I found out, and
changed some existing ones to be more accurate.
Since no one responded to my request for where to put the test cases,
and I couldn't figure out a good place to put them, I added a new test
file, t/uni/lex_utf8.t.
|
|
|
|
| |
Fixes lib/feature.t and lib/warnings.t tests that have been failing on Win32 since commit 26b6dc3.
|
|
|
|
| |
This fixes bug [perl #59170] Typo: bad regex for #line directive in perlsyn.
|
|
|
| |
p4raw-id: //depot/perl@34941
|
|
|
|
|
| |
#4362 in case you were wondering).
p4raw-id: //depot/perl@34768
|
|
|
|
|
|
| |
Message-ID: <20081103160130.GA45762@timac.local>
Date: Mon, 3 Nov 2008 16:01:31 +0000
p4raw-id: //depot/perl@34705
|
|
|
|
|
|
| |
Message-ID: <25940.1225611819@chthon>
Date: Sun, 02 Nov 2008 01:43:39 -0600
p4raw-id: //depot/perl@34698
|
|
|
|
|
|
| |
This is mostly to silence gcc's warning, "format not a string
literal and no format arguments".
p4raw-id: //depot/perl@34694
|
|
|
|
|
| |
Perl_sv_magicext(), which is documented.
p4raw-id: //depot/perl@34671
|
|
|
| |
p4raw-id: //depot/perl@34653
|
|
|
| |
p4raw-id: //depot/perl@34650
|
|
|
| |
p4raw-id: //depot/perl@34647
|
|
|
| |
p4raw-id: //depot/perl@34622
|
|
|
| |
p4raw-id: //depot/perl@34585
|
|
|
|
|
|
|
|
|
|
| |
Message-ID: <20080724181427.aiml4sdvr40k4coc@horde.wizbit.be>
Note that the Subject: has a typo - it should be $\
This adds a new warning.
I moved the tests from the original patch to t/lib/warnings/toke.
p4raw-id: //depot/perl@34224
|
|
|
|
|
|
|
| |
(It was mistakenly left open if there was no old_parser, which caused
t/comp/require.t to leave behind a 'bleah.pm' (from the test for
#49472) on Win32, where the deletion of an open file fails.)
p4raw-id: //depot/perl@34071
|
|
|
|
|
| |
precise when reporting illegal characters after _
p4raw-id: //depot/perl@34023
|
|
|
|
|
|
|
| |
Based on:
Subject: Re: [perl #36673] sub foo(@$) {} should generate an error
Message-ID: <483A9A2B.6020808@smart-websolutions.de>
p4raw-id: //depot/perl@34021
|
|
|
|
|
|
| |
From: "Rafael Garcia-Suarez" <rgarciasuarez@gmail.com>
Message-ID: <b77c1dce0805200045i1000598ci13c9cb3a29f64b6d@mail.gmail.com>
p4raw-id: //depot/perl@33874
|
|
|
|
|
| |
Message-Id: <200805101252.11961.chromatic@wgz.org>
p4raw-id: //depot/perl@33858
|
|
|
|
|
|
| |
From: "Rafael Garcia-Suarez" <rgarciasuarez@gmail.com>
Message-ID: <b77c1dce0805160313r78cb1b2bxfeb64460d2e9a7df@mail.gmail.com>
p4raw-id: //depot/perl@33833
|
|
|
|
|
| |
Message-Id: <1210485078-19640-1-git-send-email-rafl@debian.org>
p4raw-id: //depot/perl@33822
|
|
|
|
|
| |
be U8.
p4raw-id: //depot/perl@33437
|
|
|
|
|
| |
Message-ID: <47B7879B.5040302@gmail.com>
p4raw-id: //depot/perl@33327
|
|
|
|
|
|
|
|
|
|
|
|
| |
ability to create landmines that will explode under someone in the
future when they upgrade their compiler to one with better
optimisation. We've already done this at least twice.
(Yes, some of the assertions are after code that would already have
SEGVd because it already deferences a pointer, but they are put in
to make it easier to automate checking that each and every case is
covered.)
Add a tool, checkARGS_ASSERT.pl, to check that every case is covered.
p4raw-id: //depot/perl@33291
|
|
|
|
|
|
|
| |
An errored attribute sub still processes the attributes,
which require's attribute.pm, so make sure the error state is
passed to the new require
p4raw-id: //depot/perl@33265
|
|
|
|
|
| |
Message-ID: <20080128125741.GA27390@refcnt.homeunix.org>
p4raw-id: //depot/perl@33103
|
|
|
|
|
| |
Message-ID: <20080117173652.GB4969@ostwald>
p4raw-id: //depot/perl@33089
|
|
|
| |
p4raw-id: //depot/perl@32954
|
|
|
|
|
| |
sv_2mortal(newSVpvs(...)) constructions to use it.
p4raw-id: //depot/perl@32819
|
|
|
|
|
|
| |
the flags. Move its implementation just ahead of sv_2mortal()'s for
CPU cache locality. Refactor all code that can be to use this.
p4raw-id: //depot/perl@32818
|
|
|
|
|
|
|
|
|
|
| |
flag bits. Right now the only flag bit is SVf_UTF8, which will call
SvUTF8_on() on the new SV for you. Provide a wrapper newSVpvn_utf8(),
which takes a boolean, and passes in SVf_UTF8 if that is true.
Refactor the core to use it where possible. It makes the source code
clearer and smaller, but seems to be swings and roundabouts on object
code size.
p4raw-id: //depot/perl@32807
|
|
|
|
|
| |
features)
p4raw-id: //depot/perl@32744
|
|
|
| |
p4raw-id: //depot/perl@32648
|
|
|
|
|
| |
that attempt to expand it recursively. (like, on UNICOS)
p4raw-id: //depot/perl@32443
|
|
|
|
|
|
|
| |
PL_preambleav, and then free each in turn, rather than simply process
the array in place, and allow the sv_free(PL_preambleav) to dispose of
everything.
p4raw-id: //depot/perl@32140
|
|
|
|
|
| |
This also makes the logic in the call site simpler and more efficient.
p4raw-id: //depot/perl@32138
|
|
|
|
|
|
| |
Donate the prototype buffer to the CV in Perl_gv_init(), rather than
setting a copy, and immediately free()ing the original.
p4raw-id: //depot/perl@32136
|
|
|
|
|
| |
newSVpvn() will be fractionally more efficient.
p4raw-id: //depot/perl@32135
|
|
|
|
|
| |
length can be obtained via CopFILESV().
p4raw-id: //depot/perl@32129
|
|
|
| |
p4raw-id: //depot/perl@32128
|
|
|
|
|
|
|
|
|
|
|
| |
gv_stashpv() to gv_stashpvn() and gv_fetchpv() to gv_fetchpvn_flags().
Change the len parameter of S_find_in_my_stash() from I32 to STRLEN, as
a pointer the variable needs to be passed onwards, and size matters on
64 bit platforms.
Fix the temporary scribbling of a buffer in Perl_yylex() by using
gv_fetchpvn_flags(), and remove the XXX comment added in change 27641.
Brought to you by the Campaign for the Elimination of strlen().
p4raw-id: //depot/perl@32127
|
|
|
|
|
|
|
| |
the possible strings that can be passed to it, and their lengths. So we
can avoid my_strlcpy() and instead use memcpy().
Brought to you by the Campaign for the Elimination of strlen().
p4raw-id: //depot/perl@32114
|
|
|
|
|
|
| |
S_new_constant() in toke.c, as we know all the lengths already.
Brought to you by the Campaign for the Elimination of strlen().
p4raw-id: //depot/perl@32111
|
|
|
|
|
|
|
| |
From: "Craig A. Berry" <craig.a.berry@gmail.com>
Message-ID: <c9ab31fc0710061147x3ee7f9bdg2b1bac3acd018bb2@mail.gmail.com>
Date: Sat, 6 Oct 2007 13:47:03 -0500
p4raw-id: //depot/perl@32058
|
|
|
|
|
|
|
|
|
|
| |
Although I've committed crimes against indenting to avoid losing
blame annotation history. Revisit this when we have version control
that can easily see through whitespace changes.
[Can probably now propagate consting inside S_parse_body(),
Perl_moreswitches() and Perl_yylex(), but that will not affect the
external API, so can wait until after 5.10]
p4raw-id: //depot/perl@32057
|
|
|
| |
p4raw-id: //depot/perl@32054
|
|
|
|
|
| |
construction to *pvs.
p4raw-id: //depot/perl@32039
|
|
|
|
|
|
|
| |
PL_cshlen can be calculated by the compiler. So eliminate both as
interpreter variables, and the code that calculates PL_cshlen at
runtime.
p4raw-id: //depot/perl@32035
|