Rename and rearrange entities in tests to avoid name reuse (#7656)

Fix a bunch of cases where we use the same external name to mean
multiple different things in the same test. We've historically gotten
away with this, but under `--share-cpp-ast`, it becomes an error, at
least if the entity is either defined in, or used from, C++ code.

Assisted-by: Gemini via Antigravity (original change) and Claude Code
(suggested edits in review)

---------

Co-authored-by: Chandler Carruth <chandlerc@gmail.com>
This commit is contained in:
Richard Smith
2026-08-21 01:36:40 +00:00
committed by GitHub
co-authored by Chandler Carruth
parent 6eb900dff5
commit c588eadb57
53 changed files with 7794 additions and 7705 deletions
@@ -462,23 +462,23 @@ library "[[@TEST_NAME]]";
import Cpp;
class X {}
class XByRef {}
inline Cpp '''c++
template<typename T> void TakeAnything_ExpectConstLRef(T&&) {
static_assert(__is_same(T, const Carbon::X&));
template<typename T> void TakeAnything_ExpectConstLRef_ByRef(T&&) {
static_assert(__is_same(T, const Carbon::XByRef&));
}
''';
fn PassConstRef(ref x: const X) {
// CHECK:STDERR: fail_todo_forwarding_reference_by_ref.carbon:[[@LINE+7]]:36: error: `ref` tag is not an argument to a `ref` parameter [RefTagNoRefParam]
// CHECK:STDERR: Cpp.TakeAnything_ExpectConstLRef(ref x);
// CHECK:STDERR: ^~~~~
// CHECK:STDERR: fail_todo_forwarding_reference_by_ref.carbon:[[@LINE-9]]:59: note: initializing function parameter [InCallToFunctionParam]
// CHECK:STDERR: template<typename T> void TakeAnything_ExpectConstLRef(T&&) {
// CHECK:STDERR: ^
fn PassConstRef(ref x: const XByRef) {
// CHECK:STDERR: fail_todo_forwarding_reference_by_ref.carbon:[[@LINE+7]]:42: error: `ref` tag is not an argument to a `ref` parameter [RefTagNoRefParam]
// CHECK:STDERR: Cpp.TakeAnything_ExpectConstLRef_ByRef(ref x);
// CHECK:STDERR: ^~~~~
// CHECK:STDERR: fail_todo_forwarding_reference_by_ref.carbon:[[@LINE-9]]:65: note: initializing function parameter [InCallToFunctionParam]
// CHECK:STDERR: template<typename T> void TakeAnything_ExpectConstLRef_ByRef(T&&) {
// CHECK:STDERR: ^
// CHECK:STDERR:
Cpp.TakeAnything_ExpectConstLRef(ref x);
Cpp.TakeAnything_ExpectConstLRef_ByRef(ref x);
}