This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl5.git
19 months agoMake PadnameIN_SCOPE() name begin with S_
Karl Williamson [Wed, 11 Sep 2019 21:56:11 +0000 (15:56 -0600)]
Make PadnameIN_SCOPE() name begin with S_

All functions should have a prefix.

19 months agoSome SvREFCNT_foo are no longer macros
Karl Williamson [Tue, 10 Sep 2019 18:37:28 +0000 (12:37 -0600)]
Some SvREFCNT_foo are no longer macros

but are inline functions.  They should be listed in embed.fnc.

19 months agoStrip leading underscore _variant_byte_number()
Karl Williamson [Tue, 10 Sep 2019 17:51:40 +0000 (11:51 -0600)]
Strip leading underscore _variant_byte_number()

Names with leading underscores are reserved for the C implementers.

19 months agoChange name of _utf8_to_uvchr_buf()
Karl Williamson [Tue, 10 Sep 2019 17:12:59 +0000 (11:12 -0600)]
Change name of _utf8_to_uvchr_buf()

A function name with a leading underscore is not legal in C.  Instead
add a suffix to differentiate this name from an otherwise identical one.

19 months agoStrip leading underscore from is_utf8_char_helper()
Karl Williamson [Tue, 10 Sep 2019 16:59:04 +0000 (10:59 -0600)]
Strip leading underscore from is_utf8_char_helper()

Leading underscored name are reserved for the C implementers

19 months agoinline.h: Change fcn name prefix from S_ to Perl_
Karl Williamson [Wed, 11 Sep 2019 21:20:45 +0000 (15:20 -0600)]
inline.h: Change fcn name prefix from S_ to Perl_

This is being done only for those functions that don't have a guard
preventing them from being seen outside of the Perl core.

Talking to Tony Cook, we agreed that this was a good idea for two
reasons:

1) The 'Perl_' prefix does not pollute XS caller's name space.  The 'S_'
   one could be argued that it doesn't much either, but it does more so
   than 'Perl_', and the next reason is the clincher:
2) It allows us to change our minds about whether a function should be
   static inline or not, without affecting callers who use the Perl_
   form, which they would be accustomed to anyway if they're using the
   full name form.

19 months agoregen/embed.pl: Generally generate an ARGS_ASSERT
Karl Williamson [Mon, 9 Sep 2019 17:53:55 +0000 (11:53 -0600)]
regen/embed.pl: Generally generate an ARGS_ASSERT

Prior to this commit, if you changed a pointer argument to allow it
being a NULL, you had to go in and also remove the function's
PERL_ARGS_ASSERT macro call.  Now, such macros are generally defined
even if they are empty, so you can add such a call to any function, and
it will always compile.  If there is no assertion needed, the macro
expands to nothing.

Thus now, the use of these macros is optional when no assert is needed;
but still required by the porting test args_assert.t when an assert is
needed.

The generation of such a macro (when its use is optional) can be
suppressed for individual entries by the new G flag in embed.fnc, also
added by this commit.

19 months agoregen/embed.pl: Wrap #if..#endif differently
Karl Williamson [Mon, 9 Sep 2019 17:43:18 +0000 (11:43 -0600)]
regen/embed.pl: Wrap #if..#endif differently

By surrounding the interior stuff with these in one statement, it makes
it easier to change that interior stuff without having dangling
statements.

This makes no difference in the current generated output

19 months agoembed.fnc: Mark atof2, atof3 for internal use only
Karl Williamson [Sun, 1 Sep 2019 02:58:57 +0000 (20:58 -0600)]
embed.fnc: Mark atof2, atof3 for internal use only

Now that we have Strtod, my_strtod, those should be used instead.

19 months agosv.h: SVt_INVLIST is core-only
Karl Williamson [Sun, 21 Jul 2019 20:02:31 +0000 (14:02 -0600)]
sv.h: SVt_INVLIST is core-only

