Zefram [Wed, 18 May 2011 20:49:45 +0000 (21:49 +0100)]
update Time-HiRes to CPAN version 1.9722
- Fix broken linkage on Windows with gcc 3.4 seen with ActivePerl,
report from Christian Walde [rt.cpan.org #61648], fix derived
from Vincent Pit.
- Jump through hoops to avoid compiler warnings.
Justin Case [Wed, 18 May 2011 20:43:24 +0000 (13:43 -0700)]
[perl #89896] Locale::Maketext test failure
when environment has variable containing unbalanced brackets
Patch is attached to escape brackets in the value of the environment
variable being used in the test.
Nicholas Clark [Tue, 29 Mar 2011 15:37:10 +0000 (16:37 +0100)]
In Perl_regdupe_internal() eliminate npar, which is assigned to but never used.
It has been unused since
28d8d7f41ab202dd restructured the regexp dup code.
Nicholas Clark [Tue, 29 Mar 2011 14:36:40 +0000 (15:36 +0100)]
In S_regpiece(), only declare parse_start if conditional code needs it.
gcc 4.6.0 warns about variables that are set but never read, and unless
RE_TRACK_PATTERN_OFFSETS is defined, parse_start is never read. So avoid
declaring or setting it if it's not actually going to be used later.
Nicholas Clark [Tue, 29 Mar 2011 14:06:50 +0000 (15:06 +0100)]
In Perl_safesyscalloc(), only declare total_size if conditional code needs it.
gcc 4.6.0 warns about variables that are set but never read, and for most
combinations of conditional compilation options, total_size is never read.
So avoid declaring or setting it if it's not actually going to be used later.
Nicholas Clark [Tue, 29 Mar 2011 13:15:59 +0000 (14:15 +0100)]
In pp_warn and pp_die, eliminate pv, which is assigned to but never read.
Nicholas Clark [Tue, 29 Mar 2011 12:38:13 +0000 (13:38 +0100)]
Eliminate C variables unused since
4d0fbddde6c5dcb9 refactored HvFILL()
3 functions had C variables previously used to track whether the number of
hash chains have any entries.
4d0fbddde6c5dcb9 refactored the hash
implementation to calculated this on demand, instead of tracking changes to
it on hash updates. That change missed eliminating those variables, as
gcc prior to 4.6.0 didn't actually warn that they weren't used, because
(technically) they aren't unused - they are assigned to, but never read.
gcc (at least 4.3.2 and 4.6.0) generates identical object code with/without
this change, implying that its optimiser correctly eliminates the code.
Other optimisers may be similar, in which case there's no runtime saving from
this change.
Karl Williamson [Wed, 18 May 2011 18:44:44 +0000 (12:44 -0600)]
mktables: Put off removing the \N{BELL} conflict
Unicode 6.0 re-used the name BELL for a character other than what it
was traditionally for. There is code in mktables to change the
treatment for 5.15, so that it wouldn't be forgotten. But I'm thinking
that we might want to wait til 5.18 to change, and so I just changed it
to 5.17 instead.
Tom Christiansen [Mon, 2 May 2011 13:28:53 +0000 (09:28 -0400)]
[perl #89662] PATCH to perlfunc.pod: select fix
I think it's about time--by say 20 years--that we stop passing around
filehandles as strings, especially if we don't use Symbol::qualify_to_ref()
to fix the package. Plus it isn't strict-safe. All fixed now.
I am somewhat concerned about the final comment regarding read
and sysread, as I don't know whether PerlIO encoding translation
issues affect this picture.
--tom
Tom Christiansen [Mon, 2 May 2011 13:28:11 +0000 (09:28 -0400)]
[perl #89660] PATCH to perlfunc.pod: three forgotten prototypes, unforgotten
Tom Christiansen [Mon, 2 May 2011 13:27:18 +0000 (09:27 -0400)]
Improved perlpodstyle docs from tchrist
Tom Christiansen [Mon, 2 May 2011 13:25:55 +0000 (09:25 -0400)]
An editing pass on perlop.pod from tchrist
Subject: [perl #89490] PATCH: perlop.pod
Tom Christiansen [Mon, 2 May 2011 13:24:49 +0000 (09:24 -0400)]
perllol doc updates from tchrist.
Tom Christiansen [Mon, 2 May 2011 13:23:11 +0000 (09:23 -0400)]
This patch is aagainst the "blead du moment". It fixes various
things, but does not address the "this version" != 5.14 and the
perlio issues. I believe that these at least should be addressed
as soon as possible (I don't know whether that means 5.14;
probably not). It has to either say the particular version that
applies. We can't keep releasing things that say this version:
they are not trustable.
--tom
Jesse Vincent [Mon, 9 May 2011 02:46:24 +0000 (22:46 -0400)]
Update the version of Darwin we know the by_BE locale to be broken on
Jesse Vincent [Tue, 10 May 2011 13:21:31 +0000 (09:21 -0400)]
Add Vladimir Timofeev to AUTHORS
Vladimir Timofeev [Tue, 10 May 2011 13:17:41 +0000 (09:17 -0400)]
Fix for [perl #90106] 5.14.0-RC2 ODBM_File failures on Ubuntu natty [multiarch]
Ubuntu has juggled lib paths so we get to play games to catch up with
them.
Gisle Aas [Wed, 18 May 2011 18:47:59 +0000 (20:47 +0200)]
S_sv_unmagicext_flags wasn't declared static either
Gisle Aas [Mon, 25 Apr 2011 18:24:00 +0000 (20:24 +0200)]
S_mg_findext_flags wasn't declared static
Nicholas Clark [Mon, 2 May 2011 11:37:30 +0000 (12:37 +0100)]
In S_doparseform(), don't force the pattern to a string. This resolves #79532
Previously S_doparseform() was using SvPV_force(), because the pattern had to
be forced to a string, because the compiled format was stored in the string's
buffer. Now that the compiled format is stored in the magic struct, this isn't
necessary.
Additionally, removing the call to SvPV_force() removes the need to hack with
the SvREADONLY() flag in pp_formline.
Nicholas Clark [Tue, 26 Apr 2011 11:12:34 +0000 (12:12 +0100)]
Store the compiled format in mg_ptr instead of after SvCUR() - fixes RT #89218
Formats are compiled down to a sequence of U32 opcodes in doparseform().
Previously the block of opcodes was stored in the buffer of SvPVX() after
the raw string by extending the buffer, and calculating the first U32 aligned
address after SvCUR(). A flag bit on the scalar was set to signal this hackery,
tested with SvCOMPILED()
The flag bit used happened to be the same as one of the two used by to signal
Boyer-Moore compiled scalars. The assumption was that no scalar can be used for
both. Unfortunately, this isn't quite true.
Given that the scalar is alway upgraded to PVMG to add PERL_MAGIC_fm magic,
to clear the cached compiled version, there's no extra memory cost in using
mg_ptr in the MAGIC struct to point directly to the block of U32 opcodes. The
test for "is there a compiled version" can switch to mg_find(..., PERL_MAGIC_fm)
returning a pointer, and the use of a flag bit abolished.
Retain SvCOMPILED() and SvCOMPILED_{on,off}() as compatibility for XS code on
CPAN - the first is always 0, the other two now no-ops.
Nicholas Clark [Tue, 26 Apr 2011 10:02:45 +0000 (11:02 +0100)]
S_doparseform() should return void, not OP*, as it should use Perl_die not DIE
a1b950687051c32e added an error condition in S_doparseform() but used DIE(...)
to report it. DIE is defined as C<return Perl_die>, which acts as a hint to the
compiler about the control flow [as Perl_die() never returns], but also forces
the return type to be OP *. Whilst this is appropriate for pp functions, it's
not for S_doparseform() -
a1b950687051c32e had to change the return type to OP*
and return NULL, just to appease DIE(). Hence use Perl_die() instead, remove
return statements, and remove the didn't-return-NULL (dead) code from
pp_formline.
Karl Williamson [Tue, 17 May 2011 15:12:06 +0000 (09:12 -0600)]
perlreapi: nits
Karl Williamson [Sun, 8 May 2011 02:01:23 +0000 (20:01 -0600)]
op_reg_common.h: Fix comment
Karl Williamson [Wed, 30 Mar 2011 23:11:34 +0000 (17:11 -0600)]
perluniintro: revise text on blocks vs scripts
Karl Williamson [Thu, 28 Apr 2011 15:31:16 +0000 (09:31 -0600)]
perlop: Add explanation of \c
Karl Williamson [Mon, 25 Apr 2011 00:06:14 +0000 (18:06 -0600)]
perluniprops: specify exact chars in PerlSpace
Karl Williamson [Sun, 24 Apr 2011 15:59:50 +0000 (09:59 -0600)]
perlrecharclass: Nits
Karl Williamson [Sun, 24 Apr 2011 15:57:59 +0000 (09:57 -0600)]
perlrecharclass: Move table
The table makes more sense moved; some accompanying wording cleanup.
Karl Williamson [Sun, 24 Apr 2011 15:55:35 +0000 (09:55 -0600)]
perlrecharclass: Move text about \N
This should come right after the text about '.', as they are related.
Karl Williamson [Sun, 24 Apr 2011 15:54:39 +0000 (09:54 -0600)]
perlrecharclass: Extra leading zero in code points
Karl Williamson [Sun, 24 Apr 2011 15:50:53 +0000 (09:50 -0600)]
regcomp.sym: Add comment
Karl Williamson [Sun, 24 Apr 2011 15:46:55 +0000 (09:46 -0600)]
perlop: Clarify that only ASCII brackets nest
Karl Williamson [Sun, 24 Apr 2011 15:46:18 +0000 (09:46 -0600)]
perluniprops: AHex and PosixXDigit are identical
Karl Williamson [Sun, 24 Apr 2011 15:35:43 +0000 (09:35 -0600)]
charnames: pod nit
Karl Williamson [Sun, 24 Apr 2011 15:33:59 +0000 (09:33 -0600)]
perlfunc: Refer to if.pm from "use"
Karl Williamson [Tue, 3 May 2011 22:40:29 +0000 (16:40 -0600)]
regcomp.c: change comment wording, from TomC
Karl Williamson [Thu, 28 Apr 2011 19:17:53 +0000 (13:17 -0600)]
perlxs: Fix pod errors
Karl Williamson [Thu, 28 Apr 2011 19:17:26 +0000 (13:17 -0600)]
perlunicode: Fix pod error
Karl Williamson [Thu, 28 Apr 2011 19:17:01 +0000 (13:17 -0600)]
perlport: Fix pod errors
Karl Williamson [Thu, 28 Apr 2011 19:16:23 +0000 (13:16 -0600)]
pod/perlfaq2: Fix pod errors
Karl Williamson [Thu, 28 Apr 2011 19:15:21 +0000 (13:15 -0600)]
handy.h: Link moved to perlhacktips
Karl Williamson [Thu, 28 Apr 2011 19:14:47 +0000 (13:14 -0600)]
README.os2: Fix pod errors
Karl Williamson [Wed, 27 Apr 2011 23:13:55 +0000 (17:13 -0600)]
pod/perlinterp.pod: Fix broken link
Karl Williamson [Wed, 27 Apr 2011 23:13:16 +0000 (17:13 -0600)]
ext/Devel-Peek/Peek.pm: Fix broken links
Karl Williamson [Wed, 27 Apr 2011 23:11:49 +0000 (17:11 -0600)]
dist/Cwd/lib/File/Spec/Win32.pm: Fix broken link
Karl Williamson [Wed, 27 Apr 2011 22:46:13 +0000 (16:46 -0600)]
version/Internals.pod: Fix broken links
Karl Williamson [Wed, 27 Apr 2011 22:44:14 +0000 (16:44 -0600)]
README.os2: fix broken link
Karl Williamson [Tue, 26 Apr 2011 22:23:27 +0000 (16:23 -0600)]
FieldHash.pm: Fix broken links
Karl Williamson [Tue, 26 Apr 2011 22:15:02 +0000 (16:15 -0600)]
perlsyn: fix broken link to this
The X<> have spaces between them which was causing the =head to
generate a different anchor than expected
Karl Williamson [Tue, 26 Apr 2011 22:13:37 +0000 (16:13 -0600)]
perlop.pod: Fix broken link
The reason there are links broken to this is that the X<>
were part of the heading, and the spaces between them are
significant
Karl Williamson [Tue, 26 Apr 2011 22:13:16 +0000 (16:13 -0600)]
perlfaq4: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 22:12:11 +0000 (16:12 -0600)]
perlxs: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 22:11:17 +0000 (16:11 -0600)]
perlthrtut: fix broken links
Karl Williamson [Tue, 26 Apr 2011 22:09:51 +0000 (16:09 -0600)]
perlhack: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 22:01:56 +0000 (16:01 -0600)]
perlguts: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 18:58:36 +0000 (12:58 -0600)]
README.os2: Fix broken links
Karl Williamson [Tue, 26 Apr 2011 18:53:39 +0000 (12:53 -0600)]
Internals.pod: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 17:12:27 +0000 (11:12 -0600)]
overload.pm: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 17:08:12 +0000 (11:08 -0600)]
perlform: Revise link
The link doesn't have to be to the exact text, can just name the function,
and doing so is clearer.
Karl Williamson [Tue, 26 Apr 2011 16:00:52 +0000 (10:00 -0600)]
configpm: Fix broken links
Karl Williamson [Tue, 26 Apr 2011 15:55:43 +0000 (09:55 -0600)]
perlsub.pod: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 15:55:15 +0000 (09:55 -0600)]
perlguts: Link to internal doesn't need pod name
Karl Williamson [Tue, 26 Apr 2011 15:53:51 +0000 (09:53 -0600)]
perlfaq9: Add links to man pages
Karl Williamson [Tue, 26 Apr 2011 15:53:35 +0000 (09:53 -0600)]
perlfaq8: Add links to man pages
Karl Williamson [Tue, 26 Apr 2011 15:51:00 +0000 (09:51 -0600)]
perlebcdic.pod: Add man page section number to link
Karl Williamson [Tue, 26 Apr 2011 15:50:29 +0000 (09:50 -0600)]
perldata.pod: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 15:48:27 +0000 (09:48 -0600)]
mathoms.c: pod: fix broken link
Karl Williamson [Tue, 26 Apr 2011 15:47:33 +0000 (09:47 -0600)]
vmsish.pm: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 15:45:30 +0000 (09:45 -0600)]
Attribute-Handlers: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 15:44:00 +0000 (09:44 -0600)]
README.cygwin: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 15:39:48 +0000 (09:39 -0600)]
Internals.pod: Fix broken links
Karl Williamson [Tue, 26 Apr 2011 15:37:12 +0000 (09:37 -0600)]
README.os2: Fix broken links
Karl Williamson [Tue, 26 Apr 2011 15:34:46 +0000 (09:34 -0600)]
perlglossary: Fix broken links
Karl Williamson [Tue, 26 Apr 2011 15:31:51 +0000 (09:31 -0600)]
cop.h: pod: Fix broken links
Karl Williamson [Tue, 26 Apr 2011 15:27:18 +0000 (09:27 -0600)]
INSTALL: Change name so links to it aren't broken
Karl Williamson [Tue, 26 Apr 2011 15:17:22 +0000 (09:17 -0600)]
POSIX.pod: fix broken link
Karl Williamson [Tue, 26 Apr 2011 15:12:28 +0000 (09:12 -0600)]
Fix broken link
Karl Williamson [Tue, 26 Apr 2011 15:06:23 +0000 (09:06 -0600)]
threads-shared: Fix broken link
Karl Williamson [Tue, 26 Apr 2011 14:54:25 +0000 (08:54 -0600)]
perlxstut: Correct NAME
Karl Williamson [Tue, 26 Apr 2011 14:48:25 +0000 (08:48 -0600)]
base.pm: pod: Remove obsolete references
Karl Williamson [Mon, 25 Apr 2011 16:49:31 +0000 (10:49 -0600)]
INSTALL: broken link
Karl Williamson [Fri, 13 May 2011 14:35:23 +0000 (08:35 -0600)]
Assertion fails in multi-char regex match
In '"s\N{U+DF}" =~ /\x{00DF}/i, the LHS folds to 'sss', the RHS to 'ss'.
The bug occurs when the RHS tries to match the first two es's, but that
splits the LHS \xDF character, which Perl doesn't know how to handle,
and the assertion got triggered. (This is similar to [perl #72998].)
The solution adopted here is to disallow a partial character match,
as #72998 did as well.
David Mitchell [Wed, 18 May 2011 15:45:49 +0000 (16:45 +0100)]
release_managers_guide: feedback from 5.15.0 bump
The version bump from 5.14.0 to 5.15.0 didn't go at all smoothly.
Update release_managers_guide based on that experience.
Basically there were a couple of catch-22 situations with auto-generated
files; namely uconfig.h and the pod/perl5150delta.pod link.
Also, I've split the 'bump bleed to 5.15' and 'make maint-5.14 branch'
instructions into two separate sections.
David Mitchell [Wed, 18 May 2011 15:43:50 +0000 (16:43 +0100)]
buildtoc - fix a bug and add some comments
while(readdir) doesn't auto-assign to $_
Also, make the informative output clear that its telling you like of files
it will be processing, rather than that its actually processing it now.
David Mitchell [Wed, 18 May 2011 15:37:58 +0000 (16:37 +0100)]
Bump the perl version in various places for 5.15.0
David Mitchell [Wed, 18 May 2011 14:59:00 +0000 (15:59 +0100)]
update TOC for perl5150delta
David Mitchell [Wed, 18 May 2011 14:55:48 +0000 (15:55 +0100)]
create perldelta for 5.15.0
Josh ben Jore [Tue, 10 May 2011 16:47:16 +0000 (09:47 -0700)]
Amend the readline()+signals caveat
Jesse Vincent [Sat, 14 May 2011 18:18:53 +0000 (14:18 -0400)]
Remove RC3 marker.
Father Chrysostomos [Wed, 11 May 2011 13:27:08 +0000 (09:27 -0400)]
Make ‘require func()’ work with .pm abs path
As of commit
282b29ee485, pp_requires passes an SV to S_doopen_pm,
instead of char*/length pair.
That commit also used sv_mortalcopy() to copy the sv when trying out a
.pmc extension:
+ SV *const pmcsv = sv_mortalcopy(name);
When the path is absolute, the sv passed to S_doopen_pm is the very sv
that was passed to require. If it was returned from a (non-lvalue)
sub-routine, it will be marked TEMP, so the buffer gets stolen.
After the .pmc file is discovered to be nonexistent, S_doopen_pm then
uses its original sv to open the .pm file. But the buffer has been
stolen, so it’s trying to open undef, which fais.
In the mean time, pp_require still has a pointer to the stolen buffer,
which now has a .pmc extenion, it blithely reports that the .pmc file
cannot be found, not realising that its string has changed out from
under it. (Actually, if the file name were just the right length, it
could be reallocated and we could end up with a crash.)
This patch copies the sv more kindly.
Jesse Vincent [Wed, 11 May 2011 13:26:58 +0000 (09:26 -0400)]
RC3 bump
Jesse Vincent [Mon, 9 May 2011 15:31:27 +0000 (11:31 -0400)]
Remove the "RC2" marker in preparation for Wednesday's final release.
Tom Christiansen [Mon, 9 May 2011 02:42:54 +0000 (22:42 -0400)]
"fix bug; also prefix ?? matches with m due to 5.14 deprecation"
I also fixed a bug in the original. I'm always getting C<eof> vs C<eof()>
swapped in my brain, which is what had happened here. The old code didn't
do what it said it did because it contrary to the comments didn't reset at
each eof -- because it used the C<eof()> form which is all of ARGV rather
than bare C<eof> for the last file read, and thus each per-file component
of ARGV.
I am concerned about the two paragraphs previous to that, because they
use eof() and I am not perfectly clear that they should. But I left
them as is.
Jesse asked for "a lot of eyes", so if folks could please look at this
patch and see whether it looks ok, I'd appreciate it. I did test it
under blead, both with and without the prefixed m on the m?? matches,
which is how I discovered it was buggy with the C<eof()> not C<eof>.
--tom
Tom Christiansen [Wed, 4 May 2011 13:49:46 +0000 (09:49 -0400)]
Updates to perlfunc to explicitly mention some of 5.14's new features
somewhere other than perldelta.
Jesse Vincent [Tue, 3 May 2011 22:48:35 +0000 (18:48 -0400)]
It's not 2012. - spotted by jdb
Jesse Vincent [Tue, 3 May 2011 21:44:56 +0000 (17:44 -0400)]
typo fix spotted by tchrist
Jesse Vincent [Tue, 3 May 2011 21:20:16 +0000 (17:20 -0400)]
Bump Module::CoreList because the content changed since RC1 and we have
nice, zealous porting tests
Jesse Vincent [Thu, 28 Apr 2011 18:11:43 +0000 (02:11 +0800)]
RC1 -> RC2; push off the date of 5.14.0 until a week from tomorrow
Jesse Vincent [Tue, 3 May 2011 20:58:58 +0000 (16:58 -0400)]
Documentation for sprintf updates in Perl 5.14