> 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?
clang 3.5 on ubuntu 14.04 and GCC (MinGW-w64) 4.9.1 on Windows 7. > > 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. Alright...stupid me. I just don't use mathematical functions very often... _______________________________________________ flac-dev mailing list flac-dev@xiph.org http://lists.xiph.org/mailman/listinfo/flac-dev