Branch: refs/heads/smoke-me/khw-scan_num
  Home:   https://github.com/Perl/perl5
  Commit: 4e0f1ed4b7fb85e604e01e54e0694b17df1fec14
      
https://github.com/Perl/perl5/commit/4e0f1ed4b7fb85e604e01e54e0694b17df1fec14
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M proto.h

  Log Message:
  -----------
  embed.fnc: Use correct name for formal parameter

The prototype here did not match the actual function


  Commit: 02eea7664a2b28c93c1240e1892bf5ce4b41038e
      
https://github.com/Perl/perl5/commit/02eea7664a2b28c93c1240e1892bf5ce4b41038e
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M embed.h
    M inline.h
    M numeric.c
    M perl.h
    M proto.h

  Log Message:
  -----------
  Inline Perl_grok_(bin|oct|hex)


  Commit: 149403bb583e627a351b3dadb1e8fe117434d546
      
https://github.com/Perl/perl5/commit/149403bb583e627a351b3dadb1e8fe117434d546
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M embed.h
    M inline.h
    M numeric.c
    M proto.h

  Log Message:
  -----------
  XXX Add grok_bin_hex()

grok_bin() and grok_hex() differ from grok_oct() in that they optionally
accept a leading 0x or 0b, based on a flag.  Then they all share common
code.  This commit splits out the check for the leading 0[bx] into a
separate function.


  Commit: 7b31255c4a6d06e287fa34a643f3f76b9c532615
      
https://github.com/Perl/perl5/commit/7b31255c4a6d06e287fa34a643f3f76b9c532615
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Add two UNLIKELY()s

Underscores in numbers are much less common than digits, and its
unlikely that a number will begin with all zero's and underscores


  Commit: db452f0554f4d1f308770ddf2973eaf05b3d22e2
      
https://github.com/Perl/perl5/commit/db452f0554f4d1f308770ddf2973eaf05b3d22e2
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Add/revise some comments

And reflow.  This is in preparation for the next commit.


  Commit: 09ceb17bedc6b84877190689a74ef904f3b110b6
      
https://github.com/Perl/perl5/commit/09ceb17bedc6b84877190689a74ef904f3b110b6
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Speed up overflow detection

We can compute outside the loop the exact value at which the next
iteration wil overflow, saving some operations


  Commit: fa84f11a0b0ce9fb6c9627fc25e2b2e651ba2434
      
https://github.com/Perl/perl5/commit/fa84f11a0b0ce9fb6c9627fc25e2b2e651ba2434
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Improve speed, precision

This replaces a floating multiply each loop iteration with an integer
increment, plus after the loop completes, a call to ldexp() or pow().

Most of the floating multiplies are done on integral values, so
not much precision is lost, but this gets it down to just one
precision-losing operation.


  Commit: 7def20c12216eb778aa589f03035db3811ef8568
      
https://github.com/Perl/perl5/commit/7def20c12216eb778aa589f03035db3811ef8568
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Macroize duplicated code

This is now complicated enough to benefit being placed in a macro
instead of duplicating it.


  Commit: 611a8db0aa65cbd916250666d5b6cb61cb6ca30c
      
https://github.com/Perl/perl5/commit/611a8db0aa65cbd916250666d5b6cb61cb6ca30c
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M perl.h
    M pp.c

  Log Message:
  -----------
  Add definitions for [IU}V_BITS to perl.h

replacing the pp.c definition of IV_BITS


  Commit: 7fef94ae1af51155c7f40b9d211b2a0fc6adf7ca
      
https://github.com/Perl/perl5/commit/7fef94ae1af51155c7f40b9d211b2a0fc6adf7ca
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Eke more precision when overflows

The algorithm for dealing with input that overflows a UV is to parse in
batches that don't overflow.  This means when we would otherwise
overflow the UV, we store the unoverflowed value in an NV, and start
over with the next batch, combining that with the first batch at the end
or when it too overflows.  This minimizes the number of floating point
operations.

But on platforms where a UV contains more bits than an NV significand,
that first batch when stored loses precision.  This is typical on a
64-bit machine using IEEE 754 double precision NVs, which have 53 bits
of precision.

This precision loss can be avoided by stopping accumulating the first
batch just before it would overflow the significand.  That effectively
is what this commit does.

Actually it is a bit more complicated.  Instead of stopping there, it
adds a checkpoint and goes on.  If the final result doesn't overflow the
UV, the checkpoint is simply ignored.  But if it does overflow, the code
returns to the checkpoint and creates a first batch from the data as of
there, and reparses those typically few bytes of input (11 bits is 2-3
hex digits) as the first bytes of the second batch.


  Commit: 3db8d12edb73e5286b43b4ea89b2d5dbfab2754a
      
https://github.com/Perl/perl5/commit/3db8d12edb73e5286b43b4ea89b2d5dbfab2754a
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Move error handling to outside loop

This makes the loop occupy less memory, but it's mainly for the next
commit which will remove a conditional each time through the loop, and
the tests want the error messages displayed in a particular order.


  Commit: dd5e2a76b1b61c1370a7b5c739ddad62269a1ee6
      
https://github.com/Perl/perl5/commit/dd5e2a76b1b61c1370a7b5c739ddad62269a1ee6
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  debug


  Commit: a27b879dc1697f9fdd0a89f6dde858a973856a8c
      
https://github.com/Perl/perl5/commit/a27b879dc1697f9fdd0a89f6dde858a973856a8c
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  rm debug


  Commit: fdc0e2641ed70e6a018eb35bb4c635f1e4361fb4
      
https://github.com/Perl/perl5/commit/fdc0e2641ed70e6a018eb35bb4c635f1e4361fb4
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Move overflow notification outside loop

There are several code section that deal with overflow; this allows some
of them to be combined, in future commits


  Commit: be2c7f40d2c55f0a2b678c11fe2da997d7a5d932
      
https://github.com/Perl/perl5/commit/be2c7f40d2c55f0a2b678c11fe2da997d7a5d932
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Combine two overflow handling sections


  Commit: 576ce40db2462def08e82070b612d2d5b2f5105f
      
https://github.com/Perl/perl5/commit/576ce40db2462def08e82070b612d2d5b2f5105f
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Cleanup the function end code

This rationalizes a bit more the code at the end of the function to make
it a bit more readable.


  Commit: 5a9d382210fab2ce5a5668647865d5a085e8a80a
      
https://github.com/Perl/perl5/commit/5a9d382210fab2ce5a5668647865d5a085e8a80a
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Some more function termination cleanup

This moves some code into an else, and replaces it with an UNLIKELY.

That could be eliminated if we didn't care about the order the warning
messages are raised, but the test suite does test for a particular
order, so I'm leaving it as-is.


  Commit: f944ab905fc119159af965002522dc3e6b04cfce
      
https://github.com/Perl/perl5/commit/f944ab905fc119159af965002522dc3e6b04cfce
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M inline.h
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Add ability to discard not overflow

This will be used in a future commit


  Commit: 264257aa033ebfba1c3a8028d1fe41d1718ec506
      
https://github.com/Perl/perl5/commit/264257aa033ebfba1c3a8028d1fe41d1718ec506
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Macroize common expression

This is in preparation for a future commit where the expression will
change, and this way, we can explain it in one place


  Commit: 2aa3b02ba49745eb63531557bdd15d2a61ea7b2f
      
https://github.com/Perl/perl5/commit/2aa3b02ba49745eb63531557bdd15d2a61ea7b2f
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_oct_bin_hex: Change OR to addition

Currently an OR is all that is needed as a shift is used to make space
for the next digit.  But a future commit will change that so that we
will need to add the new digit, not just OR it


  Commit: f69a4a158a4eadf6b9e7fa24e87fcd7b2c5a36a1
      
https://github.com/Perl/perl5/commit/f69a4a158a4eadf6b9e7fa24e87fcd7b2c5a36a1
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M embed.h
    M inline.h
    M numeric.c
    M proto.h

  Log Message:
  -----------
  shift1,2


  Commit: d4a1145ba31b99d59c99b2354cb29fcdb091981b
      
https://github.com/Perl/perl5/commit/d4a1145ba31b99d59c99b2354cb29fcdb091981b
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Move declaration

A future commit will want it earlier


  Commit: f1c312542abede9beb028d6c8c438758bc558045
      
https://github.com/Perl/perl5/commit/f1c312542abede9beb028d6c8c438758bc558045
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Save expression in a variable

The next commit will reference this in multiple places


  Commit: b107a3fe8360ecf5c2380af8dc03abd9ed7151d6
      
https://github.com/Perl/perl5/commit/b107a3fe8360ecf5c2380af8dc03abd9ed7151d6
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_bin_oct_hex: Also accept decimal


  Commit: 2a78847ca112ddf63bda18aaa0615ca4ef4300c1
      
https://github.com/Perl/perl5/commit/2a78847ca112ddf63bda18aaa0615ca4ef4300c1
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  use-decimal


  Commit: a9728e86876d13e889e0a21e9a530f74053c46cb
      
https://github.com/Perl/perl5/commit/a9728e86876d13e889e0a21e9a530f74053c46cb
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M embed.h
    M inline.h
    M numeric.c
    M proto.h

  Log Message:
  -----------
  Rename grok_bin_oct_hex()

It now also accepts decimal, so that name no longer is appropriate.
grok_uint_by_base() is what I chose.


  Commit: ea27df71a180fab982de6d472418ab5da834ef50
      
https://github.com/Perl/perl5/commit/ea27df71a180fab982de6d472418ab5da834ef50
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  XXX fnc changed earlier grok_uint_by_base: Change name of formal parameter

The new name is clearer that this is passed to a function to look
something up.


  Commit: 17f8a602d0c057992d95d7ef3463beb9438153f4
      
https://github.com/Perl/perl5/commit/17f8a602d0c057992d95d7ef3463beb9438153f4
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_uint_by_base: Combine an if with its else

By changing the conditional, the two branches can be combined to avoid
some duplication.


  Commit: 0996159d1e6a4827d3911db45b75170618729008
      
https://github.com/Perl/perl5/commit/0996159d1e6a4827d3911db45b75170618729008
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_uint_by_base: Clean up loop some

As the comments say, this loop is "wonky".  But it doesn't have to be as
wonky as it is.  This commit reverses the meaning of some conditionals
so that when true they exit the loop.  And this allows the removal of a
'break' just at the end of the loop scope, making the loop much more
conventional.

In reversing the meaning, I split some off into more conditionals.  This
makes it easier to understand, and prepares for a future commit.


  Commit: 25be079205ecdf63b662a8fd0f9fd327f85f64ab
      
https://github.com/Perl/perl5/commit/25be079205ecdf63b662a8fd0f9fd327f85f64ab
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_uint_by_base: Move declaration until needed

This code may not need to get executed; so move it until it is needed.


  Commit: c182b3d6260c9a009330dbeba0a7100f0d5eb3c1
      
https://github.com/Perl/perl5/commit/c182b3d6260c9a009330dbeba0a7100f0d5eb3c1
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_uint_by_base: Optimize for more likely case

This changes the code to prefer the case where the input is a string
without underscores that contains 8 or fewer digits in the given base.
Doing so eliminates two conditionals from what I think is what the vast
majority of calls to this function look like.

This is accomplished in this commit by making the default: case for at
least 9 digits and adds a case: for 8.  There is no need for anything
then but to return for any string 8 or fewer digit characters long.

The default does try to handle leading zeros efficiently by having a
tight loop to strip them off.


  Commit: 3263805341152b3464e8b354e19f247a41699f7c
      
https://github.com/Perl/perl5/commit/3263805341152b3464e8b354e19f247a41699f7c
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  grok_uint_by_base: Round discarded digits

When remaining digits are discarded instead of overflowing, this commit
causes the returned non-overflowed value to be rounded (towards even)
instead of truncated.

This will be useful when future commits cause this function to be called
to convert a string of numbers following a decimal point.  Instead of
truncating the final significant value, it will be rounded.


  Commit: b1180f1606d35ebd487ea5e88dd90f47975a6e4e
      
https://github.com/Perl/perl5/commit/b1180f1606d35ebd487ea5e88dd90f47975a6e4e
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  XXX grok_uint_by_base: Outdent lines


  Commit: 518058522419c6a1f0949f017135d51dea56d893
      
https://github.com/Perl/perl5/commit/518058522419c6a1f0949f017135d51dea56d893
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M inline.h
    M numeric.c

  Log Message:
  -----------
  grok_uint_by_base: Allow sequential underscores

For one future use of this function, multiple consecutive underscores
are tolerated.  This prepares this function for this use.


  Commit: 78c9bbb5ffc5137b917f768fd9bccbaa63cf1f59
      
https://github.com/Perl/perl5/commit/78c9bbb5ffc5137b917f768fd9bccbaa63cf1f59
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M embed.h
    M inline.h
    M numeric.c
    M proto.h

  Log Message:
  -----------
  grok_uint_by_base: Allow caller to specify overflow bits

Usually this will be UV_BITS to allow something up to UV_MAX, but a
future use will want this to be able to be smaller


  Commit: eee67839e43327c6d8c69124d1960f35bbe7e9bb
      
https://github.com/Perl/perl5/commit/eee67839e43327c6d8c69124d1960f35bbe7e9bb
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  pod


  Commit: ca3cfc43023bf20c2f68cbd66a1e0215beec0919
      
https://github.com/Perl/perl5/commit/ca3cfc43023bf20c2f68cbd66a1e0215beec0919
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M embed.h
    M inline.h
    M numeric.c
    M proto.h

  Log Message:
  -----------
  digit-count


  Commit: 977690d67679b0d4ac1bf867c14982766ed9024c
      
https://github.com/Perl/perl5/commit/977690d67679b0d4ac1bf867c14982766ed9024c
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  XXX unsure LIKELY


  Commit: b6f2c7f86e75837b38c7bfb89e6def5e94577697
      
https://github.com/Perl/perl5/commit/b6f2c7f86e75837b38c7bfb89e6def5e94577697
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c
    M perl.h

  Log Message:
  -----------
  notes


  Commit: bb19d7e9b0729700eca39745c3ba30fc8504482a
      
https://github.com/Perl/perl5/commit/bb19d7e9b0729700eca39745c3ba30fc8504482a
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M numeric.c
    M proto.h

  Log Message:
  -----------
  uintmax_t


  Commit: 134774c9b5c017f70580f3da31a01530acc85169
      
https://github.com/Perl/perl5/commit/134774c9b5c017f70580f3da31a01530acc85169
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  toke.c: scan_num: %c format to print a non digit byte

This panic croak was wrong, should it ever get executed.  Any byte that
reaches it isn't a digit, so %d would give wrong results.


  Commit: 97e08e073eedd4b5effbb1bc6d381ced8e5cbc60
      
https://github.com/Perl/perl5/commit/97e08e073eedd4b5effbb1bc6d381ced8e5cbc60
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: Reformat/fix comments

These comments that gave complicated regex patterns that show the syntax
of the various types of numerical constants recognized by this function
had some oversights in them, and were hard to read.


  Commit: f6c0b5e190ed4b8a9a8e0d09aa6dc1ff0563acd9
      
https://github.com/Perl/perl5/commit/f6c0b5e190ed4b8a9a8e0d09aa6dc1ff0563acd9
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: Reorder case: statements in switch()

Move the default to the end, and the shortest to the beginning.  This is
in preparation for future commits.


  Commit: e98ba497ea1df71ba605c09a133aa28c19b7a519
      
https://github.com/Perl/perl5/commit/e98ba497ea1df71ba605c09a133aa28c19b7a519
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: Convert switch() to elsif series

By using isDIGIT(), the cases for individual digits 1-9 collapse into a
single one, leaving just three possibilities, which are more clearly
handled by an if and two 'else if's


  Commit: 2ccb12760275c990b4a5bb638598d42e078dbcfa
      
https://github.com/Perl/perl5/commit/2ccb12760275c990b4a5bb638598d42e078dbcfa
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: indentation, reorder-comments only

Some blocks have been removed, so can outdent; others will be added in
future commits, so indent.


  Commit: 9a1a19b66b5dafd9f1c6d1af108148376b6b51ee
      
https://github.com/Perl/perl5/commit/9a1a19b66b5dafd9f1c6d1af108148376b6b51ee
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  toke.c: Convert do/while to modern STMT_START/END


  Commit: 7a3e8493bc776081a0c9f74c2555a35c01ce0acd
      
https://github.com/Perl/perl5/commit/7a3e8493bc776081a0c9f74c2555a35c01ce0acd
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M embed.h
    M numeric.c
    M proto.h

  Log Message:
  -----------
  numeric.c: Make output_nonportable() callable from core

Instead of being internal to this file.


  Commit: ac08fae4726ac8dbc6468e3dbd98ad1e7f5e8a8c
      
https://github.com/Perl/perl5/commit/ac08fae4726ac8dbc6468e3dbd98ad1e7f5e8a8c
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: Replace code by equivalent function call

The previous commit has made this function, long in numeric.c,
available to the rest of core.  The code here removed duplicated what it
does.  Two variables are now unused, and are removed.


  Commit: 1554f421529bf41feca8d71ffaac613854ec7742
      
https://github.com/Perl/perl5/commit/1554f421529bf41feca8d71ffaac613854ec7742
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: Macroize common code

This avoids repeating code snippets


  Commit: c2678c87006881b63600e9a9e628e6caf95786b4
      
https://github.com/Perl/perl5/commit/c2678c87006881b63600e9a9e628e6caf95786b4
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: Remove now irrelevant code

The previous commit created macros to handle underscores in a numeric
constant.  They changed things so adjacent underscores are all absorbed
at once (and warned about).  That means we no longer have to keep track
of if the previous character was an underscore.


  Commit: 32ca2f8ae8631fdd0f127ef9fb426d3021cb168a
      
https://github.com/Perl/perl5/commit/32ca2f8ae8631fdd0f127ef9fb426d3021cb168a
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: Remove duplicated logic

The previous commit enhanced grok_bin_oct_hex to handle multiple
consecutive underscores, which is all that was missing for this code to
be able to call it instead of doing the same task itself.

This saves quite a bit of code


  Commit: 2a7485c510947bbcae6e3ef43c9bfcb1ef7837e7
      
https://github.com/Perl/perl5/commit/2a7485c510947bbcae6e3ef43c9bfcb1ef7837e7
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  scan_num: Extract common code to a single place


  Commit: d6fba6b39a57203870bab8028f4865ceb359cc2e
      
https://github.com/Perl/perl5/commit/d6fba6b39a57203870bab8028f4865ceb359cc2e
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  DEBUG


  Commit: b9de8bd8ed25c4d3c9978c90624e534b0865bad0
      
https://github.com/Perl/perl5/commit/b9de8bd8ed25c4d3c9978c90624e534b0865bad0
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  XXX Make nonportable a switch


  Commit: edda673029c2801e8ad62bc452ff6017ebe0a5ef
      
https://github.com/Perl/perl5/commit/edda673029c2801e8ad62bc452ff6017ebe0a5ef
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M numeric.c

  Log Message:
  -----------
  white after grok_num


  Commit: d679e668240305a6014f4e98593531690c2099a6
      
https://github.com/Perl/perl5/commit/d679e668240305a6014f4e98593531690c2099a6
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  frac


  Commit: 36ab005f1a7ca51c484aa9a6db1239c71cbefa9b
      
https://github.com/Perl/perl5/commit/36ab005f1a7ca51c484aa9a6db1239c71cbefa9b
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M embed.fnc
    M handy.h
    M inline.h
    M numeric.c
    M pod/perldiag.pod
    M proto.h
    M t/op/hexfp.t
    M t/op/oct.t
    M toke.c

  Log Message:
  -----------
  trial


  Commit: 46d9961515cabd29b3accf9a6b3a6ab01ca4c5f9
      
https://github.com/Perl/perl5/commit/46d9961515cabd29b3accf9a6b3a6ab01ca4c5f9
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M pod/perldata.pod

  Log Message:
  -----------
  perldata: Add details to hex, etc floats


  Commit: 63ce45dce9ea747235bb355387f02c39ef96f71e
      
https://github.com/Perl/perl5/commit/63ce45dce9ea747235bb355387f02c39ef96f71e
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  f


  Commit: 5bd2008b9a7effcc5247f52577e3565c1192f11f
      
https://github.com/Perl/perl5/commit/5bd2008b9a7effcc5247f52577e3565c1192f11f
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M Configure
    M config_h.SH
    M metaconfig.h

  Log Message:
  -----------
  Configure


  Commit: 76b758e070597e12ed20112459276e19c1b7099e
      
https://github.com/Perl/perl5/commit/76b758e070597e12ed20112459276e19c1b7099e
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M handy.h
    M perl.h
    M toke.c

  Log Message:
  -----------
  2


  Commit: 784cf63b12f35f3118f3beac8d695b5b64eece6b
      
https://github.com/Perl/perl5/commit/784cf63b12f35f3118f3beac8d695b5b64eece6b
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M Configure

  Log Message:
  -----------
  f


  Commit: aba63fe5ffa1721f4c85648fa044b84289f957b2
      
https://github.com/Perl/perl5/commit/aba63fe5ffa1721f4c85648fa044b84289f957b2
  Author: Karl Williamson <[email protected]>
  Date:   2025-12-08 (Mon, 08 Dec 2025)

  Changed paths:
    M Configure
    M Cross/config.sh-arm-linux
    M Cross/config.sh-arm-linux-n770
    M Porting/config.sh
    M configure.com
    M plan9/config_sh.sample
    M win32/config.gc
    M win32/config.vc

  Log Message:
  -----------
  3


Compare: https://github.com/Perl/perl5/compare/c9a5117dbd72...aba63fe5ffa1

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications

Reply via email to