| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
The fix for #23810, 27e904532594b7fb, introduced a regression, spotted by
Nicholas as RT #75146.
Basically, in S_doeval() if the yyparse() fails due to dying (rather than
just bailing out with with a syntax error, say), then the topmost EVAL
context will have been popped. My improved error handling code mostly
understood the difference, but forgot that in the die case, PL_eval_root
will have been restored to its previous value by the CX pop, and thus
its value shouldn't be messed with.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New format:
This is perl 5, version 11, subversion 1 (v5.11.1) ...
The rationale for this change is that the Perl 5 interpreter will never
increment PERL_REVISION from 5 to 6, so we want people to start focusing
on the PERL_VERSION number as most significant and PERL_SUBVERSION as
equivalent to a "release number". In other words, "perl 5" is a
language, this is the 11th version of it, and the second release of that
version (counting from zero). Among other things, this makes the
output of -v and -V more consistent.
The old v-string style is included for familiarity and usage in code.
For builds from git, it will include the same extended format as it
did before, e.g. "(v5.11.1-176-gaf24cc9*)"
|
| |
|
| |
|
|
|
|
|
|
| |
This allows a build to complete with PERL_UNICODE set and a UTF-8 locale.
Without this there's a bootstrapping problem, as miniperl can't load the UTF-8
components of the regexp engine, because they're not yet built.
|
|
|
|
| |
Remove the long deprecated feature where split in scalar context writes to @_
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Also, t/TEST doesn't need to set $ENV{PERL_CORE} as t/TestInit.pm does this.
t/TestInit.pm should also add '.' to @INC (except under tainting) to correctly
emulate the include path of this perl binary once it and its libraries are
installed.
Fix t/run/cloexec.t to not rely on -I../lib being passed as a command-line
arguments. t/run/*.t *test* that command line arguments work, so they can't
be called with command line arguments that are mandatory for them to work.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
t/run/exit.t:58: eval { POSIX::WIFEXITED() };
fails on the new cygwin-1.7 with
5 [main] perl 3500 fork: child -1 - died waiting for longjmp
before initialization, retry 0, exit code 0xC0000005, errno 11
...
until I kill perl, because you must use an argument for WIFEXITED.
It didn't fail before, so I assume it's a cygwin regression, but it
must be fixed in the perl testsuite,
since an empty argument cries for trouble.
Use 0 or 1 as argument, ${^CHILD_ERROR_NATIVE} preferred.
|
| |
|
| |
|
|
|
|
|
| |
Change from dieing whenever -C is seen on the #! line, to dieing only when it
differs from that on the command line, or was not specified on the command line.
|
| |
|
| |
|
|
|
|
|
|
| |
This fixes bug #66942 : as a / was left in the directory name,
$INC{"Foo.pm"} for a file loaded from the current directory
was given the incorrect value "/Foo.pm".
|
|
|
|
|
|
|
|
| |
Its full name is _TTA0: (but TT for short) and it specifies the
controlling terminal of the current process, so you really can't
use it as the name of a temp directory. Follow-up to:
36f064bc37569629cfa8ffed15497f849ae8ccfa
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Both 'do' and 'require' treat paths *explicitly* relative to the
current directory (starting with './' or '../') as a special form of
absolute path. That means they can be loaded directly and don't need
to be resolved via @INC, so they don't rely on '.' being in @INC
(unless running in taint mode). This behavior is "documented" in the P5P
thread "Coderefs in @INC" from 2002.
The code is missing special treatment of backslashes on Windows
so that '.\\' and '..\\' are handled in the same manner.
This change fixes
http://rt.perl.org/rt3/Public/Bug/Display.html?id=63492
(Note that the references to taint mode in the bug report are only
relevant as far as taint mode removes '.' from @INC).
This change also fixes the following Scalar-List-Utils bug report:
http://rt.cpan.org/Public/Bug/Display.html?id=25430
The Scalar::Util test failure in t/p_tainted.t only manifests itself
under Test::Harness 3, and only outside the Perl core:
* Test::Harness 2 (erroneously) puts '-I.' on the commandline in taint
mode and runs something like this:
`perl -I. t/p_tainted.t`
so '.\t\tainted.t' can be found via '.' in @INC.
* Core Perl runs something like this from the t/ directory:
`..\perl.exe -I../lib ../ext/List-Util/t/p_tainted.t`
so '.\..\ext\List-Util\t\tained.t' can be found via '../lib' in @INC.
Signed-off-by: Jan Dubois <jand@activestate.com>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
perl.h and perl.c need further fixes to get VMS to return the expected
POSIX exit codes when that is enabled.
This fix gets the correct numbers except for the SIGTERM case, which
will need some more work.
It also gets the posix exit code to set an error severity on a fatal
exit so that DCL and MMS/MMK or VMS native programs can easily detect a
script failure.
This patch does not address an issue in vms.c where the feature logicals
may not be correctly read. That will follow in a future patch.
The tests have been adjusted to detect when VMS is in the POSIX exit
mode and perform properly.
-John
wb8tyw@gmail.com
--
My qsl.net e-mail address is temporarily out of order.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The net result of this patch is to make available via Config.pm and -v/-V the
details about the git version info we have available for the build. When built within
a git repository git is queried directly. When built from a snapshot or bundle
it is assumed that the source is unchanged, and that the required details are
avaialble in a file called .patch, whose format current is a four field string
in the following format: "$branchname $date.$time $sha1 $describe". The
generator of these files currently resides on camel.booking.com.
* git-describe is now used more directly with -v.
When the prefix of git-describe matches the version number
as determined by the defines in patchlevel.h then we use ONLY
the git-describe output, otherwise we include
the git describe in parenthesis after the version number. Either way
the describe text is optionally followed by a star should there be
uncommitted changes.
eg: This is perl, v5.11.0 (GitLive-blead-136-g58ca560) built for i686-linux
or: This is perl, v5.11.0-1-g58ca560 built for i686-linux
or: This is perl, v5.11.0 built for i686-linux
* include the SHA1 in perl -V summary, and automatically include unpushed
commits in the registered patches list
* include various git/version/.patch details in %Config, as follows:
git_commit_id # sha1 of HEAD
git_ancestor # ancestor in $remote/$branch (presumably canonical)
git_describe # git describe
git_branch # current branch
git_uncommitted_changes # "true" if there are any, empty otherwise
git_unpushed_commits # List of sha1's of unpushed commits
git_commit_id_title # Used to make the perl -V summary output
Additionally one more value is added depending on build process used: when
building from an rsynced snapshot (or any dist including a file called
.patch) then the second field will be used to populate the
"git_snapshot_date" field. Otherwise if built in a git directory (as is hopefully
recommended these day) then the field will be "git_commit_date" which will be the
commit date of HEAD.
This patch introduces two new files (on top of .patchnum) that will be generated by
make_patchnum.sh: "lib/Config_git.pl" and "unpushed.h", the former is used to make
git data available to Config.pm/%Config without rebuilding everything else, and the
second is used to expose unpushed commits (if any) via the registered patch facility
of patchlevel.h
|
|
|
|
|
|
|
|
|
|
| |
Add a parameter to S_incpush to indicate if the new directory should be
appended or prepended to @INC, and use it set to TRUE when parsing the
shebang line.
There is also a better version of the test.
This replaces commit ccb8f6a64f3dd06b4360bc27c194b28e6766a6ad.
|
|
|
|
|
|
| |
command line and inside a perl script"
This reverts commit ccb8f6a64f3dd06b4360bc27c194b28e6766a6ad.
|
|
|
|
|
|
|
|
|
| |
and inside a perl script
Adds the -Idir at the beginning of @INC.
(Plus a test by rgs -- check that -I does not add directories at the end
of the @INC array anymore)
|
|
|
|
| |
testing. We're not doing very well on this one.
|
|
|
|
|
|
| |
From: "John E. Malmberg" <wb8tyw@qsl.net>
Message-id: <4916872B.5040500@qsl.net>
p4raw-id: //depot/perl@34790
|
|
|
|
|
|
| |
From a patch and test sent by Renée Bäcker in
<48B271A3.80808@smart-websolutions.de>
p4raw-id: //depot/perl@34234
|
|
|
|
|
| |
use test.pl's tempfile().
p4raw-id: //depot/perl@34184
|
|
|
| |
p4raw-id: //depot/perl@34183
|
|
|
|
|
|
| |
From: "Steve Hay" <SteveHay@planit.com>
Message-ID: <1B32FF956ABF414C9BCE5E487A1497E701DF242E@ukmail02.planit.group>
p4raw-id: //depot/perl@34040
|
|
|
|
|
|
|
|
| |
t/run/exit.t has been failing on Win32. Update the skipping
mechanism to do more that check for the definition of
POSIX::WIFEXITED.
p4raw-link: @33897 on //depot/perl: 72bfe1b2b35945ea3c95d9b94ae2908121292236
p4raw-id: //depot/perl@33979
|
|
|
|
|
| |
Message-Id: <1210485078-19640-1-git-send-email-rafl@debian.org>
p4raw-id: //depot/perl@33822
|
|
|
|
|
| |
the code that automatically requires AnyDBM_File.pm in pp_dbmopen.
p4raw-id: //depot/perl@33705
|
|
|
|
|
|
| |
From: "Robin Barker" <Robin.Barker@npl.co.uk>
Message-ID: <46A0F33545E63740BC7563DE59CA9C6D093A61@exchsvr2.npl.ad.local>
p4raw-id: //depot/perl@33407
|
|
|
|
|
| |
now an illegal command line flag.
p4raw-id: //depot/perl@32956
|
|
|
| |
p4raw-id: //depot/perl@32954
|
|
|
| |
p4raw-id: //depot/perl@31812
|
|
|
| |
p4raw-id: //depot/perl@31754
|
|
|
|
|
|
| |
From: "Jerry D. Hedden" <jdhedden@cpan.org>
Message-ID: <1ff86f510708090528w5579515bp6f862c613abccf84@mail.gmail.com>
p4raw-id: //depot/perl@31696
|
|
|
|
|
|
| |
From: "Jerry D. Hedden" <jdhedden@cpan.org>
Message-ID: <1ff86f510706200639t13f58ecbi286015713765c403@mail.gmail.com>
p4raw-id: //depot/perl@31438
|
|
|
| |
p4raw-id: //depot/perl@31333
|
|
|
|
|
| |
Message-ID: <20070113184453.7cd54bcf@r2d2>
p4raw-id: //depot/perl@30078
|
|
|
| |
p4raw-id: //depot/perl@30059
|
|
|
|
|
| |
Message-ID: <20061106130647.57891.qmail@web56411.mail.re3.yahoo.com>
p4raw-id: //depot/perl@29212
|
|
|
|
|
| |
Message-ID: <20061104102414.78987.qmail@web56403.mail.re3.yahoo.com>
p4raw-id: //depot/perl@29202
|
|
|
|
|
|
|
|
| |
Message-ID: <9b18b3110610181151i3ca438cdied769ebaa4255079@mail.gmail.com>
change test files that do a require "./test.pl"; without a BEGIN block
to ensure prototypes are seen, plus fix any breakage this reveals.
p4raw-id: //depot/perl@29056
|
|
|
|
|
| |
Message-Id: <200607112101.k6BL1TGr321715@kosh.hut.fi>
p4raw-id: //depot/perl@28550
|
|
|
|
|
| |
Message-ID: <440737A6.4060606@gmail.com>
p4raw-id: //depot/perl@27368
|
|
|
|
|
|
| |
This avoids problem with using STRINGIFY in patchlevel.h
(ref msg <43BE4BAC.6010701@uk.radan.com> posted to p5p).
p4raw-id: //depot/perl@26672
|