diff --git a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3DynamicBvh.txt b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3DynamicBvh.txt index b5563057..29c65577 100644 --- a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3DynamicBvh.txt +++ b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3DynamicBvh.txt @@ -2624,14 +2624,13 @@ REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> v LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <102:38 102:41>] REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> int [b3AlignedObjectArray.h <102:34 102:36>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <104:8 104:11>] -SYMBOL_FUNCTION b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator -REFERENCE_CALL void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] +REFERENCE_USAGE void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <105:33 105:36>] SYMBOL_METHOD protected void b3AlignedObjectArray::deallocate() [b3AlignedObjectArray.h <109:3 <109:24 109:33> 119:3>] REFERENCE_TYPE_USAGE void b3AlignedObjectArray::deallocate() -> void [b3AlignedObjectArray.h <109:19 109:22>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <111:7 111:12>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> bool b3AlignedObjectArray::m_ownsMemory [b3AlignedObjectArray.h <113:9 113:20>] -REFERENCE_CALL void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] +REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <115:29 115:34>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <117:5 117:10>] SYMBOL_METHOD public void b3AlignedObjectArray::b3AlignedObjectArray() [b3AlignedObjectArray.h <126:3 <126:3 126:22> 129:3>] diff --git a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3DynamicBvhBroadphase.txt b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3DynamicBvhBroadphase.txt index 3d502d4d..71ada562 100644 --- a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3DynamicBvhBroadphase.txt +++ b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3DynamicBvhBroadphase.txt @@ -2811,14 +2811,13 @@ REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> v LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <102:38 102:41>] REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> int [b3AlignedObjectArray.h <102:34 102:36>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <104:8 104:11>] -SYMBOL_FUNCTION b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator -REFERENCE_CALL void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] +REFERENCE_USAGE void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <105:33 105:36>] SYMBOL_METHOD protected void b3AlignedObjectArray::deallocate() [b3AlignedObjectArray.h <109:3 <109:24 109:33> 119:3>] REFERENCE_TYPE_USAGE void b3AlignedObjectArray::deallocate() -> void [b3AlignedObjectArray.h <109:19 109:22>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <111:7 111:12>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> bool b3AlignedObjectArray::m_ownsMemory [b3AlignedObjectArray.h <113:9 113:20>] -REFERENCE_CALL void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] +REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <115:29 115:34>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <117:5 117:10>] SYMBOL_METHOD public void b3AlignedObjectArray::b3AlignedObjectArray() [b3AlignedObjectArray.h <126:3 <126:3 126:22> 129:3>] diff --git a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3OverlappingPairCache.txt b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3OverlappingPairCache.txt index 85ba9023..ec9aa20b 100644 --- a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3OverlappingPairCache.txt +++ b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_BroadPhaseCollision_b3OverlappingPairCache.txt @@ -2255,14 +2255,13 @@ REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> v LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <102:38 102:41>] REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> int [b3AlignedObjectArray.h <102:34 102:36>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <104:8 104:11>] -SYMBOL_FUNCTION b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator -REFERENCE_CALL void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] +REFERENCE_USAGE void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <105:33 105:36>] SYMBOL_METHOD protected void b3AlignedObjectArray::deallocate() [b3AlignedObjectArray.h <109:3 <109:24 109:33> 119:3>] REFERENCE_TYPE_USAGE void b3AlignedObjectArray::deallocate() -> void [b3AlignedObjectArray.h <109:19 109:22>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <111:7 111:12>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> bool b3AlignedObjectArray::m_ownsMemory [b3AlignedObjectArray.h <113:9 113:20>] -REFERENCE_CALL void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] +REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <115:29 115:34>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <117:5 117:10>] SYMBOL_METHOD public void b3AlignedObjectArray::b3AlignedObjectArray() [b3AlignedObjectArray.h <126:3 <126:3 126:22> 129:3>] diff --git a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_NarrowPhaseCollision_b3ConvexUtility.txt b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_NarrowPhaseCollision_b3ConvexUtility.txt index 43e3454b..fd0bb0ae 100644 --- a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_NarrowPhaseCollision_b3ConvexUtility.txt +++ b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_NarrowPhaseCollision_b3ConvexUtility.txt @@ -2416,14 +2416,13 @@ REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> v LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <102:38 102:41>] REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> int [b3AlignedObjectArray.h <102:34 102:36>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <104:8 104:11>] -SYMBOL_FUNCTION b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator -REFERENCE_CALL void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] +REFERENCE_USAGE void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <105:33 105:36>] SYMBOL_METHOD protected void b3AlignedObjectArray::deallocate() [b3AlignedObjectArray.h <109:3 <109:24 109:33> 119:3>] REFERENCE_TYPE_USAGE void b3AlignedObjectArray::deallocate() -> void [b3AlignedObjectArray.h <109:19 109:22>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <111:7 111:12>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> bool b3AlignedObjectArray::m_ownsMemory [b3AlignedObjectArray.h <113:9 113:20>] -REFERENCE_CALL void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] +REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <115:29 115:34>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <117:5 117:10>] SYMBOL_METHOD public void b3AlignedObjectArray::b3AlignedObjectArray() [b3AlignedObjectArray.h <126:3 <126:3 126:22> 129:3>] @@ -10494,8 +10493,7 @@ REFERENCE_TYPE_USAGE void b3HashMap::growTables(const b3 REFERENCE_TYPE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> b3HashMap::Key [b3HashMap.h <234:24 234:26>] LOCAL_SYMBOL: b3HashMap.h<236:7> [b3HashMap.h <236:7 236:17>] REFERENCE_TYPE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> int [b3HashMap.h <236:3 236:5>] -SYMBOL_FUNCTION b3AlignedObjectArray::Value> b3HashMap::m_valueArray -REFERENCE_CALL void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <236:21 236:32>] +REFERENCE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <236:21 236:32>] REFERENCE_CALL void b3HashMap::growTables(const b3HashMap::Key &) -> int b3AlignedObjectArray::size() const [b3HashMap.h <238:19 238:22>] REFERENCE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray b3HashMap::m_hashTable [b3HashMap.h <238:7 238:17>] LOCAL_SYMBOL: b3HashMap.h<236:7> [b3HashMap.h <238:28 238:38>] @@ -10531,10 +10529,9 @@ LOCAL_SYMBOL: b3HashMap.h<241:8> [b3HashMap.h <257:14 257:29>] LOCAL_SYMBOL: b3HashMap.h<246:8> [b3HashMap.h <257:31 257:31>] LOCAL_SYMBOL: b3HashMap.h<262:9> [b3HashMap.h <262:9 262:17>] REFERENCE_TYPE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> int [b3HashMap.h <262:5 262:7>] -SYMBOL_FUNCTION b3AlignedObjectArray::Key> b3HashMap::m_keyArray -REFERENCE_CALL void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <262:21 262:30>] +REFERENCE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <262:21 262:30>] LOCAL_SYMBOL: b3HashMap.h<246:8> [b3HashMap.h <262:32 262:32>] -REFERENCE_CALL void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <262:48 262:59>] +REFERENCE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <262:48 262:59>] REFERENCE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray b3HashMap::m_next [b3HashMap.h <263:5 263:10>] LOCAL_SYMBOL: b3HashMap.h<246:8> [b3HashMap.h <263:12 263:12>] REFERENCE_USAGE void b3HashMap::growTables(const b3HashMap::Key &) -> b3AlignedObjectArray b3HashMap::m_hashTable [b3HashMap.h <263:17 263:27>] @@ -10551,7 +10548,7 @@ REFERENCE_TYPE_USAGE void b3HashMap::insert(const b3Hash LOCAL_SYMBOL: b3HashMap.h<274:7> [b3HashMap.h <274:7 274:10>] REFERENCE_TYPE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> int [b3HashMap.h <274:3 274:5>] LOCAL_SYMBOL: b3HashMap.h<273:25> [b3HashMap.h <274:14 274:16>] -REFERENCE_CALL void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <274:31 274:42>] +REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <274:31 274:42>] LOCAL_SYMBOL: b3HashMap.h<277:7> [b3HashMap.h <277:7 277:11>] REFERENCE_TYPE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> int [b3HashMap.h <277:3 277:5>] SYMBOL_FUNCTION int b3HashMap::findIndex(const b3HashMap::Key &) const @@ -10564,17 +10561,17 @@ LOCAL_SYMBOL: b3HashMap.h<277:7> [b3HashMap.h <280:17 280:21>] LOCAL_SYMBOL: b3HashMap.h<273:43> [b3HashMap.h <280:24 280:28>] LOCAL_SYMBOL: b3HashMap.h<284:7> [b3HashMap.h <284:7 284:11>] REFERENCE_TYPE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> int [b3HashMap.h <284:3 284:5>] -REFERENCE_CALL void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <284:15 284:26>] +REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <284:15 284:26>] LOCAL_SYMBOL: b3HashMap.h<285:7> [b3HashMap.h <285:7 285:17>] REFERENCE_TYPE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> int [b3HashMap.h <285:3 285:5>] -REFERENCE_CALL void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <285:21 285:32>] -REFERENCE_CALL void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <286:3 286:14>] +REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <285:21 285:32>] +REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <286:3 286:14>] LOCAL_SYMBOL: b3HashMap.h<273:43> [b3HashMap.h <286:26 286:30>] -REFERENCE_CALL void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <287:3 287:12>] +REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <287:3 287:12>] LOCAL_SYMBOL: b3HashMap.h<273:25> [b3HashMap.h <287:24 287:26>] LOCAL_SYMBOL: b3HashMap.h<289:7> [b3HashMap.h <289:7 289:17>] REFERENCE_TYPE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> int [b3HashMap.h <289:3 289:5>] -REFERENCE_CALL void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <289:21 289:32>] +REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <289:21 289:32>] LOCAL_SYMBOL: b3HashMap.h<285:7> [b3HashMap.h <290:7 290:17>] LOCAL_SYMBOL: b3HashMap.h<289:7> [b3HashMap.h <290:21 290:31>] SYMBOL_FUNCTION void b3HashMap::growTables(const b3HashMap::Key &) @@ -10582,7 +10579,7 @@ REFERENCE_CALL void b3HashMap::insert(const b3HashMap [b3HashMap.h <292:15 292:17>] LOCAL_SYMBOL: b3HashMap.h<274:7> [b3HashMap.h <294:4 294:7>] LOCAL_SYMBOL: b3HashMap.h<273:25> [b3HashMap.h <294:11 294:13>] -REFERENCE_CALL void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <294:28 294:39>] +REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <294:28 294:39>] REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray b3HashMap::m_next [b3HashMap.h <296:3 296:8>] LOCAL_SYMBOL: b3HashMap.h<284:7> [b3HashMap.h <296:10 296:14>] REFERENCE_USAGE void b3HashMap::insert(const b3HashMap::Key &, const b3HashMap::Value &) -> b3AlignedObjectArray b3HashMap::m_hashTable [b3HashMap.h <296:19 296:29>] @@ -10597,7 +10594,7 @@ REFERENCE_TYPE_USAGE void b3HashMap::remove(const b3Hash LOCAL_SYMBOL: b3HashMap.h<302:7> [b3HashMap.h <302:7 302:10>] REFERENCE_TYPE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> int [b3HashMap.h <302:3 302:5>] LOCAL_SYMBOL: b3HashMap.h<300:25> [b3HashMap.h <302:14 302:16>] -REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <302:31 302:42>] +REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <302:31 302:42>] LOCAL_SYMBOL: b3HashMap.h<304:7> [b3HashMap.h <304:7 304:15>] REFERENCE_TYPE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> int [b3HashMap.h <304:3 304:5>] REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> int b3HashMap::findIndex(const b3HashMap::Key &) const [b3HashMap.h <304:19 304:27>] @@ -10630,16 +10627,16 @@ REFERENCE_USAGE void b3HashMap::remove(const b3HashMap [b3HashMap.h <329:31 329:39>] LOCAL_SYMBOL: b3HashMap.h<336:7> [b3HashMap.h <336:7 336:19>] REFERENCE_TYPE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> int [b3HashMap.h <336:3 336:5>] -REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <336:23 336:34>] +REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <336:23 336:34>] LOCAL_SYMBOL: b3HashMap.h<336:7> [b3HashMap.h <339:7 339:19>] LOCAL_SYMBOL: b3HashMap.h<304:7> [b3HashMap.h <339:24 339:32>] -REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <341:4 341:15>] -REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <342:4 342:13>] +REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <341:4 341:15>] +REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <342:4 342:13>] LOCAL_SYMBOL: b3HashMap.h<347:7> [b3HashMap.h <347:7 347:14>] REFERENCE_TYPE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> int [b3HashMap.h <347:3 347:5>] -REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <347:18 347:27>] +REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <347:18 347:27>] LOCAL_SYMBOL: b3HashMap.h<336:7> [b3HashMap.h <347:29 347:41>] -REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <347:57 347:68>] +REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <347:57 347:68>] LOCAL_SYMBOL: b3HashMap.h<312:7> [b3HashMap.h <349:3 349:7>] REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray b3HashMap::m_hashTable [b3HashMap.h <349:11 349:21>] LOCAL_SYMBOL: b3HashMap.h<347:7> [b3HashMap.h <349:23 349:30>] @@ -10677,11 +10674,11 @@ LOCAL_SYMBOL: b3HashMap.h<347:7> [b3HashMap.h <374:35 374:42>] REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray b3HashMap::m_hashTable [b3HashMap.h <375:3 375:13>] LOCAL_SYMBOL: b3HashMap.h<347:7> [b3HashMap.h <375:15 375:22>] LOCAL_SYMBOL: b3HashMap.h<304:7> [b3HashMap.h <375:27 375:35>] -REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <377:3 377:14>] -REFERENCE_CALL void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <378:3 378:12>] +REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <377:3 377:14>] +REFERENCE_USAGE void b3HashMap::remove(const b3HashMap::Key &) -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <378:3 378:12>] SYMBOL_METHOD public int b3HashMap::size() const [b3HashMap.h <383:2 <383:6 383:9> 386:2>] REFERENCE_TYPE_USAGE int b3HashMap::size() const -> int [b3HashMap.h <383:2 383:4>] -REFERENCE_CALL int b3HashMap::size() const -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <385:10 385:21>] +REFERENCE_USAGE int b3HashMap::size() const -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <385:10 385:21>] SYMBOL_METHOD public const b3HashMap::Value * b3HashMap::getAtIndex(int) const [b3HashMap.h <388:2 <388:15 388:24> 393:2>] REFERENCE_TYPE_USAGE const b3HashMap::Value * b3HashMap::getAtIndex(int) const -> b3HashMap::Value [b3HashMap.h <388:8 388:12>] LOCAL_SYMBOL: b3HashMap.h<388:30> [b3HashMap.h <388:30 388:34>] @@ -10742,7 +10739,7 @@ REFERENCE_TYPE_USAGE int b3HashMap::findIndex(const b3Ha LOCAL_SYMBOL: b3HashMap.h<441:16> [b3HashMap.h <441:16 441:19>] REFERENCE_TYPE_USAGE int b3HashMap::findIndex(const b3HashMap::Key &) const -> unsigned int [b3HashMap.h <441:3 441:10>] LOCAL_SYMBOL: b3HashMap.h<439:27> [b3HashMap.h <441:23 441:25>] -REFERENCE_CALL int b3HashMap::findIndex(const b3HashMap::Key &) const -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <441:40 441:51>] +REFERENCE_USAGE int b3HashMap::findIndex(const b3HashMap::Key &) const -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <441:40 441:51>] LOCAL_SYMBOL: b3HashMap.h<441:16> [b3HashMap.h <443:7 443:10>] REFERENCE_TYPE_USAGE int b3HashMap::findIndex(const b3HashMap::Key &) const -> unsigned int [b3HashMap.h <443:16 443:23>] REFERENCE_CALL int b3HashMap::findIndex(const b3HashMap::Key &) const -> int b3AlignedObjectArray::size() const [b3HashMap.h <443:41 443:44>] @@ -10767,8 +10764,8 @@ REFERENCE_CALL void b3HashMap::clear() -> void b3Aligned REFERENCE_USAGE void b3HashMap::clear() -> b3AlignedObjectArray b3HashMap::m_hashTable [b3HashMap.h <458:3 458:13>] REFERENCE_CALL void b3HashMap::clear() -> void b3AlignedObjectArray::clear() [b3HashMap.h <459:10 459:14>] REFERENCE_USAGE void b3HashMap::clear() -> b3AlignedObjectArray b3HashMap::m_next [b3HashMap.h <459:3 459:8>] -REFERENCE_CALL void b3HashMap::clear() -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <460:3 460:14>] -REFERENCE_CALL void b3HashMap::clear() -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <461:3 461:12>] +REFERENCE_USAGE void b3HashMap::clear() -> b3AlignedObjectArray::Value> b3HashMap::m_valueArray [b3HashMap.h <460:3 460:14>] +REFERENCE_USAGE void b3HashMap::clear() -> b3AlignedObjectArray::Key> b3HashMap::m_keyArray [b3HashMap.h <461:3 461:12>] SYMBOL_TEMPLATE_PARAMETER b3HashMap::Key [b3HashMap.h <223:17 223:19>] SYMBOL_TEMPLATE_PARAMETER b3HashMap::Value [b3HashMap.h <223:28 223:32>] SYMBOL_CLASS b3HashMap [b3HashMap.h <223:1 <224:7 224:15> 464:1>] diff --git a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_NarrowPhaseCollision_b3CpuNarrowPhase.txt b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_NarrowPhaseCollision_b3CpuNarrowPhase.txt index 5fb5d523..0e1ae067 100644 --- a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_NarrowPhaseCollision_b3CpuNarrowPhase.txt +++ b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Collision_NarrowPhaseCollision_b3CpuNarrowPhase.txt @@ -8561,14 +8561,13 @@ REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> v LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <102:38 102:41>] REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> int [b3AlignedObjectArray.h <102:34 102:36>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <104:8 104:11>] -SYMBOL_FUNCTION b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator -REFERENCE_CALL void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] +REFERENCE_USAGE void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <105:33 105:36>] SYMBOL_METHOD protected void b3AlignedObjectArray::deallocate() [b3AlignedObjectArray.h <109:3 <109:24 109:33> 119:3>] REFERENCE_TYPE_USAGE void b3AlignedObjectArray::deallocate() -> void [b3AlignedObjectArray.h <109:19 109:22>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <111:7 111:12>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> bool b3AlignedObjectArray::m_ownsMemory [b3AlignedObjectArray.h <113:9 113:20>] -REFERENCE_CALL void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] +REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <115:29 115:34>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <117:5 117:10>] SYMBOL_METHOD public void b3AlignedObjectArray::b3AlignedObjectArray() [b3AlignedObjectArray.h <126:3 <126:3 126:22> 129:3>] diff --git a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Geometry_b3ConvexHullComputer.txt b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Geometry_b3ConvexHullComputer.txt index d2e5a66f..714d35e1 100644 --- a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Geometry_b3ConvexHullComputer.txt +++ b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Geometry_b3ConvexHullComputer.txt @@ -3660,14 +3660,13 @@ REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> v LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <102:38 102:41>] REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> int [b3AlignedObjectArray.h <102:34 102:36>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <104:8 104:11>] -SYMBOL_FUNCTION b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator -REFERENCE_CALL void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] +REFERENCE_USAGE void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <105:33 105:36>] SYMBOL_METHOD protected void b3AlignedObjectArray::deallocate() [b3AlignedObjectArray.h <109:3 <109:24 109:33> 119:3>] REFERENCE_TYPE_USAGE void b3AlignedObjectArray::deallocate() -> void [b3AlignedObjectArray.h <109:19 109:22>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <111:7 111:12>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> bool b3AlignedObjectArray::m_ownsMemory [b3AlignedObjectArray.h <113:9 113:20>] -REFERENCE_CALL void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] +REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <115:29 115:34>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <117:5 117:10>] SYMBOL_METHOD public void b3AlignedObjectArray::b3AlignedObjectArray() [b3AlignedObjectArray.h <126:3 <126:3 126:22> 129:3>] diff --git a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Geometry_b3GeometryUtil.txt b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Geometry_b3GeometryUtil.txt index 7434dafe..75da290a 100644 --- a/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Geometry_b3GeometryUtil.txt +++ b/bin/test/data/CxxIndexSampleProjectsTestSuite/Bullet3/expected_output/Bullet3Geometry_b3GeometryUtil.txt @@ -3170,14 +3170,13 @@ REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> v LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <102:38 102:41>] REFERENCE_TYPE_USAGE void * b3AlignedObjectArray::allocate(int) -> int [b3AlignedObjectArray.h <102:34 102:36>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <104:8 104:11>] -SYMBOL_FUNCTION b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator -REFERENCE_CALL void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] +REFERENCE_USAGE void * b3AlignedObjectArray::allocate(int) -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <105:12 105:22>] LOCAL_SYMBOL: b3AlignedObjectArray.h<102:38> [b3AlignedObjectArray.h <105:33 105:36>] SYMBOL_METHOD protected void b3AlignedObjectArray::deallocate() [b3AlignedObjectArray.h <109:3 <109:24 109:33> 119:3>] REFERENCE_TYPE_USAGE void b3AlignedObjectArray::deallocate() -> void [b3AlignedObjectArray.h <109:19 109:22>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <111:7 111:12>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> bool b3AlignedObjectArray::m_ownsMemory [b3AlignedObjectArray.h <113:9 113:20>] -REFERENCE_CALL void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] +REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedAllocator::T, 16> b3AlignedObjectArray::m_allocator [b3AlignedObjectArray.h <115:6 115:16>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <115:29 115:34>] REFERENCE_USAGE void b3AlignedObjectArray::deallocate() -> b3AlignedObjectArray::T * b3AlignedObjectArray::m_data [b3AlignedObjectArray.h <117:5 117:10>] SYMBOL_METHOD public void b3AlignedObjectArray::b3AlignedObjectArray() [b3AlignedObjectArray.h <126:3 <126:3 126:22> 129:3>] diff --git a/src/lib_cxx/data/parser/cxx/CxxAstVisitor.cpp b/src/lib_cxx/data/parser/cxx/CxxAstVisitor.cpp index 41f22003..685d2ff0 100644 --- a/src/lib_cxx/data/parser/cxx/CxxAstVisitor.cpp +++ b/src/lib_cxx/data/parser/cxx/CxxAstVisitor.cpp @@ -593,6 +593,7 @@ DEF_VISIT_TYPE_PTR(TemplateTemplateParmDecl) DEF_VISIT_TYPE(TypeLoc) DEF_VISIT_TYPE_PTR(DeclRefExpr) DEF_VISIT_TYPE_PTR(MemberExpr) +DEF_VISIT_TYPE_PTR(CXXDependentScopeMemberExpr) DEF_VISIT_TYPE_PTR(CXXConstructExpr) DEF_VISIT_TYPE_PTR(LambdaExpr) DEF_VISIT_CUSTOM_TYPE_PTR(ConstructorInitializer, CXXCtorInitializer) diff --git a/src/lib_cxx/data/parser/cxx/CxxAstVisitor.h b/src/lib_cxx/data/parser/cxx/CxxAstVisitor.h index 5e1e2493..e4189aa6 100644 --- a/src/lib_cxx/data/parser/cxx/CxxAstVisitor.h +++ b/src/lib_cxx/data/parser/cxx/CxxAstVisitor.h @@ -134,6 +134,7 @@ public: virtual bool VisitDeclRefExpr(clang::DeclRefExpr* s); virtual bool VisitMemberExpr(clang::MemberExpr* s); + virtual bool VisitCXXDependentScopeMemberExpr(clang::CXXDependentScopeMemberExpr* s); virtual bool VisitCXXConstructExpr(clang::CXXConstructExpr* s); virtual bool VisitLambdaExpr(clang::LambdaExpr* s); virtual bool VisitConstructorInitializer(clang::CXXCtorInitializer* init); diff --git a/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponent.h b/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponent.h index a74326f2..449dc140 100644 --- a/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponent.h +++ b/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponent.h @@ -113,6 +113,7 @@ DEF_TRAVERSE_TYPE_PTR(CXXTemporaryObjectExpr) virtual void visitInitListExpr(clang::InitListExpr* s) {} virtual void visitDeclRefExpr(clang::DeclRefExpr* s) {} virtual void visitMemberExpr(clang::MemberExpr* s) {} + virtual void visitCXXDependentScopeMemberExpr(clang::CXXDependentScopeMemberExpr* s) {} virtual void visitCXXConstructExpr(clang::CXXConstructExpr* s) {} virtual void visitLambdaExpr(clang::LambdaExpr* s) {} diff --git a/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponentDeclRefKind.cpp b/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponentDeclRefKind.cpp index 4ead032b..e315ceba 100644 --- a/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponentDeclRefKind.cpp +++ b/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponentDeclRefKind.cpp @@ -164,6 +164,11 @@ void CxxAstVisitorComponentDeclRefKind::visitMemberExpr(clang::MemberExpr* s) m_childRefKind = REFERENCE_USAGE; } +void CxxAstVisitorComponentDeclRefKind::visitCXXDependentScopeMemberExpr(clang::CXXDependentScopeMemberExpr* s) +{ + m_childRefKind = REFERENCE_USAGE; +} + void CxxAstVisitorComponentDeclRefKind::saveAll() { m_oldThisRefKinds.push_back(m_thisRefKind); diff --git a/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponentDeclRefKind.h b/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponentDeclRefKind.h index e3afbc62..8600d602 100644 --- a/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponentDeclRefKind.h +++ b/src/lib_cxx/data/parser/cxx/CxxAstVisitorComponentDeclRefKind.h @@ -63,6 +63,8 @@ public: virtual void visitMemberExpr(clang::MemberExpr* s); + virtual void visitCXXDependentScopeMemberExpr(clang::CXXDependentScopeMemberExpr* s); + private: void saveAll(); void restoreAll(); diff --git a/src/lib_cxx/data/parser/cxx/utilityCxxAstVisitor.cpp b/src/lib_cxx/data/parser/cxx/utilityCxxAstVisitor.cpp index b83c5413..fad0a0af 100644 --- a/src/lib_cxx/data/parser/cxx/utilityCxxAstVisitor.cpp +++ b/src/lib_cxx/data/parser/cxx/utilityCxxAstVisitor.cpp @@ -32,10 +32,18 @@ bool utility::isImplicit(const clang::Decl* d) } else if (const clang::FunctionDecl* fd = clang::dyn_cast_or_null(d)) { - if (fd->isTemplateInstantiation() && fd->getTemplateSpecializationKind() != clang::TSK_ExplicitSpecialization) // or undefined?? + if ( + fd->isTemplateInstantiation() && + fd->getTemplateSpecializationKind() != clang::TSK_ExplicitSpecialization) // or undefined?? { return true; } + else if ( + fd->getMemberSpecializationInfo() && + fd->getMemberSpecializationInfo()->getTemplateSpecializationKind() == clang::TSK_ExplicitSpecialization) + { + return false; + } } return isImplicit(clang::dyn_cast_or_null(d->getDeclContext())); diff --git a/src/test/CxxParserTestSuite.h b/src/test/CxxParserTestSuite.h index 8992ad21..3b202ca8 100644 --- a/src/test/CxxParserTestSuite.h +++ b/src/test/CxxParserTestSuite.h @@ -2156,6 +2156,26 @@ public: )); } + void test_cxx_parser_finds_usage_of_member_in_dependent_scope_member_expression() + { + std::shared_ptr client = parseCode( + "template \n" + "class A\n" + "{\n" + " T m_t;\n" + "\n" + " void foo()\n" + " {\n" + " m_t.run();\n" + " }\n" + "};\n" + ); + + TS_ASSERT(utility::containsElement( + client->usages, "void A::foo() -> A::T A::m_t <8:3 8:5>" + )); + } + void test_cxx_parser_finds_return_type_use_in_function() { std::shared_ptr client = parseCode(