[Perl/perl5] 193ed7: Perl_check_hash_fields_and_hekify - hekifying NVs ...

[email protected] (Richard Leach via perl5-changes)
Newsgroups perl.perl5.changes
Message-ID <Perl/perl5/push/refs/heads/blead/[email protected]>
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 193ed7d61836e58e97a8aa7b1f4a2e067285386c
      https://github.com/Perl/perl5/commit/193ed7d61836e58e97a8aa7b1f4a2e067285386c
  Author: Richard Leach <[email protected]>
  Date:   2026-03-11 (Wed, 11 Mar 2026)

  Changed paths:
    M op.c
    M pp_hot.c
    M t/run/locale.t

  Log Message:
  -----------
  Perl_check_hash_fields_and_hekify - hekifying NVs is not locale-safe

`Perl_check_hash_fields_and_hekify` used to convert IV, NV, and PV
`OP_CONST` SV values into shared HEKs at compile time. However, the
decimal  separator character is locale dependent, so it is unsafe to
perform a one-off conversion of an NV to a hash key using the compile
time locale.

This commit adds a check at optimization time to ensure that NVs are
not unsafely hekified.

It also adds a couple of new regression tests.


  Commit: 65e9d8522a2a9866e57f6dea8bc446e7bde01666
      https://github.com/Perl/perl5/commit/65e9d8522a2a9866e57f6dea8bc446e7bde01666
  Author: Richard Leach <[email protected]>
  Date:   2026-03-11 (Wed, 11 Mar 2026)

  Changed paths:
    M pod/perldelta.pod

  Log Message:
  -----------
  Perldelta for GH#24252


Compare: https://github.com/Perl/perl5/compare/6e2f875dfaec...65e9d8522a2a

To unsubscribe from these emails, change your notification settings at https://github.com/Perl/perl5/settings/notifications
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.