Re: New compile warnings - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: New compile warnings
Date
Msg-id 419FF750.5000409@dunslane.net
Whole thread Raw
In response to Re: New compile warnings  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: New compile warnings  (Andrew Dunstan <andrew@dunslane.net>)
List pgsql-hackers

Tom Lane wrote:

>Bruce Momjian <pgman@candle.pha.pa.us> writes:
>  
>
>>I am seeing the following compile warnings in CVS. I am using for perl:
>>    Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration:
>>    
>>
>
>I believe these two:
>
>  
>
>>plperl.c:948: warning: `ret_hv' might be used uninitialized in this function
>>plperl.c:949: warning: `ret_av' might be used uninitialized in this function
>>    
>>
>
>indicate an actual bug --- at least, it's far from clear that the code
>can't try to use an uninitialized value.  I trust that the authors of
>plperl will step up and fix it; I'm not sufficiently clear on what cases
>they are trying to support to want to touch it.
>  
>

I have just mentally walked through the code and I am fairly sure this 
is harmless, i.e. we should only refer to the one of these that has 
actually been set in any of the relevant code paths. I agree it is 
sloppy and will have discussions with one or two fellow perpetrators er 
I mean collaborators about cleaning it up.

>The others indicate sloppiness in the C code generated by perl's XS
>functionality.  There's nothing we can do about them.  FWIW, less
>obsolete versions of Perl generate fewer warnings --- the only one of
>these that I see on 5.8.0 and up is
>
>  
>
>>SPI.c:158: warning: unused variable `items'
>>    
>>


This message  can actually be fixed with the addition of the following 2 
lines to SPI.xs:

*BOOT*:   *items* = 0;  /* avoid '*unused **variable*' warning */


These messages are confusing:

/usr/libdata/perl5/5.00503/i386-bsdos/CORE/patchlevel.h:41: warning: `local_patches' defined but not used
ppport.h:564: warning: `sv_2pv_nolen' defined but not used
/usr/libdata/perl5/5.00503/i386-bsdos/CORE/patchlevel.h:41: warning: `local_patches' defined but not used
ppport.h:564: warning: `sv_2pv_nolen' defined but not used

AFAICT sv_2pv_nolen should actually be used (by SPI.c) on Bruce's machine, so it's a bit strange.


cheers


andrew


pgsql-hackers by date:

Previous
From: Joe Conway
Date:
Subject: Re: cvs web errors
Next
From: Andrew Dunstan
Date:
Subject: Re: New compile warnings