From owner-cvs-all@FreeBSD.ORG Sun Jul 20 22:34:13 2003 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 020E037B401; Sun, 20 Jul 2003 22:34:13 -0700 (PDT) Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id C991543FAF; Sun, 20 Jul 2003 22:34:10 -0700 (PDT) (envelope-from bde@zeta.org.au) Received: from gamplex.bde.org (katana.zip.com.au [61.8.7.246]) by mailman.zeta.org.au (8.9.3p2/8.8.7) with ESMTP id PAA22492; Mon, 21 Jul 2003 15:33:59 +1000 Date: Mon, 21 Jul 2003 15:33:58 +1000 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: Dag-Erling =?iso-8859-1?q?Sm=F8rgrav?= In-Reply-To: Message-ID: <20030721152032.X3132@gamplex.bde.org> References: <200307201024.h6KAO9tk009943@repoman.freebsd.org> <20030720213903.J595@gamplex.bde.org> <20030720120438.GD47250@sunbay.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: QUOTED-PRINTABLE cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: Ruslan Ermilov cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/bin/ed Makefile re.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Jul 2003 05:34:13 -0000 On Sun, 20 Jul 2003, Dag-Erling [iso-8859-1] Sm=F8rgrav wrote: > Ruslan Ermilov writes: > > On Sun, Jul 20, 2003 at 09:57:26PM +1000, Bruce Evans wrote: > > > The bug is in gcc-3.3, so it shouldn't be fixed here. > > Why is this a bug in gcc? Compiling re.c,v 1.19 like this works: > > > > make WARNS=3D6 re.o DEBUG_FLAGS=3D-fno-builtin > > It *is* a bug in GCC; -fno-builtin should be the default, and / or GCC or (non-inclusive) > should learn not to define builtins unless an appropriate prototype is > in scope. It is incorrect for the compiler to reserve names like sin, > log or exp in compilation units that don't #include . Not quite. These names, like all names of existing or future identifiers with external linkage, are reserved for their normal (external linkage) purposes, so it would be OK for the compiler to warn about global and file-scope-static variables in the program with these names. It is just incorrect to warn about using these names in local variables when there cannot be any global declarations with the same name in scope except via undocumented namespace pollution (from compiler builtins in this case). Bruce