Skip to content

Commit 857215b

Browse files
committed
Rewrite pending specifics to use the work stack
1 parent 844c136 commit 857215b

19 files changed

+1054
-1074
lines changed

toolchain/check/import_ref.cpp

Lines changed: 113 additions & 133 deletions
Large diffs are not rendered by default.

toolchain/check/testdata/array/init_dependent_bound.carbon

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,10 +174,10 @@ fn H() { G(3); }
174174
// CHECK:STDOUT: %tuple.type: type = tuple_type (Core.IntLiteral, Core.IntLiteral, Core.IntLiteral) [concrete]
175175
// CHECK:STDOUT: %tuple: %tuple.type = tuple_value (%int_1, %int_2, %int_3.1ba) [concrete]
176176
// CHECK:STDOUT: %ImplicitAs.type.7a9: type = facet_type <@ImplicitAs, @ImplicitAs(Core.IntLiteral)> [concrete]
177+
// CHECK:STDOUT: %ImplicitAs.Convert.type.71e: type = fn_type @ImplicitAs.Convert, @ImplicitAs(Core.IntLiteral) [concrete]
177178
// CHECK:STDOUT: %From: Core.IntLiteral = symbolic_binding From, 0 [symbolic]
178179
// CHECK:STDOUT: %Int.as.ImplicitAs.impl.Convert.type.2c2: type = fn_type @Int.as.ImplicitAs.impl.Convert, @Int.as.ImplicitAs.impl(%From) [symbolic]
179180
// CHECK:STDOUT: %Int.as.ImplicitAs.impl.Convert.cdf: %Int.as.ImplicitAs.impl.Convert.type.2c2 = struct_value () [symbolic]
180-
// CHECK:STDOUT: %ImplicitAs.Convert.type.71e: type = fn_type @ImplicitAs.Convert, @ImplicitAs(Core.IntLiteral) [concrete]
181181
// CHECK:STDOUT: %int_3.822: %i32 = int_value 3 [concrete]
182182
// CHECK:STDOUT: %ImplicitAs.impl_witness.972: <witness> = impl_witness imports.%ImplicitAs.impl_witness_table.783, @Int.as.ImplicitAs.impl(%int_32) [concrete]
183183
// CHECK:STDOUT: %Int.as.ImplicitAs.impl.Convert.type.592: type = fn_type @Int.as.ImplicitAs.impl.Convert, @Int.as.ImplicitAs.impl(%int_32) [concrete]

toolchain/check/testdata/basics/raw_sem_ir/one_file.carbon

Lines changed: 856 additions & 856 deletions
Large diffs are not rendered by default.

