summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang-tools-extra/clang-query/Query.cpp6
-rw-r--r--clang-tools-extra/clang-query/Query.h2
-rw-r--r--clang-tools-extra/clang-query/QueryParser.cpp8
-rw-r--r--clang-tools-extra/unittests/clang-query/QueryEngineTest.cpp3
-rw-r--r--clang-tools-extra/unittests/clang-query/QueryParserTest.cpp11
5 files changed, 20 insertions, 10 deletions
diff --git a/clang-tools-extra/clang-query/Query.cpp b/clang-tools-extra/clang-query/Query.cpp
index 3e83bbc92b2..abf1a32470d 100644
--- a/clang-tools-extra/clang-query/Query.cpp
+++ b/clang-tools-extra/clang-query/Query.cpp
@@ -53,8 +53,10 @@ bool HelpQuery::run(llvm::raw_ostream &OS, QuerySession &QS) const {
"Pretty-print bound nodes.\n"
" diag "
"Diagnostic location for bound nodes.\n"
+ " detailed-ast "
+ "Detailed AST output for bound nodes.\n"
" dump "
- "Detailed AST output for bound nodes.\n\n";
+ "Detailed AST output for bound nodes (alias of detailed-ast).\n\n";
return true;
}
@@ -124,7 +126,7 @@ bool MatchQuery::run(llvm::raw_ostream &OS, QuerySession &QS) const {
OS << "\n";
break;
}
- case OK_Dump: {
+ case OK_DetailedAST: {
OS << "Binding for \"" << BI->first << "\":\n";
BI->second.dump(OS, AST->getSourceManager());
OS << "\n";
diff --git a/clang-tools-extra/clang-query/Query.h b/clang-tools-extra/clang-query/Query.h
index 7771139a14c..e8f4ff34bed 100644
--- a/clang-tools-extra/clang-query/Query.h
+++ b/clang-tools-extra/clang-query/Query.h
@@ -18,7 +18,7 @@
namespace clang {
namespace query {
-enum OutputKind { OK_Diag, OK_Print, OK_Dump };
+enum OutputKind { OK_Diag, OK_Print, OK_DetailedAST };
enum QueryKind {
QK_Invalid,
diff --git a/clang-tools-extra/clang-query/QueryParser.cpp b/clang-tools-extra/clang-query/QueryParser.cpp
index e7312d8d58d..eec32024945 100644
--- a/clang-tools-extra/clang-query/QueryParser.cpp
+++ b/clang-tools-extra/clang-query/QueryParser.cpp
@@ -111,11 +111,13 @@ QueryRef QueryParser::parseSetOutputKind() {
unsigned OutKind = LexOrCompleteWord<unsigned>(this, ValStr)
.Case("diag", OK_Diag)
.Case("print", OK_Print)
- .Case("dump", OK_Dump)
+ .Case("detailed-ast", OK_DetailedAST)
+ .Case("dump", OK_DetailedAST)
.Default(~0u);
if (OutKind == ~0u) {
- return new InvalidQuery("expected 'diag', 'print' or 'dump', got '" +
- ValStr + "'");
+ return new InvalidQuery(
+ "expected 'diag', 'print', 'detailed-ast' or 'dump', got '" + ValStr +
+ "'");
}
return new SetQuery<OutputKind>(&QuerySession::OutKind, OutputKind(OutKind));
}
diff --git a/clang-tools-extra/unittests/clang-query/QueryEngineTest.cpp b/clang-tools-extra/unittests/clang-query/QueryEngineTest.cpp
index 74fd6d1a3f4..411b84d4717 100644
--- a/clang-tools-extra/unittests/clang-query/QueryEngineTest.cpp
+++ b/clang-tools-extra/unittests/clang-query/QueryEngineTest.cpp
@@ -103,7 +103,8 @@ TEST_F(QueryEngineTest, Basic) {
Str.clear();
- EXPECT_TRUE(SetQuery<OutputKind>(&QuerySession::OutKind, OK_Dump).run(OS, S));
+ EXPECT_TRUE(
+ SetQuery<OutputKind>(&QuerySession::OutKind, OK_DetailedAST).run(OS, S));
EXPECT_TRUE(MatchQuery(FooMatcherString, FooMatcher).run(OS, S));
EXPECT_TRUE(OS.str().find("FunctionDecl") != std::string::npos);
diff --git a/clang-tools-extra/unittests/clang-query/QueryParserTest.cpp b/clang-tools-extra/unittests/clang-query/QueryParserTest.cpp
index 62844c896e6..2d69349c8d2 100644
--- a/clang-tools-extra/unittests/clang-query/QueryParserTest.cpp
+++ b/clang-tools-extra/unittests/clang-query/QueryParserTest.cpp
@@ -70,7 +70,7 @@ TEST_F(QueryParserTest, Set) {
Q = parse("set output");
ASSERT_TRUE(isa<InvalidQuery>(Q));
- EXPECT_EQ("expected 'diag', 'print' or 'dump', got ''",
+ EXPECT_EQ("expected 'diag', 'print', 'detailed-ast' or 'dump', got ''",
cast<InvalidQuery>(Q)->ErrStr);
Q = parse("set bind-root true foo");
@@ -79,13 +79,18 @@ TEST_F(QueryParserTest, Set) {
Q = parse("set output foo");
ASSERT_TRUE(isa<InvalidQuery>(Q));
- EXPECT_EQ("expected 'diag', 'print' or 'dump', got 'foo'",
+ EXPECT_EQ("expected 'diag', 'print', 'detailed-ast' or 'dump', got 'foo'",
cast<InvalidQuery>(Q)->ErrStr);
Q = parse("set output dump");
ASSERT_TRUE(isa<SetQuery<OutputKind> >(Q));
EXPECT_EQ(&QuerySession::OutKind, cast<SetQuery<OutputKind> >(Q)->Var);
- EXPECT_EQ(OK_Dump, cast<SetQuery<OutputKind> >(Q)->Value);
+ EXPECT_EQ(OK_DetailedAST, cast<SetQuery<OutputKind>>(Q)->Value);
+
+ Q = parse("set output detailed-ast");
+ ASSERT_TRUE(isa<SetQuery<OutputKind>>(Q));
+ EXPECT_EQ(&QuerySession::OutKind, cast<SetQuery<OutputKind>>(Q)->Var);
+ EXPECT_EQ(OK_DetailedAST, cast<SetQuery<OutputKind>>(Q)->Value);
Q = parse("set bind-root foo");
ASSERT_TRUE(isa<InvalidQuery>(Q));
OpenPOWER on IntegriCloud