From: Aaron Ballman Date: Thu, 18 Jul 2013 19:11:29 +0000 (+0000) Subject: Changed declarations from Attr to InheritableAttr as they are already being processed... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=38f71e265aadc5e935347cb8ee91c6916922199b;p=clang Changed declarations from Attr to InheritableAttr as they are already being processed that way semantically. Patch thanks to Dean Sutherland! Reviewed by Eli Friedman. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186598 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Basic/Attr.td b/include/clang/Basic/Attr.td index cdb567dea0..8c820a0cf4 100644 --- a/include/clang/Basic/Attr.td +++ b/include/clang/Basic/Attr.td @@ -169,13 +169,13 @@ def Aligned : InheritableAttr { def AlignMac68k : InheritableAttr { let Spellings = []; - let SemaHandler = 0; -} - -def AllocSize : Attr { - let Spellings = [GNU<"alloc_size">, CXX11<"gnu", "alloc_size">]; - let Args = [VariadicUnsignedArgument<"Args">]; -} + let SemaHandler = 0; +} + +def AllocSize : InheritableAttr { + let Spellings = [GNU<"alloc_size">, CXX11<"gnu", "alloc_size">]; + let Args = [VariadicUnsignedArgument<"Args">]; +} def AlwaysInline : InheritableAttr { let Spellings = [GNU<"always_inline">, CXX11<"gnu", "always_inline">]; @@ -323,17 +323,17 @@ def C11NoReturn : InheritableAttr { def CXX11NoReturn : InheritableAttr { let Spellings = [CXX11<"","noreturn">, CXX11<"std","noreturn">]; - let Subjects = [Function]; -} - -def OpenCLKernel : Attr { - let Spellings = [Keyword<"__kernel">, Keyword<"kernel">]; -} - -def OpenCLImageAccess : Attr { - let Spellings = [GNU<"opencl_image_access">]; - let Args = [IntArgument<"Access">]; -} + let Subjects = [Function]; +} + +def OpenCLKernel : InheritableAttr { + let Spellings = [Keyword<"__kernel">, Keyword<"kernel">]; +} + +def OpenCLImageAccess : Attr { + let Spellings = [GNU<"opencl_image_access">]; + let Args = [IntArgument<"Access">]; +} def Deprecated : InheritableAttr { let Spellings = [GNU<"deprecated">, CXX11<"gnu", "deprecated">]; @@ -342,13 +342,13 @@ def Deprecated : InheritableAttr { def Destructor : InheritableAttr { let Spellings = [GNU<"destructor">, CXX11<"gnu", "destructor">]; - let Args = [IntArgument<"Priority">]; -} - -def ExtVectorType : Attr { - let Spellings = [GNU<"ext_vector_type">]; - let Args = [ExprArgument<"NumElements">]; - let ASTNode = 0; + let Args = [IntArgument<"Priority">]; +} + +def ExtVectorType : Attr { + let Spellings = [GNU<"ext_vector_type">]; + let Args = [ExprArgument<"NumElements">]; + let ASTNode = 0; } def FallThrough : Attr { @@ -435,13 +435,13 @@ def MBlazeSaveVolatiles : InheritableAttr { def Mips16 : InheritableAttr { let Spellings = [GNU<"mips16">, CXX11<"gnu", "mips16">]; - let Subjects = [Function]; -} - -def Mode : Attr { - let Spellings = [GNU<"mode">, CXX11<"gnu", "mode">]; - let Args = [IdentifierArgument<"Mode">]; -} + let Subjects = [Function]; +} + +def Mode : Attr { + let Spellings = [GNU<"mode">, CXX11<"gnu", "mode">]; + let Args = [IdentifierArgument<"Mode">]; +} def Naked : InheritableAttr { let Spellings = [GNU<"naked">, CXX11<"gnu", "naked">]; @@ -554,28 +554,28 @@ def ObjCMethodFamily : InheritableAttr { } def ObjCNSObject : InheritableAttr { - let Spellings = [GNU<"NSObject">]; -} - -def ObjCPreciseLifetime : Attr { - let Spellings = [GNU<"objc_precise_lifetime">]; - let Subjects = [Var]; -} - -def ObjCReturnsInnerPointer : Attr { - let Spellings = [GNU<"objc_returns_inner_pointer">]; - let Subjects = [ObjCMethod]; -} + let Spellings = [GNU<"NSObject">]; +} + +def ObjCPreciseLifetime : InheritableAttr { + let Spellings = [GNU<"objc_precise_lifetime">]; + let Subjects = [Var]; +} + +def ObjCReturnsInnerPointer : InheritableAttr { + let Spellings = [GNU<"objc_returns_inner_pointer">]; + let Subjects = [ObjCMethod]; +} def ObjCRequiresSuper : InheritableAttr { let Spellings = [GNU<"objc_requires_super">]; - let Subjects = [ObjCMethod]; -} - -def ObjCRootClass : Attr { - let Spellings = [GNU<"objc_root_class">]; - let Subjects = [ObjCInterface]; -} + let Subjects = [ObjCMethod]; +} + +def ObjCRootClass : InheritableAttr { + let Spellings = [GNU<"objc_root_class">]; + let Subjects = [ObjCInterface]; +} def Overloadable : Attr { let Spellings = [GNU<"overloadable">]; @@ -689,13 +689,13 @@ def ArcWeakrefUnavailable : InheritableAttr { def ObjCGC : Attr { let Spellings = [GNU<"objc_gc">]; let Args = [IdentifierArgument<"Kind">]; - let ASTNode = 0; -} - -def ObjCOwnership : Attr { - let Spellings = [GNU<"objc_ownership">]; - let Args = [IdentifierArgument<"Kind">]; - let ASTNode = 0; + let ASTNode = 0; +} + +def ObjCOwnership : InheritableAttr { + let Spellings = [GNU<"objc_ownership">]; + let Args = [IdentifierArgument<"Kind">]; + let ASTNode = 0; } def ObjCRequiresPropertyDefs : InheritableAttr {