Mercurial > projects > ldc
comparison gen/tollvm.cpp @ 1179:71479f6e2a01
Give function & delegate literals, foreach bodies and lazy parameters internal
linkage.
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Mon, 30 Mar 2009 16:34:36 +0200 |
parents | 4c8bb03e4fbc |
children | 3251ce06c820 |
comparison
equal
deleted
inserted
replaced
1178:a668f4051368 | 1179:71479f6e2a01 |
---|---|
293 else if (needsTemplateLinkage(fdecl) && fdecl->fbody && !fdecl->naked) | 293 else if (needsTemplateLinkage(fdecl) && fdecl->fbody && !fdecl->naked) |
294 return TEMPLATE_LINKAGE_TYPE; | 294 return TEMPLATE_LINKAGE_TYPE; |
295 // extern(C) functions are always external | 295 // extern(C) functions are always external |
296 else if (ft->linkage == LINKc) | 296 else if (ft->linkage == LINKc) |
297 return llvm::GlobalValue::ExternalLinkage; | 297 return llvm::GlobalValue::ExternalLinkage; |
298 // Function & delegate literals, foreach bodies and lazy parameters: internal linkage | |
299 else if (fdecl->isFuncLiteralDeclaration()) | |
300 return llvm::GlobalValue::InternalLinkage; | |
298 } | 301 } |
299 // class | 302 // class |
300 else if (ClassDeclaration* cd = sym->isClassDeclaration()) | 303 else if (ClassDeclaration* cd = sym->isClassDeclaration()) |
301 { | 304 { |
302 // template | 305 // template |