Front page | perl.perl5.changes |
Postings from March 2023
[Perl/perl5] 7361d9: regcomp.h - use a common union for head andargs a...
From:
Yves Orton via perl5-changes
Date:
March 23, 2023 00:49
Subject:
[Perl/perl5] 7361d9: regcomp.h - use a common union for head andargs a...
Message ID:
Perl/perl5/push/refs/heads/yves/hpux_build_warning_suppression/2cbda4-669aad@github.com
Branch: refs/heads/yves/hpux_build_warning_suppression
Home: https://github.com/Perl/perl5
Commit: 7361d957ad1dcf0ff4d554b5a1928231b757b296
https://github.com/Perl/perl5/commit/7361d957ad1dcf0ff4d554b5a1928231b757b296
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M regcomp.c
M regcomp.h
M regcomp_debug.c
M regcomp_study.c
M regcomp_trie.c
M regexec.c
M regexp.h
Log Message:
-----------
regcomp.h - use a common union for head and args across all regnodes.
This helps with HPUX builds where we need to ensure everything
is aligned the same (on 32 bit boundaries). It also strongly
encourages everything to use the accessor macros and not access
the members directly.
By using a union for the variadic fields we make it more obvious
that some regops use the field in different ways. This patch
also converts all the arg unions into a standardized union with
standardized member names.
Commit: ef87cbe0b860cb1fae09f559452f4a82b9ec8068
https://github.com/Perl/perl5/commit/ef87cbe0b860cb1fae09f559452f4a82b9ec8068
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M peep.c
Log Message:
-----------
peep.c - ensure deferred_queue is initialized before use
HPUX was warning that it can be used before it is initialized.
There is no cost to nulling it out early so do so.
Commit: 3f4a44409d39b92a4bd6e45962da1dd00f4f5a30
https://github.com/Perl/perl5/commit/3f4a44409d39b92a4bd6e45962da1dd00f4f5a30
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M op.c
Log Message:
-----------
op.c - deal with not-reached statement warning
Change this to test on o, and if it goes null to panic.
We used to assume that o was a valid pointer and loop infinitely,
but this meant that the old return statement at the bottom of
function was never reached.
Commit: a21a379f4ec9442fbb8951629d73045d4096c66d
https://github.com/Perl/perl5/commit/a21a379f4ec9442fbb8951629d73045d4096c66d
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M pp_sys.c
Log Message:
-----------
pp_sys.c - suppress warning about comparison to unsigned value
Commit: b6ffa05d0a4d51f0e3ed327547d095a118ad0d03
https://github.com/Perl/perl5/commit/b6ffa05d0a4d51f0e3ed327547d095a118ad0d03
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M regcomp.c
Log Message:
-----------
regcomp.c - simplify logic to eliminate unreached code
We always goto out of this if, so eliminate the unreached code
and also eliminate the useless else block.
Commit: 9fb1bcd16daaabea3996468c2fc411896c55ad5b
https://github.com/Perl/perl5/commit/9fb1bcd16daaabea3996468c2fc411896c55ad5b
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M regexec.c
Log Message:
-----------
regexec.c - mark the bottom of a sub as never reached
We used to have a return statement here that picky compilers
would complain about.
Commit: fab0e8a9e35f32bafce1747fa62590ec542a5833
https://github.com/Perl/perl5/commit/fab0e8a9e35f32bafce1747fa62590ec542a5833
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M hv.c
M perl.c
M sv.c
Log Message:
-----------
sv.c - don't cast SVTYPEMASK to svtype.
svtype is an enum with 18 values. SVTYPEMASK is 31. A picky
compiler will complain that casting 31 to a svtype is an error.
Casting both sides to a U8 should silence this.
Commit: 9dff081313b2eb6d216a2c8c085616b8869a1d2e
https://github.com/Perl/perl5/commit/9dff081313b2eb6d216a2c8c085616b8869a1d2e
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M Porting/cmpVERSION.pl
Log Message:
-----------
Porting/cmpVERSION.pl - deal with old git clients better in tag date parsing
The HPUX box we smoke on does not have a modern git and chokes
on taggerdate:unix, so we use taggerdata:iso8601 instead, and
then parse the date with Time::Local.
Commit: 5f23f5de17fa6f62221042ef4814041d085be265
https://github.com/Perl/perl5/commit/5f23f5de17fa6f62221042ef4814041d085be265
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M t/op/sprintf2.t
Log Message:
-----------
t/op/sprintf2 - TODO a failing test for now
The failure of this test usually signifies that the libc implementation
upon which perl's %g formatting relies is broken. In such cases the test
should probably be todo'd or skipped.
See: https://github.com/Perl/perl5/issues/20953#issuecomment-1478744988
Fixes: #20953
Commit: 738c8017e84e0c48bdd48ee39b2a2c11e90f76be
https://github.com/Perl/perl5/commit/738c8017e84e0c48bdd48ee39b2a2c11e90f76be
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Constants.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/CountLines.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Eval.pm
M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm
M dist/ExtUtils-ParseXS/lib/perlxs.pod
M dist/ExtUtils-ParseXS/t/001-basic.t
Log Message:
-----------
ExtUtils-ParseXS - silence warnings about unreached code in generated XS code
On HPUX we get a lot of:
"APItest.c", line 4004: warning #2111-D: statement is unreachable: PUTBACK
because people have used something like XSRETURN(1); and we generate
code that does PUTBACK; return; Adding a pragma to silence it makes the builds
happier;
Commit: 6ed619043faa309d08f0b9525c2e80c4cca64d28
https://github.com/Perl/perl5/commit/6ed619043faa309d08f0b9525c2e80c4cca64d28
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M regcomp.c
Log Message:
-----------
regcomp.c - eliminate assignment in while condition
This gives covertiy heartburn, and also makes the HPUX compiler
whine. Reworking it so that it is a while 1 and the condition determines
if we break out of the loop resolves the heartburn and makes for more
readable code.
Commit: 8058e13c8ed1fb5415ffd1da6fb960853d8c1094
https://github.com/Perl/perl5/commit/8058e13c8ed1fb5415ffd1da6fb960853d8c1094
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M numeric.c
Log Message:
-----------
numeric.c - change logical && to bitwise & in nantype test
This appears to have been broken since 2015, found by HPUX compiler warnings:
"numeric.c", line 927: warning #4277-D: logical AND with a constant, do you
mean to use '&'?
!(nantype && IS_NUMBER_IN_UV)) {
Commit: 0293f7fd44865cfb55d770b6e7664307e52009ce
https://github.com/Perl/perl5/commit/0293f7fd44865cfb55d770b6e7664307e52009ce
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M dist/Devel-PPPort/PPPort_pm.PL
M dist/Devel-PPPort/parts/inc/misc
Log Message:
-----------
Devel-PPPort - deal with signed klen in check_HeUTF8
Some of the HV logic uses a negative key length to indicate utf8
keys, and this logic was using an unsigned keylength, which obviously
does not work
Commit: 669aade32e011d3bc7dd5322a73b5f5228bd5dfa
https://github.com/Perl/perl5/commit/669aade32e011d3bc7dd5322a73b5f5228bd5dfa
Author: Yves Orton <demerphq@gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
M perlio.c
Log Message:
-----------
perlio.c - double cast PerlIO_lockcnt()
This avoids various warnings about alignment on HPUX.
Compare: https://github.com/Perl/perl5/compare/2cbda4a037c9...669aade32e01
-
[Perl/perl5] 7361d9: regcomp.h - use a common union for head andargs a...
by Yves Orton via perl5-changes