From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29295 invoked by alias); 9 Oct 2007 19:17:32 -0000 Received: (qmail 29286 invoked by uid 22791); 9 Oct 2007 19:17:31 -0000 X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 09 Oct 2007 19:17:28 +0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.8/8.13.1) with ESMTP id l99JDNId002208; Tue, 9 Oct 2007 15:13:23 -0400 Received: from lacrosse.corp.redhat.com (lacrosse.corp.redhat.com [172.16.52.154]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id l99JDMIg001012; Tue, 9 Oct 2007 15:13:22 -0400 Received: from caliban.home (sebastian-int.corp.redhat.com [172.16.52.221]) by lacrosse.corp.redhat.com (8.12.11.20060308/8.11.6) with ESMTP id l99JDLRf025840; Tue, 9 Oct 2007 15:13:22 -0400 Message-ID: <470BD2D1.9050403@redhat.com> Date: Tue, 09 Oct 2007 19:17:00 -0000 From: Jason Merrill User-Agent: Thunderbird 2.0.0.5 (X11/20070727) MIME-Version: 1.0 To: Mark Mitchell CC: Jakub Jelinek , Alexandre Oliva , gcc-patches@gcc.gnu.org Subject: Re: [C++ PATCH] Don't clear DECL_BUILT_IN_CLASS/DECL_FUNCTION_CODE when redeclaring a builtin if types match References: <20071002114954.GC2625@devserv.devel.redhat.com> <47091AAA.4000605@codesourcery.com> <20071007190829.GQ2625@devserv.devel.redhat.com> <47093C37.9000501@codesourcery.com> In-Reply-To: <47093C37.9000501@codesourcery.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2007-10/txt/msg00500.txt.bz2 I can see both sides to this, but I tend to agree with Jakub. Code that really wants to override the builtin will need to use -fno-builtin in other translation units, so it might as well use it in the translation unit with the definition for consistency. Yes, this is likely to confuse people who want to override builtins, but that's going to be tricky to get right in any case. The other option would be to add an attribute so glibc can mark the inlines as "still builtin". Jason