On 8/28/07, Dominik Vogt <[EMAIL PROTECTED]> wrote: > On Tue, Aug 28, 2007 at 02:55:26PM +0100, seventh guardian wrote: > > On 8/28/07, seventh guardian <[EMAIL PROTECTED]> wrote: > > > On 8/28/07, Dominik Vogt <[EMAIL PROTECTED]> wrote: > > > > On Tue, Aug 28, 2007 at 02:13:20PM +0100, seventh guardian wrote: > > > > > On 8/28/07, seventh guardian <[EMAIL PROTECTED]> wrote: > > > > > > OOPS: > > > > > > > > > > > > $ make CFLAGS="-g -O2 -Wall -Wpointer-arith -fno-strict-aliasing > > > > > > -Werror" > > > > > > > > > > > > make all-recursive > > > > > > make[1]: Entering directory `/home/renato/apps/cvs/fvwm' > > > > > > Making all in libs > > > > > > make[2]: Entering directory `/home/renato/apps/cvs/fvwm/libs' > > > > > > Flocale.c:1464: warning: comparison with string literal results in > > > > > > unspecified b > > > > > > ehaviour > > > > > > > > > > I'm not sure of how severe this warning is.. Is it a show-stopper? > > > > > > > > > > It is a show-stopper. There were some nasty char* == "foo bar" tests. > > > > > Jeez.. I'll fix them. > > > > > > > > I think the idea is that for every string literal there is only > > > > one actual instance in the executable, so the code is safe. But > > > > instead of using macros we should rather have > > > > > > > > Flocale.c > > > > --------- > > > > static const char *fft_fallback_font = FLOCALE_FFT_FALLBACK_FONT; > > > > > > > > ... > > > > > > > > if (fn != fft_fallback_font) > > > > ... > > > > > > Makes sense. I was using strcasecmp, but that should be faster. > > > > Hum but now gcc complains about the const char * vs. char *: > > > > (...) > > cc1: warnings being treated as errors > > Flocale.c: In function 'FlocaleGetFftFont': > > Flocale.c:1079: warning: assignment discards qualifiers from pointer target > > type > > I guess we have to remove the "const" then. That's better than > casting it away every time.
Too late, I've already casted them ;) I guess it's better to leave it a const, as it could allow the compiler to optimize it. But I can change it back and remove the const.. What do you think? Cheers, Renato