Branch: refs/heads/blead
Home: https://github.com/Perl/perl5
Commit: 64ad8fb797eaea164b7824c7f3e64457e0addfc0
https://github.com/Perl/perl5/commit/64ad8fb797eaea164b7824c7f3e64457e0addfc0
Author: Lukas Mai <[email protected]>
Date: 2026-01-31 (Sat, 31 Jan 2026)
Changed paths:
M XSUB.h
M deb.c
M doio.c
M doop.c
M dump.c
M embed.fnc
M gv.c
M hv.c
M invlist_inline.h
M locale.c
M malloc.c
M mg.c
M mro_core.c
M numeric.c
M op.c
M packsizetables.inc
M pad.c
M peep.c
M perl.c
M perl.h
M perlstatic.h
M pod/perlguts.pod
M pp.c
M pp.h
M pp_ctl.c
M pp_hot.c
M pp_pack.c
M pp_sys.c
M proto.h
M regcomp.c
M regcomp_debug.c
M regcomp_internal.h
M regcomp_invlist.c
M regcomp_study.c
M regcomp_trie.c
M regen/embed.pl
M regen/genpacksizetables.pl
M regen/mph.pl
M regexec.c
M scope.c
M sv.c
M toke.c
M uni_keywords.h
M universal.c
M utf8.c
M util.c
M win32/win32.c
Log Message:
-----------
remove all uses of STATIC in core
STATIC was first defined internally (as '#define STATIC static) in
regexp.c in perl-2.0, then copied to regcomp.c (and thence later to
regcomp_internal.h) and regexec.c in perl-3.000.
In 76e3520e1f6b (1998), the PERL_OBJECT feature was added. It allowed
for multiplicity as follows: All global variables and functions were
wrapped in a C++ class (CPerlObj), so all access to interpreter state
implicitly went through 'this->...'. Any internal function that used
variables or functions of the perl interpreter had to be non-static
because it was actually a member function of CPerlObj (and declaring
member functions 'static' means they don't have access to 'this'). Thus
all such functions were changed from 'static' to 'STATIC' and a
conditional definition was added to perl.h: In normal configurations,
'STATIC' would just expand to 'static', but under PERL_OBJECT, 'STATIC'
would expand to nothing.
In acfe0abcedaf (2001), PERL_OBJECT was removed again ("deprecated
cruft", "has long since stopped working"). Ever since, 'STATIC' has been
unconditionally defined as 'static'.
But instead of slowly getting removed over time, new uses of STATIC were
added, even in places where it would have made no sense under
PERL_OBJECT, such as XS modules.
This patch removes all remaining uses of STATIC in core and changes them
to static.
Commit: cfe7f62cceb34f984ad3474b3e62a68ca50c7964
https://github.com/Perl/perl5/commit/cfe7f62cceb34f984ad3474b3e62a68ca50c7964
Author: Lukas Mai <[email protected]>
Date: 2026-01-31 (Sat, 31 Jan 2026)
Changed paths:
M perl.h
Log Message:
-----------
perl.h: move STATIC to !PERL_CORE
... with the rest of the PERL_OBJECT macros. We retain STATIC for
compatibility with XS code, but core should just use static instead.
Commit: 446e8aca388ca0bb9b03145b65457239a73f1ec7
https://github.com/Perl/perl5/commit/446e8aca388ca0bb9b03145b65457239a73f1ec7
Author: Lukas Mai <[email protected]>
Date: 2026-01-31 (Sat, 31 Jan 2026)
Changed paths:
M dist/Time-HiRes/HiRes.pm
M dist/Time-HiRes/HiRes.xs
Log Message:
-----------
Time-HiRes: use static, not STATIC
Commit: 842af7eb6ba42e5dc73bb600d208d8c8d1169460
https://github.com/Perl/perl5/commit/842af7eb6ba42e5dc73bb600d208d8c8d1169460
Author: Lukas Mai <[email protected]>
Date: 2026-01-31 (Sat, 31 Jan 2026)
Changed paths:
M ext/XS-APItest/APItest.xs
Log Message:
-----------
XS-APItest: use static, not STATIC
Commit: 063c81058fd22bbeac0853df1a9e5b670171d243
https://github.com/Perl/perl5/commit/063c81058fd22bbeac0853df1a9e5b670171d243
Author: Lukas Mai <[email protected]>
Date: 2026-01-31 (Sat, 31 Jan 2026)
Changed paths:
M dist/threads/lib/threads.pm
M dist/threads/threads.xs
Log Message:
-----------
threads: use static, not STATIC
Commit: 9aef83a89b2756400b1ae3317a8d8c01851aa70a
https://github.com/Perl/perl5/commit/9aef83a89b2756400b1ae3317a8d8c01851aa70a
Author: Lukas Mai <[email protected]>
Date: 2026-01-31 (Sat, 31 Jan 2026)
Changed paths:
M dist/threads-shared/lib/threads/shared.pm
M dist/threads-shared/shared.xs
Log Message:
-----------
threads-shared: use static, not STATIC
Commit: 07193a17ed204af0704a982eb09dc64f6c951295
https://github.com/Perl/perl5/commit/07193a17ed204af0704a982eb09dc64f6c951295
Author: Lukas Mai <[email protected]>
Date: 2026-01-31 (Sat, 31 Jan 2026)
Changed paths:
M ext/XS-Typemap/Typemap.pm
M ext/XS-Typemap/Typemap.xs
Log Message:
-----------
XS-Typemap: use static, not STATIC
Commit: 535b3579df48f139f6b829c3f3881ebd7a51dbe4
https://github.com/Perl/perl5/commit/535b3579df48f139f6b829c3f3881ebd7a51dbe4
Author: Lukas Mai <[email protected]>
Date: 2026-01-31 (Sat, 31 Jan 2026)
Changed paths:
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Constants.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/CountLines.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Eval.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Node.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps/Cmd.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps/InputMap.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps/OutputMap.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps/Type.pm
M dist/ExtUtils-ParseXS/lib/perlxs.pod
M dist/ExtUtils-ParseXS/t/XSMore.xs
Log Message:
-----------
ExtUtils-ParseXS: use static, not STATIC
Compare: https://github.com/Perl/perl5/compare/5dd475293ec7...535b3579df48
To unsubscribe from these emails, change your notification settings at
https://github.com/Perl/perl5/settings/notifications