diff options
Diffstat (limited to 'clang')
-rw-r--r-- | clang/test/Index/index-refs.cpp | 9 | ||||
-rw-r--r-- | clang/tools/libclang/IndexTypeSourceInfo.cpp | 5 |
2 files changed, 14 insertions, 0 deletions
diff --git a/clang/test/Index/index-refs.cpp b/clang/test/Index/index-refs.cpp index 35f4fe403c0..fa4b4b3a09c 100644 --- a/clang/test/Index/index-refs.cpp +++ b/clang/test/Index/index-refs.cpp @@ -55,6 +55,12 @@ void foo3() { TS<int, int> s; } +const int array_size = 3; +typedef int some_arr[array_size]; + +const int default_param = 3; +void foo4(int p = default_param); + // RUN: c-index-test -index-file %s | FileCheck %s // CHECK: [indexDeclaration]: kind: namespace | name: NS // CHECK-NEXT: [indexDeclaration]: kind: variable | name: gx @@ -98,3 +104,6 @@ void foo3() { [indexEntityReference]: kind: struct-template-spec | name: TS | USR: c:@S@TS>#I | {{.*}} | loc: 55:3 */ // CHECK-NEXT: [indexEntityReference]: kind: c++-class-template | name: TS | USR: c:@ST>2#T#T@TS | {{.*}} | loc: 55:3 + +// CHECK: [indexEntityReference]: kind: variable | name: array_size | {{.*}} | loc: 59:22 +// CHECK: [indexEntityReference]: kind: variable | name: default_param | {{.*}} | loc: 62:19 diff --git a/clang/tools/libclang/IndexTypeSourceInfo.cpp b/clang/tools/libclang/IndexTypeSourceInfo.cpp index 34acffcf7ad..b62d52156bc 100644 --- a/clang/tools/libclang/IndexTypeSourceInfo.cpp +++ b/clang/tools/libclang/IndexTypeSourceInfo.cpp @@ -85,6 +85,11 @@ public: } return true; } + + bool TraverseStmt(Stmt *S) { + IndexCtx.indexBody(S, Parent, ParentDC); + return true; + } }; } // anonymous namespace |