Fix for PR8901: attribute "mode" rejected for enums and dependent types.
authorDenis Zobnin <d.zobnin.bugzilla@gmail.com>
Tue, 2 Feb 2016 13:50:39 +0000 (13:50 +0000)
committerDenis Zobnin <d.zobnin.bugzilla@gmail.com>
Tue, 2 Feb 2016 13:50:39 +0000 (13:50 +0000)
commitd9e2dcdb424f761f7148db63d7ed9cd6ae40c2fe
tree44f2883b09f30910f93e93b55b4271d31f73f0f9
parent96fe4ef5f7867bde5c95a59a96fa802ff9eb6cf4
Fix for PR8901: attribute "mode" rejected for enums and dependent types.

Allow "mode" attribute for enum types, except for vector modes, for compatibility with GCC.
Support "mode" attribute with dependent types.

Differential Revision: http://reviews.llvm.org/D16219

llvm-svn: 259497
clang/include/clang/Basic/Attr.td
clang/include/clang/Basic/DiagnosticSemaKinds.td
clang/include/clang/Sema/AttributeList.h
clang/include/clang/Sema/Sema.h
clang/lib/Sema/SemaDeclAttr.cpp
clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
clang/test/CodeGen/attr-mode-enums.c [new file with mode: 0644]
clang/test/CodeGenCXX/attr-mode-vector-types-tmpl.cpp [new file with mode: 0644]
clang/test/Sema/attr-mode-enums.c [new file with mode: 0644]
clang/test/Sema/attr-mode.c
clang/test/SemaCXX/attr-mode-tmpl.cpp [new file with mode: 0644]