diff options
-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]; +} |