| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
This also now notes some behavior of setlocale
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Some compilers aren't smart enough to realize there is no path through
this function that doesn't set the return value. So initialize to an
illegal value.
Spotted by atoomic
|
| |
|
| |
|
|
|
|
| |
This adds examples and clarifications
|
|
|
|
|
|
|
|
| |
These were introduced in c05125c57fd7868af65366bacb6fe40c04b1c719 in
July 2018, and would cause any EBCDIC compilations to fail.
That I found it by code inspection shows that we've lost all our EBCDIC
smokers again.
|
|
|
|
| |
This is for eventual use in being called from more than one place.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It turns out that some Configure options cause this to be called with a
NULL parameter. (I didn't check, but my guess is it's threaded builds.)
That means that the embed.fnc entry should be NULLOK for the parameter.
And that means that embed.fnc doesn't generate an ARGS_ASSERT macro, so
that should be removed from the function.
(I actually think it should generate an empty ARGS_ASSERT that could be
included or not, so that code wouldn't have to change if a parameter
became required to be non-null or vice versa. The porting test would
only check for non-empty macros being present. But this is for another
day.)
The reason it works as-was with a NULL parameter is because of an
apparent coincidence: specialWARN() is called first thing in this
function and thinks a NULL is a defined marker for a particular meaning,
so the function immediately returns. This commit makes that explicit
rather than relying on the apparent coincidence.
|
|
|
|
| |
From c1e47bad34ce1d9c84ed57c9b8978bcbd5a02e98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The macro DUP_WARNINGS() was doing (approximately)
new = CopyD(old, malloc(size), size);
which, depending on how the CopyD macro expanded (e.g. on debugging
builds), could result in its arguments being used multiple times, and
thus malloc() being called multiple times, with the result of the
earlier call(s) then leaking.
Fix this by implementing DUP_WARNINGS using a new function,
Perl_dup_warnings() that stores its intermediate values in local vars.
This function isn't performance critical, as its usually only called
once per cop creation at compile time.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This would enable to respect utf8 warnings enabled/disabled by pramga
warnings when processing filehandle with :encoding layer.
|
| |
|
|
|
|
| |
Both newSVsv() and newSVsv_nomg() are now implemented via new Perl_newSVsv_flags() function.
|
|
|
|
|
|
|
|
|
| |
4.02 2019-02-23
- fix a test that breaks if perl is compiled with
-Dquadmath (RT-128589)
4.01 2019-02-22
- allow to pass indent_length to json_pp (GH#46)
|
|
|
|
|
|
|
|
| |
Spotted by Coverity.
We've already checkerd earlier on that at least one of parent and start
is non-null, so the line in question can never be reached. Turn it into
an assertion instead.
|
| |
|
| |
|
|
|
|
| |
damn it Nico..
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
for a list repeat in scalar/void context
|
|
|
|
|
|
| |
During v5.29.8 dev cycle a change was made to Devel-PPPort
18d728ac3b which justify to bump and release a new
version of Devel::PPPort.
|
| |
|
|
|
|
|
|
|
|
| |
Without this change corelist-perldelta.pl would not see the
changes from XS::APItest.
./perl -Ilib Porting/corelist-perldelta.pl \
--mode=update pod/perldelta.pod
|
| |
|
|
|
|
|
| |
Update perldelta file with recent changes
and perform some extra cleanup.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This configuration is going to considerably slowing
down smokes but this is a useful alternate when
preparing a release.
We can probably consider commenting these extra config
and only check them for release. Or we could also provide
two travis.yaml:
- .travis.yml.light
- .travis.yml.full
And use a symlink depending which one we want to use.
|
|
|
|
|
| |
Add note concerning the bump of PERL_API_* constants
for blead point releases.
|
|
|
|
|
| |
Also bump Porting/Maintainers.pl to synchronize
with the upstream version we are using.
|
|
|
|
| |
It should use errsv value from passed argument.
|
| |
|
| |
|
|
|
|
|
|
|
| |
When the protocol passed to socket() is unknown, set errno to
WSAEPROTONOSUPPORT.
[perl #133853]
|
|\
| |
| |
| |
| |
| | |
PERL_GLOBAL_STRUCT and DPERL_GLOBAL_STRUCT_PRIVATE builds haven't been
smoked for quite a while and the code has bit-rotted. The commits in
this branch made them build and all test pass again, at least on Linux
|
| |
| |
| |
| |
| |
| |
| |
| | |
There are two separate copies of this function, chosen by
the presence of PERL_GLOBAL_STRUCT_PRIVATE. The previous couple of
commits have made them more similar; this commit merges them into a
single function with differing blocks of code protected by
PERL_GLOBAL_STRUCT_PRIVATE
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In the PERL_GLOBAL_STRUCT_PRIVATE variant of this code, it zeroes out
unused slots of a freshly-realloced PL_my_cxt_list[]. This is not
necessary, as those slots won't be used until a new index is allocated,
as which point the new slot will get written to before anything else.
The non-PERL_GLOBAL_STRUCT_PRIVATE variant of this function doesn't have
this redundant zeroing.
So remove it.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There are two separate copies of this function, chosen by
the presence of PERL_GLOBAL_STRUCT_PRIVATE.
Make the two versions closer to each other, to allow shortly for
merging.
Mainly its renaming the int pointer parameter from 'index' to 'indexp',
and adding a local var 'index', which is assigned from *indexp where
appropriate.
Also harmonise some of the comments between the two functions.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Under PERL_GLOBAL_STRUCT, all the "global" vars are put in a structure,
which means perlvars.h needs a similar constraint to intrpvar.h:
its size and alignment shouldn't change between debugging and
non-debugging builds. This is because regcomp/exec.c are compiled both
with and without DEBUGGING.
[Fixed by Karl]
|
| |
| |
| |
| |
| | |
This var was protected by PERL_GLOBAL_STRUCT_PRIVATE, but
PERL_GLOBAL_STRUCT doesn't allow static vars either.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Under PERL_GLOBAL_STRUCT (well, actually I've only tried under
PERL_GLOBAL_STRUCT_PRIVATE), cpan/ExtUtils-MakeMaker/t/03-xsstatic.t
was failing some tests. This was because it was creating a
statically-linked perl binary, but wasn't compiling perlmain.c with
-DPERL_CORE. Usually this doesn't matter, but under PERL_GLOBAL_STRUCT
it needed a definition of aTHX which it was pulling from XSUB.h rather
than perl.h, causing a SEGV.
Until a proper fix makes it way into MakeMaker, explicitly define
PERL_CORE in perlmain.c
|