Some x86 system includes on windows have inline assembly that causes
clang-modernize to fail.
 clang-modernize/tool/CMakeLists.txt     | 1 +
 clang-modernize/tool/ClangModernize.cpp | 7 +++++++
 clang-modernize/tool/Makefile           | 2 +-
 3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/clang-modernize/tool/CMakeLists.txt 
b/clang-modernize/tool/CMakeLists.txt
index f117db3..da042ec 100644
--- a/clang-modernize/tool/CMakeLists.txt
+++ b/clang-modernize/tool/CMakeLists.txt
@@ -42,6 +42,7 @@ target_link_libraries(clang-modernize
   clangLex
   clangTooling
   clangToolingCore
+  LLVMX86AsmParser
   modernizeCore
   )
 
diff --git a/clang-modernize/tool/ClangModernize.cpp 
b/clang-modernize/tool/ClangModernize.cpp
index 56a0131..c626d56 100644
--- a/clang-modernize/tool/ClangModernize.cpp
+++ b/clang-modernize/tool/ClangModernize.cpp
@@ -31,6 +31,7 @@
 #include "llvm/ADT/StringSwitch.h"
 #include "llvm/Support/Path.h"
 #include "llvm/Support/Signals.h"
+#include "llvm/Support/TargetSelect.h"
 
 namespace cl = llvm::cl;
 using namespace clang;
@@ -299,6 +300,12 @@ static bool 
isFileExplicitlyExcludedPredicate(llvm::StringRef FilePath) {
 }
 
 int main(int argc, const char **argv) {
+  // Needed by MS-style inline assembly that is present in some system includes
+  // on windows.
+  LLVMInitializeX86TargetInfo();
+  LLVMInitializeX86TargetMC();
+  LLVMInitializeX86AsmParser();
+
   llvm::sys::PrintStackTraceOnErrorSignal();
   Transforms TransformManager;
   ReplacementHandling ReplacementHandler;
diff --git a/clang-modernize/tool/Makefile b/clang-modernize/tool/Makefile
index efc3613..d26a5ec 100644
--- a/clang-modernize/tool/Makefile
+++ b/clang-modernize/tool/Makefile
@@ -40,7 +40,7 @@ USEDLIBS = modernizeCore.a clangFormat.a \
           clangTooling.a clangToolingCore.a clangFrontend.a \
           clangSerialization.a clangDriver.a clangRewriteFrontend.a \
           clangRewrite.a clangParse.a clangSema.a clangAnalysis.a \
-          clangAST.a clangASTMatchers.a clangEdit.a clangLex.a clangBasic.a
+          clangAST.a clangASTMatchers.a clangEdit.a clangLex.a clangBasic.a 
LLVMX86AsmParser.a
 
 include $(CLANG_LEVEL)/Makefile
 
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to