Fixed array operation codegen when used from imported templates. All array operations are now emitted with template linkage. Fixed #270 .

This commit is contained in:
Tomas Lindquist Olsen
2009-04-29 18:59:39 +02:00
parent 617861ead4
commit ca39bb4f4d
3 changed files with 9 additions and 3 deletions

View File

@@ -275,9 +275,9 @@ LLGlobalValue::LinkageTypes DtoLinkage(Dsymbol* sym)
assert(fdecl->type->ty == Tfunction);
TypeFunction* ft = (TypeFunction*)fdecl->type;
// array operations are always internal
// array operations are always template linkage
if (fdecl->isArrayOp)
return llvm::GlobalValue::InternalLinkage;
return TEMPLATE_LINKAGE_TYPE;
// intrinsics are always external
if (fdecl->llvmInternal == LLVMintrinsic)
return llvm::GlobalValue::ExternalLinkage;