From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31058 invoked by alias); 18 Oct 2011 09:54:56 -0000 Received: (qmail 31046 invoked by uid 22791); 18 Oct 2011 09:54:55 -0000 X-SWARE-Spam-Status: No, hits=-2.9 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 18 Oct 2011 09:54:37 +0000 From: "rguenth at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/10980] vararg functions are not inlined Date: Tue, 18 Oct 2011 09:54:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Keywords: missed-optimization X-Bugzilla-Severity: enhancement X-Bugzilla-Who: rguenth at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2011-10/txt/msg01765.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10980 --- Comment #12 from Richard Guenther 2011-10-18 09:54:03 UTC --- (In reply to comment #11) > (In reply to comment #10) > > I bet it just ignores the attribute that is not how the attribute is > > supposed to work. > > > > We output error in this case intentionally (and warning in at the same > > spot if function is declared inline and -Winline is given). > > Functions marked always_inlined really ought to be always inlined and > > attribute is supposed to be useable in the cases where compilation would > > fail otherwise (such as SSE buitins). > > > > Our documentation is however not particularly clear here, perhaps it should > > be updated... > > > > Honza > > Seeing that documentation is unclear (no mention of when errors or warnings are > produced), and Qt Creator devs want to know what version of GCC started > errorring on this, could you please let me know what GCC version started > producing errors? Thanks! GCC always errored out on this (previously by sorry(), now with error()). We can possibly inline varargs functions when we delay lowering the vararg builtins to the stdarg pass (which would clean up its implementation a lot ...).