[Bug c++/39242] [4.4 Regression] Inconsistent reject / accept of code
hubicka at ucw dot cz
gcc-bugzilla@gcc.gnu.org
Fri Feb 20 14:40:00 GMT 2009
------- Comment #13 from hubicka at ucw dot cz 2009-02-20 14:39 -------
Subject: Re: [4.4 Regression] Inconsistent reject / accept of code
> > What that means is that we *must not* implicitly instantiate things
> > declared "extern template" unless they are DECL_DECLARED_INLINE_P. As a
> > consequence, at -O3, we cannot implicitly instantiate non-inline "extern
> > template" functions.
>
> I'm not entirely sure that's what we want it to say, but it does seem like a
> reasonable expectation for users to have.
>
> Beyond this issue, what is the compile speed impact of the earlier change to
> use possibly_inlined_p? It seems like it might be making us speculatively
> instantiate a lot more functions for potential inlining even at -O1, which I
> would expect to cause memory bloat and slower compilation.
There was no slowdowns visible on our C++ testers, so I hope it is not
too bad. We now get rid of unreachable functions quite early in queue
so they are not consuming too much of compilation time.
Honza
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39242
More information about the Gcc-bugs
mailing list