[clang] [Clang] Add [[clang::no_specializations]] (PR #101469)
Erich Keane via cfe-commits
cfe-commits at lists.llvm.org
Tue Jan 21 09:51:56 PST 2025
================
@@ -1212,6 +1212,14 @@ static void handlePreferredName(Sema &S, Decl *D, const ParsedAttr &AL) {
<< TT->getDecl();
}
+static void handleNoSpecializations(Sema &S, Decl *D, const ParsedAttr &AL) {
+ StringRef Message;
+ if (AL.getNumArgs() != 0)
+ S.checkStringLiteralArgumentAttr(AL, 0, Message);
----------------
erichkeane wrote:
Yes, it is inconsistent, but not really an issue. About 1/2 the uses have some additional processing that needs to happen, so the early return is sensible, though perhaps they could better reflect the code in that case.
But the other 1/2 could very well have their return removed with no negative effects (and likely, an improvement, as the error-AST would better reflect the syntax).
The only reason NOT to do a mass-changeover is that we're not sure which were written in a way to not properly expect an empty string here in codegen/etc.
That said, a bug report marked 'good-first-issue' for someone to go through the uses and ensure we are tolerant of them would be a good idea. @shafik: mind filing one?
https://github.com/llvm/llvm-project/pull/101469
More information about the cfe-commits
mailing list