summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDecl.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-06-26 06:39:41 +0000
committerChris Lattner <sabre@nondot.org>2008-06-26 06:39:41 +0000
commit3e39fa365d63bec23eda1eb08d8d5d358c03c189 (patch)
tree485a77d7e668022bc7319a34d1decf279ee45450 /clang/lib/Sema/SemaDecl.cpp
parent2239b7d3d2c82b50b96ea20aeb23e8a1ed714648 (diff)
downloadbcm5719-llvm-3e39fa365d63bec23eda1eb08d8d5d358c03c189.tar.gz
bcm5719-llvm-3e39fa365d63bec23eda1eb08d8d5d358c03c189.zip
add a comment about something that was surprising, at least to me.
llvm-svn: 52771
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r--clang/lib/Sema/SemaDecl.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index cdcdebae817..86d3ef4b0e4 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -2353,6 +2353,9 @@ void Sema::HandleDeclAttribute(Decl *New, AttributeList *Attr) {
// Ignore this, this is a type attribute, handled by ProcessTypeAttributes.
break;
case AttributeList::AT_mode:
+ // Despite what would be logical, the mode attribute is a decl attribute,
+ // not a type attribute: 'int ** __attribute((mode(HI))) *G;' tries to make
+ // 'G' be HImode, not an intermediate pointer.
if (TypedefDecl *tDecl = dyn_cast<TypedefDecl>(New)) {
QualType newType = HandleModeTypeAttribute(tDecl->getUnderlyingType(),
Attr);
OpenPOWER on IntegriCloud