| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
Since the removal of PERL_OBJECT
(acfe0abcedaf592fb4b9cb69ce3468308ae99d91) PERL_IMPLICIT_CONTEXT and
MULTIPLICITY have been synonymous and they're being used interchangeably.
To simplify the code, this commit replaces all instances of
PERL_IMPLICIT_CONTEXT with MULTIPLICITY.
PERL_IMPLICIT_CONTEXT will stay defined for compatibility with XS
modules.
|
|
|
|
|
|
|
|
|
|
|
| |
This just detabifies to get rid of the mixed tab/space indentation.
Applying consistent indentation and dealing with other tabs are another issue.
Done with `expand -i`.
* vutil.* left alone, it's part of version.
* Left regen managed files alone for now.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
The names previously indicated some things were strings that weren't
necessarily so. Some nearly identical functions had varying parameter
names.
|
|
|
|
|
|
|
|
|
|
|
| |
This feature allows documentation destined for perlapi or perlintern to
be split into sections of related functions, no matter where the
documentation source is. Prior to this commit the line had to contain
the exact text of the title of the section. Now it can be a $variable
name that autodoc.pl expands to the title. It still has to be an exact
match for the variable in autodoc, but now, the expanded text can be
changed in autodoc alone, without other files needing to be updated at
the same time.
|
|
|
|
|
| |
This code isn't apparently compiled on modern platforms, as when I tried
to force them to compile, I had to do this.
|
| |
|
|
|
|
|
| |
This uses a new organization of sections that I came up with. I asked
for comments on p5p, but there were none.
|
|
|
|
|
| |
Mostly in comments and docs, but some in diagnostic messages and one
case of 'or die die'.
|
|
|
|
|
| |
Two of the functions are internal to the core; the third has long been
deprecated.
|
|
|
|
|
| |
This new macro expands to what these did. Update to use the common
code.
|
|
|
|
|
|
|
|
|
| |
I'm not sure why this didn't show up elsewhere, but we have embed.fnc
entries for non-existent functions that should have been removed in
dd1a3ba7882ca70c1e85b0fd6c03d07856672075.
In addition, I see several more functions that should have been removed,
and this commit removes them.
|
|
|
|
| |
These were missed by 059703b088f44d5665f67fba0b9d80cad89085fd.
|
|
|
|
|
|
|
|
|
| |
Commit x059703b088f44d5665f67fba0b9d80cad89085fd removed more code than
was intended. This commit restores the missing functions.
This showed up in MSWin32 builds, I presume VMS as well.
Spotted by Tony Cook
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It has been deprecated since 5.26 to use various macros that deal with
UTF-8 inputs but don't have a parameter indicating the maximum length
beyond which we should not look. This commit changes all such macros,
as threatened in existing documentation and warning messages, to have an
extra parameter giving the length.
This was originally scheduled to happen in 5.30, but was delayed because
it broke some CPAN modules, and there wasn't really a good way around
it. But now that Devel::PPPort 3.54 is out, ppport.h has new facilities
for getting modules making these changes to work with older Perl
releases.
|
|
|
|
|
|
|
| |
The previous commit added the C flag, which is better to use in many
instances than x. This commit changes the x entries in embed.fnc that
I'm pretty sure would be better off being C, and removes some 'x'
entries for internal only functions
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was caused by functions that should have been deprecated all along,
and now are. But they are still called in places. In most instances
one deprecated function is a wrapper for another. In one instance, the
calling of the function is to just make sure that mathoms.o gets linked
to.
The solution adopted here, some of which was suggested by Tony Cook, is
to use #pragmas to silence the warnings. By doing this around the
entirety of mathoms.c, future issues will most likely be avoided. And
there are unlikely to enough future cases outside of mathoms to cause a
problem.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This information is already in embed.fnc, and we know it compiles. Some
of this information is now out-of-date. Get rid of it.
There was one bit of information that was (apparently) wrong in
embed.fnc. The apidoc line asked that there be no usage example
generated for newXS. I added that flag to the embed.fnc entry.
|
|
|
|
| |
Both newSVsv() and newSVsv_nomg() are now implemented via new Perl_newSVsv_flags() function.
|
|
|
|
| |
For: RT # 133557
|
|
|
|
| |
Spotted by H. Merijn Brand.
|
|
|
|
|
|
|
| |
This function is deprecated because it is lacking a length parameter, so
malformed UTF-8 may cause it to read beyond the buffer. This commit
causes it to not read beyond a NUL character, which makes it safe for
the common case that the input is a C string.
|
|
|
|
|
|
| |
This reverts commit e6e9f5a198d7e054e6857a9c6e99a07d639f7f3c.
I think it best to revert this until I'm ready for stating in perldelta
exactly the options for replacing uses of these functions.
|
|
|
|
|
| |
These have been deprecated since 5.18, and have security issues, as they
can try to read beyond the end of the buffer.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit 3f1866a8f6 assumed "A" flag means a function can't be mathomed. Not
true. Many funcs were listed in embed.fnc as "A" yet were in mathoms.c.
This caused a missing symbol link failure on Win32 with -DNO_MATHOMS,
since the "A" mathomed funcs were now put into perlldll.def while
previously they were parsed out of mathoms.c by makedef.pl. Revise the
logic so "b" means instant removal from the export list on a no mathoms
build.
embed.fnc "b" flag adds were generated from a missing symbol list from my
linker, some funcs not in my build/platform config might need to be "b"
flagged in future. Some funcs like ASCII_TO_NEED were already marked "b"
but still being by mistake exported because they were also "A".
sv_2bool, sv_eq and sv_collxfrm also needed a "p" flag or a Perl_-less
symbol was declared in proto.h. sv_2bool and sv_collxfrm also failed
porting/args_assert.t so add those macros to mathoms.c
|
|
|
|
|
|
| |
This function can't be in mathoms because of its use in Devel::PPPort.
I tried fixing that, but the tools just hung, so this commit moves it
back to utf8.c, while still deprecated.
|
|
|
|
|
|
| |
Most size-type variables in pp_pack.c were of type I32, with a
smattering of other types. Use SSize_t in place of I32, and generally
use size_t-width variables as appropriate. Fixes [perl #119367].
|
|
|
|
| |
Except under cpan/ and dist/
|
|
|
|
| |
Better to use the macro than to directly call the function it wraps
|
|
|
|
| |
For: RT #130195
|
|
|
|
|
| |
This changes some formal parameters to be const, and avoids reusing the
same variable name within an inner block, to avoid confusion
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit made it a simple wrapper around the new sv_copypv_flags:
commit 4bac9ae47b5ad7845a24e26b0e95609805de688a
Author: Chip Salzenberg <chip@pobox.com>
Date: Fri Jun 22 15:18:18 2012 -0700
Magic flags harmonization.
But in so doing it changed the behaviour of the functional version
(Perl_sv_copypv), while preserving the existing behaviour in the new
macro (sv_copypv). The latter invokes get-magic, while the former
used to but stopped doing so.
|
|
|
|
| |
I need to call it from toke.c.
|
|
|
|
|
|
| |
The previous commit causes this function being moved to be just a
wrapper not called in core. Just in case someone is calling it, it is
retained, but moved to mathoms.c
|
|
|
|
|
| |
makedef.pl no longer needs special handling for any functions that get
moved to mathoms.c
|
|
|
|
|
|
|
|
|
|
|
| |
The head of this source file contains quite a few general comment
paragraphs. Consolidate them all into one
/*
*
*/
block.
|
|
|
|
| |
See http://nntp.perl.org/group/perl.perl5.porters/236384.
|
|
|
|
| |
Suggested by Dave Mitchell.
|
|
|
|
|
|
|
| |
This function was recently moved to mathoms. Now that various changes
have been made to the system, the special casing needed to get things to
compile can be removed. Also, it can just call the macro
implementation, instead of what the macro expands to.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit changes this flag to mean that the backward compatibility
functions are compiled unless the -DNO_MATHOMS cflag is specified to
Configure. Previously the meaning was sort of like that but not
precisely.
Doing this means that the prototypes that needed to be manually added to
mathoms.c are no longer needed. No special parameter assertions have to
be made. makedef.pl no longer needs to parse mathoms.c and have special
cases for it. And several special case entries in embed.fnc can be
non-special cased.
|
|
|
|
|
| |
This would probably have refused to compile if anyone were actually
using this function in a threaded build.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fea1d2dd5d210564d4 turned instr into a macro. It also left the
actual function in util.c while commenting out the prototype
in proto.h (via the m flag in embed.fnc).
A function compiled without a prototype under C++ does not get
declared with extern "C" and thus gets mangled, which breaks the
build with a strict linker (VMS, possibly AIX) because the
expected symbol name is no longer produced. Without a strict
linker, it just breaks the binary compatibility that was presumably
the nominal reason for leaving the function around in the first
place.
So move the function into mathoms.c and put its prototype in the
extern "C"-guarded section at the top of the same file.
We also have to fake the PERL_ARGS_ASSERT_INSTR macro since its
original declaration in proto.h is commented out but the porting
test t/porting/args_assert.t will take revenge if it doesn't
find the macro being used somewhere.
|
|
|
|
| |
Removes 'the' in front of parameter names in some instances.
|
| |
|
|
|
|
|
| |
The majority of perlapi uses C<> to specify these things, but a few
things used I<> instead. Standardize to C<>.
|