This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
False warning in egcs 1.1.2
- To: egcs-bugs at egcs dot cygnus dot com
- Subject: False warning in egcs 1.1.2
- From: Giacomo Amabile Catenazzi <cate at student dot ethz dot ch>
- Date: Wed, 12 May 1999 09:37:52 +0200
When I compile the follow file, the compiles give me this warning:
~$ gcc -c -O3 -Wall egcstest.c
egcstest.c: In function `main':
egcstest.c:14: warning: `c' might be used uninitialized in this function
egcstest.c:14: warning: `i' might be used uninitialized in this function
Here the file giving problems. The variable 'c','i' are always
initialized before used. This warning apply only with -O3, and it
depends on code *after* the initialization.
-------------start-of---egcstest.c--------------
int opt;
int geteuid();
void exit(int);
void usage()
{
exit(1);
}
int main(int argc, char *argv[])
{
int c,i;
if(geteuid()) {
exit(1);
}
c = 0;
while(++c < argc) {
for(i = 1; argv[c][i]; i++) {
switch(argv[c][i]) {
case 'C':
opt=1;
break;
case 'h':
opt=2;
break;
case 'f':
opt=3;
break;
case 'q':
opt=4;
break;
case 's':
opt=5;
break;
default:
usage();
}
}
}
return 1;
}
----------end-of----egcstest.c-------------
And here my system/compiler (I have compiled the egcs normally, without
experimental parameter, but I don't remember the ./configure params. )
~$ uname -a
Linux localhost.localdomain 2.2.7 #22 Mon May 10 19:37:43 CEST 1999 i686
unknown
~$ gcc -v
Reading specs from
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.66/specs
gcc version egcs-2.91.66 19990314 (egcs-1.1.2 release)
Giacomo Catenazzi