Обсуждение: Compiler warnings fix

Поиск
Список
Период
Сортировка

Compiler warnings fix

От
ITAGAKI Takahiro
Дата:
Here is a patch to surpress compiler warnings in pg_locale.c and pg_regress.c.

There are following warnings if nls is enabled:
    pg_locale.c: In function `pg_perm_setlocale':
    pg_locale.c:161: warning: assignment discards qualifiers from pointer target type
and if nls is disabled:
    pg_locale.c:615: warning: 'IsoLocaleName' defined but not used

There is also a warning in pg_regress.c:
    pg_regress.c: In function `wait_for_tests':
    pg_regress.c:1367: warning: passing arg 2 of `GetExitCodeProcess' from incompatible pointer type

Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center

Вложения

Re: Compiler warnings fix

От
Peter Eisentraut
Дата:
ITAGAKI Takahiro wrote:
> Here is a patch to surpress compiler warnings in pg_locale.c and pg_regress.c.
> 
> There are following warnings if nls is enabled:
>     pg_locale.c: In function `pg_perm_setlocale':
>     pg_locale.c:161: warning: assignment discards qualifiers from pointer target type
> and if nls is disabled:
>     pg_locale.c:615: warning: 'IsoLocaleName' defined but not used
> 
> There is also a warning in pg_regress.c:
>     pg_regress.c: In function `wait_for_tests':
>     pg_regress.c:1367: warning: passing arg 2 of `GetExitCodeProcess' from incompatible pointer type

Which platform, which compiler, what configure options?


Re: Compiler warnings fix

От
ITAGAKI Takahiro
Дата:
Peter Eisentraut <peter_e@gmx.net> wrote:

> ITAGAKI Takahiro wrote:
> > Here is a patch to surpress compiler warnings in pg_locale.c and pg_regress.c.
> > 
> > There are following warnings if nls is enabled:
> >     pg_locale.c: In function `pg_perm_setlocale':
> >     pg_locale.c:161: warning: assignment discards qualifiers from pointer target type
> > and if nls is disabled:
> >     pg_locale.c:615: warning: 'IsoLocaleName' defined but not used
> > 
> > There is also a warning in pg_regress.c:
> >     pg_regress.c: In function `wait_for_tests':
> >     pg_regress.c:1367: warning: passing arg 2 of `GetExitCodeProcess' from incompatible pointer type
> 
> Which platform, which compiler, what configure options?

It is in mingw, gcc.exe (GCC) 3.4.5 (mingw-vista special r3).

There are same warning on vaquita in buildfarm.
http://www.pgbuildfarm.org/cgi-bin/show_stage_log.pl?nm=vaquita&dt=2009-01-26%20210011&stg=make

Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center




Re: Compiler warnings fix

От
Andrew Dunstan
Дата:

ITAGAKI Takahiro wrote:
> Peter Eisentraut <peter_e@gmx.net> wrote:
>
>   
>> ITAGAKI Takahiro wrote:
>>     
>>> Here is a patch to surpress compiler warnings in pg_locale.c and pg_regress.c.
>>>
>>> There are following warnings if nls is enabled:
>>>     pg_locale.c: In function `pg_perm_setlocale':
>>>     pg_locale.c:161: warning: assignment discards qualifiers from pointer target type
>>> and if nls is disabled:
>>>     pg_locale.c:615: warning: 'IsoLocaleName' defined but not used
>>>
>>> There is also a warning in pg_regress.c:
>>>     pg_regress.c: In function `wait_for_tests':
>>>     pg_regress.c:1367: warning: passing arg 2 of `GetExitCodeProcess' from incompatible pointer type
>>>       
>> Which platform, which compiler, what configure options?
>>     
>
> It is in mingw, gcc.exe (GCC) 3.4.5 (mingw-vista special r3).
>
> There are same warning on vaquita in buildfarm.
> http://www.pgbuildfarm.org/cgi-bin/show_stage_log.pl?nm=vaquita&dt=2009-01-26%20210011&stg=make
>
>
>   

Wouldn't we be better off using defined(ENABLE_NLS) instead of 
defined(LC_MESSAGES) ?

cheers

andrew






Re: Compiler warnings fix

От
Tom Lane
Дата:
Andrew Dunstan <andrew@dunslane.net> writes:
>> There are same warning on vaquita in buildfarm.
>> http://www.pgbuildfarm.org/cgi-bin/show_stage_log.pl?nm=vaquita&dt=2009-01-26%20210011&stg=make

> Wouldn't we be better off using defined(ENABLE_NLS) instead of 
> defined(LC_MESSAGES) ?

No, because the purpose of that #if is to prevent choking on the
references to LC_MESSAGES if it's not defined.  Whether ENABLE_NLS
is defined is 100% orthogonal to that.

Given the current usage it seems that the only way to avoid the
"'IsoLocaleName' defined but not used" warning is to compile it
conditionally on LC_MESSAGES as well as WIN32.  I agree that's
kind of ugly, but that's what the usage is.
        regards, tom lane


Re: Compiler warnings fix

От
Magnus Hagander
Дата:
ITAGAKI Takahiro wrote:
> Here is a patch to surpress compiler warnings in pg_locale.c and pg_regress.c.
> 
> There are following warnings if nls is enabled:
>     pg_locale.c: In function `pg_perm_setlocale':
>     pg_locale.c:161: warning: assignment discards qualifiers from pointer target type
> and if nls is disabled:
>     pg_locale.c:615: warning: 'IsoLocaleName' defined but not used
> 
> There is also a warning in pg_regress.c:
>     pg_regress.c: In function `wait_for_tests':
>     pg_regress.c:1367: warning: passing arg 2 of `GetExitCodeProcess' from incompatible pointer type

Applied (as two separate patches since I missed that there were two
files initially).

I agree with other comments that #ifdef:ing on LC_MESSAGES may not be
the greatest-looking solution, but the code that calls it is ifdef:ed
that way, so mimicking that seems like the right thing to do at this time.

//Magnus