diff options
author | Nikolas Klauser <nikolasklauser@berlin.de> | 2025-02-26 16:01:14 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-26 16:01:14 +0100 |
commit | 8dd8e5f7d692cc43f4322f04034f5c472381aa43 (patch) | |
tree | 410484b1a4eac639bb0cd92c78200f6a893de748 /clang/lib/Sema/SemaLookup.cpp | |
parent | defe43bbffb0d25ec468f0e54b20548ec192ff90 (diff) | |
download | llvm-8dd8e5f7d692cc43f4322f04034f5c472381aa43.zip llvm-8dd8e5f7d692cc43f4322f04034f5c472381aa43.tar.gz llvm-8dd8e5f7d692cc43f4322f04034f5c472381aa43.tar.bz2 |
[Clang] Add BuiltinTemplates.td to generate code for builtin templates (#123736)
This makes it significantly easier to add new builtin templates, since
you only have to modify two places instead of a dozen or so.
The `BuiltinTemplates.td` could also be extended to generate
documentation from it in the future.
Diffstat (limited to 'clang/lib/Sema/SemaLookup.cpp')
-rw-r--r-- | clang/lib/Sema/SemaLookup.cpp | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/clang/lib/Sema/SemaLookup.cpp b/clang/lib/Sema/SemaLookup.cpp index 0f5b742..aecf8ed 100644 --- a/clang/lib/Sema/SemaLookup.cpp +++ b/clang/lib/Sema/SemaLookup.cpp @@ -924,18 +924,12 @@ bool Sema::LookupBuiltin(LookupResult &R) { IdentifierInfo *II = R.getLookupName().getAsIdentifierInfo(); if (II) { if (getLangOpts().CPlusPlus && NameKind == Sema::LookupOrdinaryName) { - if (II == getASTContext().getMakeIntegerSeqName()) { - R.addDecl(getASTContext().getMakeIntegerSeqDecl()); - return true; - } - if (II == getASTContext().getTypePackElementName()) { - R.addDecl(getASTContext().getTypePackElementDecl()); - return true; - } - if (II == getASTContext().getBuiltinCommonTypeName()) { - R.addDecl(getASTContext().getBuiltinCommonTypeDecl()); - return true; - } +#define BuiltinTemplate(BIName) \ + if (II == getASTContext().get##BIName##Name()) { \ + R.addDecl(getASTContext().get##BIName##Decl()); \ + return true; \ + } +#include "clang/Basic/BuiltinTemplates.inc" } // Check if this is an OpenCL Builtin, and if so, insert its overloads. |