/usr/bin/perl /usr/share/perl5/vendor_perl/ExtUtils/xsubpp -typemap /
+usr/share/perl5/ExtUtils/typemap -typemap typemap Utils.xs > Utils.x
+sc && mv Utils.xsc Utils.c
Please specify prototyping behavior for Utils.xs (see perlxs manual)
gcc -c -I/DBA/lua/5.2.1/include -Wall -Wno-strict-aliasing -O2 -g -pi
+pe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-stron
+g --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
+ -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC "-I/usr/lib64/perl5/C
+ORE" Utils.c
Utils.xs: In function ‘perl_to_lua’:
Utils.xs:263:13: warning: dereferencing type-punned pointer will break
+ strict-aliasing rules [-Wstrict-aliasing]
char *key = HePV (he, key_len);
^
Utils.xs:263:13: warning: dereferencing type-punned pointer will break
+ strict-aliasing rules [-Wstrict-aliasing]
Utils.xs:263:13: warning: dereferencing type-punned pointer will break
+ strict-aliasing rules [-Wstrict-aliasing]
Utils.xs:263:13: warning: dereferencing type-punned pointer will break
+ strict-aliasing rules [-Wstrict-aliasing]
Running Mkbootstrap for N2::Lua::Utils ()
It's 1000 lines of XS code. I'd have to trim it down a bit.
But in any case I think the answer is environmental, not in the code, as it compiles without warnings under Ubuntu 18.04, but WITH warnings under Oracle Linux Server 7.3.
Here's the full build output. And I see that -Wno-strict-aliasing is actually present in the GCC options! So why on earth are we still getting that warning?
|