Improve SemIR naming of import_refs (#4824)

Changes the name of SemIR `import_ref`s to use the format
`<package>.<entity>`.

<table>
<tr><th>Before</th><th>After</th></tr>
<tr>
<td><code>%import_ref.05a: type</code></td>
<td><code>%Main.D: type</code></td>
</tr>
<tr>
<td><code>%import_ref.8f2: &lt;witness&gt;</code></td>
<td><code>%Main.import_ref.8f2: &lt;witness&gt;</code></td>
</tr>
</table>

* [Discord discussion in
#toolchain](https://discord.com/channels/655572317891461132/655578254970716160/1330253540999827577)
* Closes #4769
This commit is contained in:
Calvin
2025-01-22 07:22:07 +00:00
committed by GitHub
parent fe92e3f552
commit 3f4de65ad8
418 changed files with 4164 additions and 4139 deletions
+28 -28
View File
@@ -131,7 +131,7 @@ fn D() {}
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: .Int = %import_ref.485
// CHECK:STDOUT: .Int = %Core.Int
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
// CHECK:STDOUT: }
@@ -248,7 +248,7 @@ fn D() {}
// CHECK:STDOUT: %B: %B.type = struct_value () [template]
// CHECK:STDOUT: %int_1.5b8: Core.IntLiteral = int_value 1 [template]
// CHECK:STDOUT: %Convert.type.1b6: type = fn_type @Convert.1, @ImplicitAs(%i32) [template]
// CHECK:STDOUT: %impl_witness.d39: <witness> = impl_witness (imports.%import_ref.a5b), @impl.1(%int_32) [template]
// CHECK:STDOUT: %impl_witness.d39: <witness> = impl_witness (imports.%Core.import_ref.a5b), @impl.1(%int_32) [template]
// CHECK:STDOUT: %Convert.type.035: type = fn_type @Convert.2, @impl.1(%int_32) [template]
// CHECK:STDOUT: %Convert.956: %Convert.type.035 = struct_value () [template]
// CHECK:STDOUT: %Convert.bound: <bound method> = bound_method %int_1.5b8, %Convert.956 [template]
@@ -263,13 +263,13 @@ fn D() {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref.a6e: %A.type = import_ref Main//fns, A, loaded [template = constants.%A]
// CHECK:STDOUT: %import_ref.54c: %B.type = import_ref Main//fns, B, loaded [template = constants.%B]
// CHECK:STDOUT: %import_ref.94c0: %C.type = import_ref Main//fns, C, loaded [template = constants.%C]
// CHECK:STDOUT: %import_ref.caf = import_ref Main//fns, D, unloaded
// CHECK:STDOUT: %Main.A: %A.type = import_ref Main//fns, A, loaded [template = constants.%A]
// CHECK:STDOUT: %Main.B: %B.type = import_ref Main//fns, B, loaded [template = constants.%B]
// CHECK:STDOUT: %Main.C: %C.type = import_ref Main//fns, C, loaded [template = constants.%C]
// CHECK:STDOUT: %Main.D = import_ref Main//fns, D, unloaded
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: .Int = %import_ref.485
// CHECK:STDOUT: .ImplicitAs = %import_ref.d44
// CHECK:STDOUT: .Int = %Core.Int
// CHECK:STDOUT: .ImplicitAs = %Core.ImplicitAs
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
// CHECK:STDOUT: }
@@ -277,10 +277,10 @@ fn D() {}
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .A = imports.%import_ref.a6e
// CHECK:STDOUT: .B = imports.%import_ref.54c
// CHECK:STDOUT: .C = imports.%import_ref.94c0
// CHECK:STDOUT: .D = imports.%import_ref.caf
// CHECK:STDOUT: .A = imports.%Main.A
// CHECK:STDOUT: .B = imports.%Main.B
// CHECK:STDOUT: .C = imports.%Main.C
// CHECK:STDOUT: .D = imports.%Main.D
// CHECK:STDOUT: .Core = imports.%Core
// CHECK:STDOUT: .a = %a
// CHECK:STDOUT: .b = %b
@@ -329,10 +329,10 @@ fn D() {}
// CHECK:STDOUT:
// CHECK:STDOUT: fn @__global_init() {
// CHECK:STDOUT: !entry:
// CHECK:STDOUT: %A.ref: %A.type = name_ref A, imports.%import_ref.a6e [template = constants.%A]
// CHECK:STDOUT: %A.ref: %A.type = name_ref A, imports.%Main.A [template = constants.%A]
// CHECK:STDOUT: %A.call: init %empty_tuple.type = call %A.ref()
// CHECK:STDOUT: assign file.%a.var, %A.call
// CHECK:STDOUT: %B.ref: %B.type = name_ref B, imports.%import_ref.54c [template = constants.%B]
// CHECK:STDOUT: %B.ref: %B.type = name_ref B, imports.%Main.B [template = constants.%B]
// CHECK:STDOUT: %int_1.loc7: Core.IntLiteral = int_value 1 [template = constants.%int_1.5b8]
// CHECK:STDOUT: %impl.elem0.loc7: %Convert.type.1b6 = impl_witness_access constants.%impl_witness.d39, element0 [template = constants.%Convert.956]
// CHECK:STDOUT: %Convert.bound.loc7: <bound method> = bound_method %int_1.loc7, %impl.elem0.loc7 [template = constants.%Convert.bound]
@@ -342,7 +342,7 @@ fn D() {}
// CHECK:STDOUT: %.loc7_16.2: %i32 = converted %int_1.loc7, %.loc7_16.1 [template = constants.%int_1.5d2]
// CHECK:STDOUT: %B.call: init %i32 = call %B.ref(%.loc7_16.2)
// CHECK:STDOUT: assign file.%b.var, %B.call
// CHECK:STDOUT: %C.ref: %C.type = name_ref C, imports.%import_ref.94c0 [template = constants.%C]
// CHECK:STDOUT: %C.ref: %C.type = name_ref C, imports.%Main.C [template = constants.%C]
// CHECK:STDOUT: %int_1.loc8: Core.IntLiteral = int_value 1 [template = constants.%int_1.5b8]
// CHECK:STDOUT: %.loc8_25.1: %tuple.type.985 = tuple_literal (%int_1.loc8)
// CHECK:STDOUT: %impl.elem0.loc8: %Convert.type.1b6 = impl_witness_access constants.%impl_witness.d39, element0 [template = constants.%Convert.956]
@@ -372,11 +372,11 @@ fn D() {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref.a6e: %A.type = import_ref Main//fns, A, loaded [template = constants.%A]
// CHECK:STDOUT: %import_ref.b05 = import_ref Main//fns, C, unloaded
// CHECK:STDOUT: %import_ref.caf = import_ref Main//fns, D, unloaded
// CHECK:STDOUT: %Main.A: %A.type = import_ref Main//fns, A, loaded [template = constants.%A]
// CHECK:STDOUT: %Main.C = import_ref Main//fns, C, unloaded
// CHECK:STDOUT: %Main.D = import_ref Main//fns, D, unloaded
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: .Int = %import_ref.485
// CHECK:STDOUT: .Int = %Core.Int
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
// CHECK:STDOUT: }
@@ -384,10 +384,10 @@ fn D() {}
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .A = imports.%import_ref.a6e
// CHECK:STDOUT: .A = imports.%Main.A
// CHECK:STDOUT: .B = %B.decl
// CHECK:STDOUT: .C = imports.%import_ref.b05
// CHECK:STDOUT: .D = imports.%import_ref.caf
// CHECK:STDOUT: .C = imports.%Main.C
// CHECK:STDOUT: .D = imports.%Main.D
// CHECK:STDOUT: .Core = imports.%Core
// CHECK:STDOUT: }
// CHECK:STDOUT: %Core.import = import Core
@@ -454,9 +454,9 @@ fn D() {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref.0c3 = import_ref Main//fns, A, unloaded
// CHECK:STDOUT: %import_ref.8cc = import_ref Main//fns, B, unloaded
// CHECK:STDOUT: %import_ref.b05 = import_ref Main//fns, C, unloaded
// CHECK:STDOUT: %Main.A = import_ref Main//fns, A, unloaded
// CHECK:STDOUT: %Main.B = import_ref Main//fns, B, unloaded
// CHECK:STDOUT: %Main.C = import_ref Main//fns, C, unloaded
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
@@ -465,9 +465,9 @@ fn D() {}
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .A = imports.%import_ref.0c3
// CHECK:STDOUT: .B = imports.%import_ref.8cc
// CHECK:STDOUT: .C = imports.%import_ref.b05
// CHECK:STDOUT: .A = imports.%Main.A
// CHECK:STDOUT: .B = imports.%Main.B
// CHECK:STDOUT: .C = imports.%Main.C
// CHECK:STDOUT: .D = %D.decl.loc14
// CHECK:STDOUT: .Core = imports.%Core
// CHECK:STDOUT: }
@@ -227,7 +227,7 @@ private fn Redecl() {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref: %Def.type = import_ref Test//def, Def, loaded [template = constants.%Def]
// CHECK:STDOUT: %Test.Def: %Def.type = import_ref Test//def, Def, loaded [template = constants.%Def]
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
@@ -236,7 +236,7 @@ private fn Redecl() {}
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .Def [private] = imports.%import_ref
// CHECK:STDOUT: .Def [private] = imports.%Test.Def
// CHECK:STDOUT: .Core = imports.%Core
// CHECK:STDOUT: .f = %f
// CHECK:STDOUT: }
@@ -259,7 +259,7 @@ private fn Redecl() {}
// CHECK:STDOUT:
// CHECK:STDOUT: fn @__global_init() {
// CHECK:STDOUT: !entry:
// CHECK:STDOUT: %Def.ref: %Def.type = name_ref Def, imports.%import_ref [template = constants.%Def]
// CHECK:STDOUT: %Def.ref: %Def.type = name_ref Def, imports.%Test.Def [template = constants.%Def]
// CHECK:STDOUT: %Def.call: init %empty_tuple.type = call %Def.ref()
// CHECK:STDOUT: assign file.%f.var, %Def.call
// CHECK:STDOUT: return
@@ -357,7 +357,7 @@ private fn Redecl() {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref: %ForwardWithDef.type = import_ref Test//forward_with_def, ForwardWithDef, loaded [template = constants.%ForwardWithDef]
// CHECK:STDOUT: %Test.ForwardWithDef: %ForwardWithDef.type = import_ref Test//forward_with_def, ForwardWithDef, loaded [template = constants.%ForwardWithDef]
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
@@ -366,7 +366,7 @@ private fn Redecl() {}
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .ForwardWithDef [private] = imports.%import_ref
// CHECK:STDOUT: .ForwardWithDef [private] = imports.%Test.ForwardWithDef
// CHECK:STDOUT: .Core = imports.%Core
// CHECK:STDOUT: .f = %f
// CHECK:STDOUT: }
@@ -389,7 +389,7 @@ private fn Redecl() {}
// CHECK:STDOUT:
// CHECK:STDOUT: fn @__global_init() {
// CHECK:STDOUT: !entry:
// CHECK:STDOUT: %ForwardWithDef.ref: %ForwardWithDef.type = name_ref ForwardWithDef, imports.%import_ref [template = constants.%ForwardWithDef]
// CHECK:STDOUT: %ForwardWithDef.ref: %ForwardWithDef.type = name_ref ForwardWithDef, imports.%Test.ForwardWithDef [template = constants.%ForwardWithDef]
// CHECK:STDOUT: %ForwardWithDef.call: init %empty_tuple.type = call %ForwardWithDef.ref()
// CHECK:STDOUT: assign file.%f.var, %ForwardWithDef.call
// CHECK:STDOUT: return
@@ -487,7 +487,7 @@ private fn Redecl() {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref: %Forward.type = import_ref Test//forward, Forward, loaded [template = constants.%Forward]
// CHECK:STDOUT: %Test.Forward: %Forward.type = import_ref Test//forward, Forward, loaded [template = constants.%Forward]
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
@@ -523,7 +523,7 @@ private fn Redecl() {}
// CHECK:STDOUT:
// CHECK:STDOUT: fn @__global_init() {
// CHECK:STDOUT: !entry:
// CHECK:STDOUT: %Forward.ref: %Forward.type = name_ref Forward, imports.%import_ref [template = constants.%Forward]
// CHECK:STDOUT: %Forward.ref: %Forward.type = name_ref Forward, imports.%Test.Forward [template = constants.%Forward]
// CHECK:STDOUT: %Forward.call: init %empty_tuple.type = call %Forward.ref()
// CHECK:STDOUT: assign file.%f.var, %Forward.call
// CHECK:STDOUT: return
@@ -274,12 +274,12 @@ extern fn F() {}
// CHECK:STDOUT: --- indirect_two_file.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref = import_ref Main//indirect_two_file_extern, F, unloaded
// CHECK:STDOUT: %Main.F = import_ref Main//indirect_two_file_extern, F, unloaded
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .F = imports.%import_ref
// CHECK:STDOUT: .F = imports.%Main.F
// CHECK:STDOUT: }
// CHECK:STDOUT: %default.import = import <invalid>
// CHECK:STDOUT: }
@@ -310,12 +310,12 @@ fn B() {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref: %A.type = import_ref Main//redef_after_def, A, loaded [template = constants.%A]
// CHECK:STDOUT: %Main.A: %A.type = import_ref Main//redef_after_def, A, loaded [template = constants.%A]
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .A = imports.%import_ref
// CHECK:STDOUT: .A = imports.%Main.A
// CHECK:STDOUT: }
// CHECK:STDOUT: %default.import.loc2_6.1 = import <invalid>
// CHECK:STDOUT: %default.import.loc2_6.2 = import <invalid>
@@ -358,14 +358,14 @@ fn B() {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref.0c3 = import_ref Main//def_alias, A, unloaded
// CHECK:STDOUT: %import_ref.9d1: %A.type = import_ref Main//def_alias, B, loaded [template = constants.%A]
// CHECK:STDOUT: %Main.A = import_ref Main//def_alias, A, unloaded
// CHECK:STDOUT: %Main.B: %A.type = import_ref Main//def_alias, B, loaded [template = constants.%A]
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .A = imports.%import_ref.0c3
// CHECK:STDOUT: .B = imports.%import_ref.9d1
// CHECK:STDOUT: .A = imports.%Main.A
// CHECK:STDOUT: .B = imports.%Main.B
// CHECK:STDOUT: }
// CHECK:STDOUT: %default.import.loc2_6.1 = import <invalid>
// CHECK:STDOUT: %default.import.loc2_6.2 = import <invalid>
@@ -453,16 +453,16 @@ fn Foo(a: const (const C)) {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref.3b0: type = import_ref Main//two_file, C, loaded [template = constants.%C]
// CHECK:STDOUT: %import_ref.05a: type = import_ref Main//two_file, D, loaded [template = constants.%C]
// CHECK:STDOUT: %import_ref.8f2: <witness> = import_ref Main//two_file, loc4_10, loaded [template = constants.%complete_type]
// CHECK:STDOUT: %import_ref.2c4 = import_ref Main//two_file, inst14 [no loc], unloaded
// CHECK:STDOUT: %Main.C: type = import_ref Main//two_file, C, loaded [template = constants.%C]
// CHECK:STDOUT: %Main.D: type = import_ref Main//two_file, D, loaded [template = constants.%C]
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//two_file, loc4_10, loaded [template = constants.%complete_type]
// CHECK:STDOUT: %Main.import_ref.2c4 = import_ref Main//two_file, inst14 [no loc], unloaded
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .C = imports.%import_ref.3b0
// CHECK:STDOUT: .D = imports.%import_ref.05a
// CHECK:STDOUT: .C = imports.%Main.C
// CHECK:STDOUT: .D = imports.%Main.D
// CHECK:STDOUT: .Foo = %Foo.decl
// CHECK:STDOUT: .Bar = %Bar.decl
// CHECK:STDOUT: }
@@ -473,7 +473,7 @@ fn Foo(a: const (const C)) {}
// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt, runtime_param0
// CHECK:STDOUT: } {
// CHECK:STDOUT: %a.param: %C = value_param runtime_param0
// CHECK:STDOUT: %C.ref: type = name_ref C, imports.%import_ref.3b0 [template = constants.%C]
// CHECK:STDOUT: %C.ref: type = name_ref C, imports.%Main.C [template = constants.%C]
// CHECK:STDOUT: %a: %C = bind_name a, %a.param
// CHECK:STDOUT: }
// CHECK:STDOUT: %Bar.decl: %Bar.type = fn_decl @Bar [template = constants.%Bar] {
@@ -481,16 +481,16 @@ fn Foo(a: const (const C)) {}
// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt, runtime_param0
// CHECK:STDOUT: } {
// CHECK:STDOUT: %a.param: %C = value_param runtime_param0
// CHECK:STDOUT: %D.ref: type = name_ref D, imports.%import_ref.05a [template = constants.%C]
// CHECK:STDOUT: %D.ref: type = name_ref D, imports.%Main.D [template = constants.%C]
// CHECK:STDOUT: %a: %C = bind_name a, %a.param
// CHECK:STDOUT: }
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: class @C [from "two_file.carbon"] {
// CHECK:STDOUT: complete_type_witness = imports.%import_ref.8f2
// CHECK:STDOUT: complete_type_witness = imports.%Main.import_ref.8f2
// CHECK:STDOUT:
// CHECK:STDOUT: !members:
// CHECK:STDOUT: .Self = imports.%import_ref.2c4
// CHECK:STDOUT: .Self = imports.%Main.import_ref.2c4
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: fn @Foo(%a.param_patt: %C) [from "two_file.carbon"] {
@@ -790,21 +790,21 @@ fn Foo(a: const (const C)) {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %import_ref.3b0: type = import_ref Main//alias_two_file, C, loaded [template = constants.%C]
// CHECK:STDOUT: %import_ref.8f2: <witness> = import_ref Main//alias_two_file, loc4_10, loaded [template = constants.%complete_type]
// CHECK:STDOUT: %import_ref.2c4 = import_ref Main//alias_two_file, inst14 [no loc], unloaded
// CHECK:STDOUT: %Main.C: type = import_ref Main//alias_two_file, C, loaded [template = constants.%C]
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//alias_two_file, loc4_10, loaded [template = constants.%complete_type]
// CHECK:STDOUT: %Main.import_ref.2c4 = import_ref Main//alias_two_file, inst14 [no loc], unloaded
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: file {
// CHECK:STDOUT: package: <namespace> = namespace [template] {
// CHECK:STDOUT: .C = imports.%import_ref.3b0
// CHECK:STDOUT: .C = imports.%Main.C
// CHECK:STDOUT: .Foo = %Foo.decl
// CHECK:STDOUT: .D = %D
// CHECK:STDOUT: }
// CHECK:STDOUT: %default.import.loc2_6.1 = import <invalid>
// CHECK:STDOUT: %default.import.loc2_6.2 = import <invalid>
// CHECK:STDOUT: %C.ref: type = name_ref C, imports.%import_ref.3b0 [template = constants.%C]
// CHECK:STDOUT: %D: type = bind_alias D, imports.%import_ref.3b0 [template = constants.%C]
// CHECK:STDOUT: %C.ref: type = name_ref C, imports.%Main.C [template = constants.%C]
// CHECK:STDOUT: %D: type = bind_alias D, imports.%Main.C [template = constants.%C]
// CHECK:STDOUT: %Foo.decl: %Foo.type = fn_decl @Foo [template = constants.%Foo] {
// CHECK:STDOUT: %a.patt: %C = binding_pattern a
// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt, runtime_param0
@@ -816,10 +816,10 @@ fn Foo(a: const (const C)) {}
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: class @C [from "alias_two_file.carbon"] {
// CHECK:STDOUT: complete_type_witness = imports.%import_ref.8f2
// CHECK:STDOUT: complete_type_witness = imports.%Main.import_ref.8f2
// CHECK:STDOUT:
// CHECK:STDOUT: !members:
// CHECK:STDOUT: .Self = imports.%import_ref.2c4
// CHECK:STDOUT: .Self = imports.%Main.import_ref.2c4
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: fn @Foo(%a.param_patt: %C) [from "alias_two_file.carbon"] {
@@ -21,7 +21,7 @@ fn Foo(a: i32) {}
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: .Int = %import_ref.485
// CHECK:STDOUT: .Int = %Core.Int
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
// CHECK:STDOUT: }
@@ -21,7 +21,7 @@ fn Foo(a: i32,) {}
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: .Int = %import_ref.485
// CHECK:STDOUT: .Int = %Core.Int
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
// CHECK:STDOUT: }
@@ -21,7 +21,7 @@ fn Foo(a: i32, b: i32) {}
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: .Int = %import_ref.485
// CHECK:STDOUT: .Int = %Core.Int
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
// CHECK:STDOUT: }
@@ -21,7 +21,7 @@ fn Foo(a: i32, b: i32,) {}
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
// CHECK:STDOUT: %Core: <namespace> = namespace file.%Core.import, [template] {
// CHECK:STDOUT: .Int = %import_ref.485
// CHECK:STDOUT: .Int = %Core.Int
// CHECK:STDOUT: import Core//prelude
// CHECK:STDOUT: import Core//prelude/...
// CHECK:STDOUT: }