owenca wrote: > > can you also add a test to clang/unittests/Format/TokenAnnotatorTest.cpp > > that ensures trailing attribute-like macros receive `StartOfName` > > annotation to make sure we don't regress the signal in the future? > > ok, that opened a whole can of worms. > > ``` > Tokens = annotate("void foo GUARDED_BY(x)"); > ``` > > gets annotated as > > ``` > {(void, "void" , Unknown), > (identifier, "foo" , StartOfName), > (identifier, "GUARDED_BY" , FunctionDeclarationName), > (l_paren, "(" , Unknown), > (identifier, "x" , Unknown), > (r_paren, ")" , Unknown), > (eof, "" , Unknown)} > ``` > > I expected to get some heuristics for attributes, but instead `GUARDED_BY` > gets annotated as a function declaration name. It feels that the current > behavior is a result of two mistakes cancelling each other out. I don't think > adding a unit test like this is warranted, even if formatting behavior is > actually correct. > > @owenca what are your thoughts on this change and whether we should add a > test here?
We usually add a FIXME test wrapped in a `#if 0` block: ``` // FIXME: ... #if 0 Tokens = annotate("void foo GUARDED_BY(x);"); ... Tokens = annotate("void foo GUARDED_BY(x) {}"); ... #endif ``` https://github.com/llvm/llvm-project/pull/76804 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits