]> granicus.if.org Git - clang/commit
Change the canonical representation of array types to store qualifiers on the
authorJohn McCall <rjmccall@apple.com>
Wed, 19 Jan 2011 10:06:00 +0000 (10:06 +0000)
committerJohn McCall <rjmccall@apple.com>
Wed, 19 Jan 2011 10:06:00 +0000 (10:06 +0000)
commit3b6575108a5b6d8b92ac3a9a7794bf6c3a210907
treed558697cf5d178aebee53e7d2d924e474e8ced1c
parentf4c7371fb1d3cebcfb40abad4537bb82515704ea
Change the canonical representation of array types to store qualifiers on the
outermost array types and not on the element type.  Move the CanonicalType
member from Type to ExtQualsTypeCommonBase;  the canonical type on an ExtQuals
node includes the qualifiers on the ExtQuals.  Assorted optimizations enabled
by this change.

getQualifiers(), hasQualifiers(), etc. should all now implicitly look through
array types.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123817 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/AST/ASTContext.h
include/clang/AST/Type.h
lib/AST/ASTContext.cpp
lib/AST/Type.cpp
lib/Sema/SemaOverload.cpp
lib/Sema/TreeTransform.h
test/Sema/typedef-retain.c