Steve Hay [Sun, 18 Aug 2013 15:47:31 +0000 (16:47 +0100)]
Turn off executable bit accidentally added to Devel-PPPort files
Marcus Holland-Moritz [Sat, 17 Aug 2013 14:04:57 +0000 (15:04 +0100)]
Update Devel-PPPort to CPAN version 3.21
[DELTA]
3.21 - 2013-08-17
* Fix cpan #87870: Merge core perl commit
90b0dc0e2e
(Thanks to Father Chrysostomos for the original patch and
to Steve Hay for forwarding it)
* Fix cpan #86975: Deterministically order API elements in POD
(Thanks to Karl Williamson for providing a patch.)
* Fix cpan #81796: my $_ is deprecated
(Thanks to Nicholas Clark for providing a patch)
* Fix cpan #81484: fix isASCII and isCNTRL for inputs > 255
(Thanks to Karl Williamson for providing a patch)
* Fix cpan #80314: make use of PERL_NO_GET_CONTEXT the default
* Fix cpan #79814: Install to 'site' for perl 5.11+
(Thanks to Robert Sedlacek for providing a patch)
* Fix cpan #78271: Need SvPV_nomg_nolen
* Adapt buildperl.pl for newer Perl releases
* Update masked_versions regex for 5.005 thread builds
* Some tweaks needed to support 5.003 on 64-bit platforms
Steve Hay [Mon, 19 Aug 2013 00:42:33 +0000 (01:42 +0100)]
perldelta - Remove all but one XXX notices
Also, move a performance bug fix to the Performance Enhancements section
and mention new test scripts in the Testing section.
Steve Hay [Mon, 19 Aug 2013 00:13:17 +0000 (01:13 +0100)]
perldelta - Standardize references to other versions of Perl
Steve Hay [Mon, 19 Aug 2013 00:04:38 +0000 (01:04 +0100)]
perldelta - Fill in the remaining stuff that needed to be done still
Commit 8fe3c67 was actually part of merge e82485c, covered already by
31d5dc6.
James E Keenan [Sun, 18 Aug 2013 23:47:31 +0000 (01:47 +0200)]
Trim second block (nolinenumbers) to avert crashes on Win32.
In second block of tests, eliminate all tests except those needed to prove
that ParseXS can write a .c file without line numbers. We will treat this as
sufficient because the tests we are deleting are causing crashes on Windows.
For: RT #119231
Steve Hay [Sun, 18 Aug 2013 21:09:37 +0000 (22:09 +0100)]
Update t/porting/customized.dat
Time::HiRes's Makefile.PL is no longer CUSTOMIZED, as of commit 0f0eae2
Steve Hay [Sun, 18 Aug 2013 20:37:08 +0000 (21:37 +0100)]
perldelta - Fill in TODO items regarding modules and pragmata
Steve Hay [Sun, 18 Aug 2013 18:47:49 +0000 (19:47 +0100)]
perldelta - Add entries for perldiag changes in 6f1b3ab and 6c341f6
Zefram [Sun, 18 Aug 2013 13:41:52 +0000 (14:41 +0100)]
avoid eval misinterpretation on old perls
An eval-BLOCK in the Carp test suite is misinterpreted by perl 5.6 as an
eval-STRING. Add a do-BLOCK wrapper inside the block to satisfy perl 5.6.
Zefram [Sun, 18 Aug 2013 13:24:30 +0000 (14:24 +0100)]
better check for overload::StrVal
The overloading logic in Carp got confused on perl 5.6 by the overload
module not setting $VERSION. As the overload-is-loaded check controls
the use of overload::StrVal(), check for that sub being defined rather
than checking $VERSION.
Zefram [Sun, 18 Aug 2013 12:50:13 +0000 (13:50 +0100)]
avoid "uninitialized value" warnings in Carp
On older Perls, a call of the form $undef->() generates an "uninitialized
value" warning before dying. The new overloaded-object logic in Carp
assumes the more modern behaviour, that the undefinedness causes an
exception directly with no separate warning. To restore compatibility of
Carp to older Perls, check explicitly for definedness of $RefArgFormatter
rather than relying on the exception.
Father Chrysostomos [Sun, 18 Aug 2013 07:04:03 +0000 (00:04 -0700)]
Let t/mro/basic.t be run from the top level
Father Chrysostomos [Sun, 18 Aug 2013 07:02:19 +0000 (00:02 -0700)]
perldelta entry for the prev. commit
Father Chrysostomos [Sun, 18 Aug 2013 06:58:47 +0000 (23:58 -0700)]
[perl #114864] Make UNIVERSAL::DESTROY changes invalidate caches
Commit
8c34e50d inadvertently caused DESTROY caches not to be
reset when UNIVERSAL::DESTROY changes. Normally, a change to
a method will cause mro_method_changed_in to be called on all
subclasses, but mro.c cheats for UNIVERSAL and just does
++PL_sub_generation. So clearing the DESTROY cache explicitly
in mro_method_changed_in is clearly not enough.
Father Chrysostomos [Sun, 18 Aug 2013 06:12:46 +0000 (23:12 -0700)]
perldelta: c56ed9f deserves no mention
It fixed a bug in the handling of a certain combination of SV flags
that never happened in 5.19.2 and earlier.
Zefram [Sat, 17 Aug 2013 22:47:23 +0000 (23:47 +0100)]
update Time-HiRes to version 1.9726 from CPAN
Steve Hay [Sat, 17 Aug 2013 18:12:43 +0000 (19:12 +0100)]
perldelta - Fix POD typo
Steve Hay [Sat, 17 Aug 2013 17:33:55 +0000 (18:33 +0100)]
Add $dl_dlext to DynaLoader's interface summary now that it's documented
Steve Hay [Sat, 17 Aug 2013 17:33:24 +0000 (18:33 +0100)]
Correct File::Spec's perldelta.pod entry
Steve Hay [Sat, 17 Aug 2013 17:25:00 +0000 (18:25 +0100)]
perldelta - Start updating for 5.19.3
I believe all relevant changes are now mentioned except for the 6 listed
at the top of the file, which may or may not be deserving of a mention.
Zefram [Sat, 17 Aug 2013 16:24:23 +0000 (17:24 +0100)]
perldelta for File::Spec XSification
Zefram [Sat, 17 Aug 2013 16:11:28 +0000 (17:11 +0100)]
Merge branch 'zefram/File-Spec-in-XS' into HEAD
Nicholas Clark [Wed, 12 Jun 2013 17:48:37 +0000 (19:48 +0200)]
In Cwd's THX_unix_canonpath add two casts from (void*) to keep C++ sweet.
The new XS implementation of various File::Spec methods needs a couple of
casts to compile with a C++ compiler.
Zefram [Thu, 28 Feb 2013 16:48:01 +0000 (16:48 +0000)]
File::Spec in XS
Reimplement parts of File::Spec in XS. Mainly File::Spec::Unix methods.
The methods can be used as methods on File::Spec::Unix, as methods
inherited by File::Spec::$notunix, and as standalone functions. Quite a
lot of complexity comes from making them work in all of these roles,
without the compatibility damaging the performance of any of them.
The methods therefore need to check their invocant, using C code
where the invocant is File::Spec::Unix, and calling other methods if
it is not, so that they play nicely in composition with other methods.
The standalone function is another XS entry point, entirely unencumbered
by OO interface paraphernalia. File::Spec::Functions is modified to
pick up the separate function version.
There is new logic for File::Spec to fall back to pure Perl, in the way
that Cwd.pm already does, for XS-impaired systems.
Nicholas Clark [Sat, 2 Mar 2013 11:19:07 +0000 (12:19 +0100)]
Add the upstream Makefile.PL for Cwd
This needs to return to the perl repository because the upcoming change to Cwd
needs to patch to include extra logic not in the auto-generated Makefile.PL
Nicholas Clark [Sat, 2 Mar 2013 11:07:33 +0000 (12:07 +0100)]
Add dist/constant/lib to the paths in the generated lib/buildcustomize.pl
Strictly, add it to write_buildcustomize.pl, and so that the absolute path
is added to the generated file.
James E Keenan [Fri, 16 Aug 2013 23:59:23 +0000 (01:59 +0200)]
Avert crashes when testing in parallel.
Both t/001-basic.t and what was t/004-nolinenumbers.t were trying to write to
a 't/XSTest.c' file. When run in parallel, this was causing problems when
TEST_JOBS >= 1 (2 on some boxes, 4 on dromedary).
Since all that t/004-nolinenumbers.t was ever trying to do was to run
process_file() without line numbers -- a case not exercised prior to my
2009-11 refactoring/test additions -- the simplest way to avoid these
problems is to stuff the tests from t/004 into t/001 and delete t/001.
For: RT #119231
Lukas Mai [Sat, 17 Aug 2013 07:29:52 +0000 (09:29 +0200)]
PerlIO: remove string eval/code injection (#119287)
Father Chrysostomos [Thu, 15 Aug 2013 04:57:01 +0000 (21:57 -0700)]
Increase $mro::VERSION to 1.13
Father Chrysostomos [Thu, 15 Aug 2013 04:56:13 +0000 (21:56 -0700)]
mro.pm: Typo
Lukas Mai [Sat, 17 Aug 2013 13:55:22 +0000 (15:55 +0200)]
Further typo correction.
James E Keenan [Sat, 17 Aug 2013 13:02:34 +0000 (15:02 +0200)]
Fix typo in comment. mauke- ++.
For: RT #119331
Steve Hay [Sat, 17 Aug 2013 11:19:48 +0000 (12:19 +0100)]
perldelta - Consistent use of C<> and L<>
Steve Hay [Sat, 17 Aug 2013 10:54:12 +0000 (11:54 +0100)]
perldelta - Consistent style for [perl/cpan #NNNNN] numbers
Steve Hay [Sat, 17 Aug 2013 10:46:26 +0000 (11:46 +0100)]
perldelta - Two spaces between sentences
Steve Hay [Sat, 17 Aug 2013 10:43:21 +0000 (11:43 +0100)]
perldelta - Wrap to 79 columns
Steve Hay [Fri, 16 Aug 2013 21:48:31 +0000 (22:48 +0100)]
Skip copying perlhist.pod entries to blead for BLEAD-POINT releases
Other releases should have added themselves to blead's perlhist.pod by this
very instruction itself so there's no need to do this for BLEAD-POINT
releases themselves.
Steve Hay [Fri, 16 Aug 2013 21:42:17 +0000 (22:42 +0100)]
Remove double blank lines from the RMG
A number of =headN sections were preceded by two blank lines, but the vast
majority have only one so normalize them all to one.
Steve Hay [Fri, 16 Aug 2013 21:37:40 +0000 (22:37 +0100)]
Correct a couple of references to BLEAD-FINAL in the RMG
(There isn't a release type called "BLEAD": we have either "BLEAD-POINT" or
"BLEAD-FINAL". There is one reference to "BLEAD" remaining, which I think
in the context is intended to mean "either BLEAD-POINT or BLEAD-FINAL".)
Steve Hay [Fri, 16 Aug 2013 21:27:32 +0000 (22:27 +0100)]
Rearrange the RMG steps relating to the release branch and tag
The main steps in this regard in the current RMG are:
1. Commit the work as it's done to the local release branch
2. Push those commits to the remote release branch (creating it in the
process)
3. Create a tag identifying the last commit in the release branch
4. Publish that release tag to the public repository
5. Merge the [local] release branch commits into the local blead branch
6. Push those merged commits to the remote blead branch
A recently added query in the RMG asked why it was necessary to push the
work so far (step (2) above), given that we're working on a release branch.
In an email discussion with RJBS we reached the conclusion that it is
indeed unnecessary: the merge in step (5) operates purely on the local
release branch, so there is no need to push anything first.
The release tag still needs to be pushed (step (4)), though, because in a
default Git configuration "git push" only pushes commits, not tags as well.
However, if we omit step (2) then it makes more sense to delay step (4)
until after steps (5) and (6) otherwise we are publishing a tag identifying
a commit that hasn't been pushed anywhere public yet.
The above sequence of steps has therefore been changed to:
1. Commit the work as it's done to the local release branch
2. Create a tag identifying the last commit in the local release branch
3. Merge the local release branch commits into the local blead branch
4. Push those merged commits to the remote blead branch
5. Publish the tag (which identifies the last of those pushed commits)
to the public repository
For the same reasons, the "git push origin ...." when disarming
patchlevel.h in non-BLEAD-POINT releases has been removed since we're still
on the release branch at this point in the process.
Also, since we now never push anything to a remote release branch, there is
no longer any need to delete it. Only the local release branch needs
deleting.
Finally, the last "git commit" instruction in the RMG (regarding copying
perldelta.pod to blead for MAINT and BLEAD-FINAL releases) was lacking a
"git push origin ....": we're no longer on the release branch by this stage
of the process.
Craig A. Berry [Fri, 16 Aug 2013 22:13:24 +0000 (17:13 -0500)]
Fix include-related missing variables in configure.com.
H.Merijn Brand [Fri, 16 Aug 2013 12:23:20 +0000 (14:23 +0200)]
[perl #119271] Faulty test for INT16 in Configure
#ifdef INT16
int16_t i = INT16_MAX;
uint16_t i = UINT16_MAX;
printf("int16_t\n");
#endif
Declaring i twice is a typo; The second variable should be a 'u'.
Ricardo Signes [Fri, 16 Aug 2013 02:25:21 +0000 (22:25 -0400)]
perlhist: import perlhist changes from 5.18.1
Ricardo Signes [Fri, 16 Aug 2013 01:55:26 +0000 (21:55 -0400)]
perlexperiment: link to tracking ticket for installhtml
Ricardo Signes [Fri, 16 Aug 2013 01:55:01 +0000 (21:55 -0400)]
perlexperiment: link to tracking ticket for my $_
Ricardo Signes [Fri, 16 Aug 2013 01:54:50 +0000 (21:54 -0400)]
perlexperiment: link to tracking ticket for smartmatch
Ricardo Signes [Fri, 16 Aug 2013 01:54:32 +0000 (21:54 -0400)]
perlexperiment: link to tracking ticket for :unique
Ricardo Signes [Fri, 16 Aug 2013 00:26:33 +0000 (20:26 -0400)]
perlexperiment: embedded code in regex not experimental
This was sorted out by
83f32abae and the thread found at
http://www.nntp.perl.org/group/perl.perl5.porters/2013/06/msg203129.html
Ricardo Signes [Fri, 16 Aug 2013 00:20:17 +0000 (20:20 -0400)]
remove API experiments from perlexperiment
As we discussed on p5p, these experiments are too many, too
undifferentiated, and already marked in the perlapi documentation.
Karl Williamson [Thu, 15 Aug 2013 19:40:51 +0000 (13:40 -0600)]
lib/locale.t: Make Windows machines failures TODOs
On some Windows machines, all locales are defective except the C locale.
See http://markmail.org/message/5jwam4xsx4amsdnv.
Karl Williamson [Thu, 15 Aug 2013 19:26:55 +0000 (13:26 -0600)]
lib/locale.t: Add comment
Karl Williamson [Thu, 15 Aug 2013 19:24:15 +0000 (13:24 -0600)]
lib/locale.t: Add, improve debugging output
This now dumps out what all the [:posix:] classes match under debugging,
using the format introduced a few commits ago. This is helpful in
examining what might be wrong.
Karl Williamson [Thu, 15 Aug 2013 19:19:55 +0000 (13:19 -0600)]
lib/locale.t: Change variable name for accuracy
The variable means \w, not Alnum, which matches [:alnum:], and has a
somewhat different meaning.
Karl Williamson [Thu, 15 Aug 2013 18:42:46 +0000 (12:42 -0600)]
lib/locale.t: Improve debug output
This creates a function to display a list of code points that are passed
in. It uses hex for non-ASCII graphics and otherwise outputs the
characters, perhaps as ranges. It makes reading the output a lot
easier. Previously, there could be discrepancies in if the output was
in utf8 vs what the file handle thought, and even when there was no
such discrepancy, the upper Latin1 characters were displayed as if the
locale is Latin1, which it likely wasn't, so the graphics were
misleading.
Karl Williamson [Thu, 15 Aug 2013 18:38:19 +0000 (12:38 -0600)]
lib/locale.t: White-space only
Properly indent because of newly formed block
Karl Williamson [Thu, 15 Aug 2013 18:31:55 +0000 (12:31 -0600)]
lib/locale.t: Fix :digit:, :xdigit: tests
In commit
32e8aa3fdb11b64c2a141bf56441761d978fd17b, I forgot that the
POSIX standard allows \d ([:digit:]) to match either the 10 ASCII
digits, or those plus another 10 locale-dependent ones. This new commit
tests that the number matched is either 10 or 20, and if not 10, then
\d doesn't have to be a subset of [:xdigit:], so skip that test.
Karl Williamson [Wed, 14 Aug 2013 20:07:03 +0000 (14:07 -0600)]
lib/locale.t: Use proper constant.
Prior to this commit, locale.t faked out setlocale() somehow by making
LC_ALL a function that returns nothing. This commit changes that to use
the proper constant POSIX::LC_ALL
Chris 'BinGOs' Williams [Thu, 15 Aug 2013 21:23:48 +0000 (22:23 +0100)]
Update Scalar-List-Utils to CPAN version 1.31
[DELTA]
1.31 -- Wed Aug 14 20:38 UTC 2013
* Bugfix pairmap to return list length in scalar context
* Added "Odd number of elements" warnings to all pair* functions
Craig A. Berry [Thu, 15 Aug 2013 20:46:51 +0000 (15:46 -0500)]
Fix remaining missing d_xxx variables in configure.com.
Steve Hay [Thu, 15 Aug 2013 13:02:10 +0000 (14:02 +0100)]
Make DMAKE import everything from the environment like NMAKE does
We already imported WIN64, CCHOME and a couple of others. It is useful to
have CCTYPE and GCCCROSS as well, and in fact we may as well simply import
everything since that is what NMAKE does anyway.
Steve Hay [Thu, 15 Aug 2013 12:04:55 +0000 (13:04 +0100)]
Regen t/porting/customized.dat following
f81a37f2d8
Steve Hay [Thu, 15 Aug 2013 08:20:56 +0000 (09:20 +0100)]
All modified files in UPSTREAM=>cpan/undef distros are now listed as CUSTOMIZED
All of these modifications already had, or now have, rt.cpan.org tickets
for them requesting that the changes be merged upstream, and the ticket
numbers are now listed in Maintainers.pl alongside each list of CUSTOMIZED
files.
The goal is ultimately to get new CPAN distros rolled for all of these so
that we have no CUSTOMIZED files left (other than a couple of special
cases - libnet, Module::Build and podlators), but there is nothing we can
do at our end to make this happen.
Steve Hay [Thu, 15 Aug 2013 07:36:36 +0000 (08:36 +0100)]
No need to look for Borland's debug symbols files
Commit
378eeda70c missed this.
Steve Hay [Thu, 15 Aug 2013 07:33:01 +0000 (08:33 +0100)]
Commit
4d3a042da1 missed a corresponding update to win32/makefile.mk
Karl Williamson [Thu, 15 Aug 2013 04:00:16 +0000 (22:00 -0600)]
perluniprops: Add missing character to what's matched
mktables omitted the equal sign from the generated pod for certain
properties that should match it.
Karl Williamson [Mon, 12 Aug 2013 17:23:34 +0000 (11:23 -0600)]
PATCH (partial) [perl #107816] Performance regression since
0abd0d78
0abd0d78 removed making tries under /di matching, the reason being that
it was broken for many of the upper Latin1 characters, the ones whose
matches aren't fully known until run-time. For example under /di, LATIN
CAPITAL LETTER A WITH GRAVE caselessly matches LATIN SMALL LETTER A WITH
GRAVE if and only if the target string is encoded in UTF-8. Under /ui
matching, these always match, and so tries are constructed for them.
But if a regnode doesn't contain any of the 61 problematic characters (nor
the sequence 'ss' (upper- and/or lowercase), what it matches is fully
known at compile time, and so should be trie-able as-is.
This commit merely keeps track of if any character in the regnode is one
of the 61 or the 'ss' sequence, and if not, changes its type to be /ui
and hence trie-able.
Karl Williamson [Sun, 11 Aug 2013 03:47:02 +0000 (21:47 -0600)]
regcomp.c: Move code into a #define
This logic will be used in an additional area of the program in a future
commit.
The #define also generalizes the code so it works on not just 'S' and
's', but any upper/lower case pair of ASCII alphabetics.
Karl Williamson [Sun, 11 Aug 2013 01:02:49 +0000 (19:02 -0600)]
regcomp.c: Skip calculating a pass2 value in pass1
The result of this value at the end of the loop is discarded in pass1 of
the regex compilation, so don't bother to calculate it.
Karl Williamson [Sun, 11 Aug 2013 01:00:37 +0000 (19:00 -0600)]
regcomp.h: Add a couple #define synonyms
Sometimes SIZE_ONLY isn't really clear as to what is going, on. This
adds PASS1 and PASS2 for such instances.
Karl Williamson [Sun, 11 Aug 2013 00:28:04 +0000 (18:28 -0600)]
regcomp.c: Move some initialization to declarations
This changes the declarations of two variables to also initialize them,
removing the initializing statements further down. This will be helpful
in a future commit, besides being generally slightly faster.
Karl Williamson [Mon, 12 Aug 2013 20:10:15 +0000 (14:10 -0600)]
utf8.pm: Slight clarification in pod
Tony Cook [Thu, 15 Aug 2013 01:29:01 +0000 (11:29 +1000)]
perldelta for 6136213, cccbbce
Tony Cook [Tue, 13 Aug 2013 06:38:50 +0000 (16:38 +1000)]
[perl #92446] fix recursion introduced in original patch
Some of the other interfaces format_arg() calls can cluck(), confess() or
longmess(). Avoid infinite recursion in those cases.
Also, instead of die() on format_arg recursion, fallback to basic
CLASS=HASH(...) output.
This fixes issues with CGI-Application, Devel-TrackSIG and Class-Std.
- for CGI-Application we ended up calling can(CARP_TRACE) on a CGI.pm
object, which instead of returning false, croak()s
- Devel-TrackSIG calls Carp::longmess when we set the __DIE__ handler
Steve Hay [Wed, 14 Aug 2013 20:21:08 +0000 (21:21 +0100)]
Scalar-List-Utils in perl does not use its own version of Makefile.PL
Steve Hay [Wed, 14 Aug 2013 20:19:13 +0000 (21:19 +0100)]
No need to list IGNORABLES as EXCLUDED
Steve Hay [Wed, 14 Aug 2013 13:18:49 +0000 (14:18 +0100)]
Fix miniperl.exe.manifest problem on Windows
Commit
cb251201d6 inadvertently broke the embedding of the manifest file
in miniperl.exe by changing the target which builds miniperl.exe and hence
the value of $@, which is used in the EMBED_EXE_MANI macro.
It isn't hugely important since the .exe works fine with the .manifest left
alongside it anyway (and miniperl.exe isn't even an installed file either),
but fixing it saves having to .gitignore the .manifest file which was being
left behind rather than embedded and deleted.
We can do this nicely in dmake-speak; unfortunately nmake's version of the
same isn't as nice since it can't handle macros in macro substitutions.
Steve Hay [Wed, 14 Aug 2013 07:24:33 +0000 (08:24 +0100)]
Upgrade Encode from 2.51 to 2.52
Craig A. Berry [Wed, 14 Aug 2013 00:27:01 +0000 (19:27 -0500)]
Fix miscellaneous missing d_xxx variables in configure.com.
There are still 200+ variables in Porting/Glossary that are not
written by configure.com, but these jumped out as the initial set
that might be of actual use.
Tony Cook [Wed, 14 Aug 2013 00:05:18 +0000 (10:05 +1000)]
[perl #3330] avoid an uncaught warning from op/inc.t
and add a warnings.t test case to check for that warning
Steve Hay [Tue, 13 Aug 2013 21:13:17 +0000 (22:13 +0100)]
MinGW(-w64)/gcc on Windows includes <stdbool.h>
None of VC++ 6.0 through 11.0 do, however, so no change in the *.vc files.
David Mitchell [Tue, 13 Aug 2013 21:25:46 +0000 (22:25 +0100)]
improve regexec_flags() API documentation
In the API, rename the 'screamer' arg to be 'sv' instead;
update the description of the functions args;
improve the documentation of the REXEC_* flags for the 'flags' arg.
Father Chrysostomos [Tue, 13 Aug 2013 20:13:44 +0000 (13:13 -0700)]
Correct perlguts docs about PADMY & PADTMP
Father Chrysostomos [Tue, 13 Aug 2013 20:10:15 +0000 (13:10 -0700)]
Copy PADTMPS passed to XSUBs
This resolves the last remaining issue in ticket #78194, that
newRV is supposedly buggy because it doesn’t copy its referent.
The full implications of the PADTMP are not explained anywhere in
the API docs, and even XSUBs shouldn’t have to worry about special
handling. (E.g., what if they do SvREFCNT_dec(SvRV(sv)); SvRV(sv)=...?)
So the real solution here is not to let XSUBs see them.
Father Chrysostomos [Tue, 13 Aug 2013 16:05:30 +0000 (09:05 -0700)]
Describe ext/XS-APItest/t/call.t better
Father Chrysostomos [Tue, 13 Aug 2013 15:56:12 +0000 (08:56 -0700)]
perldelta for Devel::Peek::Dump changes
Father Chrysostomos [Tue, 13 Aug 2013 15:39:14 +0000 (08:39 -0700)]
Update Devel::Peek docs with Dump changes
Boy, does this whole document need a rewrite....
Father Chrysostomos [Mon, 12 Aug 2013 04:54:11 +0000 (21:54 -0700)]
Inline Devel::Peek::Dump; allow Dump %hash etc.
This commit makes Devel::Peek::Dump modify the op tree to allow it to
dump arrays and hashes directly via Dump @array and Dump %hash. It
also puts other operators in rvalue context, allowing the return value
of rvalue substr for instance to be dumped, making Devel::Peek more
useful as a debugging tool.
Since a future commit (to fix the rest of #78194) is likely to make
pp_entersub copy PADTMPs (operator return values) for XSUBs (it
already happens for Perl subs as of
b479c9f2a), to the detriment of
Devel::Peek’s usefulness, I also made it inline Dump as a custom op.
This does introduce a backward-incompatible change, in that both argu-
ments to Dump are now in scalar context, and the number of arguments
is checked at compile time instead of run time (still run time for
&Dump(...)), but I think it is worth it.
Steve Hay [Tue, 13 Aug 2013 13:34:37 +0000 (14:34 +0100)]
Update win32/config_H.[gv]c canned configuration files
The win32/config.[gv]c files are generally kept up to date these days (and
we have tests to check that) so no changes are required in them.
The win32/config_H.[gv]c files are regenerated as per instructions in the
win32/Makefile and win32/makefile.mk, being careful to restore a couple of
things otherwise lost from the config_H.gc file. The files are now in sync
with the top-level master configuration file, config_h.SH.
Steve Hay [Tue, 13 Aug 2013 13:04:53 +0000 (14:04 +0100)]
Write win32/config.h with *nix EOLs, as per the canned config_H.* files
This makes no difference when actually building perl, but saves a dos2unix
when regenerating the canned files with the regen_config_h makefile targets.
David Mitchell [Tue, 13 Aug 2013 15:09:33 +0000 (16:09 +0100)]
perldelta: add entries for c3923c3, e82485c
Father Chrysostomos [Tue, 13 Aug 2013 15:24:59 +0000 (08:24 -0700)]
perldelta for 61e9f3f
Father Chrysostomos [Tue, 13 Aug 2013 15:21:59 +0000 (08:21 -0700)]
Appease podcheck.t
It doesn’t like E<quot> in links, though the pod spec (if I read it
correctly) allows it. It doesn’t mind quotes within quotes.
Father Chrysostomos [Tue, 13 Aug 2013 13:08:56 +0000 (06:08 -0700)]
perldelta for #92260/b59747a
Father Chrysostomos [Tue, 13 Aug 2013 13:07:33 +0000 (06:07 -0700)]
perldelta for #117355/aca7040
Father Chrysostomos [Tue, 13 Aug 2013 13:02:04 +0000 (06:02 -0700)]
perldelta for #3330/8140a7a
Father Chrysostomos [Tue, 13 Aug 2013 12:55:12 +0000 (05:55 -0700)]
Stop reset from clearing aliases to globs
If $z has been aliased to *foo, then reset("z") would turn off the
SvOK flags on *foo, putting it in an inconsistent state. This could
cause crashes.
Father Chrysostomos [Tue, 13 Aug 2013 05:11:24 +0000 (22:11 -0700)]
perldelta for 045071e
Father Chrysostomos [Tue, 13 Aug 2013 05:08:34 +0000 (22:08 -0700)]
perldelta for 5f213d9
Father Chrysostomos [Tue, 13 Aug 2013 05:07:51 +0000 (22:07 -0700)]
perldelta for 9bcf803 and 376ccf8