19 months agoembed.fnc: Change some 'x' marked fcns to 'C'
Karl Williamson [Fri, 9 Aug 2019 17:41:07 +0000 (11:41 -0600)]
embed.fnc: Change some 'x' marked fcns to 'C'

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

19 months agoAdd 'C' flag to embed.fnc, for "core-only" fcns
Karl Williamson [Sun, 21 Jul 2019 19:20:55 +0000 (13:20 -0600)]
Add 'C' flag to embed.fnc, for "core-only" fcns

Previously the x flag was (mis-)used for this purpose.  Some functions
that are accessible by XS writers shouldn't be used by them, such as
helper functions that an inline public function calls.  This new flag
alows that to be specified, without having to mark the function as
experimental, which could be misleading to later core maintainers

19 months agoembed.fnc: Clarify comments, and note 'u' flag exceptions
Karl Williamson [Sat, 31 Aug 2019 20:30:29 +0000 (14:30 -0600)]
embed.fnc: Clarify comments, and note 'u' flag exceptions

The next release of Devel::PPPort will know how to handle all these
unorthodox functions, so no need to declare them as such, and in fact
they shouldn't be declared so.

19 months agomathoms.c: Add comment
Karl Williamson [Wed, 11 Sep 2019 23:17:18 +0000 (17:17 -0600)]
mathoms.c: Add comment

19 months agot/re/anyof.t: Fix test names
Karl Williamson [Fri, 13 Sep 2019 02:56:59 +0000 (20:56 -0600)]
t/re/anyof.t: Fix test names

This previously duplicated some boiler plate in the test name

19 months agoregcomp.c: Fix -Dr bug
Karl Williamson [Sun, 26 May 2019 18:22:26 +0000 (12:22 -0600)]
regcomp.c: Fix -Dr bug

If dumping the program and a single range crosses the border between
being in the bitmap and not, the range must be split at the border
because the output has separate text for things in the bitmap vs. those
not.

I'm not sure that there is a situation where this currently occurs, but
it will so with a future commit

19 months agoregcomp.c: Collapse some code
Karl Williamson [Sun, 31 Mar 2019 20:13:58 +0000 (14:13 -0600)]
regcomp.c: Collapse some code

These case statements are all repeated in the code for bracketed
character classes, and mean the same thing.  That code knows a bunch of
things for optimizing.  No need to duplicate that.  Instead, pretend
these are being called within brackets, and call the code to handle
that case, which will generate the proper ops.  This now follows the
example of Unicode properties which have long been processed by
pretending they are surrounded by [...]

19 months agoGeneralize inRANGE()
Karl Williamson [Wed, 26 Jun 2019 18:23:47 +0000 (12:23 -0600)]
Generalize inRANGE()

I figured out a way to make this work generally.  I've also tested this
vs what some modern compilers do under -O2.  It seems this macro is
slightly better.

19 months agoAdd withinCOUNT() macro and change inRANGE to use it
Karl Williamson [Wed, 26 Jun 2019 18:01:05 +0000 (12:01 -0600)]
Add withinCOUNT() macro and change inRANGE to use it

This uses just one conditional to see if a value is between low and
(low + n).

19 months agoperl.h: Fix typo in comment
Karl Williamson [Sun, 15 Sep 2019 04:18:13 +0000 (22:18 -0600)]
perl.h: Fix typo in comment

19 months agoAvoid panic when last s///g is tainted and utf8
David Mitchell [Sat, 14 Sep 2019 15:18:46 +0000 (16:18 +0100)]
Avoid panic when last s///g is tainted and utf8

RT #134409

In a repeated substitution, where the replacement is an expression,
and when the last replacement value is both tainted and utf8, and
everything earlier has been plain, and the final string is suitably
shorter than the original, a panic resulted:

    sv_pos_b2u: bad byte offset, blen=1, byte=6

This is because when at the end, taint magic is being being added to
the target of the s///, the target SV has already had its buffer updated
with the shorter result string, but still has the pos() magic set which
corresponded to the original longer string (this pos value would, in the
normal flow of things, be reset shortly afterwards).

