[cfe-commits] [PATCH] Workaround for MacOSX build failure with gcc <= 4.4

Alexander Kornienko reviews at llvm-reviews.chandlerc.com
Mon Sep 10 04:29:01 PDT 2012


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());
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D38.1.patch
Type: text/x-patch
Size: 1103 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120910/1d3ca838/attachment.bin>


More information about the cfe-commits mailing list