On Fri, 24 Jan 2020, 22:14 James E Keenan, <jkeenan@pobox.com> wrote: > On 1/24/20 1:40 AM, demerphq wrote: > > On Thu, 23 Jan 2020 at 15:56, James E Keenan <jkeenan@pobox.com > > <mailto:jkeenan@pobox.com>> wrote: > > > > Unfortunately, this branch experienced a build-time failure on one of > > those continuous-integration thingees we've added in recent months. > > Worse, the build-time failure was on one Windows machine (but > > apparently > > not the other). > > > > > > Ok, I have pushed fixes for these issues I believe. The warnings in the > > Windows reports were pre-existing, the errors were new and due to the > > version of C being used not being able to handle something like this: > > > > const U8 n = 10; > > int i[n]; > > > > The warning you noticed was due to a codepath that croaks not setting > > RETVAL since it croaks. I changed it to set RETVAL first to silence the > > warnings. > > > > And lastly I added some casts so that if UV was smaller than uint64_t > > the compiler would not complain, if UV is smaller than 64 bits we wont > > enter those codepaths anyway. > > > > I think this should be good now. But I wonder if we shouldnt squash the > > patch sequence down to a single commit. > > > > Thank you for the support on getting this merged! > > Thanks for the additional investigation. Unfortunately, the build-time > warning that caught my eye earlier is still present. Configuring simply > with '-des -Dusedevel' and building with gcc 7.4.0 on Linux, I detect > this warning in the output: > > ##### > cc -c -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong > -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 > -Wno-deprecated-declarations -Wall -Werror=pointer-arith -Wextra > -Wc++-compat -Wwrite-strings -Werror=declaration-after-statement -O2 > -DVERSION=\"1.07\" -DXS_VERSION=\"1.07\" -fPIC "-I../.." APItest.c > In file included from ../../perl.h:5471:0, > from APItest.xs:10: > APItest.c: In function ‘XS_XS__APItest__HvMacro_u8_to_u16_le’: > ../../pp.h:419:25: warning: ‘RETVAL’ may be used uninitialized in this > function [-Wmaybe-uninitialized] > & (TARGu_uv <= (UV)IV_MAX))) \ > ^~ > APItest.c:13153:5: note: ‘RETVAL’ was declared here > UV RETVAL; > ^~~~~~ > "../../miniperl" "-I../../lib" "../../lib/ExtUtils/xsubpp" -typemap > '/home/jkeenan/gitwork/perl/ext/XS-APItest/../../lib/ExtUtils/typemap' > -typemap '/home/jkeenan/gitwork/perl/ext/XS-APItest/typemap' > XSUB-undef-XS_VERSION.xs > XSUB-undef-XS_VERSION.xsc > mv XSUB-undef-XS_VERSION.xsc XSUB-undef-XS_VERSION.c > cc -c -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong > -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 > -Wno-deprecated-declarations -Wall -Werror=pointer-arith -Wextra > -Wc++-compat -Wwrite-strings -Werror=declaration-after-statement -O2 > -DVERSION=\"1.07\" -DXS_VERSION=\"1.07\" -fPIC "-I../.." > XSUB-undef-XS_VERSION.c > ##### > > This warning is not present in blead (6568ef8216). Can you correct > this? I will then squash and merge. > For sure. FWIW this is FCC being too clever for it's own good. It doesnt realize that ix can only be one of the values in the switch. The code is just fine as is. I knew I should have fixed this the other way. Sigh. Patch coming up shortly. Yves >Thread Previous | Thread Next