[cfe-commits] r124089 - in /cfe/trunk: lib/CodeGen/CGRTTI.cpp lib/CodeGen/CodeGenModule.cpp test/CodeGenCXX/exceptions-no-rtti.cpp test/CodeGenCXX/key-function-vtable.cpp test/CodeGenCXX/mangle-subst-std.cpp test/CodeGenCXX/rtti-linkage.cpp test/Co...
Douglas Gregor
dgregor at apple.com
Mon Jan 24 09:33:59 PST 2011
On Jan 24, 2011, at 9:24 AM, Renato Golin wrote:
> On 01/24/11 17:17, Douglas Gregor wrote:
>> You are technically correct, but the prohibition of multiple explicit
>> template instantiations is almost useless in practice, because there
>> still may be any number of implicit template instantiations with the
>> same arguments.
>
> But by priority rules, explicit instantiation takes precedence over
> implicit ones. If you have multiple implicit and one explicit, you'll
> always take the explicit one.
That depends on the linker. With the Mac OS 10.6 dynamic linker, for example, a strong external symbol in one shared library will not get merged with same-named weak symbols in another shared library.
- Doug
More information about the cfe-commits
mailing list