perl.git
8 years agoAdded tests for conditional unblocking
Leon Timmermans [Mon, 17 Jan 2011 15:29:11 +0000 (16:29 +0100)] 
Added tests for conditional unblocking

8 years agoRemove obsolete macros
Leon Timmermans [Thu, 13 Jan 2011 17:30:59 +0000 (18:30 +0100)] 
Remove obsolete macros

8 years agoConditionally unblock after signal handler[#82040]
Leon Timmermans [Thu, 13 Jan 2011 17:30:29 +0000 (18:30 +0100)] 
Conditionally unblock after signal handler[#82040]

Only unblock signal after a safe-signal handler is executed if that signal was
also unblocked before the handler.

8 years agoregexec.c: Fix so will compile on Windows
Karl Williamson [Tue, 18 Jan 2011 04:43:14 +0000 (21:43 -0700)] 
regexec.c: Fix so will compile on Windows

Commit cfaf538b6276c6a8ef80ff6c66e106c6a4f1caaa introduced changes that cause
this to not compile on Windows.  It did not accept empty macro parameters,
unlike gcc.  This just creates a placeholder macro that expands to nothing to
give the preprocessor something to grab onto.

8 years agoperlcall: More punctuation changes
Father Chrysostomos [Tue, 18 Jan 2011 04:06:44 +0000 (20:06 -0800)] 
perlcall: More punctuation changes

8 years agoPut the apostrophe in the right place
Father Chrysostomos [Tue, 18 Jan 2011 02:11:46 +0000 (18:11 -0800)] 
Put the apostrophe in the right place

8 years agoFix line containing only whitespace.
Michael Stevens [Mon, 17 Jan 2011 21:02:49 +0000 (21:02 +0000)] 
Fix line containing only whitespace.

8 years agoUpdate to fix pod errors and improve formatting.
Michael Stevens [Mon, 17 Jan 2011 17:48:10 +0000 (17:48 +0000)] 
Update to fix pod errors and improve formatting.

8 years agoperlcall: dangling modifier
Father Chrysostomos [Tue, 18 Jan 2011 02:08:46 +0000 (18:08 -0800)] 
perlcall: dangling modifier

Whilst ‘whilst’ is nice, the sentence as it was before this change
indicated that the stack was in the call_pv call (whatever
that means).

8 years agoMore perlcall clean-up
Father Chrysostomos [Tue, 18 Jan 2011 02:05:27 +0000 (18:05 -0800)] 
More perlcall clean-up

It is not good style to join two independent clauses with a comma, it
just does not read well.

Hyphenate ‘multi word’ adjective

Inconsistent use of - vs. -- for a dash.

Missing commas

Other punctuation errors

Terribly Inconsistent capitalisation in =head2’s

Other grammatical errors or unclear phrases

8 years agoSome perlcall clean-up
Father Chrysostomos [Mon, 17 Jan 2011 02:06:29 +0000 (18:06 -0800)] 
Some perlcall clean-up

Multi word adjectives should be hyphenated.

A preposition should not be used like it’s a conjunction.

8 years agoUpdate HTTP::Tiny to CPAN version 0.009
David Golden [Tue, 18 Jan 2011 01:39:14 +0000 (20:39 -0500)] 
Update HTTP::Tiny to CPAN version 0.009

[DELTA]

0.009     2011-01-17 16:29:22 EST5EDT

  - Added workaround for IO::Socket::SSL certificate verification bug

  - Minor documentation improvements

  - POST example added to the eg/ directory in the distribution tarball

8 years agot/porting/diag.t: fix indentation in check_file()
David Mitchell [Tue, 18 Jan 2011 00:52:46 +0000 (00:52 +0000)] 
t/porting/diag.t: fix indentation in check_file()

The first half of this function used 2-char indentation, then suddenly
switched to 4-char. This meant that end-of-blocks weren't aligned with the
opening! Purely a whitespace change.

8 years agovastly speed up t/porting/diag.t
David Mitchell [Tue, 18 Jan 2011 00:46:30 +0000 (00:46 +0000)] 
vastly speed up t/porting/diag.t

This used to take about 3 minutes of CPU. Reduce this to around
6 seconds (!!) by coalescing and pre-compiling various patterns
that get applied to nearly every line of every source file.

8 years agoReflow multi-line rules in Win32 makefiles after 2c17609f30aa451f.
Nicholas Clark [Mon, 17 Jan 2011 16:42:26 +0000 (16:42 +0000)] 
Reflow multi-line rules in Win32 makefiles after 2c17609f30aa451f.

pod/buildtoc regenerates these with the line break in a different place.

8 years agoAdd /a regex modifier
Karl Williamson [Mon, 17 Jan 2011 15:58:53 +0000 (08:58 -0700)] 
Add /a regex modifier

This restricts certain constructs, like \w, to matching in the ASCII range
only.

8 years agoregcomp.sym: Add nodes for /a
Karl Williamson [Mon, 17 Jan 2011 15:51:41 +0000 (08:51 -0700)] 
regcomp.sym: Add nodes for /a

These aren't used yet.

8 years agoadd heading for perldelta
Karl Williamson [Mon, 17 Jan 2011 15:49:18 +0000 (08:49 -0700)] 
add heading for perldelta

8 years agore/charset.t: typo in comment
Karl Williamson [Mon, 17 Jan 2011 00:46:35 +0000 (17:46 -0700)] 
re/charset.t: typo in comment

8 years agoregcomp.c: Convert \d \D to a switch{}
Karl Williamson [Mon, 17 Jan 2011 00:41:30 +0000 (17:41 -0700)] 
regcomp.c: Convert \d \D to a switch{}

8 years agoUpdate File-Fetch to CPAN version 0.32
Chris 'BinGOs' Williams [Mon, 17 Jan 2011 12:35:54 +0000 (12:35 +0000)] 
Update File-Fetch to CPAN version 0.32

  [DELTA]

  Changes for 0.32        Mon Jan 17 10:26:40 2011
  =================================================
  * Added support for HTTP::Tiny

8 years agotest_prep now depends on the pods needed for porting/buildtoc.t
Tony Cook [Mon, 17 Jan 2011 08:22:08 +0000 (19:22 +1100)] 
test_prep now depends on the pods needed for porting/buildtoc.t

In the other makefiles test_prep (or test-prep) depends on all, so
they shouldn't need updating.

8 years agoUpdate Maintainers.pl for the recent Unicode-Collate changes
Chris 'BinGOs' Williams [Mon, 17 Jan 2011 08:22:09 +0000 (08:22 +0000)] 
Update Maintainers.pl for the recent Unicode-Collate changes

8 years agoUpdate CPAN to CPAN version 1.94_63
David Golden [Mon, 17 Jan 2011 02:32:21 +0000 (21:32 -0500)] 
Update CPAN to CPAN version 1.94_63

[DELTA]

2011-01-16  Andreas J. Koenig  <andk@cpan.org>

* release 1.94_63

* address #63357: use Dumpvalue when dumping potential crap (Andreas
Koenig)

* address #62986: new config option use_file_homedir (Andreas Koenig)

* address #64037: new config option prefer_external_tar (Andreas Koenig)

* add support for bootstrapping local::lib when the user does not have
write access to perl's site library directories (David Golden)

* add support for (and prerequisite on) HTTP::Tiny; also adds
prerequisites for MIME::Base64 and Digest::MD5 to support proxy
authentication (David Golden)

* automatic mirror selection now returns only http mirrors (David
Golden)

* add 'atexit' option for cache scanning and cleanup (David Golden)

* now with 421 distroprefs files (but a good portion of them seems
outdated)

8 years agoregcomp.c: Clarify comment
Karl Williamson [Sun, 16 Jan 2011 03:46:48 +0000 (20:46 -0700)] 
regcomp.c: Clarify comment

8 years agoAdd plan() call to .t
Karl Williamson [Sun, 16 Jan 2011 19:19:23 +0000 (12:19 -0700)] 
Add plan() call to .t

8 years agoregex: Use BOUNDU regnodes
Karl Williamson [Tue, 28 Dec 2010 23:13:49 +0000 (16:13 -0700)] 
regex: Use BOUNDU regnodes

This refactors one area in regexec.c to use BOUNDU, NBOUNDU for
efficiciency, and easier adding of the future BOUNDA.

8 years agoregcomp.sym: Remove unused nodes DIGITU, NDIGITU
Karl Williamson [Tue, 28 Dec 2010 22:28:25 +0000 (15:28 -0700)] 
regcomp.sym: Remove unused nodes DIGITU, NDIGITU

These are unused because there is no difference between Unicode
semantics and non for digits.  That is there are no digit characters in
the 128-255 range.

8 years agoregcomp.sym: Add BOUNDU, NBOUNDU regnodes
Karl Williamson [Tue, 28 Dec 2010 22:25:43 +0000 (15:25 -0700)] 
regcomp.sym: Add BOUNDU, NBOUNDU regnodes

This will make for somewhat more efficient execution, as won't have to
test the regnode type multiple times, at the expense of slightly bigger
code space.

8 years agoregexec.c: Remove unnecessary cBOOLs
Karl Williamson [Tue, 28 Dec 2010 17:40:56 +0000 (10:40 -0700)] 
regexec.c: Remove unnecessary cBOOLs

These functions already return a boolean.

8 years agoregexec.c: Use FLAGS field instead of OP for BOUND node
Karl Williamson [Tue, 28 Dec 2010 16:52:02 +0000 (09:52 -0700)] 
regexec.c: Use FLAGS field instead of OP for BOUND node

This makes the equivalent code in BOUND and NBOUND identical so can
factor out, and makes optimization easier, as the FLAGS field is already
required in the vicinity.

8 years agoregexec.c: Convert two !=0's to cBOOL
Karl Williamson [Tue, 28 Dec 2010 16:33:36 +0000 (09:33 -0700)] 
regexec.c: Convert two !=0's to cBOOL

8 years agoregexec.c: change variable name to reflect its purpose
Karl Williamson [Mon, 27 Dec 2010 21:37:50 +0000 (14:37 -0700)] 
regexec.c: change variable name to reflect its purpose

8 years agoregexec.c: Change '1' to bool TRUE for clarity.
Karl Williamson [Mon, 27 Dec 2010 21:36:49 +0000 (14:36 -0700)] 
regexec.c: Change '1' to bool TRUE for clarity.

The function is supposed to take a bool.

8 years agoregexec.c: refactor and comment the CCC_TRY macros
Karl Williamson [Mon, 27 Dec 2010 21:34:37 +0000 (14:34 -0700)] 
regexec.c: refactor and comment the CCC_TRY macros

These are refactored to be more compact, and I think clearer.

8 years agoregex: Separate nodes for Unicode semantics \s \w
Karl Williamson [Mon, 27 Dec 2010 19:04:58 +0000 (12:04 -0700)] 
regex: Separate nodes for Unicode semantics \s \w

This patch converts the \s, \w and complements Unicode semantics to
instead of using the flags field of their nodes to instead use separate
nodes.  This gains some efficiency, especially useful in tight loops and
backtracking of regexec.c, and prepares the way for easily adding other
semantic variations, such as /a.

It refactors the CCC_TRY... macros.  I tried to break this piece up into
smaller chunks, but found it much easier to get to this in one step.
Further patches will do some more refactoring of these.

As part of the CCC_TRY macro refactoring, the lines that include the
test if (! nextchr) are changed to just look for the end-of-string by
position instead of it being NUL.  In locales, it could be (however
unlikely), that NUL is a real alphabetic, digit, or space character.

8 years agoregcomp.c: add missing code for optimizer for \W
Karl Williamson [Mon, 27 Dec 2010 18:02:59 +0000 (11:02 -0700)] 
regcomp.c: add missing code for optimizer for \W

The code here was asymmetrical.  It did not account for Unicode
semantics when ORing \W.  For \w, \s, and \S it does.  This patch
changes the code to be symmetrical.

I spent a couple hours trying to come up with a test, but could not get
this area of the code to execute, which may explain why there has not
been a field report of it.  It may be that it is unreachable; there has
been other code in the routine that wasn't.

8 years agoregcomp.c: remove unreached code
Karl Williamson [Mon, 27 Dec 2010 04:03:23 +0000 (21:03 -0700)] 
regcomp.c: remove unreached code

This code can never be reached, as the switch statement switches on the
regkind of the op, not the op itself; and the kind of all the locale
regnodes is the base regnode itself.  For example regkind[ALNUML] is ALNUM.

8 years agoregex: Add separate regnodes for \w \s Uni semantics
Karl Williamson [Mon, 27 Dec 2010 01:00:00 +0000 (18:00 -0700)] 
regex: Add separate regnodes for \w \s Uni semantics

These nodes aren't actually used yet, but allow the splitting out of
Unicode semantics for \w, \s, and complements

8 years agoregexec.c: Replace duplicated code by its macro
Karl Williamson [Sun, 26 Dec 2010 17:44:15 +0000 (10:44 -0700)] 
regexec.c: Replace duplicated code by its macro

Replace two instances of code that is the same as that given by an already
existing macro.

8 years agoregcomp.sym: add clarifying comments
Karl Williamson [Sun, 26 Dec 2010 17:40:29 +0000 (10:40 -0700)] 
regcomp.sym: add clarifying comments

8 years agoop_reg_common: correct path in comment
Karl Williamson [Tue, 28 Dec 2010 23:16:49 +0000 (16:16 -0700)] 
op_reg_common: correct path in comment

8 years agoregex: Convert regnode FLAGS fields to charset enum
Karl Williamson [Sun, 26 Dec 2010 17:39:12 +0000 (10:39 -0700)] 
regex: Convert regnode FLAGS fields to charset enum

The FLAGS fields of certain regnodes were encoded with USE_UNI if
unicode semantics were to be used.  This patch instead sets them to the
character set used, one of the possibilities of which is to use unicode
semantics.  This shortens the code somewhat, and always puts the
character set in the flags field, which can allow use of switch
statements on it for efficiency, especially as new values are added.

8 years agoChange name of /d to DEPENDS
Karl Williamson [Sun, 26 Dec 2010 17:35:58 +0000 (10:35 -0700)] 
Change name of /d to DEPENDS

I much prefer David Golden's name for /d whose meaning 'depends' on
circumstances, instead of 'dual' meaning it could be one or another.
Change it before this gets out in a stable release, and we're stuck with
the old name.

8 years agoCH] Change usage of regex/op common to common names
Karl Williamson [Sun, 26 Dec 2010 17:35:20 +0000 (10:35 -0700)] 
CH] Change usage of regex/op common to common names

This patch changes the core functions to use the common names for the
fields that are shared between op.c and regcomp.c, just for consistency
of using one name throughout the core for the same thing.

A grep of cpan shows that both names are used in various modules; so
both names must be retained.

8 years agoAdd HTTP::Tiny as a dual-life core module
David Golden [Mon, 17 Jan 2011 01:57:02 +0000 (20:57 -0500)] 
Add HTTP::Tiny as a dual-life core module

HTTP::Tiny 0.008 has been added as a dual-life module.  It is a very
small, simple HTTP/1.1 client designed for simple GET requests and file
mirroring.  It has has been added to enable CPAN.pm and CPANPLUS to
"bootstrap" HTTP access to CPAN using pure Perl without relying on external
binaries like F<curl> or F<wget>.

8 years agoTracked down some other places to make the Unicode-Collate changes
Chris 'BinGOs' Williams [Mon, 17 Jan 2011 00:14:25 +0000 (00:14 +0000)] 
Tracked down some other places to make the Unicode-Collate changes

8 years agoperldelta update for Unicode-Collate upgrade
Chris 'BinGOs' Williams [Sun, 16 Jan 2011 23:35:42 +0000 (23:35 +0000)] 
perldelta update for Unicode-Collate upgrade

8 years agoUpdate Unicode-Collate to CPAN version 0.70 and enable XS version
Chris 'BinGOs' Williams [Sun, 16 Jan 2011 23:23:03 +0000 (23:23 +0000)] 
Update Unicode-Collate to CPAN version 0.70 and enable XS version

  [DELTA]

  0.70  Sun Jan 16 20:31:07 2011
    - Now U::C::Locale->new will use the compiled DUCET via XS.

  0.69  Sat Jan 15 19:41:11 2011
    - clarified about XSUB. revised INSTALL in README.
    - xs: flag passed to utf8n_to_uvuni().
    - doc and comments: [perl #81876] Fix typos by Peter J. Acklam.

  A pure-perl version of this module was previously installed,
  this commit enables the XS version of the module instead.

8 years agoUse multi-bit field for regex character set
Karl Williamson [Sun, 26 Dec 2010 17:31:16 +0000 (10:31 -0700)] 
Use multi-bit field for regex character set

The /d, /l, and /u regex modifiers are mutually exclusive.  This patch
changes the field that stores the character set to use more than one bit
with an enum determining which one.  This data structure more
closely follows the semantics of their being mutually exclusive, and
conserves bits as well, and is better expandable.

A small API is added to set and query the bit field.

This patch is not .xs source backwards compatible.  A handful of cpan
programs are affected.

8 years agoregcomp.pl: Add capability for fields to be > 1 bit
Karl Williamson [Sun, 26 Dec 2010 17:30:40 +0000 (10:30 -0700)] 
regcomp.pl: Add capability for fields to be > 1 bit

Currently, it doesn't generate a good dump structure if a field has more
than one bit.

8 years agoop_reg_common.h: Add guard to only expand once
Karl Williamson [Sun, 26 Dec 2010 17:30:12 +0000 (10:30 -0700)] 
op_reg_common.h: Add guard to only expand once

This is in preparation for adding some in-line functions.

8 years agoSubject: [PATCH] re.pm: Correct pod statement
Karl Williamson [Sun, 26 Dec 2010 17:29:48 +0000 (10:29 -0700)] 
Subject: [PATCH] re.pm: Correct pod statement

The /d also overrides one of the other pragmas; not just /u, /l.

8 years agoop.h: add blank line for grouping
Karl Williamson [Sun, 26 Dec 2010 17:29:15 +0000 (10:29 -0700)] 
op.h: add blank line for grouping

8 years ago.pm: rename variables to reflect expanded usage
Karl Williamson [Sun, 26 Dec 2010 17:28:31 +0000 (10:28 -0700)] 
.pm: rename variables to reflect expanded usage

Certain variables have /dul in their names.  /a is about to be added;
and maybe more, so give a more generic name to avoid future confusion

8 years agoallow buildtoc to find libraries after chdir into pod/
Tony Cook [Sun, 16 Jan 2011 22:55:14 +0000 (09:55 +1100)] 
allow buildtoc to find libraries after chdir into pod/

8 years ago[perl #82098] Fix RT 61543 and remaining part of RT 63237
Peter John Acklam [Sun, 16 Jan 2011 22:21:38 +0000 (14:21 -0800)] 
[perl #82098] Fix RT 61543 and remaining part of RT 63237

Extend bmodpow() to handle negative numbers.

- dist/Math-BigInt/lib/Math/BigInt.pm: Fix bmodpow() code and make the
  documentation style more like that of other methods.

- dist/Math-BigInt/t/bigintpm.inc: Edit test results so they match new
  behaviour, i.e., where earlier a NaN was returned, there are now
  some cases where an integer is returned, since bmodpow() now also
  handles negative numbers. Also include test cases from RT 63237. The
  tests themselves have all been verified to be correct using other
  software.

- dist/Math-BigRat/t/bigratpm.inc: Fix test case so it matches the new
  behaviour of Math::BigInt->bmodinv(). Math::BigRat->bmodinv() only
  handles integers, and is essentially just a front-end to
  Math::BigInt->bmodinv().

- dist/Math-BigInt/t/bare_mbi.t: Increment test count.

- dist/Math-BigInt/t/bigintpm.t: Increment test count.

- dist/Math-BigInt/t/sub_mbi.t: Increment test count.

8 years ago[perl #81584] recommend Devel::FindAmpersand
Father Chrysostomos [Sun, 16 Jan 2011 22:09:14 +0000 (14:09 -0800)] 
[perl #81584] recommend Devel::FindAmpersand

8 years agoGet rid of warning.
Michael Stevens [Wed, 12 Jan 2011 16:09:08 +0000 (16:09 +0000)] 
Get rid of warning.

Was showing *** WARNING: node ''/flags' mode' contains non-escaped | or
/ at line 42 in file perl5137delta.pod

now fixed.

However I can't find the referenced section so there may still be a
problem.

8 years agoutil.c handling of return value of vsnprintf
Robin Barker [Sun, 16 Jan 2011 21:41:29 +0000 (13:41 -0800)] 
util.c handling of return value of vsnprintf

At two points in util.c, there is code that use vsnprintf
if available, otherwise vsprintf.  The handling of the return
value does not reflect which function has been called.
The patch tries to improve this.

8 years agoAdd another address for R. Barker to checkAUTHORS.pl
Father Chrysostomos [Sun, 16 Jan 2011 22:19:29 +0000 (14:19 -0800)] 
Add another address for R. Barker to checkAUTHORS.pl

8 years agoUpdate Unicode-Normalize to CPAN version 1.10
Chris 'BinGOs' Williams [Sun, 16 Jan 2011 19:13:28 +0000 (19:13 +0000)] 
Update Unicode-Normalize to CPAN version 1.10

  [DELTA]

  1.10  Sun Jan 16 21:00:34 2011
    - XSUB: reorder() and compose() treat with growing the string.
    - XSUB: provision against UTF8_ALLOW_* flags to be undefined in future.
    - doc: about perl 5.13.x and Unicode 6.0.0
    - doc and comments: [perl #81876] Fix typos by Peter J. Acklam.

8 years agore.pm: correct typo
Karl Williamson [Sun, 26 Dec 2010 17:28:15 +0000 (10:28 -0700)] 
re.pm: correct typo

8 years agoDeliver t/re/charset.t
Karl Williamson [Sat, 15 Jan 2011 21:13:24 +0000 (14:13 -0700)] 
Deliver t/re/charset.t

8 years agoWhite space, comment only change
Karl Williamson [Sat, 15 Jan 2011 20:52:25 +0000 (13:52 -0700)] 
White space, comment only change

8 years agoFix \xa0 matching both [\s] [\S], et.al.
Karl Williamson [Sat, 15 Jan 2011 20:42:58 +0000 (13:42 -0700)] 
Fix \xa0 matching both [\s] [\S], et.al.

This bug stemmed from Latin1 characters not matching any (non-complemented)
character class in /d semantics when the target string is no utf8; but having
unicode semantics when it isn't.  The solution here is to add a special flag.

There were several tests that relied on the broken behavior, specifically they
tested that \xff isn't a printable word character even in utf8.  I changed the
deparse test to instead use a non-printable code point, and I changed the ones
in re_tests to be TODOs, and will change them back using /a when that is
shortly added.

8 years agoregcomp: Share two bits in ANYOF flags
Karl Williamson [Sat, 15 Jan 2011 16:45:24 +0000 (09:45 -0700)] 
regcomp: Share two bits in ANYOF flags

It turns out that the INVERT and EOS flags can actually share the same bit, as
explained in the comments, freeing up a bit for other uses.  No code changes
need be made.

8 years agorestrict \p{IsUserDefined} to In\w+ and In\w+
David Mitchell [Sun, 16 Jan 2011 14:16:20 +0000 (14:16 +0000)] 
restrict \p{IsUserDefined} to In\w+ and In\w+

In L<perlunicode/"User-Defined Character Properties">, it says you can
create custom properties by defining subroutines whose names begin with
"In" or "Is". However, perl doesn't actually enforce that naming
restriction, so \p{foo::bar} will call foo::Bar() if it exists.

This commit finally enforces this convention. Note that this broke a
number of existing tests for properties, since they didn't always use an
Is/In prefix.

8 years agoDon't compile or link in EU::CBuilder's base class testing.
Craig A. Berry [Sat, 15 Jan 2011 18:45:15 +0000 (12:45 -0600)] 
Don't compile or link in EU::CBuilder's base class testing.

Remove the tests that try to send actual compile and link commands
to the shell and predict what their output will be.   That can't
be done portably in the base class -- that's what the overrides
are for.  Testing that properties get populated correctly and so
forth should be reasonably portable, though there is no guarantee
some of these won't be overridden as well (but leave them in for
now).

8 years agoUpdate perlguts.pod so that prose isn't a lie
Vadim Konovalov [Sat, 15 Jan 2011 00:08:12 +0000 (19:08 -0500)] 
Update perlguts.pod so that prose isn't a lie

(Also add a new address for vadim to checkAUTHORS

8 years agotest that perl.pod, pod.lst, MANIFEST and the file system are consistent
Tony Cook [Thu, 13 Jan 2011 12:29:38 +0000 (23:29 +1100)] 
test that perl.pod, pod.lst, MANIFEST and the file system are consistent

Possibly this is too strict.

8 years agoFix =item to be ordered list and not warn.
Michael Stevens [Thu, 13 Jan 2011 15:46:51 +0000 (15:46 +0000)] 
Fix =item to be ordered list and not warn.

8 years agoregexec.c: Remove no longer needed goto
Karl Williamson [Fri, 14 Jan 2011 16:16:03 +0000 (09:16 -0700)] 
regexec.c: Remove no longer needed goto

8 years agoregexec.c: Add to comment
Karl Williamson [Fri, 14 Jan 2011 16:14:32 +0000 (09:14 -0700)] 
regexec.c: Add to comment

8 years agouni/fold.t: Fix TODOs that now pass
Karl Williamson [Fri, 14 Jan 2011 16:11:56 +0000 (09:11 -0700)] 
uni/fold.t: Fix TODOs that now pass

8 years agoadd enum index in overload.h comments
David Mitchell [Tue, 11 Jan 2011 17:22:59 +0000 (17:22 +0000)] 
add enum index in overload.h comments

makes debugging marginally easier!

8 years agoregex: Use ANYOFV
Karl Williamson [Fri, 14 Jan 2011 05:36:36 +0000 (22:36 -0700)] 
regex: Use ANYOFV

This patch restructures the regex ANYOF code to generate ANYOFV nodes instead
when there is a possibility that it could match more than one character.   Note
that this doesn't affect the optimizer, as it essentially ignores things that
fit into this category.  (But it means that the optimizer will no longer reject
these when it shouldn't have.)

The handling of the LATIN SHARP s is modified to correspond with this new node
type.

The initial handling of ANYOFV is placed in regexec.c.  More analysis will come
on that.  But there was significant change to the part that handles matching
multi-char strings.  This has long been buggy, with it previously comparing a
folded-version on one side with a non-folded version on the other.

This patch fixes about 60% of the problems that my undelivered test suite gives
for multi-char folds.  But there are still 17K test failures left, so I'm still
not delivering that.  The TODOs that this fixes will be cleaned up in a later commit

8 years agoutf8.h: Add define for max fold expansion in chars
Karl Williamson [Fri, 14 Jan 2011 04:23:46 +0000 (21:23 -0700)] 
utf8.h: Add define for max fold expansion in chars

8 years agoregcomp.sym: Add ANYOFV node
Karl Williamson [Fri, 14 Jan 2011 04:12:21 +0000 (21:12 -0700)] 
regcomp.sym: Add ANYOFV node

This node is like a straight ANYOF node to match [bracketed character classes],
but can match multiple characters; in particular it can match a multi-char
fold.

When multi-char Unicode folding was added to Perl, it was overlooked that the
ANYOF node is supposed to match exactly one character, hence there have been
bugs ever since.  Adding a specialized node that can match multiple chars,
these can be fixed more easily.  I tried at first to make ANYOF match multiple
chars, but this causes Perl to not be able to fully compile.

8 years agoregex: Some Comment clarifications
Karl Williamson [Tue, 11 Jan 2011 02:33:40 +0000 (19:33 -0700)] 
regex: Some Comment clarifications

8 years agoRemove code before declaration, inadvertently added in 447f000ef4448b16.
Nicholas Clark [Thu, 13 Jan 2011 17:31:55 +0000 (17:31 +0000)] 
Remove code before declaration, inadvertently added in 447f000ef4448b16.

Code in dist/ isn't yet subject to all the warnings flags that the core C
code enjoys.

8 years agoIn Perl_write_to_stderr(), use Perl_magic_methcall() if STDERR is tied.
Nicholas Clark [Thu, 13 Jan 2011 17:04:14 +0000 (17:04 +0000)] 
In Perl_write_to_stderr(), use Perl_magic_methcall() if STDERR is tied.

Add a flag G_WRITING_TO_STDERR to signal that Perl_magic_methcall() needs to
localise PL_stderrgv to NULL, and save/free temps, inside its ENTER/LEAVE
pair.

8 years agoUpdate Pod-LaTeX to CPAN version 0.59
Chris 'BinGOs' Williams [Thu, 13 Jan 2011 16:34:15 +0000 (16:34 +0000)] 
Update Pod-LaTeX to CPAN version 0.59

  [DELTA]

  2011-01-04  Tim Jenness  <tjenness@cpan.org>

    ---- Version 0.59 CPAN ----

    * t/*.t: Use Test::More for tests.

    * Build.PL: Use Module::Build

    * LaTeX.pm: Fix typo in pod (RT #46887 via Dave Mitchell)

8 years agoithread_create() was relying on the stack not moving. Fix this.
Nicholas Clark [Thu, 13 Jan 2011 16:24:52 +0000 (16:24 +0000)] 
ithread_create() was relying on the stack not moving. Fix this.

4cf5eae5e58faebb changed S_ithread_create() to avoid creating an AV, by
passing the thread creation arguments as pointers to a block of memory
holding SVs. Unfortunately, this inadvertently introduced a subtle bug,
because the block of memory is on the Perl stack, which can move as a side
effect of being reallocated to extend it. Hence pass in the offset on the
stack instead, read the current value of the relevant interpreter's stack
at the point of access, and copy all the SVs away before making any further
calls which might cause reallocation.

8 years agoUpdate to Win32-0.44 from CPAN
Jan Dubois [Wed, 12 Jan 2011 21:10:55 +0000 (13:10 -0800)] 
Update to Win32-0.44 from CPAN

8 years agoUpdate to Win32-0.43 from CPAN
Jan Dubois [Wed, 12 Jan 2011 19:31:49 +0000 (11:31 -0800)] 
Update to Win32-0.43 from CPAN

8 years agoRemove trailing blanks
Michael Stevens [Wed, 12 Jan 2011 15:46:57 +0000 (08:46 -0700)] 
Remove trailing blanks

These were generating a podchecker warning

8 years agoUpdate Term-UI to CPAN version 0.24
Chris 'BinGOs' Williams [Wed, 12 Jan 2011 13:37:39 +0000 (13:37 +0000)] 
Update Term-UI to CPAN version 0.24

  [DELTA]

  Changes for 0.24        Wed Jan 12 13:16:01 GMT 2011
  =====================================================
  * Skip some tests if we are not on a terminal

8 years agoUpdate IO-Compress to CPAN version 2.033
Chris 'BinGOs' Williams [Tue, 11 Jan 2011 21:34:22 +0000 (21:34 +0000)] 
Update IO-Compress to CPAN version 2.033

  [DELTA]

  2.033 11 Jan 2011
      * Fixed typos & spelling errors.
        [perl# 81816]

  2.032 4 Jan 2011

      * IO::Uncompress::Base
        - An input file that had a valid header, and so would allow
          creation of the uncompression object, but was then followed by
          corrupt data would trigger an infinite loop when using the
          input line oprator.
          [RT #61915]

      * IO::Compress::Gzip
        - XFL default settings for max compression & fastest algorithm were
          the wrong way around. Thanks to Andrey Zholos for spotting this.

      * IO::Compress::Base::Common
        - Fixed precedence problem in parameter parsing code.

8 years agoFix execute permissions on the last commit
Chris 'BinGOs' Williams [Tue, 11 Jan 2011 19:24:58 +0000 (19:24 +0000)] 
Fix execute permissions on the last commit

8 years agoUpdate Compress-Raw-Zlib to CPAN version 2.033
Chris 'BinGOs' Williams [Tue, 11 Jan 2011 19:23:52 +0000 (19:23 +0000)] 
Update Compress-Raw-Zlib to CPAN version 2.033

  [DELTA]

  2.033 11 Jan 2011
      * Fixed typos & spelling errors.
        [perl# 81782]

  2.032 4 Jan 2011

      * Document inflateReset
        [RT #61082]

8 years agoUpdate Compress-Raw-Bzip2 to CPAN version 2.033
Chris 'BinGOs' Williams [Tue, 11 Jan 2011 16:55:36 +0000 (16:55 +0000)] 
Update Compress-Raw-Bzip2 to CPAN version 2.033

  [DELTA]

  2.033 11 Jan 2011
      * Fixed typos & spelling errors.
        [perl# 81782]

  2.032 4 Jan 2011

      * No Changes

8 years agoUpdate DB_File to CPAN version 1.821
Chris 'BinGOs' Williams [Tue, 11 Jan 2011 16:12:16 +0000 (16:12 +0000)] 
Update DB_File to CPAN version 1.821

  [DELTA]

  1.821 10 January 2011

   * Fixed typos & spelling errors.
     [perl #81792]

8 years agoIn S_ithread_create, reduce the amount of conditionally compiled C code.
Nicholas Clark [Tue, 11 Jan 2011 14:37:59 +0000 (14:37 +0000)] 
In S_ithread_create, reduce the amount of conditionally compiled C code.

With a small amount of refactoring, compatibility across different perl
versions can be achieved with less duplication.

8 years agoembed.fnc: Silence 'no docs' message
Karl Williamson [Tue, 11 Jan 2011 03:56:50 +0000 (20:56 -0700)] 
embed.fnc: Silence 'no docs' message

I mistakenly added the 'd' flag to the entry for check_utf8_print().

8 years agoCorrect the "unimplemented" message for get{host,net,proto,serv}ent aliases.
Nicholas Clark [Mon, 10 Jan 2011 15:15:25 +0000 (15:15 +0000)] 
Correct the "unimplemented" message for get{host,net,proto,serv}ent aliases.

Previously, if all of gethost{byaddr,byname,ent} were unimplemented on a
platform, they would all return 'Unsupported socket function "gethostent"
called', with the analogous results for getnet{byaddr,byname,ent},
getproto{byname,bynumber,ent} and getserv{byname,byport,ent}. This bug was
introduced by change af51a00e97d5c559 - prior to this, all 12 functions would
report their own name when unimplemented.

8 years agoremove perlapollo from perl.pod
Robin Barker [Thu, 6 Jan 2011 23:03:44 +0000 (23:03 +0000)] 
remove perlapollo from perl.pod

8 years agoMerge the implementations of {end,set}{gr,pw}ent with endhostent.
Nicholas Clark [Mon, 10 Jan 2011 11:54:28 +0000 (11:54 +0000)] 
Merge the implementations of {end,set}{gr,pw}ent with endhostent.

Unlike set{host,net,proto,serv}ent, set{gr,pw}ent don't have stayopen
parameter, hence their "signature" is the same as the ent*ent functions.

8 years agoMerge the implementations of pp_s{host,net,proto,serv}ent.
Nicholas Clark [Mon, 10 Jan 2011 10:29:06 +0000 (10:29 +0000)] 
Merge the implementations of pp_s{host,net,proto,serv}ent.

8 years agoMerge the implementations of pp_e{host,net,proto,serv}ent.
Nicholas Clark [Mon, 10 Jan 2011 10:12:10 +0000 (10:12 +0000)] 
Merge the implementations of pp_e{host,net,proto,serv}ent.

PL_op_desc[] rather than PL_op_name(), as the OPs are internally named e*ent,
but implement the ent*ent functions, and when unimplemented report themselves
using the function name. No need for OP_DESC(), as the switch statement means
that we can't encounter OP_CUSTOM.