Hi, On Thu, Apr 13, 2006 at 01:38:11PM +0200, Martin Michlmayr wrote: > Package: linphone > Version: 1.3.3-1 > > Your package fails to build with GCC 4.2. Version 4.2 has not been > released yet but I'm building with a snapshot in order to find errors > and give people an advance warning. The bug below is in your package > and not because I'm using a snapshot of the compiler so please take a > look at it. You can reproduce this with the gcc-snapshot package. > > > > Automatic build of linphone_1.3.3-1 on em64t by sbuild/amd64 1.112 > ... > > if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. > > -I../oRTP/include -I../gsmlib `cat ../oRTP/ortp.defs` -Wall > > -Wp,-D_FORTIFY_SOURCE=2 -Werror -Wall -g -O2 -fno-strict-aliasing -MT > > alsa.lo -MD -MP -MF ".deps/alsa.Tpo" -c -o alsa.lo alsa.c; \ > > then mv -f ".deps/alsa.Tpo" ".deps/alsa.Plo"; else rm -f > > ".deps/alsa.Tpo"; exit 1; fi > > gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../oRTP/include -I../gsmlib > > -DORTP_INET6 -Wall -Wp,-D_FORTIFY_SOURCE=2 -Werror -Wall -g -O2 > > -fno-strict-aliasing -MT alsa.lo -MD -MP -MF .deps/alsa.Tpo -c alsa.c > > -fPIC -DPIC -o .libs/alsa.o > > cc1: warnings being treated as errors > > alsa.c: In function 'alsa_set_params': > > alsa.c:55: warning: the address of 'hwparams', will always evaluate as > > 'true' > > alsa.c:128: warning: the address of 'swparams', will always evaluate as > > 'true' > > make[5]: *** [alsa.lo] Error 1
The relevant part of alsa.c in linphone is: snd_pcm_hw_params_t *hwparams=NULL; snd_pcm_hw_params_alloca(&hwparams); The function snd_pcm_hw_params_alloca is defined by alsa (libasound2-dev) in pcm.h by: #define snd_pcm_hw_params_alloca(ptr) do { assert(ptr); *ptr = (snd_pcm_hw_params_t *) alloca(snd_pcm_hw_params_sizeof()); memset(*ptr, 0, snd_pcm_hw_params_sizeof()); } while (0) So, I guess the warning comes from the assert(ptr) where ptr will always be != 0. In my opinion, an assert(true) should not raise a warning... It seems to be confirmed by the following test: $ cat test.c #include <alsa/asoundlib.h> int main() { snd_pcm_hw_params_t *hwparams=NULL; assert(&hwparams); return 0; } $ gcc -Werror -Wall test.c -o test cc1: warnings being treated as errors test.c: In function 'main': test.c:6: warning: the address of 'hwparams', will always evaluate as 'true' Should I reassign this to gcc, or is it a bug in linphone (should I remove the -Werror)? Thanks. Regards, Samuel. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]