One quirk of sv_magic(), which adds any sort of magic including taint
magic, is that it always checks for the presence of pos() magic, and if
so, converts the byte to utf8 offset if necessary. This was seeing the
invalid pos() offset and panicing.

The check was added by v5.19.3-111-g25fdce4a16:
    "Stop pos() from being confused by changing utf8ness"
It seems like a bit of hack to recalibrate pos() each time sv_magic()
is called, but I've left that alone (sleeping dogs and all that) and
instead added a hack in the taint code path in pp_substcont to reset pos
before setting taint.

19 months agoperldelta for 1e1b6d926a0c8361bc2ebd2b6630ac97988335e3
James E Keenan [Fri, 13 Sep 2019 18:12:54 +0000 (14:12 -0400)]
perldelta for 1e1b6d926a0c8361bc2ebd2b6630ac97988335e3

19 months agoperldelta for 00ea29f1a18d6cb17456df2e33f105a90ddc8c3a
James E Keenan [Fri, 13 Sep 2019 17:32:33 +0000 (13:32 -0400)]
perldelta for 00ea29f1a18d6cb17456df2e33f105a90ddc8c3a

19 months agoUpdate Test-Simple to CPAN version 1.302168
Chad Granum [Fri, 13 Sep 2019 17:27:41 +0000 (13:27 -0400)]
Update Test-Simple to CPAN version 1.302168

1.302168  2019-09-06 07:40:18-07:00 America/Los_Angeles

    - Fix Typo in a Test2::API::Breakage warning (Thanks E. Choroba)
    - Delay loading of Term::Table until needed (Thanks Graham Knop)

1.302167  2019-08-23 14:07:58-07:00 America/Los_Angeles

    - add test2_is_testing_done api method
    - Fix string compare warning

19 months agoUpdate Scalar-List-Utils from 1.50 to 1.52
Max Maischein [Fri, 13 Sep 2019 07:21:35 +0000 (09:21 +0200)]
Update Scalar-List-Utils from 1.50 to 1.52

This updates the following modules from 1.50 to 1.52:

List::Util
List::Util::XS
Scalar::Util
Sub::Util

19 months agoUpdate Module-Metadata to CPAN version 1.000037
Chris 'BinGOs' Williams [Fri, 13 Sep 2019 13:23:36 +0000 (14:23 +0100)]
Update Module-Metadata to CPAN version 1.000037

  [DELTA]

1.000037  2019-09-07 18:32:44Z
  - add decode_pod option for automatic =encoding handling

19 months agoUpdate ExtUtils-MakeMaker to CPAN version 7.38
Chris 'BinGOs' Williams [Fri, 13 Sep 2019 12:30:12 +0000 (13:30 +0100)]
Update ExtUtils-MakeMaker to CPAN version 7.38

  [DELTA]

7.38 Wed 11 Sep 10:01:46 BST 2019

    No changes since v7.37_04

7.37_04 Thu 22 Aug 15:20:34 BST 2019

    Bug fixes:
    - Fix static linking on macOS

7.37_03 Sat Aug  3 12:37:29 BST 2019

    Enhancements:
    - Improved mandoc section detection

7.37_02 Thu Jun 27 11:10:39 BST 2019

    Test fixes:
    - Fix test failures in 02-xsdynamic.t on Android native builds
      Github issue #337

