diff --git a/hipify-clang/src/HipifyAction.cpp b/hipify-clang/src/HipifyAction.cpp index baa66e064c..5ea83c8376 100644 --- a/hipify-clang/src/HipifyAction.cpp +++ b/hipify-clang/src/HipifyAction.cpp @@ -352,7 +352,7 @@ bool HipifyAction::cudaSharedIncompleteArrayVar(const clang::ast_matchers::Match } if (!typeName.empty()) { - clang::SourceLocation slStart = llcompat::getBeginLoc(sharedVar->getTypeSourceInfo()->getTypeLoc()); + clang::SourceLocation slStart = sharedVar->getOuterLocStart(); clang::SourceLocation slEnd = llcompat::getEndLoc(sharedVar->getTypeSourceInfo()->getTypeLoc()); clang::SourceManager* SM = Result.SourceManager; size_t repLength = SM->getCharacterData(slEnd) - SM->getCharacterData(slStart) + 1; diff --git a/tests/hipify-clang/unit_tests/samples/dynamic_shared_memory.cu b/tests/hipify-clang/unit_tests/samples/dynamic_shared_memory.cu index 9e00a9b8e3..7bdd6cafbe 100644 --- a/tests/hipify-clang/unit_tests/samples/dynamic_shared_memory.cu +++ b/tests/hipify-clang/unit_tests/samples/dynamic_shared_memory.cu @@ -9,6 +9,7 @@ __global__ void dynamicReverse(int *d, int n) { // Dynamic shared memory + // CHECK-NOT: extern __shared__ // CHECK: HIP_DYNAMIC_SHARED(int, s); extern __shared__ int s[]; int t = threadIdx.x; diff --git a/tests/hipify-clang/unit_tests/samples/static_shared_memory.cu b/tests/hipify-clang/unit_tests/samples/static_shared_memory.cu index f53932bf74..e8108ead3b 100644 --- a/tests/hipify-clang/unit_tests/samples/static_shared_memory.cu +++ b/tests/hipify-clang/unit_tests/samples/static_shared_memory.cu @@ -8,6 +8,8 @@ __global__ void staticReverse(int *d, int n) { + // CHECK-NOT: HIP_DYNAMIC_SHARED(int, s); + // CHECK: __shared__ int s[64]; __shared__ int s[64]; int t = threadIdx.x; int tr = n-t-1;