https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62071
--- Comment #5 from Jason Merrill <jason at redhat dot com> --- On 08/14/2014 02:10 PM, Jan Hubicka wrote: > I wonder what we should do with both external and comdat here. Jason, can we > devirtualize? No, we're setting comdat now to avoid devirtualization, because we can't be confident that we'll be able to refer to the definition where it gets emitted. > The constructor is keyed to other compilation unit here, but we are provided > with a body > that we will never use (modulo the tree-ssa-pre bug that brings the reference > into code). Hmm, we might consider overriding DECL_EXTERNAL so that there's a definition available for devirtualization. Jason