Subject: | Fails to build since Perl 5.25.1 |
Perl 5.25.1 enabled PERL_OP_PARENT and that changed op_sibling
semantics for last sibling OP:
$ ./Build
Building Syntax-Feature-Loop
gcc -I/usr/lib64/perl5/CORE -DVERSION="v1.6.0" -DXS_VERSION="v1.6.0" -fPIC -c -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -o lib/Syntax/Feature/Loop.o lib/Syntax/Feature/Loop.c
lib/Syntax/Feature/Loop.xs: In function ‘remove_sub_call’:
lib/Syntax/Feature/Loop.xs:14:17: error: ‘OP {aka struct op}’ has no member named ‘op_sibling’; did you mean ‘op_sibparent’?
if (!pushop->op_sibling)
^~~~~~~~~~
op_sibparent
lib/Syntax/Feature/Loop.xs:17:21: error: ‘OP {aka struct op}’ has no member named ‘op_sibling’; did you mean ‘op_sibparent’?
realop = pushop->op_sibling;
^~~~~~~~~~
op_sibparent
lib/Syntax/Feature/Loop.xs:18:28: error: ‘OP {aka struct op}’ has no member named ‘op_sibling’; did you mean ‘op_sibparent’?
if (!realop || !realop->op_sibling)
^~~~~~~~~~
op_sibparent
lib/Syntax/Feature/Loop.xs:21:12: error: ‘OP {aka struct op}’ has no member named ‘op_sibling’; did you mean ‘op_sibparent’?
pushop->op_sibling = realop->op_sibling;
^~~~~~~~~~
op_sibparent
lib/Syntax/Feature/Loop.xs:21:33: error: ‘OP {aka struct op}’ has no member named ‘op_sibling’; did you mean ‘op_sibparent’?
pushop->op_sibling = realop->op_sibling;
^~~~~~~~~~
op_sibparent
lib/Syntax/Feature/Loop.xs:22:12: error: ‘OP {aka struct op}’ has no member named ‘op_sibling’; did you mean ‘op_sibparent’?
realop->op_sibling = NULL;
^~~~~~~~~~
op_sibparent
error building lib/Syntax/Feature/Loop.o from 'lib/Syntax/Feature/Loop.c' at /usr/share/perl5/vendor_perl/ExtUtils/CBuilder/Base.pm line 174.
See <https://rt.perl.org/Public/Bug/Display.html?id=128179#txn-1405910> for more details.