Hi chandlerc, doug.gregor,
A better solution to http://llvm.org/bugs/show_bug.cgi?id=13777
Named namespace + more unique name to make ODR violations unlikely.
http://llvm-reviews.chandlerc.com/D38
Files:
tools/clang/tools/clang-check/ClangCheck.cpp
Index: tools/clang/tools/clang-check/ClangCheck.cpp
===================================================================
--- tools/clang/tools/clang-check/ClangCheck.cpp
+++ tools/clang/tools/clang-check/ClangCheck.cpp
@@ -58,10 +58,10 @@
"ast-dump-filter",
cl::desc(Options->getOptionHelpText(options::OPT_ast_dump_filter)));
-// Anonymous namespace here causes problems with gcc <= 4.4 on MacOS:
-// http://llvm.org/bugs/show_bug.cgi?id=13777
-// namespace {
-class ActionFactory {
+// Anonymous namespace here causes problems with gcc <= 4.4 on MacOS 10.6.
+// "Non-global symbol: ... can't be a weak_definition"
+namespace clang_check {
+class ClangCheckActionFactory {
public:
clang::ASTConsumer *newASTConsumer() {
if (ASTList)
@@ -73,10 +73,10 @@
return new clang::ASTConsumer();
}
};
-// }
+}
int main(int argc, const char **argv) {
- ActionFactory Factory;
+ clang_check::ClangCheckActionFactory Factory;
CommonOptionsParser OptionsParser(argc, argv);
ClangTool Tool(OptionsParser.GetCompilations(),
OptionsParser.GetSourcePathList());
Index: tools/clang/tools/clang-check/ClangCheck.cpp
===================================================================
--- tools/clang/tools/clang-check/ClangCheck.cpp
+++ tools/clang/tools/clang-check/ClangCheck.cpp
@@ -58,10 +58,10 @@
"ast-dump-filter",
cl::desc(Options->getOptionHelpText(options::OPT_ast_dump_filter)));
-// Anonymous namespace here causes problems with gcc <= 4.4 on MacOS:
-// http://llvm.org/bugs/show_bug.cgi?id=13777
-// namespace {
-class ActionFactory {
+// Anonymous namespace here causes problems with gcc <= 4.4 on MacOS 10.6.
+// "Non-global symbol: ... can't be a weak_definition"
+namespace clang_check {
+class ClangCheckActionFactory {
public:
clang::ASTConsumer *newASTConsumer() {
if (ASTList)
@@ -73,10 +73,10 @@
return new clang::ASTConsumer();
}
};
-// }
+}
int main(int argc, const char **argv) {
- ActionFactory Factory;
+ clang_check::ClangCheckActionFactory Factory;
CommonOptionsParser OptionsParser(argc, argv);
ClangTool Tool(OptionsParser.GetCompilations(),
OptionsParser.GetSourcePathList());
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits