================ @@ -1296,6 +1296,15 @@ TEST_F(TokenAnnotatorTest, UnderstandsRequiresClausesAndConcepts) { Tokens = annotate("bool x = t && requires(Foo<C1 || C2> x) { x.foo(); };"); ASSERT_EQ(Tokens.size(), 25u) << Tokens; EXPECT_TOKEN(Tokens[5], tok::kw_requires, TT_RequiresExpression); + + // Second function definition is required due to lookahead + Tokens = annotate("void f() &\n" ---------------- owenca wrote:
> I'm not against rewriting the heuristic, if you know a better one. But for > this example could one not extent the look behind? Than it would also work > for r-value references. No, because we can't tell if the r_paren before `&& requires` is a function decl r_paren? > Or try to annotate the reference marker and match on that? No, because we're in `UnwrappedLineParser`? https://github.com/llvm/llvm-project/pull/110942 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits