diff options
author | Anders Carlsson <andersca@mac.com> | 2009-02-09 21:53:01 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2009-02-09 21:53:01 +0000 |
commit | 672c91db00d28187600dd18ef6c524ff45e95ef2 (patch) | |
tree | 88b75cd5753a6b21a4778687a699cc489cf0cd1b | |
parent | c756a8ebee5c896a01f2c564bf4ba800c0beda21 (diff) |
id<Foo> is a POD type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64175 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/AST/Type.cpp | 1 | ||||
-rw-r--r-- | test/SemaObjCXX/vararg-non-pod.mm | 11 |
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/AST/Type.cpp b/lib/AST/Type.cpp index bf10b9ad70..62875ed5cb 100644 --- a/lib/AST/Type.cpp +++ b/lib/AST/Type.cpp @@ -746,6 +746,7 @@ bool Type::isPODType() const { case MemberPointer: case Vector: case ExtVector: + case ObjCQualifiedId: return true; case Tagged: diff --git a/test/SemaObjCXX/vararg-non-pod.mm b/test/SemaObjCXX/vararg-non-pod.mm index 83266381ae..70028c7e58 100644 --- a/test/SemaObjCXX/vararg-non-pod.mm +++ b/test/SemaObjCXX/vararg-non-pod.mm @@ -2,6 +2,8 @@ extern char version[]; +@protocol P; + class C { public: C(int); @@ -19,3 +21,12 @@ void t1(D *d) [d g:10, version]; } +void t2(D *d, id p) +{ + [d g:10, p]; +} + +void t3(D *d, id<P> p) +{ + [d g:10, p]; +} |