platform/upstream/perl.git
14 years agoC++ compiler fix for util.c
George Greer [Wed, 21 Jul 2010 08:11:51 +0000 (10:11 +0200)]
C++ compiler fix for util.c

Even with all of the changes, we still die on a strchr() call now
because glibc provides "correct" strchr prototypes rather than the
C ones.

C:
  char *strchr(const char *s, int c)
C++:
  const char *strchr(const char *s, int c)
  char *strchr(      char *s, int c)

and of course C++ doesn't let you convert a 'const char *' to a
'char *' so boom on util.c:3972 in Perl_grok_bslash_o (due to 'e').

14 years agoalarm() on Windows cannot interrupt blocking I/O
Jan Dubois [Wed, 21 Jul 2010 01:48:59 +0000 (18:48 -0700)]
alarm() on Windows cannot interrupt blocking I/O

14 years agoRemove spurious ')'
Jan Dubois [Wed, 21 Jul 2010 00:57:21 +0000 (17:57 -0700)]
Remove spurious ')'

14 years agoUse .\ instead of ./ on Windows
Jan Dubois [Wed, 21 Jul 2010 00:50:46 +0000 (17:50 -0700)]
Use .\ instead of ./ on Windows

14 years agoalarm() on Windows doesn't interrupt system calls
Jan Dubois [Wed, 21 Jul 2010 00:38:47 +0000 (17:38 -0700)]
alarm() on Windows doesn't interrupt system calls

alarm() on Windows is implemented using a timer that is checked in
win32_async_check(), so there is no way a SIGALRM can be raised while
Perl is blocking in a system call.

14 years agoupdate TOC and perldelta references
David Golden [Tue, 20 Jul 2010 11:00:01 +0000 (07:00 -0400)]
update TOC and perldelta references

14 years agoretitle perl5133delta.pod
David Golden [Tue, 20 Jul 2010 10:56:33 +0000 (06:56 -0400)]
retitle perl5133delta.pod

14 years agocreate perl5134delta.pod
David Golden [Tue, 20 Jul 2010 10:56:14 +0000 (06:56 -0400)]
create perl5134delta.pod

14 years agoremove trailing spaces in epigraphs.pod
David Golden [Tue, 20 Jul 2010 10:45:55 +0000 (06:45 -0400)]
remove trailing spaces in epigraphs.pod

14 years agoAdd 5.13.3 epigraph
David Golden [Tue, 20 Jul 2010 10:45:31 +0000 (06:45 -0400)]
Add 5.13.3 epigraph

14 years agoset a Test-Harness file +x in makerel
David Golden [Tue, 20 Jul 2010 09:14:13 +0000 (05:14 -0400)]
set a Test-Harness file +x in makerel

14 years agodon't use Test::More in dual-life.t
David Golden [Tue, 20 Jul 2010 08:04:26 +0000 (04:04 -0400)]
don't use Test::More in dual-life.t

14 years agoperl5133delta.pod refer to \o{...} consistently
David Golden [Tue, 20 Jul 2010 07:38:04 +0000 (03:38 -0400)]
perl5133delta.pod refer to \o{...} consistently

14 years agoadd new release to perlhist
David Golden [Tue, 20 Jul 2010 07:05:02 +0000 (00:05 -0700)]
add new release to perlhist

14 years agoAdd dual-life.t to MANIFEST
David Golden [Tue, 20 Jul 2010 07:02:21 +0000 (00:02 -0700)]
Add dual-life.t to MANIFEST

14 years agoperl5133delta.pod: finalize update modules list
David Golden [Tue, 20 Jul 2010 07:00:31 +0000 (00:00 -0700)]
perl5133delta.pod: finalize update modules list

14 years agoUpdate Module::Corelist for 5.13.3
David Golden [Tue, 20 Jul 2010 06:25:21 +0000 (23:25 -0700)]
Update Module::Corelist for 5.13.3

14 years agoFix typo in perl5133delta
David Golden [Tue, 20 Jul 2010 05:51:48 +0000 (01:51 -0400)]
Fix typo in perl5133delta

14 years agoFix Pod warning in perl5133delta.pod
David Golden [Tue, 20 Jul 2010 05:49:39 +0000 (01:49 -0400)]
Fix Pod warning in perl5133delta.pod

14 years agoUpdate Changes for version number bump
David Golden [Tue, 20 Jul 2010 05:43:16 +0000 (01:43 -0400)]
Update Changes for version number bump

