[PATCH] D99861: [Clang] Record tokens in attribute arguments for user-defined C++/C2x attributes
Josh Junon via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Apr 9 13:20:06 PDT 2021
Qix- marked 3 inline comments as done.
Qix- added a comment.
So I went back and checked and I remember why I didn't add explicit support for GNU/declspec attributes - they actually perform symbol lookups in the surrounding scope. I believe there's an issue right now with plugins that GNU-style attributes parser assumes that they're being parsed from the Tablegen stuff and thus expect the attribute classes to be parameterized as e.g. taking arguments or not. Therefore, putting arbitrary tokens in GNU-style and (as far as I can tell) declspec-style attributes is expressely not supported by the compiler. Also I believe this makes sense, too, because those syntaxes aren't spec'd to allow arbitrary tokens like C2x and C++ attributes are.
In fact, in my testing, the GNU-style attributes in plugins can't accept arguments whatsoever without getting some sort of compilation error. Maybe I'm not using the plugin system correctly, though.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D99861/new/
https://reviews.llvm.org/D99861
More information about the cfe-commits
mailing list