[Perl/perl5] c22656: perlrequick: Note {,n} added in 5.34

2023-07-31 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: c226565ffd491f0613db55649bce102b831b1f12
  
https://github.com/Perl/perl5/commit/c226565ffd491f0613db55649bce102b831b1f12
  Author: Karl Williamson 
  Date:   2023-07-31 (Mon, 31 Jul 2023)

  Changed paths:
M pod/perlrequick.pod

  Log Message:
  ---
  perlrequick: Note {,n} added in 5.34

This fixes GH #21020




[Perl/perl5] 053f9e: hints/linux: Add additional expression when matchi...

2023-07-31 Thread James E Keenan via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 053f9e8029ff93d2bb530e010affab7e73608812
  
https://github.com/Perl/perl5/commit/053f9e8029ff93d2bb530e010affab7e73608812
  Author: Raul E Rangel 
  Date:   2023-07-31 (Mon, 31 Jul 2023)

  Changed paths:
M AUTHORS
M hints/linux.sh

  Log Message:
  ---
  hints/linux: Add additional expression when matching clang

Newer versions of clang actually print the distro before `clang` when
calling `$CC --version`. This changes fixes the regex so it can match
this new pattern.

i.e.,

$ clang --version
Debian clang version 14.0.6

$ x86_64-pc-linux-gnu-clang --version
Chromium OS 17.0_pre496208_p20230501-r1 clang version 17.0.0

Fixes #21099




[Perl/perl5] cda9b6: perldelta for fb5c7cea820da4

2023-07-31 Thread Tony Cook via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: cda9b62a331cad2038fc17c54f35f51720929618
  
https://github.com/Perl/perl5/commit/cda9b62a331cad2038fc17c54f35f51720929618
  Author: Tony Cook 
  Date:   2023-08-01 (Tue, 01 Aug 2023)

  Changed paths:
M pod/perldelta.pod

  Log Message:
  ---
  perldelta for fb5c7cea820da4




[Perl/perl5] e53825: test.pl: Clarify watchdog() sub comments

2023-07-31 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: e5382596a8b29c89367749f58f09c1fe7a2414d8
  
https://github.com/Perl/perl5/commit/e5382596a8b29c89367749f58f09c1fe7a2414d8
  Author: Karl Williamson 
  Date:   2023-07-31 (Mon, 31 Jul 2023)

  Changed paths:
M t/test.pl

  Log Message:
  ---
  test.pl: Clarify watchdog() sub comments




[Perl/perl5] fb5c7c: readline ARGV: don't try to open '|-' or '-|' and ...

2023-07-31 Thread Tony Cook via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: fb5c7cea820da4e5609bea7c575bcf6dc988b2ea
  
https://github.com/Perl/perl5/commit/fb5c7cea820da4e5609bea7c575bcf6dc988b2ea
  Author: Tony Cook 
  Date:   2023-08-01 (Tue, 01 Aug 2023)

  Changed paths:
M doio.c
M embed.fnc
M embed.h
M pod/perldiag.pod
M proto.h
M t/io/argv.t

  Log Message:
  ---
  readline ARGV: don't try to open '|-' or '-|' and warn

This has no effect on in-place editing nor on the <<>> operator.

Later modified to ignore leading/internal/trailing space when
checking the name.

Fixes #21176




[Perl/perl5] 4d19b3: PerlIO::via: sanity check READ method return value

2023-07-31 Thread Tony Cook via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 4d19b36932e18bce344d5db51a5fff31eb1cef20
  
https://github.com/Perl/perl5/commit/4d19b36932e18bce344d5db51a5fff31eb1cef20
  Author: Tony Cook 
  Date:   2023-08-01 (Tue, 01 Aug 2023)

  Changed paths:
M ext/PerlIO-via/t/via.t
M ext/PerlIO-via/via.pm
M ext/PerlIO-via/via.xs

  Log Message:
  ---
  PerlIO::via: sanity check READ method return value