14 years agoBump the perl version to 5.13.3
David Golden [Tue, 20 Jul 2010 05:04:38 +0000 (22:04 -0700)]
Bump the perl version to 5.13.3

14 years agoAdd exceptions to dual-life.t
David Golden [Tue, 20 Jul 2010 04:51:30 +0000 (21:51 -0700)]
Add exceptions to dual-life.t

14 years agoperl5133delta.pod: editorial changes and cleanup
David Golden [Tue, 20 Jul 2010 00:01:02 +0000 (17:01 -0700)]
perl5133delta.pod: editorial changes and cleanup

14 years agoperl5133delta.pod wrapping and cleanup
David Golden [Mon, 19 Jul 2010 23:39:49 +0000 (16:39 -0700)]
perl5133delta.pod wrapping and cleanup

14 years agoperl5133delta.pod: Acknowledgements and code delta
David Golden [Mon, 19 Jul 2010 23:39:16 +0000 (16:39 -0700)]
perl5133delta.pod: Acknowledgements and code delta

14 years agocmpVERSION.pl: don't flag version 'undef'
David Golden [Mon, 19 Jul 2010 23:10:37 +0000 (16:10 -0700)]
cmpVERSION.pl: don't flag version 'undef'

14 years agoBump module version numbers
David Golden [Mon, 19 Jul 2010 22:53:29 +0000 (15:53 -0700)]
Bump module version numbers

14 years agoadd link to smoke index
David Golden [Mon, 19 Jul 2010 21:55:58 +0000 (14:55 -0700)]
add link to smoke index

14 years agocore-cpan-diff: always use diff and ignore whitspace
David Golden [Mon, 19 Jul 2010 21:33:29 +0000 (14:33 -0700)]
core-cpan-diff: always use diff and ignore whitspace

14 years agocore-cpan-diff: tidied and always show version mismatch
David Golden [Mon, 19 Jul 2010 18:53:28 +0000 (11:53 -0700)]
core-cpan-diff: tidied and always show version mismatch

14 years agobump I18N::LangTags version to 0.35_01
David Golden [Mon, 19 Jul 2010 17:05:12 +0000 (10:05 -0700)]
bump I18N::LangTags version to 0.35_01

14 years agofix spelling err in pod re environmental variable
Jim Cromie [Thu, 15 Jul 2010 17:29:54 +0000 (11:29 -0600)]
fix spelling err in pod re environmental variable

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoperl5133delta: Add a note about Test::Harness's known issues
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 15:57:50 +0000 (15:57 +0000)]
perl5133delta: Add a note about Test::Harness's known issues

Test-Harness RT #59186 and RT #59457 introduced some
regressions. These are being fixed upstream but didn't make it into
this release.

14 years agoperl5133delta: Add commit references to "\400 - \777"
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 15:47:30 +0000 (15:47 +0000)]
perl5133delta: Add commit references to "\400 - \777"

14 years agoperl5133delta: Also note 9644846 in "Improved documen[...]"
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 15:45:18 +0000 (15:45 +0000)]
perl5133delta: Also note 9644846 in "Improved documen[...]"

"Improved documentation of unusual character escapes" was fixed up in
9644846.

14 years agoperl5133delta: A perldelta entry referenced an invalid commit
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 15:39:45 +0000 (15:39 +0000)]
perl5133delta: A perldelta entry referenced an invalid commit

"Improved documentation of unusual character escapes (bf82ca4)" added
in a0316a43 should have referenced 4068718. There's no bf82ca4 commit
in the perl repository.

14 years agoperl5133delta: Note the tests for "Uppercase X/B allowed.."
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 15:32:06 +0000 (15:32 +0000)]
perl5133delta: Note the tests for "Uppercase X/B allowed.."

14 years agoperl5133delta: Expand on "File::Copy skips suid tests on a nosuid partition"
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 15:27:42 +0000 (15:27 +0000)]
perl5133delta: Expand on "File::Copy skips suid tests on a nosuid partition"

Include the explanation from my cae9400 patch in the perldelta so that
it can be understood when read stand-alone.

14 years agoperl5133delta: Test-Harness to CPAN version 3.21 (6d31366)
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 14:55:35 +0000 (14:55 +0000)]
perl5133delta: Test-Harness to CPAN version 3.21 (6d31366)

14 years agoperl5133delta: Term-ANSIColor was bumped to CPAN version 3.00 (2c33c76)
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 14:44:32 +0000 (14:44 +0000)]
perl5133delta: Term-ANSIColor was bumped to CPAN version 3.00 (2c33c76)

