mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-07-22 15:15:22 +02:00
Fix for issue #535.
The symbols must have weak_odr linkage if they result from a template instantiation.
This commit is contained in:
@@ -454,11 +454,11 @@ llvm::GlobalValue::LinkageTypes DtoInternalLinkage(Dsymbol* sym)
|
||||
return llvm::GlobalValue::InternalLinkage;
|
||||
}
|
||||
|
||||
llvm::GlobalValue::LinkageTypes DtoExternalLinkage(Dsymbol* sym)
|
||||
llvm::GlobalValue::LinkageTypes DtoExternalLinkage(Dsymbol* sym, bool checkInline)
|
||||
{
|
||||
if (DtoIsTemplateInstance(sym))
|
||||
return templateLinkage;
|
||||
else if (isAvailableExternally(sym))
|
||||
else if (checkInline && isAvailableExternally(sym))
|
||||
return llvm::GlobalValue::AvailableExternallyLinkage;
|
||||
else
|
||||
return llvm::GlobalValue::ExternalLinkage;
|
||||
|
||||
Reference in New Issue
Block a user