Oliver Stöneberg wrote: > I finally got around to trying to update FLAC for the MAME/MESS > project again. There were several issues I was able to fix and will > submit patches later, but I hit one roadblock with GCC and clang: > > src/lib/libflac/libFLAC/stream_encoder.c:1696:43: error: cast from function > call > of type 'double' to non-matching type 'FLAC__int32' (aka 'int') > [-Werror,-Wbad-function-cast] > ...FLAC__int32 tukey_parts = (FLAC__int32)strtod(specification+14, 0); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~ > src/lib/libflac/libFLAC/stream_encoder.c:1717:43: error: cast from function > call > of type 'double' to non-matching type 'FLAC__int32' (aka 'int') > [-Werror,-Wbad-function-cast] > ...FLAC__int32 tukey_parts = (FLAC__int32)strtod(specification+15, 0); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~ > 2 errors generated.
What build system are you using and what versions of GCC and Clang? What OS? > Apparently you are supposed to round() or floor() instead of just > casting a double to an integer. Sorry, thats not correct, strtod() returns double and the type signatures of round and floor are as follows: double round(double x); double floor(double x); so you have to cast anyway. Erik -- ---------------------------------------------------------------------- Erik de Castro Lopo http://www.mega-nerd.com/ _______________________________________________ flac-dev mailing list flac-dev@xiph.org http://lists.xiph.org/mailman/listinfo/flac-dev