14 years agoperl5133delta: Link from the CvGV() change to Known Problems
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 14:39:11 +0000 (14:39 +0000)]
perl5133delta: Link from the CvGV() change to Known Problems

14 years agoperl5133delta: Note the commit range for "MacOS Classic"
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 14:30:32 +0000 (14:30 +0000)]
perl5133delta: Note the commit range for "MacOS Classic"

14 years agoperl5133delta: Expand on "Uppercase X/B allowed.."
Ævar Arnfjörð Bjarmason [Mon, 19 Jul 2010 14:23:42 +0000 (14:23 +0000)]
perl5133delta: Expand on "Uppercase X/B allowed.."

Mention that C<eval sprintf "%#X", 0x10> now works, and that upper
case hex/binary literals are supported in C and friends.

14 years agoAdd perl5133delta reminder about module linking
David Golden [Mon, 19 Jul 2010 14:23:10 +0000 (07:23 -0700)]
Add perl5133delta reminder about module linking

14 years agoperl5133delta.pod: Removed most XXX and boilerplate
David Golden [Mon, 19 Jul 2010 13:58:24 +0000 (09:58 -0400)]
perl5133delta.pod: Removed most XXX and boilerplate

14 years agoperl5133delta additions and revisions
David Golden [Mon, 19 Jul 2010 13:53:54 +0000 (09:53 -0400)]
perl5133delta additions and revisions

14 years agopods: mention \o{}, 3 octal digits
Karl Williamson [Sun, 18 Jul 2010 19:12:39 +0000 (13:12 -0600)]
pods: mention \o{}, 3 octal digits

This patch adds a mention of \o{} to perlre to avoid the backreference
ambiguities, and uses 3 octal digits in an example, and suggests using 3
digits where 2 were suggested before.

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoMaintainers.pl: podlators Makefile.PL is CUSTOMIZED
David Golden [Mon, 19 Jul 2010 02:34:07 +0000 (22:34 -0400)]
Maintainers.pl: podlators Makefile.PL is CUSTOMIZED

14 years agoMaintainers.pl: CPANPLUS Makefile.PL is CUSTOMIZED
David Golden [Mon, 19 Jul 2010 02:29:35 +0000 (22:29 -0400)]
Maintainers.pl: CPANPLUS Makefile.PL is CUSTOMIZED

14 years agoAdd libnet Makefile.PL to CUSTOMIZED in Maintainers
David Golden [Mon, 19 Jul 2010 01:36:39 +0000 (21:36 -0400)]
Add libnet Makefile.PL to CUSTOMIZED in Maintainers

14 years agoAdd support for CUSTOMIZED in Maintainers.PL
David Golden [Mon, 19 Jul 2010 01:34:54 +0000 (21:34 -0400)]
Add support for CUSTOMIZED in Maintainers.PL

Some dual-life modules have custom files in core that differ from
CPAN.  (e.g. Makefile.PL in libnet)  These files need to be listed
in EXCLUDED, but also in CUSTOMIZED so that we don't flag them
incorrectly as "only in Perl"

14 years agoRemoved Archive-Tar Makefile.PL so it autogenerates
David Golden [Mon, 19 Jul 2010 00:56:33 +0000 (20:56 -0400)]
Removed Archive-Tar Makefile.PL so it autogenerates

14 years agoAdded t/porting/dual-life.t
David Golden [Mon, 19 Jul 2010 00:51:30 +0000 (20:51 -0400)]
Added t/porting/dual-life.t

Because we manually generate Makefiles, any executables need to be
generated from .PL files in utils/.  This test checks if dual-life
executables show up in utils/.

14 years agocore-cpan-diff: improve detection of version mismatches
David Golden [Mon, 19 Jul 2010 00:25:22 +0000 (20:25 -0400)]
core-cpan-diff: improve detection of version mismatches

14 years agoList libnet Makefile.PL as excluded
David Golden [Mon, 19 Jul 2010 00:14:44 +0000 (20:14 -0400)]
List libnet Makefile.PL as excluded

14 years agocore-cpan-diff: perltidy with default settings
David Golden [Sun, 18 Jul 2010 23:20:53 +0000 (19:20 -0400)]
core-cpan-diff: perltidy with default settings

14 years agocore-cpan-diff: various enhancements
David Golden [Sun, 18 Jul 2010 23:10:55 +0000 (19:10 -0400)]
core-cpan-diff: various enhancements

* Extracted directories are cached and re-used
* Perl vs CPAN version mismatches shown in summary output
* Various minor code cleanup

Some diagnostic output was surpressed in diff mode, but not all.
I found the output confusing to follow in diff mode as a result
so I enabled some of the previously surpressed output.

14 years agocore-cpan-diff: fix handling of file:/// urls
David Golden [Sun, 18 Jul 2010 20:02:49 +0000 (16:02 -0400)]
core-cpan-diff: fix handling of file:/// urls

14 years agocore-cpan-diff: remove trailing spaces
David Golden [Sun, 18 Jul 2010 18:50:14 +0000 (14:50 -0400)]
core-cpan-diff: remove trailing spaces

14 years agocore-cpan-diff: add option for local CPAN mirror
David Golden [Sun, 18 Jul 2010 18:47:47 +0000 (14:47 -0400)]
core-cpan-diff: add option for local CPAN mirror

14 years agoperl5133delta.pod: Notes on CvGV reference counting
David Golden [Sun, 18 Jul 2010 18:32:11 +0000 (14:32 -0400)]
perl5133delta.pod: Notes on CvGV reference counting

14 years agoadd CvGV_set() macro and make CvGV() rvalue only
David Mitchell [Sun, 18 Jul 2010 17:18:50 +0000 (18:18 +0100)]
add CvGV_set() macro and make CvGV() rvalue only

Now that CvGV can sometimes be reference counted, stop people from directly
assigning to it (by using CvGV as an lvalue), and instead force them to use
CvGV_set()

14 years agochange when to make CvGV refcounted
David Mitchell [Sun, 18 Jul 2010 15:21:03 +0000 (16:21 +0100)]
change when to make CvGV refcounted

Rather than making CvGV refcounted if the CV is anon, decide based on
whether the GV pointed to by CvGV holds a reference back to us. Normally
these two will be equivalent, but this way is more robust if people are
doing weird things.

Also spotted an error with cv_clone not clearing the CVf_CVGV_RC flag on
the newly cloned cv. This shouldn't normally matter as it will get set
shortly anyway, but best to keep things logically correct.

14 years agoadd CVf_CVGV_RC flag
David Mitchell [Sun, 18 Jul 2010 14:07:08 +0000 (15:07 +0100)]
add CVf_CVGV_RC flag

after the recent commit 803f274831f937654d48f8cf0468521cbf8f5dff,
the CvGV field is sometimes reference counted. Since it was intended that
the reference counting would happen only for anonymous CVs, the CVf_ANON
flag was co-opted to indicate whether RC was being used. This is not
entirely robust; for example, sub __ANON__ {} is a non-anon sub which
points to the same GV used by anon subs, which while itself doesn't
directly break things, shows that the potential for breakage is there.

So add a separate flag just to indicate the reference count status of the
CvGV field.

14 years agoFix address of register error from 26a0cb8
David Golden [Sun, 18 Jul 2010 01:50:40 +0000 (21:50 -0400)]
Fix address of register error from 26a0cb8

14 years agoperlop.pod: document \o{} escape
David Golden [Sat, 17 Jul 2010 20:27:21 +0000 (16:27 -0400)]
perlop.pod: document \o{} escape

This is a merge resolution based on original work by Karl Williamson.

14 years agoAdd \o{} escape
Karl Williamson [Thu, 15 Jul 2010 23:28:28 +0000 (17:28 -0600)]
Add \o{} escape

This commit adds the new construct \o{} to express a character constant
by its octal ordinal value, along with ancillary tests and
documentation.

A function to handle this is added to util.c, and it is called from the
3 parsing places it could occur.  The function is a candidate for
in-lining, though I doubt that it will ever be used frequently.

14 years agoperlrebackslash: Nits
Karl Williamson [Thu, 15 Jul 2010 19:34:50 +0000 (13:34 -0600)]
perlrebackslash: Nits

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoperlreref.pod: Nits
Karl Williamson [Thu, 15 Jul 2010 18:25:13 +0000 (12:25 -0600)]
perlreref.pod: Nits

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoperlre.pod: Nits
Karl Williamson [Thu, 15 Jul 2010 17:40:14 +0000 (11:40 -0600)]
perlre.pod: Nits

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoNits in perlrebackslash
Karl Williamson [Thu, 24 Jun 2010 20:41:28 +0000 (14:41 -0600)]
Nits in perlrebackslash

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoAdd tests for \400 for "" strings, s//replacement/
Karl Williamson [Thu, 24 Jun 2010 17:00:06 +0000 (11:00 -0600)]
Add tests for \400 for "" strings, s//replacement/

Signed-off-by: David Golden <dagolden@cpan.org>
14 years ago\400 -\777 now means the same thing in all d-quote
Karl Williamson [Thu, 24 Jun 2010 14:21:27 +0000 (08:21 -0600)]
\400 -\777 now means the same thing in all d-quote

Prior to this patch, \400 - \777 meant something different in some
circumstances in regexes outside bracketed character classes.  A
deprecated warning message has been in place since 5.10.1 when this
happens.  Remove the warning, and bring the behavior into line with the
other double-quotish contexts.  \400 - \777 now always means the same
thing as \x{100} - \x{1FF} (except when the octal forms  are taken as
backreferences.)

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoAdd examples to perlre on perils of not using \g{}
Karl Williamson [Thu, 24 Jun 2010 14:06:27 +0000 (08:06 -0600)]
Add examples to perlre on perils of not using \g{}

These come from Abigail.

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoRemove extra blanks from t/re/re_tests, vim
Karl Williamson [Thu, 24 Jun 2010 00:53:56 +0000 (18:53 -0600)]
Remove extra blanks from t/re/re_tests, vim

My vim settings were causing extra blanks in this file; remove the ones
I added recently and set the vim options to disable the offending
feature.

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoReinstate aa3f85c5f369736a7e50055b726cf2ca11336ce9.
Craig A. Berry [Sat, 17 Jul 2010 22:46:48 +0000 (17:46 -0500)]
Reinstate aa3f85c5f369736a7e50055b726cf2ca11336ce9.

Which was clobbered by 7b0eef92ba8ed2aa84e9187dadebc5cabfc3a3c5.

And still awaiting upstream integration at:

<https://rt.cpan.org/Public/Bug/Display.html?id=55236>

Also bumped the version this time to leave a better clue that something
has changed in blead.

14 years agoIn pp_qr, use gv_stashsv() directly on the SV.
Nicholas Clark [Sat, 17 Jul 2010 12:00:46 +0000 (13:00 +0100)]
In pp_qr, use gv_stashsv() directly on the SV.

Brought to you by the campaign for the elimination of strlen().

14 years agoAvoid test suite hang with new readline test on VMS.
Craig A. Berry [Fri, 16 Jul 2010 17:04:54 +0000 (12:04 -0500)]
Avoid test suite hang with new readline test on VMS.

14 years agoAdd Perl_blockhook_register to perl5133delta.
Ben Morrow [Fri, 16 Jul 2010 16:15:19 +0000 (17:15 +0100)]
Add Perl_blockhook_register to perl5133delta.

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoUpdate perl5133delta
Josh ben Jore [Fri, 16 Jul 2010 06:00:25 +0000 (06:00 +0000)]
Update perl5133delta

14 years agoThe debugger now continues to use RemotePort when it's been configured to use it.
Josh ben Jore [Tue, 13 Jul 2010 21:49:57 +0000 (14:49 -0700)]
The debugger now continues to use RemotePort when it's been configured to use it.

14 years agoperlop.pod: Rephrase hexadecimal escape wording
David Golden [Thu, 15 Jul 2010 02:26:33 +0000 (20:26 -0600)]
perlop.pod: Rephrase hexadecimal escape wording

Clarifies how hexadecimal escapes are interpreted, with particular
attention to the treatment of invalid characters.

Based on an original draft patch by Karl Williamson.

14 years agoAdd summary list mode to git-deltatool
David Golden [Fri, 16 Jul 2010 03:55:50 +0000 (23:55 -0400)]
Add summary list mode to git-deltatool

14 years agoMore perl5133delta updates
David Golden [Fri, 16 Jul 2010 03:48:07 +0000 (23:48 -0400)]
More perl5133delta updates

14 years agoMention that Ask did not actually release 5.11.6
Leon Brocard [Thu, 15 Jul 2010 19:42:08 +0000 (20:42 +0100)]
Mention that Ask did not actually release 5.11.6

14 years agoSmall spelling/grammar nit to Locale::Maketext::Guts*
Jesse Vincent [Thu, 15 Jul 2010 18:42:53 +0000 (14:42 -0400)]
Small spelling/grammar nit to Locale::Maketext::Guts*

14 years agoClean up older Locale::Maketext internals to no longer do crazy string
Todd Rinaldo [Thu, 15 Jul 2010 18:24:07 +0000 (14:24 -0400)]
Clean up older Locale::Maketext internals to no longer do crazy string
eval tricks.

