comparison dmd/mars.h @ 918:a4fcc13da3cd

Changed templates and typeinfo to use linkonce linkage instead of weak linkage, this should fix inlining problems, fixing bug #197 . If problems show up, it's easy to change it back by changing the define in mars.h . I'm 95% sure this is safe, given how we handle templates.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Mon, 02 Feb 2009 01:44:51 +0100
parents 27a379f288bf
children a8cb25d478c4
comparison
equal deleted inserted replaced
917:7e272f2b4fc3 918:a4fcc13da3cd
62 OSWindows, 62 OSWindows,
63 OSMacOSX, 63 OSMacOSX,
64 OSFreeBSD, 64 OSFreeBSD,
65 OSSolaris, 65 OSSolaris,
66 }; 66 };
67
68 // make it easier to test new linkage types
69 #define TEMPLATE_LINKAGE_TYPE llvm::GlobalValue::LinkOnceLinkage
70 #define TYPEINFO_LINKAGE_TYPE llvm::GlobalValue::LinkOnceLinkage
67 71
68 // Put command line switches in here 72 // Put command line switches in here
69 struct Param 73 struct Param
70 { 74 {
71 char obj; // write object file 75 char obj; // write object file