File tree 3 files changed +9
-1
lines changed
3 files changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -3267,7 +3267,8 @@ enum CXTypeKind {
3267
3267
CXType_OCLQueue = 159 ,
3268
3268
CXType_OCLReserveID = 160 ,
3269
3269
3270
- CXType_ObjCObject = 161
3270
+ CXType_ObjCObject = 161 ,
3271
+ CXType_ObjCTypeParam = 162
3271
3272
};
3272
3273
3273
3274
/**
Original file line number Diff line number Diff line change @@ -7,6 +7,10 @@ -(void)kindof_meth:(__kindof Foo *)p;
7
7
@property (class ) int classProp;
8
8
@end
9
9
10
+ @interface Bar <SomeType> : Foo
11
+ -(SomeType)generic ;
12
+ @end
13
+
10
14
// RUN: c-index-test -test-print-type %s | FileCheck %s
11
15
// CHECK: ObjCPropertyDecl=x:2:25 [readonly,] [type=id] [typekind=ObjCId] [canonicaltype=id] [canonicaltypekind=ObjCObjectPointer] [isPOD=1]
12
16
// CHECK: ObjCInstanceMethodDecl=mymethod:3:8 [type=] [typekind=Invalid] [resulttype=int] [resulttypekind=Int] [isPOD=0]
@@ -17,3 +21,4 @@ -(void)kindof_meth:(__kindof Foo *)p;
17
21
// CHECK: ParmDecl=j:5:49 (Definition) [Out,] [type=short *] [typekind=Pointer] [isPOD=1] [pointeetype=short] [pointeekind=Short]
18
22
// CHECK: ParmDecl=p:6:36 (Definition) [type=__kindof Foo *] [typekind=ObjCObjectPointer] [canonicaltype=__kindof Foo *] [canonicaltypekind=ObjCObjectPointer] [basetype=Foo] [basekind=ObjCInterface] [isPOD=1] [pointeetype=Foo] [pointeekind=ObjCInterface]
19
23
// CHECK: ObjCPropertyDecl=classProp:7:23 [class,] [type=int] [typekind=Int] [isPOD=1]
24
+ // CHECK: ObjCInstanceMethodDecl=generic:11:12 [type=] [typekind=Invalid] [resulttype=SomeType] [resulttypekind=ObjCTypeParam] [isPOD=0]
Original file line number Diff line number Diff line change @@ -100,6 +100,7 @@ static CXTypeKind GetTypeKind(QualType T) {
100
100
TKCASE (ObjCInterface);
101
101
TKCASE (ObjCObject);
102
102
TKCASE (ObjCObjectPointer);
103
+ TKCASE (ObjCTypeParam);
103
104
TKCASE (FunctionNoProto);
104
105
TKCASE (FunctionProto);
105
106
TKCASE (ConstantArray);
@@ -578,6 +579,7 @@ CXString clang_getTypeKindSpelling(enum CXTypeKind K) {
578
579
TKIND (ObjCInterface);
579
580
TKIND (ObjCObject);
580
581
TKIND (ObjCObjectPointer);
582
+ TKIND (ObjCTypeParam);
581
583
TKIND (FunctionNoProto);
582
584
TKIND (FunctionProto);
583
585
TKIND (ConstantArray);
You can’t perform that action at this time.
0 commit comments