This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: "uninitialized variable" warning from compiler


On Mon, Oct 26, 2009 at 7:36 PM, Andrew Haley <aph@redhat.com> wrote:
> Umashankar V.K. wrote:
>
>> ? ? ? I have few questions about ?inbuilt mechanism of ?gcc/g++ ?for
>> warning about ?uninitialized variable.
>>
>>
>> But then I came across the following ?failure case. ?This one ?fails
>> to ?warn when compiled with any ?level ?below 3.
>> With -O3, ?gcc ?is able to warn. ? Can someone tell me which is the
>> corresponding bug logged at bugzilla ?
>
> I don't understand why you think this is a bug in gcc. ?Inlining will
> always reveal more about the data flow of a program.

Of course, I know this is not a bug.  But I didnt choose the term
here. The compiler developers prefer to
call them bugs and track them using bug-zilla.

>
> extern void foo (int *p);
>
> void bar
> {
> ?int a;
> ?foo (&a);
>
> ?printf("%d\n", a);
> }
>
> We could fix gcc so that in every case where we couldn't prove that a variable
> is initialized, we warned. ?You'd have to put up with a lot of spurious "may
> be used uninitialized" warnings.
>
> Andrew.
>

yes, i know that false positives is a concern for the compiler author.
  But sometimes, a guy who is wondering
why the hell his board is crashing at random may not mind  going
through a heap of  compiler-warnings if he wants to rule
out that possibility.   A   code-misbehaviour due to  uninitialised
variables can be as mysterious as one due to
stack corruption,  isnt it ?

            shankar

ps -  I choose  plain text for the messages I post.  Still  i  see
strange characters when my post appears at
http://gcc.gnu.org/ml/gcc-help/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]