This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/33763] [4.3/4.4/4.5/4.6 Regression] Bogus inlining failed in call to `xxx': redefined extern inline functions are not considered for inlining
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 4 Mar 2011 12:37:04 +0000
- Subject: [Bug tree-optimization/33763] [4.3/4.4/4.5/4.6 Regression] Bogus inlining failed in call to `xxx': redefined extern inline functions are not considered for inlining
- Auto-submitted: auto-generated
- References: <bug-33763-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33763
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed|2007-10-14 10:26:41 |2011-03-04 10:26:41
Known to fail| |4.6.0
--- Comment #19 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-03-04 12:36:56 UTC ---
Still fails to inline baz (not a regression) and diagnoses this (this is
the regression).
> When a gnu_inline (or extern inline gnu89) function has a real is redefined, we
> don't want any inlining for that function even if it is always_inline, at least
> GCC always behaved that way and even on the simpler testcase behaves that way.
I don't think this is the desired behavior (nor is it documented). If it is
then we should simply drop the always-inline attribute when merging the
function decls (basically throw away the inline definition).