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

Reply via email to