Coverity complained that the range of SvIV(result) could be large
and well outside the bounds of the buffer at SvPVX().

So sanity check that the value of result is within range, if it is
out of range warn and return an error.

Also document the bottom of the range of expected return values from
READ, -1 is less than $len and resulted in a crash.

Ideally we'd just use the length of the modified $buffer to avoid
such range errors, but the API is already designed, so we can't.

CID 453853




[Perl/perl5] 7b0950: locale.c: use variable to avoid extra comparisons

2023-07-31 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 7b0950d0d220e2b6626a715b1f2c7dbaab61278f
  
https://github.com/Perl/perl5/commit/7b0950d0d220e2b6626a715b1f2c7dbaab61278f
  Author: Karl Williamson 
  Date:   2023-07-31 (Mon, 31 Jul 2023)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: use variable to avoid extra comparisons

The mnemonic name also makes it clearer.  Instead of comparing two
variables multiple times, set a boolean once with the result, and use
that.


  Commit: f0eb8bbcea48a988acb7df5c3c3db93d4a67fb75
  
https://github.com/Perl/perl5/commit/f0eb8bbcea48a988acb7df5c3c3db93d4a67fb75
  Author: Karl Williamson 
  Date:   2023-07-31 (Mon, 31 Jul 2023)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Windows Use .ACP for sys default fallback

Prior to this commit the locale handling code thought that Windows used
"" for the system default locale.  But it doesn't, and to get to this
point in the initialization code, the "" had already been tried and
failed.


Compare: https://github.com/Perl/perl5/compare/2a8fc21e7479...f0eb8bbcea48


[Perl/perl5] 2a8fc2: regexec.c - restructure code that boils down to a ...

2023-07-31 Thread Yves Orton via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 2a8fc21e747997d36fac7dceac7fa67680868e09
  
https://github.com/Perl/perl5/commit/2a8fc21e747997d36fac7dceac7fa67680868e09
  Author: Yves Orton 
  Date:   2023-07-31 (Mon, 31 Jul 2023)

  Changed paths:
M regexec.c

  Log Message:
  ---
  regexec.c - restructure code that boils down to a constant conditional

See also https://github.com/Perl/perl5/pull/21296.

When PERL_SAWAMPERSAND is not defined then Pl_sawampersand is defined
to be (SAWAMPERSAND_LEFT|SAWAMPERSAND_MIDDLE|SAWAMPERSAND_RIGHT).
Which means that the clause in the first if block:

&& !(PL_sawampersand & SAWAMPERSAND_RIGHT)

and the clause in the second if block:

&& !(PL_sawampersand & SAWAMPERSAND_LEFT)

will never be true. Thus neither of these blocks will execute in a
normal build where PERL_SAWAMPERSAND is not defined.

Nevertheless some versions of Clang notice that a related expression
guarded by these clauses is also constant, and mixes '&' and '&&'
together and then warns about it:

$ clang-17 ... regexec.c
regexec.c:3589:21: warning: use of logical '&&' with constant operand
[-Wconstant-logical-operand]
 3588 | if ((PL_sawampersand & SAWAMPERSAND_RIGHT)
  | ~~
 3589 | && min >  RXp_OFFS_END(prog,0)
  | ^
regexec.c:3589:21: note: use '&' for a bitwise operation
 3589 | && min >  RXp_OFFS_END(prog,0)
  | ^~
  | &
regexec.c:3589:21: note: remove constant to silence this warning

Restructuring the clauses into a nested if should fix this. Along the
way we fix a related I32/SSize_t mismatch, and eliminate an unnecessary
duplicate use of RXp_OFFS_END(prog,0) call, which these days is a more
complex and expensive macro than it once was.

Thanks to the github user @Logikable for calling this to our attention
with a different patch.




[Perl/perl5]

2023-07-31 Thread Yves Orton via perl5-changes
  Branch: refs/heads/yves/alternate_pr_for_21296
  Home:   https://github.com/Perl/perl5