From 64361e3c8b623f64233e0c6192e6b7167121ae68 Mon Sep 17 00:00:00 2001 From: Alexander Kornienko Date: Tue, 14 Aug 2012 08:31:51 +0000 Subject: [PATCH] Added description of clang-check -ast-dump* options. llvm-svn: 161861 --- clang/docs/HowToSetupToolingForLLVM.html | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/clang/docs/HowToSetupToolingForLLVM.html b/clang/docs/HowToSetupToolingForLLVM.html index b9f258314052..493c8820fc4f 100644 --- a/clang/docs/HowToSetupToolingForLLVM.html +++ b/clang/docs/HowToSetupToolingForLLVM.html @@ -84,6 +84,42 @@ into your .vimrc:

When editing C++ code, hit F5 to reparse the current buffer. The output will go into the error window, which you can enable with :cope.

+

Other clang-check options that can be useful when working with +clang AST:

+ +

Examples:

+
+$ clang-check tools/clang/tools/clang-check/ClangCheck.cpp -ast-dump -ast-dump-filter ActionFactory::newASTConsumer
+Processing: tools/clang/tools/clang-check/ClangCheck.cpp.
+Dumping ::ActionFactory::newASTConsumer:
+clang::ASTConsumer *newASTConsumer() (CompoundStmt 0x44da290 </home/alexfh/local/llvm/tools/clang/tools/clang-check/ClangCheck.cpp:64:40, line:72:3>
+  (IfStmt 0x44d97c8 <line:65:5, line:66:45>
+    <<<NULL>>>
+      (ImplicitCastExpr 0x44d96d0 <line:65:9> '_Bool':'_Bool' <UserDefinedConversion>
+...
+$ clang-check tools/clang/tools/clang-check/ClangCheck.cpp -ast-print -ast-dump-filter ActionFactory::newASTConsumer
+Processing: tools/clang/tools/clang-check/ClangCheck.cpp.
+Printing <anonymous namespace>::ActionFactory::newASTConsumer:
+clang::ASTConsumer *newASTConsumer() {
+    if (this->ASTList.operator _Bool())
+        return clang::CreateASTDeclNodeLister();
+    if (this->ASTDump.operator _Bool())
+        return clang::CreateASTDumper(this->ASTDumpFilter);
+    if (this->ASTPrint.operator _Bool())
+        return clang::CreateASTPrinter(&llvm::outs(), this->ASTDumpFilter);
+    return new clang::ASTConsumer();
+}
+

(Experimental) Using Ninja Build System

-- GitLab