Branch: refs/heads/smoke-me/khw-pr7
Home: https://github.com/Perl/perl5
Commit: be570bbb9ab9f8624a22ea3f9a5f893805a60d36
https://github.com/Perl/perl5/commit/be570bbb9ab9f8624a22ea3f9a5f893805a60d36
Author: Karl Williamson <[email protected]>
Date: 2021-04-15 (Thu, 15 Apr 2021)
Changed paths:
M handy.h
M utf8.h
Log Message:
-----------
Make paradigm into a macro
These macros use
(x) | 0
to get a compiler error if x is a pointer rather than a value. This was
instituted because there was confusion in them as to what they were
called with.
But the purpose of the paradigm wasn't obvious to even some experts; it
was documented in every file in which it was used, but not at every
occurrence. And, not every compiler can cope with them, it turns out.
Making the paradigm into a macro, which this commit does, makes the uses
self-documenting, albeit at the expense of cluttering up the macro
definition somewhat; and allows the mechanism to be turned off if
necessary for some compilers. Since it will be enabled for the majority
of compilers, the potential bugs will be caught anyway.
Commit: f0f7745f3cc299fbb736f271bc1a120d144a2c3b
https://github.com/Perl/perl5/commit/f0f7745f3cc299fbb736f271bc1a120d144a2c3b
Author: Karl Williamson <[email protected]>
Date: 2021-04-15 (Thu, 15 Apr 2021)
Changed paths:
M handy.h
Log Message:
-----------
handy.h: Skip non-ptr assertion on old gcc's
See https://github.com/Perl/perl5/issues/18655, which this fixes.
Compare: https://github.com/Perl/perl5/compare/be570bbb9ab9%5E...f0f7745f3cc2