]> granicus.if.org Git - clang/commitdiff
Add clang_getCursorType() support for @property declarations.
authorTed Kremenek <kremenek@apple.com>
Mon, 21 Jun 2010 19:41:40 +0000 (19:41 +0000)
committerTed Kremenek <kremenek@apple.com>
Mon, 21 Jun 2010 19:41:40 +0000 (19:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106451 91177308-0d34-0410-b5e6-96231b3b80d8

test/Index/print-typekind.m [new file with mode: 0644]
tools/libclang/CXTypes.cpp

diff --git a/test/Index/print-typekind.m b/test/Index/print-typekind.m
new file mode 100644 (file)
index 0000000..62cbb70
--- /dev/null
@@ -0,0 +1,7 @@
+@interface Foo
+@property (readonly) id x;
+@end
+
+// RUN: c-index-test -test-print-typekind %s | FileCheck %s
+// CHECK: ObjCPropertyDecl=x:2:25 typekind=Typedef [canonical=ObjCObjectPointer]
+
index 777afb9bb7a6c6c86fc1ef0e2765ff83db0b5a64..ae756c7a1eea2bf68a4ab30b2f2c8d551bd0e808 100644 (file)
@@ -116,6 +116,8 @@ CXType clang_getCursorType(CXCursor C) {
       return MakeCXType(QualType(ID->getTypeForDecl(), 0), AU);
     if (ValueDecl *VD = dyn_cast<ValueDecl>(D))
       return MakeCXType(VD->getType(), AU);
+    if (ObjCPropertyDecl *PD = dyn_cast<ObjCPropertyDecl>(D))
+      return MakeCXType(PD->getType(), AU);
 
     return MakeCXType(QualType(), AU);
   }