diff options
| -rw-r--r-- | clang-tools-extra/clang-query/QueryParser.cpp | 2 | ||||
| -rw-r--r-- | clang-tools-extra/unittests/clang-query/QueryParserTest.cpp | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/clang-tools-extra/clang-query/QueryParser.cpp b/clang-tools-extra/clang-query/QueryParser.cpp index a980722de9e..896145bf961 100644 --- a/clang-tools-extra/clang-query/QueryParser.cpp +++ b/clang-tools-extra/clang-query/QueryParser.cpp @@ -250,7 +250,7 @@ QueryRef QueryParser::doParse() { return completeMatcherExpression(); Diagnostics Diag; - auto MatcherSource = Line.trim(); + auto MatcherSource = Line.ltrim(); auto OrigMatcherSource = MatcherSource; Optional<DynTypedMatcher> Matcher = Parser::parseMatcherExpression( MatcherSource, nullptr, &QS.NamedValues, &Diag); diff --git a/clang-tools-extra/unittests/clang-query/QueryParserTest.cpp b/clang-tools-extra/unittests/clang-query/QueryParserTest.cpp index 79fcfcae6e0..fa16c7172ba 100644 --- a/clang-tools-extra/unittests/clang-query/QueryParserTest.cpp +++ b/clang-tools-extra/unittests/clang-query/QueryParserTest.cpp @@ -348,4 +348,12 @@ match callExpr ASSERT_TRUE(isa<InvalidQuery>(Q)); EXPECT_EQ("1:1: Invalid token <NewLine> found when looking for a value.", cast<InvalidQuery>(Q)->ErrStr); + + Q = parse("\nm parmVarDecl()\nlet someMatcher\n"); + + ASSERT_TRUE(isa<MatchQuery>(Q)); + Q = parse(Q->RemainingContent); + + ASSERT_TRUE(isa<InvalidQuery>(Q)); + EXPECT_EQ("1:1: Invalid token <NewLine> found when looking for a value.", cast<InvalidQuery>(Q)->ErrStr); } |

