| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
As noted in the comments in the code for this commit, VMS builds
add a '.com' suffix to scripts and utilities and hence their names don't
match what is in podcheck's db. This canonicalizes such names
back to what the db is expecting.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This reverts most of commit df80274d3278c640a5e0fbf3982950bb5ca9d7bc
and uses a different method to exclude .PL files, suggested by Nicholas
Clark.
It uses the MANIFEST to find such files and then excludes them based on
the full path name.
|
|
|
|
|
| |
I think its clearer to put the subroutine call in each line of
initialization
|
|
|
|
|
| |
The only change is to move a block of code around. This is to prepare
for future commits
|
|
|
|
|
| |
This is to prepare for future commits, to avoid a warning message
about prototype checking
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code for autovivifying coresubs for method calls ended up calling
hv_store(stash,name,len,(SV *)gv,0) where gv is already in the stash
under that entry. Since hv_store takes ownership of one reference
count and decrements that of what it overwrites (which is the same gv
in this case), it ends up freeing the gv prematurely.
It ended up making that call because S_maybe_add_coresub needs the
stash to get its ENAME (which happens when called by gv_fetchmeth),
but it also assumed that the presence of the stash meant the gv
needed to be stored in it (as is the case with the other caller,
gv_fetchpvn_flags).
This patch reuses the fullen (full length) parameter as a flag to
indicate that that hv_store call should be skipped.
These workarounds for the assumptions that newATTRSUB makes are start-
ing to make inlining look very attractive....
|
|
|
|
|
| |
Some test platforms don't like unexpected output without the comment
prefix character
|
|
|
|
|
|
|
|
| |
Add TAP generation and a --tap option to Porting/checkcfgvar.pl.
In checkcfgvar.t, document its purpose, and the likely way to fix the
problems that it has flagged up. This is a prototype before adding similar
instructions to the other t/porting tests.
|
|
|
|
|
|
|
| |
For --list, only print the name out in one place.
Remove a now-redundant sort for --regen.
Alert the user if default values are not being added because --default was
not specified.
|
|
|
|
|
|
| |
Previously it had custom code to change directory to the top of the source
tree, and to convert the library paths to absolute. TestInit has common code
for this.
|
| |
|
| |
|
|
|
|
|
| |
It's a croak(), not a warning, so doesn't really belong in lib/warnings.t
[This also implicitly fixes the wrong expected output of 69dc7e4bdb8e397c]
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
% perl -e 'print "package F;\n # \xF1\n;1;"' > x.pl
% perl '-Mopen=:encoding(utf8)' -e 'require "x.pl"'
utf8 "\xF1" does not map to Unicode at x.pl line 1.
Bit of a surprising discovery; Turns out that passing a single ":" for
the layers skips the fetch from the context layers:
perl -wE 'use open qw( :encoding(UTF-8) ); open my $fh, "<:", "etc"; say PerlIO::get_layers($fh);'
That will only get the relevant default layers, while removing the
colons makes it work as usual -- So we can abuse this (mis)feature to
fix the bug.
|
|
|
|
|
|
|
|
|
|
| |
This test was relying on a bug in require that causes it to use what-
ever I/O layers are active in require‘s *caller* when opening a file
[perl #96008].
This rewrites the test using the example in ticket #75722.
Since it no longer has anything to do with open.pm, it is now in
t/lib/warnings/perlio.
|
|
|
|
|
|
|
|
|
|
| |
This will probably not be used, but ought to be here for complete-
ness’ sake.
Method lookup needs to trigger the autovivification of coresubs.
Since it does not use gv_fetchpvn_flags, the coresub-autovification is
now in a separate static function, so that both standard gv lookup and
method lookup can share it.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tracking modules loaded by base.pm to avoid reloading them means
that any module that wishes to force a reload can't just modify
%INC but must also interact with base.pm to clear its cache.
Removing the module-loaded checks have minimal impact. The internal
call to require() is a NOP for a loaded module. For an internal
package, the require() will fail with the same error message as
before, which base.pm then ignores. Tracking modules loaded to avoid
this slight extra overhead is not worth the complexity for other
modules that wish to manipulate %INC.
|
|
|
|
|
|
|
|
|
| |
On some Solaris systems, <stdbool.h> is present, but will give an
error if used by a compiler that is not sufficiently c99-compliant.
Check for this by including <stdbool.h> and trying to compile a
short program that uses bool.
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
|
| |
|
|
|
|
|
|
|
|
|
| |
If a module whose upstream is cpan has the same NAME as a module that
isn't, that is a problem that should be warned about, as we shouldn't be
shipping two identically named modules, even if one is not under Perl
core's control. (If two cpan modules have the same name, it is a
problem as well, but not anything we can do anything about, so warn only
when cpan warnings are enabled.)
|
|
|
|
|
| |
In some situations previously, case was not important in the sort order;
this extends that to all situations.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, base.pm modified the $VERSION of modules it loaded to
the string "-1, set by base.pm". This is not a valid lax version
string and thus could not be parsed by version.pm. (It is also an
encapsulation violation, as it modifies a global in another package.)
This patch removes the $VERSION modification code entirely and uses
a private hash to track which modules base.pm has successfully loaded.
This also eliminates a subtle bug in how base.pm was checking for
the existence of a package's VERSION scalar.
[Though the final mechanism is different, thank you to John Peacock for
proposing the initial patch to eliminate the "-1..." code from base.pm]
|
|
|
|
|
|
| |
This is in preparation for Unicode 6.1, which has blank lines in the
.txt file that fold_grind reads. The line that strips off comments did
not work on plain null lines.
|
|
|
|
|
|
|
| |
Generally mktables generates the most compact tables possible. But this
should not be relied on, and when called with the -anotate option,
the mktables tables will not be compact. This will compact
non-compacted tables when reading them.
|
|
|
|
|
| |
This uses intermediate variables to store the output of hex(), with the
result that if there is an $end, its hex only is calculated once.
|
| |
|
|
|
|
|
| |
This eases the updates of the config.sh-format files when a new Configure
variable is added.
|
|
|
|
|
|
|
|
|
|
| |
Verify that the section of config file containing probed files is sorted
lexically. If --regen is used, updated the file on disk with a correctly
sorted version. (Except for configure.com, which has a different structure
not amenable to automatic analysis and update, hence still has to be
updated manually.)
Ensure all config files are correctly sorted.
|
|
|
|
|
|
|
|
|
| |
This brackets the probed values sections consistently across all config.sh
type files, between Author and zip inclusive.
Move PERL_CONFIG_SH to the end of NetWare/config.wc and symbian/config.sh,
and PERL_CONFIG_SH CONFIGDOTSH to the end of win32/config.ce, to be
consistent with the other config.sh files.
|
|
|
|
|
|
| |
This brings it back to the regular order: header information, probed values,
information about arguments to Configure, and values propagated from a
previous run.
|