template bool Foo = true; // CHECK: bool Bar = true; // explicit template specialization template <> bool Foo = false; // CHECK: bool Bar = false; // partial template specialization template bool Foo = false; // bool Bar = false; void k() { // ref to the explicit template specialization Foo; // CHECK: Bar; // ref to the primary template. Foo; // CHECK: Bar; } // Test 1. // RUN: clang-rename -offset=34 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s // Test 2. // RUN: clang-rename -offset=128 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s // Test 3. // RUN: clang-rename -offset=248 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s // Test 4. // RUN: clang-rename -offset=357 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s // Test 5. // RUN: clang-rename -offset=431 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s // To find offsets after modifying the file, use: // grep -Ubo 'Foo.*'