From 7f99e1870f776a25e03526e3190105c094750d98 Mon Sep 17 00:00:00 2001 From: Haojian Wu Date: Tue, 1 Mar 2022 15:57:13 +0100 Subject: [PATCH] [pseudo] Add a print-grammar option in the tool This is helpful for debugging purposes. Differential Revision: https://reviews.llvm.org/D120724 --- clang/tools/clang-pseudo/ClangPseudo.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/clang/tools/clang-pseudo/ClangPseudo.cpp b/clang/tools/clang-pseudo/ClangPseudo.cpp index 2d6fbdb83944..59db927d8e08 100644 --- a/clang/tools/clang-pseudo/ClangPseudo.cpp +++ b/clang/tools/clang-pseudo/ClangPseudo.cpp @@ -24,6 +24,7 @@ using llvm::cl::opt; static opt Grammar("grammar", desc("Parse and check a BNF grammar file."), init("")); +static opt PrintGrammar("print-grammar", desc("Print the grammar.")); static opt PrintGraph("print-graph", desc("Print the LR graph for the grammar")); static opt PrintTable("print-table", @@ -60,6 +61,8 @@ int main(int argc, char *argv[]) { } llvm::outs() << llvm::formatv("grammar file {0} is parsed successfully\n", Grammar); + if (PrintGrammar) + llvm::outs() << G->dump(); if (PrintGraph) llvm::outs() << clang::syntax::pseudo::LRGraph::buildLR0(*G).dumpForTests( *G);