perl5-dbi/dbi

Compiling on Fedora 40 fails

Closed this issue · 2 comments

Environment

  • Perl 5.38.2

  • Fedora 40

  • GCC 14.2.1

  • DBI master at 16a64d0 (also happens with 1.644 tag)

Failure

In file included from /usr/lib64/perl5/CORE/perl.h:6227:
DBI.xs: In function ‘dbih_inner’:
/usr/lib64/perl5/CORE/hv.h:541:31: error: passing argument 2 of ‘Perl_hv_common_key_len’ from incompatible pointer type [-Wincompatible-pointer-types]
  541 |     ((SV**) hv_common_key_len((hv), (key), (klen), (lval)               \
      |                               ^~~~
      |                               |
      |                               SV * {aka struct sv *}
/usr/lib64/perl5/CORE/embed.h:293:78: note: in definition of macro ‘hv_common_key_len’
  293 | # define hv_common_key_len(a,b,c,d,e,f)         Perl_hv_common_key_len(aTHX_ a,b,c,d,e,f)
      |                                                                              ^
DBI.xs:1109:14: note: in expansion of macro ‘hv_fetch’
 1109 |         if (!hv_fetch(ohv,"_NO_DESTRUCT_WARN",17,0))

Seems related to 969bcdd

If I revert that commit I can compile DBI without errors (but quite a few warnings)