|
@@ -2902,24 +2902,6 @@ static void handleVecTypeHint(Sema &S, Decl *D, const AttributeList &Attr) {
|
|
|
ParmType, Attr.getLoc()));
|
|
|
}
|
|
|
|
|
|
-static void handleEndianAttr(Sema &S, Decl *D, const AttributeList &Attr) {
|
|
|
- if (!Attr.isArgIdent(0)) {
|
|
|
- S.Diag(Attr.getLoc(), diag::err_attribute_argument_n_type)
|
|
|
- << Attr.getName() << 1 << AANT_ArgumentIdentifier;
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- if (!checkAttributeNumArgs(S, Attr, 1))
|
|
|
- return;
|
|
|
-
|
|
|
- if (!dyn_cast<VarDecl>(D))
|
|
|
- S.Diag(Attr.getLoc(), diag::warn_attribute_wrong_decl_type)
|
|
|
- << Attr.getName() << ExpectedVariable;
|
|
|
- StringRef EndianType = Attr.getArgAsIdent(0)->Ident->getName();
|
|
|
- if (EndianType != "host" && EndianType != "device")
|
|
|
- S.Diag(Attr.getLoc(), diag::warn_attribute_unknown_endian) << EndianType;
|
|
|
-}
|
|
|
-
|
|
|
SectionAttr *Sema::mergeSectionAttr(Decl *D, SourceRange Range,
|
|
|
StringRef Name,
|
|
|
unsigned AttrSpellingListIndex) {
|
|
@@ -4917,10 +4899,6 @@ static void ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D,
|
|
|
case AttributeList::AT_VecTypeHint:
|
|
|
handleVecTypeHint(S, D, Attr); break;
|
|
|
|
|
|
- case AttributeList::AT_Endian:
|
|
|
- handleEndianAttr(S, D, Attr);
|
|
|
- break;
|
|
|
-
|
|
|
case AttributeList::AT_InitPriority:
|
|
|
handleInitPriorityAttr(S, D, Attr); break;
|
|
|
|