Subject: warnings depend on optimization flags?
To: None <current-users@NetBSD.ORG>
From: Thorsten Frueauf <s_frueau@ira.uka.de>
List: current-users
Date: 09/28/1997 11:45:07
Hello!
Since the integration of the new amd (6.0a12) I noticed a strange problem
that occurs with different kinds of gcc optimization and WARNS.
For quite some time I have "COPTS?= -O4 -m486" in /etc/mk.conf and compile
successfull the whole NetBSD source tree.
Now /src/usr.sbin/amd shows some strange effects:
- with -O, -O2 and WARNS=0, WARNS=1 all compiles without an error
- with -O3, -O4 and WARNS=0 all compiles well too
- with -O3, -O4 and WARNS=1 I get:
cc -O -I/usr/src/usr.sbin/amd/amd/../include -I/usr/src/usr.sbin/amd/amd -I/usr/
src/usr.sbin/amd/libamu/obj -I. -DHAVE_CONFIG_H -O4 -m486 -Werror -Wall -Wstrict
-prototypes -Wmissing-prototypes -c conf_parse.c
cc1: warnings being treated as errors
y.tab.c: In function `yyparse':
y.tab.c:257: warning: suggest parentheses around assignment used as truth value
*** Error code 1
cc -O -I/usr/src/usr.sbin/amd/fsinfo/../include -I/usr/src/usr.sbin/amd/fsinfo -I/usr/src/usr.sbin/amd/libamu/obj -I. -DHAVE_CONFIG_H -O4 -m486 -I/usr/src/usr.sbin/amd/fsinfo/../include -I/usr/src/usr.sbin/amd/fsinfo -I/usr/src/usr.sbin/amd/libamu/obj -I. -DHAVE_CONFIG_H -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes -c fsi_lex.c
cc1: warnings being treated as errors
/usr/src/usr.sbin/amd/fsinfo/fsi_lex.l: In function `yyerror':
/usr/src/usr.sbin/amd/fsinfo/fsi_lex.l:224: warning: control reaches end of non-void function
*** Error code 1
So from looking at the above code, I think gcc got a point there:
int
yyerror(char *fmt, ...)
{
[...]
return 0;
/* this call will never happen */
unput(0);
}
Which means after the return comes another statement (which is not reached, so
why is it there?) which does not end with return.
Now I wonder if I see a bug of gcc or if the code should be changed.
What kind of optimization is the "best" in matter of "fastest binaries" for
a pentium machine? Or is it highly recommended to stick with the default
-O optimization?
Thanx for any help in advance!
Greets
--
Name : Thorsten Frueauf Milano@irc cri@onaliM //
E-Mail: s_frueau@ira.uka.de oder ukfy@rz.uni-karlsruhe.de \X/