Hi Karl- I suggest opening a ticket with the information on platform, compiler, and the log of issues. While warnings are often only annoying, they can indicate a potential problem in general or a platform specific one. Unfortunately, without a full, multi-platform regression test suite, it can be risky to suddenly change code that is affected by platform/compiler/...
That said, I know Derek has already started on some fixes. --Chris On 6/4/2016 00:11, Karl Glazebrook wrote: > Any reason why these 8 build warnings in PDL aren’t trivial to fix? [e.g. > would it break other architectures...] > > Yes I’ve been ignoring them for a long time, but perhaps it is time for a > spring clean? > > - Karl > > —------------------------------------------------------ > > 1) > > pdlcore.c:1292:86: warning: format specifies type 'double' but the argument > has type 'PDL_Indx' (aka 'long') [-Wformat] > fprintf(stderr,"Warning: pdl_setav_Indx converted undef to (%g) %ld > time%s\n",undefval,undef_count,undef_count==1?"":"s"); > ~~ > ^~~~~~~~ > %ld > pdlcore.c:1675:87: warning: format specifies type 'double' but the argument > has type 'PDL_Short' (aka 'short') [-Wformat] > fprintf(stderr,"Warning: pdl_setav_Short converted undef to (%g) %ld > time%s\n",undefval,undef_count,undef_count==1?"":"s"); > > > etc etc etc > > ————————————————————————————————— > > 2) > > pdlapi.c:500:29: warning: format specifies type 'double' but the argument has > type 'PDL_Anyval' [-Wformat] > printf("%s%f",(i?" ":""),pdl_get_offs(it,i)); > ~~ ^~~~~~~~~~~~~~~~~~ > pdlapi.c:1450:9: warning: absolute value function 'abs' given an argument of > type 'PDL_Indx' (aka 'long') but has parameter of type 'int' which may cause > truncation of value [-Wabsolute-value] > inc= abs(inc); > ^ > pdlapi.c:1450:9: note: use function 'labs' instead > inc= abs(inc); > > ————————————————————————————————— > > 3) in Bad.xs Math.xs and Ufunc.xs a lot of: > > > Math.xs:13157:43: warning: 'finite' is deprecated: first deprecated in OS X > 10.9 [-Wdeprecated-declarations] > (c_datap)[0] PDL_COMMENT("ACCESS()") = ( finite((a_datap)[0] > PDL_COMMENT("ACCESS()") ) && (a_datap)[0] PDL_COMMENT("ACCESS()") != > a_badval ) ? (a_dat... > ^ > /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/math.h:757:12: > note: 'finite' has been > explicitly marked deprecated here > extern int finite(double) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0, > __MAC_10_9, __IPHONE_NA, __IPHONE_NA); > > > etc… > > ————————————————————————————————— > > > 4) Gaussian.xs and FFT.xs a lot of: > > > Gaussian.xs:672:18: warning: using integer absolute value function 'abs' when > argument is of floating point type [-Wabsolute-value] > if ( > abs((xval_datap)[0+(__inc_xval_n*PP_INDTERM(__privtrans->__n_size, n))] > PDL_COMMENT("ACCESS()") -xmin) > 0.9*abs(xmax-xmin) ) { > ^ > Gaussian.xs:672:18: note: use function 'fabs' instead > if ( > abs((xval_datap)[0+(__inc_xval_n*PP_INDTERM(__privtrans->__n_size, n))] > PDL_COMMENT("ACCESS()") -xmin) > 0.9*abs(xmax-xmin) ) { > ^~~ > fabs > > > etc. > ————————————————————————————————— > > > 5) > > > resample.c:292:14: warning: implicitly declaring library function 'strcmp' > with type 'int (const char *, const char *)' > } else if (!strcmp(kernel_type, "default")) { > ^ > resample.c:292:14: note: include the header <string.h> or explicitly provide > a declaration for 'strcmp' > 1 warning generated. > > > 6) ./SlatecProtos.h:1:8: warning: type specifier missing, defaults to 'int' > [-Wimplicit-int] > extern ssvdc_ (); > ~~~~~~ ^ > ./SlatecProtos.h:2:8: warning: type specifier missing, defaults to 'int' > [-Wimplicit-int] > extern spoco_ (); > ~~~~~~ ^ > > ————————————————————————————————— > > > 7) > > INTEG.xs:18122:10: warning: implicit declaration of function 'warn' is > invalid in C99 [-Wimplicit-function-declaration] > warn("Bounds checking is disabled for PDL::GSL::INTEG"); > ————————————————————————————————— > > ^ > > 8) RNG.xs:48112:10: warning: enumeration values 'PDL_IND' and 'PDL_LL' not > handled in switch [-Wswitch] > switch(in->datatype) { > > > > > > > > > > ------------------------------------------------------------------------------ > What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic > patterns at an interface-level. Reveals which users, apps, and protocols are > consuming the most bandwidth. Provides multi-vendor support for NetFlow, > J-Flow, sFlow and other flows. Make informed decisions using capacity > planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e > _______________________________________________ > pdl-devel mailing list > pdl-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/pdl-devel ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e _______________________________________________ pdl-devel mailing list pdl-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pdl-devel