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
Flocale.c:1084: warning: assignment discards qualifiers from pointer target type
Flocale.c: In function 'FlocaleGetFontSet':
Flocale.c:1129: warning: assignment discards qualifiers from pointer target type
Flocale.c: In function 'FlocaleGetFont':
Flocale.c:1218: warning: assignment discards qualifiers from pointer target type
Flocale.c: In function 'FlocaleGetFontOrFontSet':
Flocale.c:1302: warning: assignment discards qualifiers from pointer target type
Flocale.c:1306: warning: assignment discards qualifiers from pointer target type
Flocale.c: In function 'FlocaleLoadFont':
Flocale.c:1404: warning: assignment discards qualifiers from pointer target type
Flocale.c:1463: warning: assignment discards qualifiers from pointer target type
Flocale.c:1509: warning: passing argument 2 of 'FlocaleGetFontSet'
discards qualifiers from pointer target type
Flocale.c:1511: warning: assignment discards qualifiers from pointer target type
Flocale.c:1524: warning: passing argument 2 of 'FlocaleGetFont'
discards qualifiers from pointer target type
Flocale.c:1526: warning: assignment discards qualifiers from pointer target type
(...)

  Renato

Reply via email to