Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 92a0bb2462f53210b5f8af1332fc91806d507595
      
https://github.com/Perl/perl5/commit/92a0bb2462f53210b5f8af1332fc91806d507595
  Author: Karl Williamson <[email protected]>
  Date:   2020-12-06 (Sun, 06 Dec 2020)

  Changed paths:
    M handy.h

  Log Message:
  -----------
  inRANGE, withinCOUNT: Split so can avoid asserts

This commit splits these macros up into components that are separately
callable.  The components are considered internal core only, and the
purpose is to avoid duplicate assert() calls that were causing some
compilers to crash from not being able to handle the size.

In particular, this commit refactors inRANGE so that the asserts are
done only once, shortening what it expands to.


  Commit: 88086fd8ed3eb3b690514588f5d6da7c429a5a8e
      
https://github.com/Perl/perl5/commit/88086fd8ed3eb3b690514588f5d6da7c429a5a8e
  Author: Karl Williamson <[email protected]>
  Date:   2020-12-06 (Sun, 06 Dec 2020)

  Changed paths:
    M regcharclass.h
    M regen/regcharclass.pl

  Log Message:
  -----------
  regen/regcharclass.pl: Use smaller inRANGE version

The previous commit split inRANGE up so that code that was known to have
valid inputs to it could use a component that didn't have all the
compile-time checks (often duplicates) that otherwise are made.

This commit changes to use that component.  The reason the compile-time
checks are unnecessary here, is this is machine-generated code known to
meet the inRANGE input requirements.

All those compile-time checks added up to being too large for some
compilers to handle.


Compare: https://github.com/Perl/perl5/compare/803e49356bee...88086fd8ed3e

Reply via email to