aaron.ballman added a comment. In D99861#2697449 <https://reviews.llvm.org/D99861#2697449>, @Qix- wrote:
> I'm not sure exactly how to continue after the last few comments - what > should the approach be for this patch? Or are these things we can shoot for > in later patches? I don't think they're things we should shoot for in a later patch; the token replay approach doesn't seem like it would work for more complicated attribute arguments. As a concrete example of what would be super difficult to support would be: struct S { int member; void func(int i, int j) [[plugin::attr(i + j + member)]]; }; because it would be very difficult to recognize that `member` is looked up in the context of the declaration of `S::func()` after having left the parsing context for the structure. I think the one way to continue is along the lines of what's described in https://bugs.llvm.org/show_bug.cgi?id=46446#c11 so that the plugin handles parsing the arguments by invoking calls on the parser. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D99861/new/ https://reviews.llvm.org/D99861 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits