Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 43b31fd6ab39455290d518d4770a9d082dc28f1e
      
https://github.com/Perl/perl5/commit/43b31fd6ab39455290d518d4770a9d082dc28f1e
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pp_pack.c

  Log Message:
  -----------
  pp_pack.c: White-space, add braces only

Change a few lines that affect the next commits that use a coding style
not conforming to current expectations

And also add some blank lines to serve as "paragraph" markers between code
segments, and change the indentation of a few lines in preparation for
blocks being added and removed in the next commits.


  Commit: 678e40b1c40db32f9d9a6bc483d93cfc609e94e7
      
https://github.com/Perl/perl5/commit/678e40b1c40db32f9d9a6bc483d93cfc609e94e7
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pp_pack.c

  Log Message:
  -----------
  pp_pack: utf8_to_byte: Use 'uv' form, not 'uvchr'

This converts a call to utf8n_to_uvchr() to instead use
utf8_to_uv_flags().

The previous code thought it was checking for failure and croaking when
it occurred, but was checking the wrong way so that it never could fail.
And now it does a proper check and can fail, which was the original
intent.


  Commit: b4df558f53789b46a8d522f91653dbbe2fb74b12
      
https://github.com/Perl/perl5/commit/b4df558f53789b46a8d522f91653dbbe2fb74b12
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pp_pack.c

  Log Message:
  -----------
  pp_pack: unpack: Use 'uv' form, not 'uvchr'

The new form croaks under failure; the previous didn't.  But to get here
the previous paragraph of code had to succeed, which means this should
too.

The flag in the changed call is the default for utf8_to_uv_or_die(), so
it can be removed.


  Commit: 9a463d3188e5a99fad14595ecae95f3394e45b57
      
https://github.com/Perl/perl5/commit/9a463d3188e5a99fad14595ecae95f3394e45b57
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pp_pack.c

  Log Message:
  -----------
  pp_pack: unpack: Use 'uv' form, not 'uvchr'

This converts a call to utf8n_to_uvchr(), using instead utf8_to_uv().
The flag parameter UTF8_ALLOW_DEFAULT before this commit is the default
for utf8_to_uv(), so it can be omitted.

Like previous commits, the previous code thought it was checking for
failure and croaking, but was checking the wrong way so that it never
could fail.  In the new commit, I had to remove that checking, because
it caused test suite failures.


  Commit: 78defb048c91d8f730730d6ebf238b34f50d8b76
      
https://github.com/Perl/perl5/commit/78defb048c91d8f730730d6ebf238b34f50d8b76
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pp_pack.c

  Log Message:
  -----------
  pp_pack: unpack: Use 'uv' form, not 'uvchr'

Like previous commits, this converts a call to utf8n_to_uvchr() to use
instead utf8_to_uv_flags().

And like previous commits, the previous code thought it was checking for
failure and croaking, but was checking the wrong way so that it never
could fail.  With the new commit, it can fail.

Also, the previous commit stored the result in an 'int', whose range can
be significantly less than the code point returned.  The value was
truncated without notice.  Now, I croak if the value got truncated.

This code doesn't fully make sense to me, as this is for unpacking a 'c'
format, which is supposed to be a signed 8-bit value, and what is
getting stored is a full integer value


  Commit: f087bac5f605913555d00d256e1f4b3e0dc162da
      
https://github.com/Perl/perl5/commit/f087bac5f605913555d00d256e1f4b3e0dc162da
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pp_pack.c

  Log Message:
  -----------
  pp_pack: utf8_to_bytes: Use 'uv' form, not 'uvchr'

Like previous commits, this converts a call to utf8n_to_uvchr() to
instead use utf8_to_uv_flags().

Unlike those commits, the previous code did in fact properly check for
failure.  But upon failure, it semi-unsafely assumed the start byte was
accurate as to the intended byte length of the input character.  (It did
check that the returned value did not go past the end of the buffer, by
using UTF8_SAFE_SKIP() ).  The new function call always returns the
correct number of bytes, so just use that instead of trying to recompute
it.

The mechanism for deteriming failure no longer depends on the CHECK_ONLY
flag, so that is removed.


  Commit: b0c3c5f582bed91c98400796c9d40d3ae12179f1
      
https://github.com/Perl/perl5/commit/b0c3c5f582bed91c98400796c9d40d3ae12179f1
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pp_pack.c

  Log Message:
  -----------
  pp_pack.c: S_utf8_to_bytes: Rmv loop

Prior to this commit, the code went through the buffer with warnings
turned off, but saving the fact if there were problems.  If so, it ran
through the buffer again, with warnings turned on to display those
problems.

I'm unsure of why it didn't output any warnings until it got to the end.
But utf8_to_uv_msgs() allows us to store up the messages and output them
later in the same order as encountered, and without having to reparse


  Commit: e9261d6a9bb268546c32f3f39d133cdaca96d952
      
https://github.com/Perl/perl5/commit/e9261d6a9bb268546c32f3f39d133cdaca96d952
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pp_pack.c

  Log Message:
  -----------
  pp_pack.c: Convert variable to bool

The reason for it to be more than this was removed in the previous
commit


  Commit: 784a668e4ff85bbda1c976ef9652f1ffb395c579
      
https://github.com/Perl/perl5/commit/784a668e4ff85bbda1c976ef9652f1ffb395c579
  Author: Karl Williamson <k...@cpan.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M pod/perldelta.pod

  Log Message:
  -----------
  perldelta for pp_pack utf8_to_uv changes


Compare: https://github.com/Perl/perl5/compare/0eceef0204ab...784a668e4ff8

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

Reply via email to