Bug 2259168 - perl-re-engine-PCRE-0.17-37.fc40 FTBFS: PCRE.h:22:5: error: initialization of ‘REGEXP * (*)(PerlInterpreter *, SV * const, U32)’ {aka ‘struct p5rx * (*)(struct interpreter *, struct sv * const, unsigned int)’} from incompatible pointer type
Summary: perl-re-engine-PCRE-0.17-37.fc40 FTBFS: PCRE.h:22:5: error: initialization of...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: perl-re-engine-PCRE
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Petr Pisar
QA Contact: Fedora Extras Quality Assurance
URL: https://koschei.fedoraproject.org/pac...
Whiteboard:
Depends On:
Blocks: F40FTBFS
TreeView+ depends on / blocked
 
Reported: 2024-01-19 09:36 UTC by Petr Pisar
Modified: 2024-01-25 16:44 UTC (History)
2 users (show)

Fixed In Version: perl-re-engine-PCRE-0.17-39.fc40
Clone Of:
Environment:
Last Closed: 2024-01-25 16:44:02 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github avar re-engine-pcre pull 6 0 None open Fix prototypes of struct regexp_engine members 2024-01-25 13:43:42 UTC

Description Petr Pisar 2024-01-19 09:36:25 UTC
perl-re-engine-PCRE-0.17-37.fc40 fails to build in Fedora 40:

gcc -c   -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64   -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer   -DVERSION=\"0.17\" -DXS_VERSION=\"0.17\" -fPIC "-I/usr/lib64/perl5/CORE"   PCRE.c
In file included from PCRE.xs:7:
PCRE.h:5:44: warning: duplicate ‘const’ declaration specifier [-Wduplicate-decl-specifier]
    5 | EXTERN_C REGEXP * PCRE_comp(pTHX_ const SV const *, const U32);
      |                                            ^~~~~
PCRE.h:22:5: error: initialization of ‘REGEXP * (*)(PerlInterpreter *, SV * const,  U32)’ {aka ‘struct p5rx * (*)(struct interpreter *, struct sv * const,  unsigned int)’} from incompatible pointer type ‘REGEXP * (*)(PerlInterpreter *, const SV *, const U32)’ {aka ‘struct p5rx * (*)(struct interpreter *, const struct sv *, const unsigned int)’} [-Wincompatible-pointer-types]
   22 |     PCRE_comp,
      |     ^~~~~~~~~
PCRE.h:22:5: note: (near initialization for ‘pcre_engine.comp’)
PCRE.h:23:5: error: initialization of ‘I32 (*)(PerlInterpreter *, REGEXP * const,  char *, char *, char *, ssize_t,  SV *, void *, U32)’ {aka ‘int (*)(struct interpreter *, struct p5rx * const,  char *, char *, char *, long int,  struct sv *, void *, unsigned int)’} from incompatible pointer type ‘I32 (*)(PerlInterpreter *, REGEXP * const,  char *, char *, char *, I32,  SV *, void *, U32)’ {aka ‘int (*)(struct interpreter *, struct p5rx * const,  char *, char *, char *, int,  struct sv *, void *, unsigned int)’} [-Wincompatible-pointer-types]
   23 |     PCRE_exec,
      |     ^~~~~~~~~
PCRE.h:23:5: note: (near initialization for ‘pcre_engine.exec’)
PCRE.h:24:5: error: initialization of ‘char * (*)(PerlInterpreter *, REGEXP * const,  SV *, const char * const,  char *, char *, const U32,  re_scream_pos_data *)’ {aka ‘char * (*)(struct interpreter *, struct p5rx * const,  struct sv *, const char * const,  char *, char *, const unsigned int,  struct re_scream_pos_data_s *)’} from incompatible pointer type ‘char * (*)(PerlInterpreter *, REGEXP * const,  SV *, char *, char *, U32,  re_scream_pos_data *)’ {aka ‘char * (*)(struct interpreter *, struct p5rx * const,  struct sv *, char *, char *, unsigned int,  struct re_scream_pos_data_s *)’} [-Wincompatible-pointer-types]
   24 |     PCRE_intuit,
      |     ^~~~~~~~~~~

A difference between passing and failing build roots is at <https://koschei.fedoraproject.org/build/17079640>. This failure is probably triggered by upgrading gcc from 13.2.1-6.fc40 to 14.0.1-0.1.fc40.


Note You need to log in before you can comment on or make changes to this bug.