diff --git a/gen/tollvm.cpp b/gen/tollvm.cpp index dc20e35d..0f59cbbb 100644 --- a/gen/tollvm.cpp +++ b/gen/tollvm.cpp @@ -295,6 +295,9 @@ LLGlobalValue::LinkageTypes DtoLinkage(Dsymbol* sym) // extern(C) functions are always external else if (ft->linkage == LINKc) return llvm::GlobalValue::ExternalLinkage; + // Function & delegate literals, foreach bodies and lazy parameters: internal linkage + else if (fdecl->isFuncLiteralDeclaration()) + return llvm::GlobalValue::InternalLinkage; } // class else if (ClassDeclaration* cd = sym->isClassDeclaration())