This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perlapi: Mark call_list as internal
authorKarl Williamson <khw@cpan.org>
Sat, 21 May 2022 04:22:03 +0000 (22:22 -0600)
committerKarl Williamson <khw@cpan.org>
Sat, 21 May 2022 15:23:52 +0000 (09:23 -0600)
This function is heavily dependent on non-public state information.

ExtUtils::ParseXS generates code that uses it to emulate the generated
XS boot code for a range of perls where this was problematic.  This
range ends before 5.22.  This code is #ifdef'd out on newer perls.

New XS code should not use this function.

There is one CPAN module that uses it independently, Parse::Perl, using
the same formulation that ExtUtils::ParseXS generates.

embed.fnc

index 6870287..c94f24b 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -674,7 +674,7 @@ p   |void   |boot_core_builtin
 p      |void   |boot_core_UNIVERSAL
 : Used in perl.c
 p      |void   |boot_core_PerlIO
-Ap     |void   |call_list      |I32 oldscope|NN AV *paramList
+Cp     |void   |call_list      |I32 oldscope|NN AV *paramList
 Apd    |const PERL_CONTEXT *   |caller_cx|I32 level \
                                |NULLOK const PERL_CONTEXT **dbcxp
 : Used in several source files