------- Comment #9 from rguenther at suse dot de 2008-01-12 15:13 ------- Subject: Re: [4.1/4.2/4.3 Regression] Bogus inlining failed in call to `xxx': redefined extern inline functions are not considered for inlining
On Sat, 12 Jan 2008, hubicka at gcc dot gnu dot org wrote: > ------- Comment #8 from hubicka at gcc dot gnu dot org 2008-01-12 13:55 > ------- > I can definitely commit the patch to silence the (IMO valid) diagnostics. > However, why programs are using always_inline and extern inline combination at > all? Just extern inline should be enough. > /* For GNU C extern inline functions disregard inline limits. */ > if (DECL_EXTERNAL (fndecl) > && DECL_DECLARED_INLINE_P (fndecl)) > DECL_DISREGARD_INLINE_LIMITS (fndecl) = 1; > > So perhaps just modifying glibc headers to not do both would do the trick? > > I agree that solving this problem correctly via two functions (not only > bodies, > but simply two declarations) is probably bit tricky for stage3. We however > have > related PR34609 and PR31529 demonstrating same problem in different context. Can you give it a try? If it looks reasonably safe I would certainly prefer such a solution. Richard. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33763