7.37_01 Fri Jun  7 11:21:39 BST 2019

    Test fixes:
    - [rt.cpan.org #129763] fixed test errors with latest Pod::Simple

19 months agoPATCH: [perl #134405] Compiler warnings in blead
Karl Williamson [Wed, 11 Sep 2019 22:22:15 +0000 (16:22 -0600)]
PATCH: [perl #134405] Compiler warnings in blead

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.

19 months agoFlorian Weimer is now a perl author
Tony Cook [Tue, 10 Sep 2019 00:44:10 +0000 (10:44 +1000)]
Florian Weimer is now a perl author

19 months agoConfigure: Include <stdlib.h> in futimes check
Florian Weimer [Mon, 9 Sep 2019 17:35:47 +0000 (19:35 +0200)]
Configure: Include <stdlib.h> in futimes check

Needed for the exit function.

19 months agoREADME.cn: Fix pod errors
Karl Williamson [Mon, 9 Sep 2019 16:53:00 +0000 (10:53 -0600)]
README.cn: Fix pod errors

These were introduced in 4d714158728b57246e7015b4f913802c7445a80a

19 months agoMerge branch 'pull/22' into blead (from https://github.com/Perl/perl5/pull/22)
Karen Etheridge [Mon, 9 Sep 2019 05:46:17 +0000 (22:46 -0700)]
Merge branch 'pull/22' into blead (from https://github.com/Perl/perl5/pull/22)

19 months agoReplace a few http urls with https
Kang-min Liu [Sun, 1 Sep 2019 06:24:43 +0000 (15:24 +0900)]
Replace a few http urls with https

A few link labels are also updated.

19 months agoRevise URLs in README.ko
Kang-min Liu [Sun, 1 Sep 2019 06:10:03 +0000 (15:10 +0900)]
Revise URLs in README.ko

1. Remove a dead link
2. Replace http urls with https, when available.

19 months agoRevise the URLs un READEM.cn and README.tw
Kang-min Liu [Sun, 1 Sep 2019 06:01:14 +0000 (15:01 +0900)]
Revise the URLs un READEM.cn and README.tw

- link "the homepage" to www.perl.org instead of perl.com
- modify the description of www.perl.com to stop mentioning O'Reilly.
- replace a few urls with https://

19 months agoPrefer https for a few important urls.
Kang-min Liu [Sun, 1 Sep 2019 05:46:31 +0000 (14:46 +0900)]
Prefer https for a few important urls.

Since browsers are marking "http" as "insecure", it's generally
looking good to link to a https URL when possible.

Also, since www.perl.com is no longer operated by O'Reilly. It is probably
better to remove the name of O'Reilly from the link label.

19 months agoRemove a dead link and its label.
Kang-min Liu [Fri, 30 Aug 2019 13:51:57 +0000 (22:51 +0900)]
Remove a dead link and its label.

19 months agoprefer https URLs.
Kang-min Liu [Fri, 30 Aug 2019 01:47:25 +0000 (10:47 +0900)]
prefer https URLs.

19 months agobump $Time::HiRes::VERSION
Tony Cook [Mon, 9 Sep 2019 01:14:05 +0000 (11:14 +1000)]
bump $Time::HiRes::VERSION

19 months agoTime::HiRes: implement clock_gettime() and clock_getres() for win32
Tomasz Konojacki [Mon, 2 Sep 2019 05:37:17 +0000 (07:37 +0200)]
Time::HiRes: implement clock_gettime() and clock_getres() for win32

To make the implementation easier, the guts of gettimeofday() were
moved to a separate function named GetSystemTimePreciseAsFileTime().

[perl #134398]

19 months ago(perl #133981) fix my stupid mistake
Tony Cook [Thu, 5 Sep 2019 05:37:30 +0000 (15:37 +1000)]
(perl #133981) fix my stupid mistake

19 months agoImprove grammar in pod
Karl Williamson [Tue, 3 Sep 2019 22:54:39 +0000 (16:54 -0600)]
Improve grammar in pod

for  SvPV..._or_null, sv_utf8_downgraded_flags

19 months agoRemove deprecated flag from sv_nosharing.
Karl Williamson [Tue, 3 Sep 2019 20:19:26 +0000 (14:19 -0600)]
Remove deprecated flag from sv_nosharing.

I  recently introduced this by mistake.

19 months agoMerge branch 'ppport fixes' into blead
Karl Williamson [Tue, 3 Sep 2019 03:55:29 +0000 (21:55 -0600)]
Merge branch 'ppport fixes' into blead

This branch contains a large number of changes related to the next
release of Devel::PPPort, which will regenerate its API list for the
first time in many years.

Documentation for 20-ish items is furnished, and the fact that some
dozens more are documented outside perlapi is now noted.

There is a new flag, h, to the =apidoc lines that indicates to hide the
documentation from perlapi, but tie it to the current place, like
perlapio.  It would be not too difficult to have such things
automagically pulled into perlapi from these, should that be desirable.

It turns out there were several undocumented conventions between D:P and
the core code, like having a parameter name of 'cast' or 'type' (in a
macro prototype apidoc line) that allowed D:P to generate proper code to
test the macro in the face of this parameter not being a legal C type.
I have documented these conventions, and added a couple more that the
next release of D:P will understand.  One of those is a parameter of
'block' as used in the recently added WITH_LC_NUMERIC_foo macros.  The
usage example in perlapi now displays correctly.

And for the few macros that I didn't add a way to test in D:P, there is
a new flag, 'u' to indicate that they are unorthodox or unconventional
in some way; that is they won't compile as-is.  This is applied, for
example, to the STR_WITH_LEN() macro which returns a comma separated
pair.

One thing that I hadn't realized before is that moving a function to
mathoms when there is no macro allowing it to be bypassed is effectively
deprecating the use of that function.  mathoms can be cleaned out at any
time, and installations may Configure to not even compile it.  I changed
to require the deprecated flag if something is in mathoms with no macro.

In an earlier commit, I had added the M flag as opposed to the m flag,
which previously had done double duty: 1) the function was implemented
only via a macro; 2) the function is a real function, but there is an
(extra) macro that you can use to get the same functionality as the
function.  I did this to help downstream processing.  And it turns out
that D:P needs that too, and needs it for functions in mathoms.  There
really is no need for an m flag with the mathoms (b) flag.  So the
existing ones that have an extra macro to bypass them are changed to use
the M flag instead of m.  This was done in an earlier commit for other
functions in this file.

19 months agoembed.fnc: Clarify and fix 'b' flag description
Karl Williamson [Sun, 1 Sep 2019 03:07:33 +0000 (21:07 -0600)]
embed.fnc: Clarify and fix 'b' flag description

19 months agoembed.fnc: Fix typo in comment
Karl Williamson [Sun, 1 Sep 2019 03:05:22 +0000 (21:05 -0600)]
embed.fnc: Fix typo in comment

19 months agoembed.fnc: Correct grammar in comment
Karl Williamson [Sun, 1 Sep 2019 03:03:45 +0000 (21:03 -0600)]
embed.fnc: Correct grammar in comment

19 months agoembed.fnc: Trivial comment only
Karl Williamson [Sun, 1 Sep 2019 03:01:40 +0000 (21:01 -0600)]
embed.fnc: Trivial comment only

19 months agoRemove M flag from several functions
Karl Williamson [Sat, 31 Aug 2019 22:55:45 +0000 (16:55 -0600)]
Remove M flag from several functions

These do have an extra macro, but it's not relevant to the situation

19 months agoembed.fnc: Remove experimental status from some internal fcns
Karl Williamson [Sat, 31 Aug 2019 21:57:20 +0000 (15:57 -0600)]
embed.fnc: Remove experimental status from some internal fcns

These have been around long enough that they aren't going away.

19 months agoembed.fnc: Restrict the 'ref' function's accessibility
Karl Williamson [Sat, 31 Aug 2019 21:31:56 +0000 (15:31 -0600)]
embed.fnc: Restrict the 'ref' function's accessibility

This could otherwise cause name collisions.  It is only used in two .c
files in the core

19 months agoNote that config.h contains usable API macros
Karl Williamson [Sat, 31 Aug 2019 21:24:41 +0000 (15:24 -0600)]
Note that config.h contains usable API macros

Things like UVSIZE...

19 months agoFix documentation of WITH_LC_NUMERIC_foo
Karl Williamson [Sat, 31 Aug 2019 20:55:46 +0000 (14:55 -0600)]
Fix documentation of WITH_LC_NUMERIC_foo

Now that Devel::PPPort can handle a macro whose argument is a {...}
block, we can appropriately document these.

19 months agoDocument STMT_START .. STMT_END
Karl Williamson [Sat, 31 Aug 2019 20:55:07 +0000 (14:55 -0600)]
Document STMT_START .. STMT_END

Now that we have the 'u' flag we can document these macros and not have
to break downstream processing.

19 months agoMark BHK macros as unorthodox
Karl Williamson [Sat, 31 Aug 2019 20:47:48 +0000 (14:47 -0600)]
Mark BHK macros as unorthodox

This is because they take a preprocessor token as an argument

19 months agoNote that STR_WITH_LEN() is unorthodox
Karl Williamson [Sat, 31 Aug 2019 20:45:25 +0000 (14:45 -0600)]
Note that STR_WITH_LEN() is unorthodox

Now that we have the 'u' flag for macros, this one returns
a pair of values, so should be marked as such.

19 months agoChange pod for macros that require "literal strings"
Karl Williamson [Sat, 31 Aug 2019 20:40:12 +0000 (14:40 -0600)]
Change pod for macros that require "literal strings"

Now that Devel::PPPort  has the ability to handle these, we can loosen
the syntax for clarity.

19 months agoembed.fnc: Clarify comments, and note 'u' flag exceptions
Karl Williamson [Sat, 31 Aug 2019 20:30:29 +0000 (14:30 -0600)]
embed.fnc: Clarify comments, and note 'u' flag exceptions

The next release of Devel::PPPort will know how to handle all these
unorthodox functions, so no need to declare them as such, and in fact
they shouldn't be declared so.

19 months agoembed.fnc: Add 'u' flag for unorthodox parameter macros
Karl Williamson [Sat, 31 Aug 2019 20:25:26 +0000 (14:25 -0600)]
embed.fnc: Add 'u' flag for unorthodox parameter macros

This tells downstream processors, such as Devel::PPPort that compiling
macros like these will be won't work, as they have some issue.  For
example, aTHX_ expands to have a trailing comma.

19 months agoRefer to CopLABEL_len[_flags] in pod for cop_fetch_label
Karl Williamson [Sat, 31 Aug 2019 20:12:49 +0000 (14:12 -0600)]
Refer to CopLABEL_len[_flags] in pod for cop_fetch_label

19 months agoDocument CopLABEL[_len[_flags]]
Karl Williamson [Sat, 31 Aug 2019 20:10:52 +0000 (14:10 -0600)]
Document CopLABEL[_len[_flags]]

19 months agoNote that various items in perlguts are documented
Karl Williamson [Sat, 31 Aug 2019 19:58:16 +0000 (13:58 -0600)]
Note that various items in perlguts are documented

19 months agoperlguts: Document save_item
Karl Williamson [Sat, 31 Aug 2019 19:59:35 +0000 (13:59 -0600)]
perlguts: Document save_item

19 months agosv.c: Note that some SV flags are documented
Karl Williamson [Sat, 31 Aug 2019 18:59:08 +0000 (12:59 -0600)]
sv.c: Note that some SV flags are documented

19 months agoRemove redundant documentation for PL_parser
Karl Williamson [Sat, 31 Aug 2019 17:10:54 +0000 (11:10 -0600)]
Remove redundant documentation for PL_parser

19 months agoNote that various XS macros are documented
Karl Williamson [Sat, 31 Aug 2019 17:09:19 +0000 (11:09 -0600)]
Note that various XS macros are documented

19 months agoNote that AvFILLp is not for public use
Karl Williamson [Sat, 31 Aug 2019 17:07:38 +0000 (11:07 -0600)]
Note that AvFILLp is not for public use

19 months agoNote that PERL_VERSION and kin are documented
Karl Williamson [Sat, 31 Aug 2019 17:05:58 +0000 (11:05 -0600)]
Note that PERL_VERSION and kin are documented

19 months agoNote that mro[gs]et_private_data are documented
Karl Williamson [Sat, 31 Aug 2019 17:05:11 +0000 (11:05 -0600)]
Note that mro[gs]et_private_data are documented

19 months agoNote that filter_add, filter_read are documented
Karl Williamson [Sat, 31 Aug 2019 17:03:45 +0000 (11:03 -0600)]
Note that filter_add, filter_read are documented

19 months agoNote that PL_errgv is documented
Karl Williamson [Sat, 31 Aug 2019 17:03:21 +0000 (11:03 -0600)]
Note that PL_errgv is documented

19 months agoNote that G_METHOD[_NAMED] are documented
Karl Williamson [Sat, 31 Aug 2019 17:02:14 +0000 (11:02 -0600)]
Note that G_METHOD[_NAMED] are documented

19 months agoNote that PERL_MAGIC_foo are documented
Karl Williamson [Fri, 30 Aug 2019 20:19:18 +0000 (14:19 -0600)]
Note that PERL_MAGIC_foo are documented

19 months agoDocument PERL_INT_MAX, and similar
Karl Williamson [Fri, 30 Aug 2019 20:18:09 +0000 (14:18 -0600)]
Document PERL_INT_MAX, and similar

19 months agoDocument my_exit()
Karl Williamson [Fri, 30 Aug 2019 20:14:28 +0000 (14:14 -0600)]
Document my_exit()

19 months agonumeric.c: Note that flag bit names are documented
Karl Williamson [Fri, 30 Aug 2019 20:11:49 +0000 (14:11 -0600)]
numeric.c: Note that flag bit names are documented

19 months agoNote that [cm]alloc, realloc are documented
Karl Williamson [Fri, 30 Aug 2019 20:09:48 +0000 (14:09 -0600)]
Note that [cm]alloc, realloc are documented

As they are really Unix calls

19 months agoDocument HvFILL
Karl Williamson [Fri, 30 Aug 2019 20:09:13 +0000 (14:09 -0600)]
Document HvFILL

19 months agoDocument WIDEST_UTYPE
Karl Williamson [Fri, 30 Aug 2019 20:08:13 +0000 (14:08 -0600)]
Document WIDEST_UTYPE

19 months agogv.c: Note that some GV_foo constants are documented
Karl Williamson [Fri, 30 Aug 2019 20:06:20 +0000 (14:06 -0600)]
gv.c: Note that some GV_foo constants are documented

19 months agodump.c: Note that constants to pass are documented
Karl Williamson [Fri, 30 Aug 2019 20:05:27 +0000 (14:05 -0600)]
dump.c: Note that constants to pass are documented

19 months agoConfig: mention it is generated by configpm
Karl Williamson [Fri, 30 Aug 2019 20:00:36 +0000 (14:00 -0600)]
Config: mention it is generated by configpm

19 months agoDocument UTF8_MAXBYTES
Karl Williamson [Fri, 30 Aug 2019 19:57:05 +0000 (13:57 -0600)]
Document UTF8_MAXBYTES

19 months agoDocument rsignal()
Karl Williamson [Fri, 30 Aug 2019 19:56:30 +0000 (13:56 -0600)]
Document rsignal()

19 months agoDocument my_setenv()
Karl Williamson [Fri, 30 Aug 2019 19:56:10 +0000 (13:56 -0600)]
Document my_setenv()

19 months agoDocument instr()
Karl Williamson [Fri, 30 Aug 2019 19:49:36 +0000 (13:49 -0600)]
Document instr()

19 months agoNote that the PerlIO functions and macros are documented
Karl Williamson [Sat, 31 Aug 2019 23:15:45 +0000 (17:15 -0600)]
Note that the PerlIO functions and macros are documented

in perlapio

19 months agoNote that the warnings categories are documented
Karl Williamson [Fri, 30 Aug 2019 03:23:20 +0000 (21:23 -0600)]
Note that the warnings categories are documented

This generates a hidden apidoc entry for the warnings categories, for
downstream processing, like Devel::PPPort.

19 months agowarnings.h: Add pod about finding the XS warning category
Karl Williamson [Thu, 29 Aug 2019 22:52:45 +0000 (16:52 -0600)]
warnings.h: Add pod about finding the XS warning category

The XS category names are easily derivable from the chart of perl-space
categories.

19 months agoregen/embed.pl: Enforce 'b' without 'M' requires 'D'
Karl Williamson [Sun, 1 Sep 2019 02:53:03 +0000 (20:53 -0600)]
regen/embed.pl: Enforce 'b' without 'M' requires 'D'

19 months agoembed.fnc: Functions in mathoms are deprecated
Karl Williamson [Sun, 1 Sep 2019 02:03:04 +0000 (20:03 -0600)]
embed.fnc: Functions in mathoms are deprecated

(unless there is a macro to bypass them)

These functions can be removed at any time, and any installation may
disallow them.  So they are effectively deprecated.  Make this explicit.

19 months agoregen/embed.pl: Enforce mutual exclusivity of 'b', 'm'
Karl Williamson [Sun, 1 Sep 2019 02:51:52 +0000 (20:51 -0600)]
regen/embed.pl: Enforce mutual exclusivity of 'b', 'm'

19 months agoembed.fnc: pack_cat, pad_compname_type have macro
Karl Williamson [Sat, 31 Aug 2019 22:43:35 +0000 (16:43 -0600)]
embed.fnc: pack_cat, pad_compname_type have macro

contrary to what was specified here

19 months agoembed.fnc: Use M flag generally with b, not m.
Karl Williamson [Tue, 20 Aug 2019 18:35:49 +0000 (12:35 -0600)]
embed.fnc: Use M flag generally with b, not m.

Commit 54c193aee0eb1f20806952d8fcd2ddadd5e57600 introduced the M flag,
to indicate an extra macro in addition to a regular function, beyond the
m flag which indicates a macro that replaces the function.  This
distinction matters to downstream processes.

But some of the functions with the b flag (hence in mathoms) still had
an m flag, but the macro is actually extra.  This commit changes those
from m to M.

19 months agoembed.fnc: There is no macro for sv_nolocking()
Karl Williamson [Sat, 31 Aug 2019 23:00:26 +0000 (17:00 -0600)]
embed.fnc: There is no macro for sv_nolocking()

Contrary to what this said.

19 months agoperlapi: Formally give prototypes for isFOO variants
Karl Williamson [Mon, 5 Aug 2019 03:03:42 +0000 (21:03 -0600)]
perlapi: Formally give prototypes for isFOO variants

These macros are documented unconventionally, with the main one of a
type documented, and the corresponding variants listed with a pointer to
how the variant differs from the main entry.  This is because they all
have similar corresponding variants, and doing it this way makes the
documentation more compact.  But downstream software is looking for
an apidoc entry to know about the existence of these.  This commit adds
that, using the new 'h', or hidden flag to suppress them from being
displayed.

19 months agoautodoc.pl: Add h flag for hidden documentation
Karl Williamson [Thu, 29 Aug 2019 22:28:33 +0000 (16:28 -0600)]
autodoc.pl: Add h flag for hidden documentation

This is to be used when the documentation exists, but isn't the typical
sort in perlapi or perlintern.

19 months agoperlapi: Document memEQs memNEs
Karl Williamson [Mon, 5 Aug 2019 00:26:16 +0000 (18:26 -0600)]
perlapi: Document memEQs memNEs

19 months agoperlapi: Document C_ARRAY_LENGTH, END
Karl Williamson [Mon, 5 Aug 2019 00:25:31 +0000 (18:25 -0600)]
perlapi: Document C_ARRAY_LENGTH, END

19 months agoperlapi: Document __ASSERT_
Karl Williamson [Mon, 5 Aug 2019 00:23:03 +0000 (18:23 -0600)]
perlapi: Document __ASSERT_