Date: Mon, 15 Mar 1999 10:08:55 -0800 (PST) From: John Polstra <jdp@polstra.com> To: Sheldon Hearn <sheldonh@iafrica.com> Cc: cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org, John Polstra <jdp@FreeBSD.org>, Dmitrij Tejblum <dima@tejblum.dnttm.rssi.ru> Subject: Re: cvs commit: src/lib/csu/i386-elf Makefile crtbegin.c crtend. Message-ID: <XFMail.990315100855.jdp@polstra.com> In-Reply-To: <47124.921493522@axl.noc.iafrica.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Sheldon Hearn wrote: > On Sun, 14 Mar 1999 21:15:57 +0300, Dmitrij Tejblum wrote: > >> Ah! This is the thing that breaks world (namely, groff) with -O3. gcc >> eliminate the "unused" code completely, and you cannot fix it by >> -Wno-unused or by __unused. > > Does this relate at all to PR bin/10522? No, that's something different. It's a known limitation of gcc that some spurious warnings can come out when no optimization is used. (And some constructs that should cause valid warnings can be missed.) That's why it's a bad idea to use -Werror anywhere, any time. I see several possible solutions: 1. Outlaw the use of -Werror in any makefiles under /usr/src, and add a comment warning about its use in /etc/make.conf. 2. Add some magic to the /usr/share/mk/files to silently remove -Werror from CFLAGS if no optimization is used. I'm pretty sure this is feasible, modulo bugs in make. Here's a barely tested possibility: _OFLAG:=-O0 .for i in ${CFLAGS:M-O*} _OFLAG:=${i} .endfor .if ${_OFLAG} == "-O0" CFLAGS:=${CFLAGS:N-Werror} .endif 3. Like #2, but backwards: silently add -O if -Werror is used and no optimization was specified. 4. Modify the compiler to do #2 or #3. I'd personally prefer #1 (because -Werror is a misguided idea IMHO) or #2 (because it solves the problem without police). I don't like #3, because it changes the code that's emitted. I don't like #4, because any divergence from standard compilers is a maintenance hassle. John --- John Polstra jdp@polstra.com John D. Polstra & Co., Inc. Seattle, Washington USA "Self-interest is the aphrodisiac of belief." -- James V. DeLong To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.990315100855.jdp>