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: Missing "var is used uninitialized" warning?


Jonathan Wakely schrieb:
On 17 September 2011 21:42, Georg-Johann Lay wrote:

Jonathan Wakely schrieb:

On 17 September 2011 21:32, Georg-Johann Lay wrote:


Hi, compiled with -Wall -Wextra the wollowing lines don't complain about
a
being used uninitialized.  Tried with 4.5 and 4.6.  Am I missing
something?

int func (void)
{
int a = a;

return a;
}

Yes, you're missing -Winit-self

Thanks.


Confusing... extra option for that?

Maybe, but it's documented, so that makes it ok!


The message with -Wuninitialized -Winit-self is
warning: 'a' is used uninitialized in this function [-Wuninitialized]

Is there a special reason why this is not part of Wall or Wextra?

Initialising a variable with itself is a GNU extension, used to suppress warnings about uninitialised variables when you *really* don't want to initialise a variable and don't want a warning either.

Thanks for the explanation, now I understand it.


Personally I think it's an abomination :)


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