[clang] 3ebfa36 - Remove attribute handling code for simple attributes; NFC
Aaron Ballman via cfe-commits
cfe-commits at lists.llvm.org
Fri Apr 2 08:35:18 PDT 2021
Author: Aaron Ballman
Date: 2021-04-02T11:35:10-04:00
New Revision: 3ebfa363f356eff744b73885023cc1fc62fad973
URL: https://github.com/llvm/llvm-project/commit/3ebfa363f356eff744b73885023cc1fc62fad973
DIFF: https://github.com/llvm/llvm-project/commit/3ebfa363f356eff744b73885023cc1fc62fad973.diff
LOG: Remove attribute handling code for simple attributes; NFC
Attributes that set the SimpleHandler flag in Attr.td don't need to be
explicitly handled in SemaDeclAttr.cpp.
Added:
Modified:
clang/include/clang/Basic/Attr.td
clang/lib/Sema/SemaDeclAttr.cpp
Removed:
################################################################################
diff --git a/clang/include/clang/Basic/Attr.td b/clang/include/clang/Basic/Attr.td
index c7b68856aab0..b832d1df7172 100644
--- a/clang/include/clang/Basic/Attr.td
+++ b/clang/include/clang/Basic/Attr.td
@@ -2113,6 +2113,7 @@ def ObjCNonRuntimeProtocol : Attr {
let Subjects = SubjectList<[ObjCProtocol], ErrorDiag>;
let LangOpts = [ObjC];
let Documentation = [ObjCNonRuntimeProtocolDocs];
+ let SimpleHandler = 1;
}
def ObjCRuntimeName : Attr {
@@ -2247,12 +2248,14 @@ def SwiftBridgedTypedef : InheritableAttr {
let Spellings = [GNU<"swift_bridged_typedef">];
let Subjects = SubjectList<[TypedefName], ErrorDiag>;
let Documentation = [SwiftBridgedTypedefDocs];
+ let SimpleHandler = 1;
}
def SwiftObjCMembers : Attr {
let Spellings = [GNU<"swift_objc_members">];
let Subjects = SubjectList<[ObjCInterface], ErrorDiag>;
let Documentation = [SwiftObjCMembersDocs];
+ let SimpleHandler = 1;
}
def SwiftError : InheritableAttr {
@@ -2284,6 +2287,7 @@ def SwiftNewType : InheritableAttr {
def SwiftPrivate : InheritableAttr {
let Spellings = [GNU<"swift_private">];
let Documentation = [SwiftPrivateDocs];
+ let SimpleHandler = 1;
}
def NoDeref : TypeAttr {
@@ -3667,6 +3671,7 @@ def LoaderUninitialized : Attr {
let Spellings = [Clang<"loader_uninitialized">];
let Subjects = SubjectList<[GlobalVar]>;
let Documentation = [LoaderUninitializedDocs];
+ let SimpleHandler = 1;
}
def ObjCExternallyRetained : InheritableAttr {
diff --git a/clang/lib/Sema/SemaDeclAttr.cpp b/clang/lib/Sema/SemaDeclAttr.cpp
index b39460d33214..23b488c527b1 100644
--- a/clang/lib/Sema/SemaDeclAttr.cpp
+++ b/clang/lib/Sema/SemaDeclAttr.cpp
@@ -2650,11 +2650,6 @@ static void handleVisibilityAttr(Sema &S, Decl *D, const ParsedAttr &AL,
D->addAttr(newAttr);
}
-static void handleObjCNonRuntimeProtocolAttr(Sema &S, Decl *D,
- const ParsedAttr &AL) {
- handleSimpleAttribute<ObjCNonRuntimeProtocolAttr>(S, D, AL);
-}
-
static void handleObjCDirectAttr(Sema &S, Decl *D, const ParsedAttr &AL) {
// objc_direct cannot be set on methods declared in the context of a protocol
if (isa<ObjCProtocolDecl>(D->getDeclContext())) {
@@ -7957,9 +7952,6 @@ static void ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D,
case ParsedAttr::AT_AnyX86NoCfCheck:
handleNoCfCheckAttr(S, D, AL);
break;
- case ParsedAttr::AT_Leaf:
- handleSimpleAttribute<LeafAttr>(S, D, AL);
- break;
case ParsedAttr::AT_NoThrow:
if (!AL.isUsedAsTypeAttr())
handleSimpleAttribute<NoThrowAttr>(S, D, AL);
@@ -8093,9 +8085,6 @@ static void ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D,
case ParsedAttr::AT_ObjCDirect:
handleObjCDirectAttr(S, D, AL);
break;
- case ParsedAttr::AT_ObjCNonRuntimeProtocol:
- handleObjCNonRuntimeProtocolAttr(S, D, AL);
- break;
case ParsedAttr::AT_ObjCDirectMembers:
handleObjCDirectMembersAttr(S, D, AL);
handleSimpleAttribute<ObjCDirectMembersAttr>(S, D, AL);
@@ -8114,9 +8103,6 @@ static void ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D,
handleSimpleAttributeWithExclusions<DisableTailCallsAttr, NakedAttr>(S, D,
AL);
break;
- case ParsedAttr::AT_NoMerge:
- handleSimpleAttribute<NoMergeAttr>(S, D, AL);
- break;
case ParsedAttr::AT_Visibility:
handleVisibilityAttr(S, D, AL, false);
break;
@@ -8324,9 +8310,6 @@ static void ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D,
case ParsedAttr::AT_SwiftBridge:
handleSwiftBridge(S, D, AL);
break;
- case ParsedAttr::AT_SwiftBridgedTypedef:
- handleSimpleAttribute<SwiftBridgedTypedefAttr>(S, D, AL);
- break;
case ParsedAttr::AT_SwiftError:
handleSwiftError(S, D, AL);
break;
@@ -8336,12 +8319,6 @@ static void ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D,
case ParsedAttr::AT_SwiftNewType:
handleSwiftNewType(S, D, AL);
break;
- case ParsedAttr::AT_SwiftObjCMembers:
- handleSimpleAttribute<SwiftObjCMembersAttr>(S, D, AL);
- break;
- case ParsedAttr::AT_SwiftPrivate:
- handleSimpleAttribute<SwiftPrivateAttr>(S, D, AL);
- break;
case ParsedAttr::AT_SwiftAsync:
handleSwiftAsyncAttr(S, D, AL);
break;
@@ -8367,10 +8344,6 @@ static void ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D,
handleUninitializedAttr(S, D, AL);
break;
- case ParsedAttr::AT_LoaderUninitialized:
- handleSimpleAttribute<LoaderUninitializedAttr>(S, D, AL);
- break;
-
case ParsedAttr::AT_ObjCExternallyRetained:
handleObjCExternallyRetainedAttr(S, D, AL);
break;
More information about the cfe-commits
mailing list