[cfe-commits] r98441 - in /cfe/trunk: lib/CodeGen/CodeGenModule.cpp lib/CodeGen/CodeGenModule.h test/CXX/temp/temp.spec/temp.explicit/p1-emit.cpp test/CodeGenCXX/explicit-instantiation.cpp test/CodeGenCXX/mangle-exprs.cpp test/CodeGenCXX/mangle-t
Rafael Espindola
espindola at google.com
Mon Mar 15 07:57:57 PDT 2010
> + } else if (Linkage == GVA_ExplicitTemplateInstantiation) {
> + // An explicit instantiation of a template has weak linkage, since
> + // explicit instantiations can occur in multiple translation units
> + // and must all be equivalent. However, we are not allowed to
> + // throw away these explicit instantiations.
> + return llvm::Function::WeakODRLinkage;
Just for curiosity, why does the c++ standard allows explicit
instantiations in multiple translation units? I don't see the use of
that and making a strong definition would make the linking more
efficient.
Cheers,
--
Rafael Ávila de Espíndola
More information about the cfe-commits
mailing list