14 years agouse modern Perl style in example
Alexandr Ciornii [Tue, 11 May 2010 15:41:22 +0000 (18:41 +0300)]
use modern Perl style in example

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoMake example work with "use strict" by eliminating barewords.
Alexandr Ciornii [Tue, 11 May 2010 15:39:19 +0000 (18:39 +0300)]
Make example work with "use strict" by eliminating barewords.

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoStop using $ENV{LESS} for parameters not intended for less
Josh ben Jore [Thu, 15 Jul 2010 13:06:28 +0000 (13:06 +0000)]
Stop using $ENV{LESS} for parameters not intended for less

14 years agoConfigure has a path to less and perl5db.pl can use it
Josh ben Jore [Thu, 15 Jul 2010 13:04:26 +0000 (13:04 +0000)]
Configure has a path to less and perl5db.pl can use it

14 years agoMacros to en/disable blockhook entries.
Ben Morrow [Tue, 13 Jul 2010 21:20:21 +0000 (22:20 +0100)]
Macros to en/disable blockhook entries.

This allows the individual callbacks to be switched on and off as
necessary, without removing the entry from PL_blockhooks.

14 years agoUpdate MANIFEST.
Ben Morrow [Tue, 13 Jul 2010 20:06:19 +0000 (21:06 +0100)]
Update MANIFEST.

Properly, this time.

14 years agoRemove diagnostics from XS-APItest/t/blockhooks.
Ben Morrow [Tue, 13 Jul 2010 20:02:29 +0000 (21:02 +0100)]
Remove diagnostics from XS-APItest/t/blockhooks.

They were causing problems with 'make test'.

14 years ago[perl #72729] Test appending sv_gets for ascii/utf8 in target and handle
Josh ben Jore [Thu, 15 Jul 2010 05:08:24 +0000 (22:08 -0700)]
[perl #72729] Test appending sv_gets for ascii/utf8 in target and handle

14 years ago[perl #72729] TODO for aborted readline() returning '' instead of undef
Josh ben Jore [Thu, 15 Jul 2010 05:06:16 +0000 (22:06 -0700)]
[perl #72729] TODO for aborted readline() returning '' instead of undef

14 years ago[perl #72729] Truncate sv_gets(sv) only when not appending to a string
Josh ben Jore [Thu, 15 Jul 2010 05:02:28 +0000 (22:02 -0700)]
[perl #72729] Truncate sv_gets(sv) only when not appending to a string

14 years agoAdd a 'blocking' type for git-deltatool
David Golden [Thu, 15 Jul 2010 02:00:41 +0000 (22:00 -0400)]
Add a 'blocking' type for git-deltatool

14 years agoPATCH: [perl #76502] Fix UCD.pm doc
Karl Williamson [Wed, 14 Jul 2010 23:21:40 +0000 (17:21 -0600)]
PATCH: [perl #76502] Fix UCD.pm doc

Thank you for your bug report.  Change <lower> to <upper> as the report
showed.

Signed-off-by: David Golden <dagolden@cpan.org>
14 years agoprotect CvGV weakref with backref
David Mitchell [Mon, 12 Jul 2010 19:53:04 +0000 (20:53 +0100)]
protect CvGV weakref with backref

Each CV usually has a pointer, CvGV(cv), back to the GV that corresponds
to the CV's name (or to *foo::__ANON__ for anon CVs).  This pointer wasn't
reference counted, to avoid loops. This could leave it dangling if the GV
is deleted.

We fix this by:

For named subs, adding backref magic to the GV, so that when the GV is
freed, it can trigger processing the CV's CvGV field. This processing
consists of: if it looks like the freeing of the GV is about to trigger
freeing of the CV too, set it to NULL; otherwise make it point to
*foo::__ANON__ (and set CvAONON(cv)).

For anon subs, make CvGV a strong reference, i.e. increment the refcnt of
*foo::__ANON__. This doesn't cause a loop, since in this case the
__ANON__ glob doesn't point to the CV. This also avoids dangling pointers
if someone does an explicit 'delete $foo::{__ANON__}'.

Note that there was already some partial protection for CvGV with
commit f1c32fec87699aee2eeb638f44135f21217d2127. This worked by
anonymising any corresponding CV when freeing a stash or stash entry.
This had two drawbacks. First it didn't fix CVs that were anonmous or that
weren't currently pointed to by the GV (e.g. after local *foo), and
second, it caused *all* CVs to get anonymised during cleanup, even the
ones that would have been deleted shortly afterwards anyway. This commit
effectively removes that former commit, while reusing a bit of the
actual anonymising code.