toolchain/check/testdata/class/generic/adapt.carbon

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,8 @@ fn ImportedConvertLocal(a: Adapter(C)) -> i32 {
292292
// CHECK:STDOUT: %Int.generic: %Int.type = struct_value () [concrete]
293293
// CHECK:STDOUT: %N: Core.IntLiteral = symbolic_binding N, 0 [symbolic]
294294
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(%int_32) [concrete]
295+
// CHECK:STDOUT: %i32.builtin: type = int_type signed, %int_32 [concrete]
296+
// CHECK:STDOUT: %complete_type.f8a: <witness> = complete_type_witness %i32.builtin [concrete]
295297
// CHECK:STDOUT: %C.type: type = generic_class_type @C [concrete]
296298
// CHECK:STDOUT: %C.generic: %C.type = struct_value () [concrete]
297299
// CHECK:STDOUT: %T.d9f: type = symbolic_binding T, 0 [symbolic]
@@ -303,8 +305,6 @@ fn ImportedConvertLocal(a: Adapter(C)) -> i32 {
303305
// CHECK:STDOUT: %C.239: type = class_type @C, @C(%i32) [concrete]
304306
// CHECK:STDOUT: %struct_type.x.767: type = struct_type {.x: %i32} [concrete]
305307
// CHECK:STDOUT: %complete_type.c07: <witness> = complete_type_witness %struct_type.x.767 [concrete]
306-
// CHECK:STDOUT: %i32.builtin: type = int_type signed, %int_32 [concrete]
307-
// CHECK:STDOUT: %complete_type.f8a: <witness> = complete_type_witness %i32.builtin [concrete]
308308
// CHECK:STDOUT: %C.elem.ed6: type = unbound_element_type %C.239, %i32 [concrete]
309309
// CHECK:STDOUT: %pattern_type.27e: type = pattern_type %Adapter [concrete]
310310
// CHECK:STDOUT: %pattern_type.501: type = pattern_type %i32 [concrete]
@@ -683,6 +683,8 @@ fn ImportedConvertLocal(a: Adapter(C)) -> i32 {
683683
// CHECK:STDOUT: %Int.type: type = generic_class_type @Int [concrete]
684684
// CHECK:STDOUT: %Int.generic: %Int.type = struct_value () [concrete]
685685
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(%int_32) [concrete]
686+
// CHECK:STDOUT: %i32.builtin: type = int_type signed, %int_32 [concrete]
687+
// CHECK:STDOUT: %complete_type.f8a: <witness> = complete_type_witness %i32.builtin [concrete]
686688
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic]
687689
// CHECK:STDOUT: %struct_type.x.200: type = struct_type {.x: %T} [symbolic]
688690
// CHECK:STDOUT: %complete_type.9d1: <witness> = complete_type_witness %struct_type.x.200 [symbolic]
@@ -692,8 +694,6 @@ fn ImportedConvertLocal(a: Adapter(C)) -> i32 {
692694
// CHECK:STDOUT: %C.239: type = class_type @C, @C(%i32) [concrete]
693695
// CHECK:STDOUT: %struct_type.x.767: type = struct_type {.x: %i32} [concrete]
694696
// CHECK:STDOUT: %complete_type.c07: <witness> = complete_type_witness %struct_type.x.767 [concrete]
695-
// CHECK:STDOUT: %i32.builtin: type = int_type signed, %int_32 [concrete]
696-
// CHECK:STDOUT: %complete_type.f8a: <witness> = complete_type_witness %i32.builtin [concrete]
697697
// CHECK:STDOUT: %C.elem.ed6: type = unbound_element_type %C.239, %i32 [concrete]
698698
// CHECK:STDOUT: %pattern_type.27e: type = pattern_type %Adapter [concrete]
699699
// CHECK:STDOUT: %pattern_type.501: type = pattern_type %i32 [concrete]

toolchain/check/testdata/class/generic/base_is_generic.carbon

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -286,11 +286,11 @@ fn H() {
286286
// CHECK:STDOUT: %Base.elem.e9c: type = unbound_element_type %Base.8f3, %T.d9f [symbolic]
287287
// CHECK:STDOUT: %require_complete.4b7: <witness> = require_complete_type %T.d9f [symbolic]
288288
// CHECK:STDOUT: %Base.7a8: type = class_type @Base, @Base(%Param) [concrete]
289-
// CHECK:STDOUT: %struct_type.base.8bc: type = struct_type {.base: %Base.7a8} [concrete]
290-
// CHECK:STDOUT: %complete_type.b07: <witness> = complete_type_witness %struct_type.base.8bc [concrete]
291-
// CHECK:STDOUT: %Base.elem.d1f: type = unbound_element_type %Base.7a8, %Param [concrete]
292289
// CHECK:STDOUT: %struct_type.x.975: type = struct_type {.x: %Param} [concrete]
293290
// CHECK:STDOUT: %complete_type.db3: <witness> = complete_type_witness %struct_type.x.975 [concrete]
291+
// CHECK:STDOUT: %Base.elem.d1f: type = unbound_element_type %Base.7a8, %Param [concrete]
292+
// CHECK:STDOUT: %struct_type.base.8bc: type = struct_type {.base: %Base.7a8} [concrete]
293+
// CHECK:STDOUT: %complete_type.b07: <witness> = complete_type_witness %struct_type.base.8bc [concrete]
294294
// CHECK:STDOUT: %pattern_type.fb9: type = pattern_type %Derived [concrete]
295295
// CHECK:STDOUT: %pattern_type.501: type = pattern_type %i32 [concrete]
296296
// CHECK:STDOUT: %ImportedDoubleFieldAccess.type: type = fn_type @ImportedDoubleFieldAccess [concrete]
@@ -801,13 +801,13 @@ fn H() {
801801
// CHECK:STDOUT: %X.G.specific_fn.f7a: <specific function> = specific_function %X.G.045884.1, @X.G(%U) [symbolic]
802802
// CHECK:STDOUT: %require_complete.4b7: <witness> = require_complete_type %U [symbolic]
803803
// CHECK:STDOUT: %X.fa229d.2: type = class_type @X, @X(%T) [symbolic]
804+
// CHECK:STDOUT: %X.G.type.89b800.2: type = fn_type @X.G, @X(%T) [symbolic]
805+
// CHECK:STDOUT: %X.G.045884.2: %X.G.type.89b800.2 = struct_value () [symbolic]
804806
// CHECK:STDOUT: %C.3f0: type = class_type @C, @C(%T) [symbolic]
805807
// CHECK:STDOUT: %C.elem.b96: type = unbound_element_type %C.3f0, %X.fa229d.2 [symbolic]
806808
// CHECK:STDOUT: %struct_type.base.b13: type = struct_type {.base: %X.fa229d.2} [symbolic]
807809
// CHECK:STDOUT: %complete_type.b1f: <witness> = complete_type_witness %struct_type.base.b13 [symbolic]
808810
// CHECK:STDOUT: %require_complete.6fb: <witness> = require_complete_type %X.fa229d.2 [symbolic]
809-
// CHECK:STDOUT: %X.G.type.89b800.2: type = fn_type @X.G, @X(%T) [symbolic]
810-
// CHECK:STDOUT: %X.G.045884.2: %X.G.type.89b800.2 = struct_value () [symbolic]
811811
// CHECK:STDOUT: %C.98a: type = class_type @C, @C(%i32) [concrete]
812812
// CHECK:STDOUT: %X.448: type = class_type @X, @X(%i32) [concrete]
813813
// CHECK:STDOUT: %X.G.type.862: type = fn_type @X.G, @X(%i32) [concrete]
@@ -828,10 +828,10 @@ fn H() {
828828
// CHECK:STDOUT: import Core//prelude/...
829829
// CHECK:STDOUT: }
830830
// CHECK:STDOUT: %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
831+
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//extend_generic_symbolic_base, loc4_14, loaded [symbolic = @X.%U (constants.%U)]
831832
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//extend_generic_symbolic_base, loc6_1, loaded [concrete = constants.%complete_type.357]
832833
// CHECK:STDOUT: %Main.import_ref.e14 = import_ref Main//extend_generic_symbolic_base, inst{{[0-9A-F]+}} [no loc], unloaded
833834
// CHECK:STDOUT: %Main.import_ref.e33: @X.%X.G.type (%X.G.type.89b800.1) = import_ref Main//extend_generic_symbolic_base, loc5_15, loaded [symbolic = @X.%X.G (constants.%X.G.045884.1)]
834-
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//extend_generic_symbolic_base, loc4_14, loaded [symbolic = @X.%U (constants.%U)]
835835
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//extend_generic_symbolic_base, loc4_14, loaded [symbolic = @X.%U (constants.%U)]
836836
// CHECK:STDOUT: %Main.import_ref.5d2: <witness> = import_ref Main//extend_generic_symbolic_base, loc10_1, loaded [symbolic = @C.%complete_type (constants.%complete_type.b1f)]
837837
// CHECK:STDOUT: %Main.import_ref.034 = import_ref Main//extend_generic_symbolic_base, inst{{[0-9A-F]+}} [no loc], unloaded
@@ -875,7 +875,7 @@ fn H() {
875875
// CHECK:STDOUT: }
876876
// CHECK:STDOUT: }
877877
// CHECK:STDOUT:
878-
// CHECK:STDOUT: generic class @X(imports.%Main.import_ref.efcd44.1: type) [from "extend_generic_symbolic_base.carbon"] {
878+
// CHECK:STDOUT: generic class @X(imports.%Main.import_ref.efcd44.2: type) [from "extend_generic_symbolic_base.carbon"] {
879879
// CHECK:STDOUT: %U: type = symbolic_binding U, 0 [symbolic = %U (constants.%U)]
880880
// CHECK:STDOUT:
881881
// CHECK:STDOUT: !definition:
@@ -914,7 +914,7 @@ fn H() {
914914
// CHECK:STDOUT: return
915915
// CHECK:STDOUT: }
916916
// CHECK:STDOUT:
917-
// CHECK:STDOUT: generic fn @X.G(imports.%Main.import_ref.efcd44.2: type) [from "extend_generic_symbolic_base.carbon"] {
917+
// CHECK:STDOUT: generic fn @X.G(imports.%Main.import_ref.efcd44.1: type) [from "extend_generic_symbolic_base.carbon"] {
918918
// CHECK:STDOUT: %U: type = symbolic_binding U, 0 [symbolic = %U (constants.%U)]
919919
// CHECK:STDOUT: %pattern_type: type = pattern_type %U [symbolic = %pattern_type (constants.%pattern_type.e68)]
920920
// CHECK:STDOUT:

toolchain/check/testdata/class/generic/field.carbon

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,13 @@ fn H(U:! Core.Copy, c: Class(U)) -> U {
6565
// CHECK:STDOUT: %Int.as.Copy.impl.Op.c95: %Int.as.Copy.impl.Op.type.24b = struct_value () [symbolic]
6666
// CHECK:STDOUT: %T.417: %Copy.type = symbolic_binding T, 0 [symbolic]
6767
// CHECK:STDOUT: %T.binding.as_type: type = symbolic_binding_type T, 0, %T.417 [symbolic]
68-
// CHECK:STDOUT: %pattern_type.322: type = pattern_type %Copy.type [concrete]
6968
// CHECK:STDOUT: %Copy.lookup_impl_witness.c42a3d.1: <witness> = lookup_impl_witness %T.417, @Copy [symbolic]
7069
// CHECK:STDOUT: %.a79665.1: type = fn_type_with_self_type %Copy.Op.type, %T.417 [symbolic]
7170
// CHECK:STDOUT: %impl.elem0.fac0be.1: %.a79665.1 = impl_witness_access %Copy.lookup_impl_witness.c42a3d.1, element0 [symbolic]
7271
// CHECK:STDOUT: %specific_impl_fn.103937.1: <specific function> = specific_impl_function %impl.elem0.fac0be.1, @Copy.Op(%T.417) [symbolic]
73-
// CHECK:STDOUT: %require_complete.d742dc.1: <witness> = require_complete_type %T.binding.as_type [symbolic]
7472
// CHECK:STDOUT: %pattern_type.f14b96.2: type = pattern_type %T.binding.as_type [symbolic]
73+
// CHECK:STDOUT: %require_complete.d742dc.1: <witness> = require_complete_type %T.binding.as_type [symbolic]
74+
// CHECK:STDOUT: %pattern_type.322: type = pattern_type %Copy.type [concrete]
7575
// CHECK:STDOUT: %Copy.impl_witness.fb7: <witness> = impl_witness imports.%Copy.impl_witness_table.b6a, @Int.as.Copy.impl(%int_32) [concrete]
7676
// CHECK:STDOUT: %Int.as.Copy.impl.Op.type.469: type = fn_type @Int.as.Copy.impl.Op, @Int.as.Copy.impl(%int_32) [concrete]
7777
// CHECK:STDOUT: %Int.as.Copy.impl.Op.dfd: %Int.as.Copy.impl.Op.type.469 = struct_value () [concrete]

toolchain/check/testdata/class/generic/import.carbon

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -322,11 +322,11 @@ class Class(U:! type) {
322322
// CHECK:STDOUT: %Main.import_ref.39e: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.60d) = import_ref Main//foo, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.846)]
323323
// CHECK:STDOUT: %ImplicitAs.impl_witness_table.99d = impl_witness_table (%Main.import_ref.39e), @Core.IntLiteral.as.ImplicitAs.impl [concrete]
324324
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//foo, loc4_13, loaded [symbolic = @Class.%T.1 (constants.%T)]
325+
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
325326
// CHECK:STDOUT: %Main.import_ref.eb1: <witness> = import_ref Main//foo, loc9_1, loaded [concrete = constants.%complete_type.a68]
326327
// CHECK:STDOUT: %Main.import_ref.bcf = import_ref Main//foo, inst{{[0-9A-F]+}} [no loc], unloaded
327328
// CHECK:STDOUT: %Main.import_ref.1b0 = import_ref Main//foo, loc7_8, unloaded
328329
// CHECK:STDOUT: %Main.import_ref.758 = import_ref Main//foo, loc8_17, unloaded
329-
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
330330
// CHECK:STDOUT: %Main.import_ref.efcd44.3: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
331331
// CHECK:STDOUT: %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
332332
// CHECK:STDOUT: %Core.ImplicitAs: %ImplicitAs.type.595 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
@@ -384,7 +384,7 @@ class Class(U:! type) {
384384
// CHECK:STDOUT: }
385385
// CHECK:STDOUT: }
386386
// CHECK:STDOUT:
387-
// CHECK:STDOUT: generic class @CompleteClass(imports.%Main.import_ref.efcd44.2: type) [from "foo.carbon"] {
387+
// CHECK:STDOUT: generic class @CompleteClass(imports.%Main.import_ref.efcd44.3: type) [from "foo.carbon"] {
388388
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
389389
// CHECK:STDOUT:
390390
// CHECK:STDOUT: !definition:
@@ -403,7 +403,7 @@ class Class(U:! type) {
403403
// CHECK:STDOUT: }
404404
// CHECK:STDOUT: }
405405
// CHECK:STDOUT:
406-
// CHECK:STDOUT: generic fn @CompleteClass.F(imports.%Main.import_ref.efcd44.3: type) [from "foo.carbon"] {
406+
// CHECK:STDOUT: generic fn @CompleteClass.F(imports.%Main.import_ref.efcd44.2: type) [from "foo.carbon"] {
407407
// CHECK:STDOUT: !definition:
408408
// CHECK:STDOUT:
409409
// CHECK:STDOUT: fn;
@@ -513,11 +513,11 @@ class Class(U:! type) {
513513
// CHECK:STDOUT: import Core//prelude/...
514514
// CHECK:STDOUT: }
515515
// CHECK:STDOUT: %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
516+
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T.d9f)]
516517
// CHECK:STDOUT: %Main.import_ref.eb1: <witness> = import_ref Main//foo, loc9_1, loaded [concrete = constants.%complete_type.54b]
517518
// CHECK:STDOUT: %Main.import_ref.bcf = import_ref Main//foo, inst{{[0-9A-F]+}} [no loc], unloaded
518519
// CHECK:STDOUT: %Main.import_ref.c3a: @CompleteClass.%CompleteClass.elem (%CompleteClass.elem.36b) = import_ref Main//foo, loc7_8, loaded [concrete = %.a07]
519520
// CHECK:STDOUT: %Main.import_ref.191: @CompleteClass.%CompleteClass.F.type (%CompleteClass.F.type.0fa) = import_ref Main//foo, loc8_17, loaded [symbolic = @CompleteClass.%CompleteClass.F (constants.%CompleteClass.F.6e9)]
520-
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T.d9f)]
521521
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T.d9f)]
522522
// CHECK:STDOUT: %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
523523
// CHECK:STDOUT: %.a07: @CompleteClass.%CompleteClass.elem (%CompleteClass.elem.36b) = field_decl n, element0 [concrete]
@@ -557,7 +557,7 @@ class Class(U:! type) {
557557
// CHECK:STDOUT: }
558558
// CHECK:STDOUT: }
559559
// CHECK:STDOUT:
560-
// CHECK:STDOUT: generic class @CompleteClass(imports.%Main.import_ref.efcd44.1: type) [from "foo.carbon"] {
560+
// CHECK:STDOUT: generic class @CompleteClass(imports.%Main.import_ref.efcd44.2: type) [from "foo.carbon"] {
561561
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T.d9f)]
562562
// CHECK:STDOUT:
563563
// CHECK:STDOUT: !definition:
@@ -606,7 +606,7 @@ class Class(U:! type) {
606606
// CHECK:STDOUT: return %CompleteClass.F.call to %return
607607
// CHECK:STDOUT: }
608608
// CHECK:STDOUT:
609-
// CHECK:STDOUT: generic fn @CompleteClass.F(imports.%Main.import_ref.efcd44.2: type) [from "foo.carbon"] {
609+
// CHECK:STDOUT: generic fn @CompleteClass.F(imports.%Main.import_ref.efcd44.1: type) [from "foo.carbon"] {
610610
// CHECK:STDOUT: !definition:
611611
// CHECK:STDOUT:
612612
// CHECK:STDOUT: fn;
@@ -726,11 +726,11 @@ class Class(U:! type) {
726726
// CHECK:STDOUT: import Core//prelude
727727
// CHECK:STDOUT: import Core//prelude/...
728728
// CHECK:STDOUT: }
729+
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
729730
// CHECK:STDOUT: %Main.import_ref.eb1: <witness> = import_ref Main//foo, loc9_1, loaded [concrete = constants.%complete_type.a68]
730731
// CHECK:STDOUT: %Main.import_ref.bcf = import_ref Main//foo, inst{{[0-9A-F]+}} [no loc], unloaded
731732
// CHECK:STDOUT: %Main.import_ref.1b0 = import_ref Main//foo, loc7_8, unloaded
732733
// CHECK:STDOUT: %Main.import_ref.758 = import_ref Main//foo, loc8_17, unloaded
733-
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
734734
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
735735
// CHECK:STDOUT: %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
736736
// CHECK:STDOUT: %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
@@ -750,7 +750,7 @@ class Class(U:! type) {
750750
// CHECK:STDOUT: %Use.decl: %Use.type = fn_decl @Use [concrete = constants.%Use] {} {}
751751
// CHECK:STDOUT: }
752752
// CHECK:STDOUT:
753-
// CHECK:STDOUT: generic class @CompleteClass(imports.%Main.import_ref.efcd44.1: type) [from "foo.carbon"] {
753+
// CHECK:STDOUT: generic class @CompleteClass(imports.%Main.import_ref.efcd44.2: type) [from "foo.carbon"] {
754754
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
755755
// CHECK:STDOUT:
756756
// CHECK:STDOUT: !definition:
@@ -796,7 +796,7 @@ class Class(U:! type) {
796796
// CHECK:STDOUT: return
797797
// CHECK:STDOUT: }
798798
// CHECK:STDOUT:
799-
// CHECK:STDOUT: generic fn @CompleteClass.F(imports.%Main.import_ref.efcd44.2: type) [from "foo.carbon"] {
799+
// CHECK:STDOUT: generic fn @CompleteClass.F(imports.%Main.import_ref.efcd44.1: type) [from "foo.carbon"] {
800800
// CHECK:STDOUT: !definition:
801801
// CHECK:STDOUT:
802802
// CHECK:STDOUT: fn;

0 commit comments

Comments
 (0)