mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-06 06:34:41 +01:00
Don't elide Self when dumping the interface/constraint (#6297)
We give `Self` in an interface/constraint a location so it's not elided when trying to dump the interface/constraint. We use the location of the start of the definition, which is the scope for which the `Self` is constructed and is available in.
This commit is contained in:
+5
-5
@@ -656,25 +656,25 @@ fn CallF() {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type: type = facet_type <@I, @I(%N.loc4_13.1)> [symbolic = %I.type (constants.%I.type.f7b)]
|
||||
// CHECK:STDOUT: %Self.2: @I.%I.type (%I.type.f7b) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.d78)]
|
||||
// CHECK:STDOUT: %Self.loc4_36.2: @I.%I.type (%I.type.f7b) = symbolic_binding Self, 1 [symbolic = %Self.loc4_36.2 (constants.%Self.d78)]
|
||||
// CHECK:STDOUT: %I.assoc_type: type = assoc_entity_type @I, @I(%N.loc4_13.1) [symbolic = %I.assoc_type (constants.%I.assoc_type.44f)]
|
||||
// CHECK:STDOUT: %assoc0: @I.%I.assoc_type (%I.assoc_type.44f) = assoc_entity element0, %V [symbolic = %assoc0 (constants.%assoc0.8bd)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @I.%I.type (%I.type.f7b) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.d78)]
|
||||
// CHECK:STDOUT: %Self.loc4_36.1: @I.%I.type (%I.type.f7b) = symbolic_binding Self, 1 [symbolic = %Self.loc4_36.2 (constants.%Self.d78)]
|
||||
// CHECK:STDOUT: %V: @V.%array_type (%array_type) = assoc_const_decl @V [concrete] {
|
||||
// CHECK:STDOUT: %assoc0: @I.%I.assoc_type (%I.assoc_type.44f) = assoc_entity element0, @I.%V [symbolic = @I.%assoc0 (constants.%assoc0.8bd)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc4_36.1
|
||||
// CHECK:STDOUT: .N = <poisoned>
|
||||
// CHECK:STDOUT: .V = @V.%assoc0
|
||||
// CHECK:STDOUT: witness = (%V)
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic assoc_const @V(@I.%N.loc4_13.2: Core.IntLiteral, @I.%Self.1: @I.%I.type (%I.type.f7b)) {
|
||||
// CHECK:STDOUT: generic assoc_const @V(@I.%N.loc4_13.2: Core.IntLiteral, @I.%Self.loc4_36.1: @I.%I.type (%I.type.f7b)) {
|
||||
// CHECK:STDOUT: %N: Core.IntLiteral = symbolic_binding N, 0 [symbolic = %N (constants.%N)]
|
||||
// CHECK:STDOUT: %I.type: type = facet_type <@I, @I(%N)> [symbolic = %I.type (constants.%I.type.f7b)]
|
||||
// CHECK:STDOUT: %Self: @V.%I.type (%I.type.f7b) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self.d78)]
|
||||
@@ -708,7 +708,7 @@ fn CallF() {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type => constants.%I.type.f11
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.623
|
||||
// CHECK:STDOUT: %Self.loc4_36.2 => constants.%Self.623
|
||||
// CHECK:STDOUT: %I.assoc_type => constants.%I.assoc_type.247
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.63a
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+9
-9
@@ -157,14 +157,14 @@ fn InstanceCallFail() {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %ImplicitAs.type: type = facet_type <@ImplicitAs, @ImplicitAs(%Dest.loc3_22.1)> [symbolic = %ImplicitAs.type (constants.%ImplicitAs.type.841)]
|
||||
// CHECK:STDOUT: %Self.2: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc3_35.2: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self.loc3_35.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %ImplicitAs.Convert.type: type = fn_type @ImplicitAs.Convert, @ImplicitAs(%Dest.loc3_22.1) [symbolic = %ImplicitAs.Convert.type (constants.%ImplicitAs.Convert.type)]
|
||||
// CHECK:STDOUT: %ImplicitAs.Convert: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type) = struct_value () [symbolic = %ImplicitAs.Convert (constants.%ImplicitAs.Convert)]
|
||||
// CHECK:STDOUT: %ImplicitAs.assoc_type: type = assoc_entity_type @ImplicitAs, @ImplicitAs(%Dest.loc3_22.1) [symbolic = %ImplicitAs.assoc_type (constants.%ImplicitAs.assoc_type)]
|
||||
// CHECK:STDOUT: %assoc0.loc4_35.2: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type) = assoc_entity element0, %ImplicitAs.Convert.decl [symbolic = %assoc0.loc4_35.2 (constants.%assoc0)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc3_35.1: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self.loc3_35.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %ImplicitAs.Convert.decl: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type) = fn_decl @ImplicitAs.Convert [symbolic = @ImplicitAs.%ImplicitAs.Convert (constants.%ImplicitAs.Convert)] {
|
||||
// CHECK:STDOUT: %self.patt: @ImplicitAs.Convert.%pattern_type.loc4_14 (%pattern_type.4e2) = value_binding_pattern self [concrete]
|
||||
// CHECK:STDOUT: %self.param_patt: @ImplicitAs.Convert.%pattern_type.loc4_14 (%pattern_type.4e2) = value_param_pattern %self.patt, call_param0 [concrete]
|
||||
@@ -174,7 +174,7 @@ fn InstanceCallFail() {
|
||||
// CHECK:STDOUT: %Dest.ref: type = name_ref Dest, @ImplicitAs.%Dest.loc3_22.2 [symbolic = %Dest (constants.%Dest)]
|
||||
// CHECK:STDOUT: %self.param: @ImplicitAs.Convert.%Self.binding.as_type (%Self.binding.as_type) = value_param call_param0
|
||||
// CHECK:STDOUT: %.loc4_20.1: type = splice_block %.loc4_20.3 [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)] {
|
||||
// CHECK:STDOUT: %.loc4_20.2: @ImplicitAs.Convert.%ImplicitAs.type (%ImplicitAs.type.841) = specific_constant @ImplicitAs.%Self.1, @ImplicitAs(constants.%Dest) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc4_20.2: @ImplicitAs.Convert.%ImplicitAs.type (%ImplicitAs.type.841) = specific_constant @ImplicitAs.%Self.loc3_35.1, @ImplicitAs(constants.%Dest) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @ImplicitAs.Convert.%ImplicitAs.type (%ImplicitAs.type.841) = name_ref Self, %.loc4_20.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type: type = facet_access_type %Self.ref [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
// CHECK:STDOUT: %.loc4_20.3: type = converted %Self.ref, %Self.as_type [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
@@ -186,14 +186,14 @@ fn InstanceCallFail() {
|
||||
// CHECK:STDOUT: %assoc0.loc4_35.1: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type) = assoc_entity element0, %ImplicitAs.Convert.decl [symbolic = %assoc0.loc4_35.2 (constants.%assoc0)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc3_35.1
|
||||
// CHECK:STDOUT: .Dest = <poisoned>
|
||||
// CHECK:STDOUT: .Convert = %assoc0.loc4_35.1
|
||||
// CHECK:STDOUT: witness = (%ImplicitAs.Convert.decl)
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @ImplicitAs.Convert(@ImplicitAs.%Dest.loc3_22.2: type, @ImplicitAs.%Self.1: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841)) {
|
||||
// CHECK:STDOUT: generic fn @ImplicitAs.Convert(@ImplicitAs.%Dest.loc3_22.2: type, @ImplicitAs.%Self.loc3_35.1: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841)) {
|
||||
// CHECK:STDOUT: %Dest: type = symbolic_binding Dest, 0 [symbolic = %Dest (constants.%Dest)]
|
||||
// CHECK:STDOUT: %ImplicitAs.type: type = facet_type <@ImplicitAs, @ImplicitAs(%Dest)> [symbolic = %ImplicitAs.type (constants.%ImplicitAs.type.841)]
|
||||
// CHECK:STDOUT: %Self: @ImplicitAs.Convert.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self)]
|
||||
@@ -346,11 +346,11 @@ fn InstanceCallFail() {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//default, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
|
||||
// CHECK:STDOUT: %Core.import_ref.efcd44.1: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Dest (constants.%Dest)]
|
||||
// CHECK:STDOUT: %Core.import_ref.d6f = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Core.import_ref.d6f = import_ref Core//default, loc{{\d+_\d+}}, unloaded
|
||||
// CHECK:STDOUT: %Core.import_ref.b9c: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type.8b5) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%assoc0 (constants.%assoc0.7b6)]
|
||||
// CHECK:STDOUT: %Core.Convert = import_ref Core//default, Convert, unloaded
|
||||
// CHECK:STDOUT: %Core.import_ref.efcd44.2: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Dest (constants.%Dest)]
|
||||
// CHECK:STDOUT: %Core.import_ref.4ff: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.2d9) = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @ImplicitAs.%Self (constants.%Self.4f1)]
|
||||
// CHECK:STDOUT: %Core.import_ref.4ff: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.2d9) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Self (constants.%Self.4f1)]
|
||||
// CHECK:STDOUT: %Core.import_ref.b91: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type.4c8) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%ImplicitAs.Convert (constants.%ImplicitAs.Convert.e9f)]
|
||||
// CHECK:STDOUT: %Core.import_ref.d11 = import_ref Core//default, loc{{\d+_\d+}}, unloaded
|
||||
// CHECK:STDOUT: }
|
||||
@@ -528,11 +528,11 @@ fn InstanceCallFail() {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//default, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
|
||||
// CHECK:STDOUT: %Core.import_ref.efcd44.1: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Dest (constants.%Dest)]
|
||||
// CHECK:STDOUT: %Core.import_ref.d6f = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Core.import_ref.d6f = import_ref Core//default, loc{{\d+_\d+}}, unloaded
|
||||
// CHECK:STDOUT: %Core.import_ref.b9c: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type.8b5) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%assoc0 (constants.%assoc0.7b6)]
|
||||
// CHECK:STDOUT: %Core.Convert = import_ref Core//default, Convert, unloaded
|
||||
// CHECK:STDOUT: %Core.import_ref.efcd44.2: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Dest (constants.%Dest)]
|
||||
// CHECK:STDOUT: %Core.import_ref.4ff: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.2d9) = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @ImplicitAs.%Self (constants.%Self.4f1)]
|
||||
// CHECK:STDOUT: %Core.import_ref.4ff: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.2d9) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Self (constants.%Self.4f1)]
|
||||
// CHECK:STDOUT: %Core.import_ref.b91: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type.4c8) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%ImplicitAs.Convert (constants.%ImplicitAs.Convert.e9f)]
|
||||
// CHECK:STDOUT: %Core.import_ref.d11 = import_ref Core//default, loc{{\d+_\d+}}, unloaded
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+11
-11
@@ -190,14 +190,14 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %HasF.type: type = facet_type <@HasF, @HasF(%T.loc4_16.1)> [symbolic = %HasF.type (constants.%HasF.type.59b)]
|
||||
// CHECK:STDOUT: %Self.2: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.loc4_26.2: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.loc4_26.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %HasF.F.type: type = fn_type @HasF.F, @HasF(%T.loc4_16.1) [symbolic = %HasF.F.type (constants.%HasF.F.type.940)]
|
||||
// CHECK:STDOUT: %HasF.F: @HasF.%HasF.F.type (%HasF.F.type.940) = struct_value () [symbolic = %HasF.F (constants.%HasF.F.86b)]
|
||||
// CHECK:STDOUT: %HasF.assoc_type: type = assoc_entity_type @HasF, @HasF(%T.loc4_16.1) [symbolic = %HasF.assoc_type (constants.%HasF.assoc_type.1aa)]
|
||||
// CHECK:STDOUT: %assoc0.loc5_14.2: @HasF.%HasF.assoc_type (%HasF.assoc_type.1aa) = assoc_entity element0, %HasF.F.decl [symbolic = %assoc0.loc5_14.2 (constants.%assoc0.bd3)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.loc4_26.1: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.loc4_26.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %HasF.F.decl: @HasF.%HasF.F.type (%HasF.F.type.940) = fn_decl @HasF.F [symbolic = @HasF.%HasF.F (constants.%HasF.F.86b)] {
|
||||
// CHECK:STDOUT: %return.patt: @HasF.F.%pattern_type (%pattern_type.e6836e.1) = return_slot_pattern [concrete]
|
||||
// CHECK:STDOUT: %return.param_patt: @HasF.F.%pattern_type (%pattern_type.e6836e.1) = out_param_pattern %return.patt, call_param0 [concrete]
|
||||
@@ -209,7 +209,7 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT: %assoc0.loc5_14.1: @HasF.%HasF.assoc_type (%HasF.assoc_type.1aa) = assoc_entity element0, %HasF.F.decl [symbolic = %assoc0.loc5_14.2 (constants.%assoc0.bd3)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc4_26.1
|
||||
// CHECK:STDOUT: .T = <poisoned>
|
||||
// CHECK:STDOUT: .F = %assoc0.loc5_14.1
|
||||
// CHECK:STDOUT: .Param = <poisoned>
|
||||
@@ -265,7 +265,7 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT: extend @C.as.HasF.impl.%HasF.type
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @HasF.F(@HasF.%T.loc4_16.2: type, @HasF.%Self.1: @HasF.%HasF.type (%HasF.type.59b)) {
|
||||
// CHECK:STDOUT: generic fn @HasF.F(@HasF.%T.loc4_16.2: type, @HasF.%Self.loc4_26.1: @HasF.%HasF.type (%HasF.type.59b)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T.d9f)]
|
||||
// CHECK:STDOUT: %pattern_type: type = pattern_type %T [symbolic = %pattern_type (constants.%pattern_type.e6836e.1)]
|
||||
// CHECK:STDOUT:
|
||||
@@ -367,7 +367,7 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %HasF.type => constants.%HasF.type.aca
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.026
|
||||
// CHECK:STDOUT: %Self.loc4_26.2 => constants.%Self.026
|
||||
// CHECK:STDOUT: %HasF.F.type => constants.%HasF.F.type.7f1
|
||||
// CHECK:STDOUT: %HasF.F => constants.%HasF.F.eff
|
||||
// CHECK:STDOUT: %HasF.assoc_type => constants.%HasF.assoc_type.257
|
||||
@@ -453,14 +453,14 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type: type = facet_type <@I, @I(%T.loc4_13.1)> [symbolic = %I.type (constants.%I.type.07036d.1)]
|
||||
// CHECK:STDOUT: %Self.2: @I.%I.type (%I.type.07036d.1) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.2694d8.1)]
|
||||
// CHECK:STDOUT: %Self.loc4_23.2: @I.%I.type (%I.type.07036d.1) = symbolic_binding Self, 1 [symbolic = %Self.loc4_23.2 (constants.%Self.2694d8.1)]
|
||||
// CHECK:STDOUT: %I.F.type: type = fn_type @I.F, @I(%T.loc4_13.1) [symbolic = %I.F.type (constants.%I.F.type.76d346.1)]
|
||||
// CHECK:STDOUT: %I.F: @I.%I.F.type (%I.F.type.76d346.1) = struct_value () [symbolic = %I.F (constants.%I.F.dde9b0.1)]
|
||||
// CHECK:STDOUT: %I.assoc_type: type = assoc_entity_type @I, @I(%T.loc4_13.1) [symbolic = %I.assoc_type (constants.%I.assoc_type.b650b2.1)]
|
||||
// CHECK:STDOUT: %assoc0.loc5_25.2: @I.%I.assoc_type (%I.assoc_type.b650b2.1) = assoc_entity element0, %I.F.decl [symbolic = %assoc0.loc5_25.2 (constants.%assoc0.b4fda0.1)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @I.%I.type (%I.type.07036d.1) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.2694d8.1)]
|
||||
// CHECK:STDOUT: %Self.loc4_23.1: @I.%I.type (%I.type.07036d.1) = symbolic_binding Self, 1 [symbolic = %Self.loc4_23.2 (constants.%Self.2694d8.1)]
|
||||
// CHECK:STDOUT: %I.F.decl: @I.%I.F.type (%I.F.type.76d346.1) = fn_decl @I.F [symbolic = @I.%I.F (constants.%I.F.dde9b0.1)] {
|
||||
// CHECK:STDOUT: %self.patt: @I.F.%pattern_type.loc5_8 (%pattern_type.dbc) = value_binding_pattern self [concrete]
|
||||
// CHECK:STDOUT: %self.param_patt: @I.F.%pattern_type.loc5_8 (%pattern_type.dbc) = value_param_pattern %self.patt, call_param0 [concrete]
|
||||
@@ -469,7 +469,7 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @I.F.%Self.binding.as_type (%Self.binding.as_type) = value_param call_param0
|
||||
// CHECK:STDOUT: %.loc5_14.1: type = splice_block %.loc5_14.3 [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_14.2: @I.F.%I.type (%I.type.07036d.1) = specific_constant @I.%Self.1, @I(constants.%T) [symbolic = %Self (constants.%Self.2694d8.1)]
|
||||
// CHECK:STDOUT: %.loc5_14.2: @I.F.%I.type (%I.type.07036d.1) = specific_constant @I.%Self.loc4_23.1, @I(constants.%T) [symbolic = %Self (constants.%Self.2694d8.1)]
|
||||
// CHECK:STDOUT: %Self.ref: @I.F.%I.type (%I.type.07036d.1) = name_ref Self, %.loc5_14.2 [symbolic = %Self (constants.%Self.2694d8.1)]
|
||||
// CHECK:STDOUT: %Self.as_type: type = facet_access_type %Self.ref [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_14.3: type = converted %Self.ref, %Self.as_type [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
@@ -482,7 +482,7 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT: %assoc0.loc5_25.1: @I.%I.assoc_type (%I.assoc_type.b650b2.1) = assoc_entity element0, %I.F.decl [symbolic = %assoc0.loc5_25.2 (constants.%assoc0.b4fda0.1)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc4_23.1
|
||||
// CHECK:STDOUT: .T = <poisoned>
|
||||
// CHECK:STDOUT: .F = %assoc0.loc5_25.1
|
||||
// CHECK:STDOUT: .U = <poisoned>
|
||||
@@ -554,7 +554,7 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @I.F(@I.%T.loc4_13.2: type, @I.%Self.1: @I.%I.type (%I.type.07036d.1)) {
|
||||
// CHECK:STDOUT: generic fn @I.F(@I.%T.loc4_13.2: type, @I.%Self.loc4_23.1: @I.%I.type (%I.type.07036d.1)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %I.type: type = facet_type <@I, @I(%T)> [symbolic = %I.type (constants.%I.type.07036d.1)]
|
||||
// CHECK:STDOUT: %Self: @I.F.%I.type (%I.type.07036d.1) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self.2694d8.1)]
|
||||
@@ -609,7 +609,7 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type => constants.%I.type.07036d.2
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.2694d8.2
|
||||
// CHECK:STDOUT: %Self.loc4_23.2 => constants.%Self.2694d8.2
|
||||
// CHECK:STDOUT: %I.F.type => constants.%I.F.type.76d346.2
|
||||
// CHECK:STDOUT: %I.F => constants.%I.F.dde9b0.2
|
||||
// CHECK:STDOUT: %I.assoc_type => constants.%I.assoc_type.b650b2.2
|
||||
|
||||
@@ -71,14 +71,14 @@ class C {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %GenericInterface.type: type = facet_type <@GenericInterface, @GenericInterface(%T.loc15_28.1)> [symbolic = %GenericInterface.type (constants.%GenericInterface.type.114)]
|
||||
// CHECK:STDOUT: %Self.2: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc15_38.2: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114) = symbolic_binding Self, 1 [symbolic = %Self.loc15_38.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %GenericInterface.F.type: type = fn_type @GenericInterface.F, @GenericInterface(%T.loc15_28.1) [symbolic = %GenericInterface.F.type (constants.%GenericInterface.F.type)]
|
||||
// CHECK:STDOUT: %GenericInterface.F: @GenericInterface.%GenericInterface.F.type (%GenericInterface.F.type) = struct_value () [symbolic = %GenericInterface.F (constants.%GenericInterface.F)]
|
||||
// CHECK:STDOUT: %GenericInterface.assoc_type: type = assoc_entity_type @GenericInterface, @GenericInterface(%T.loc15_28.1) [symbolic = %GenericInterface.assoc_type (constants.%GenericInterface.assoc_type)]
|
||||
// CHECK:STDOUT: %assoc0.loc16_13.2: @GenericInterface.%GenericInterface.assoc_type (%GenericInterface.assoc_type) = assoc_entity element0, %GenericInterface.F.decl [symbolic = %assoc0.loc16_13.2 (constants.%assoc0)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc15_38.1: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114) = symbolic_binding Self, 1 [symbolic = %Self.loc15_38.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %GenericInterface.F.decl: @GenericInterface.%GenericInterface.F.type (%GenericInterface.F.type) = fn_decl @GenericInterface.F [symbolic = @GenericInterface.%GenericInterface.F (constants.%GenericInterface.F)] {
|
||||
// CHECK:STDOUT: %x.patt: @GenericInterface.F.%pattern_type (%pattern_type.e68) = value_binding_pattern x [concrete]
|
||||
// CHECK:STDOUT: %x.param_patt: @GenericInterface.F.%pattern_type (%pattern_type.e68) = value_param_pattern %x.patt, call_param0 [concrete]
|
||||
@@ -90,7 +90,7 @@ class C {
|
||||
// CHECK:STDOUT: %assoc0.loc16_13.1: @GenericInterface.%GenericInterface.assoc_type (%GenericInterface.assoc_type) = assoc_entity element0, %GenericInterface.F.decl [symbolic = %assoc0.loc16_13.2 (constants.%assoc0)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc15_38.1
|
||||
// CHECK:STDOUT: .T = <poisoned>
|
||||
// CHECK:STDOUT: .F = %assoc0.loc16_13.1
|
||||
// CHECK:STDOUT: witness = (%GenericInterface.F.decl)
|
||||
@@ -147,7 +147,7 @@ class C {
|
||||
// CHECK:STDOUT: has_error
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @GenericInterface.F(@GenericInterface.%T.loc15_28.2: type, @GenericInterface.%Self.1: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114)) {
|
||||
// CHECK:STDOUT: generic fn @GenericInterface.F(@GenericInterface.%T.loc15_28.2: type, @GenericInterface.%Self.loc15_38.1: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %pattern_type: type = pattern_type %T [symbolic = %pattern_type (constants.%pattern_type.e68)]
|
||||
// CHECK:STDOUT:
|
||||
@@ -172,7 +172,7 @@ class C {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %GenericInterface.type => constants.%GenericInterface.type.114
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self
|
||||
// CHECK:STDOUT: %Self.loc15_38.2 => constants.%Self
|
||||
// CHECK:STDOUT: %GenericInterface.F.type => constants.%GenericInterface.F.type
|
||||
// CHECK:STDOUT: %GenericInterface.F => constants.%GenericInterface.F
|
||||
// CHECK:STDOUT: %GenericInterface.assoc_type => constants.%GenericInterface.assoc_type
|
||||
|
||||
+5
-5
@@ -1126,24 +1126,24 @@ interface I {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type: type = facet_type <@I, @I(%U.loc3_13.1)> [symbolic = %I.type (constants.%I.type.070)]
|
||||
// CHECK:STDOUT: %Self.2: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Self.loc3_23.2: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.loc3_23.2 (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %I.assoc_type: type = assoc_entity_type @I, @I(%U.loc3_13.1) [symbolic = %I.assoc_type (constants.%I.assoc_type.b65)]
|
||||
// CHECK:STDOUT: %assoc0: @I.%I.assoc_type (%I.assoc_type.b65) = assoc_entity element0, %T [symbolic = %assoc0 (constants.%assoc0.d48)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Self.loc3_23.1: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.loc3_23.2 (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {
|
||||
// CHECK:STDOUT: %assoc0: @I.%I.assoc_type (%I.assoc_type.b65) = assoc_entity element0, @I.%T [symbolic = @I.%assoc0 (constants.%assoc0.d48)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc3_23.1
|
||||
// CHECK:STDOUT: .T = @T.%assoc0
|
||||
// CHECK:STDOUT: witness = (%T)
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic assoc_const @T(@I.%U.loc3_13.2: type, @I.%Self.1: @I.%I.type (%I.type.070)) {
|
||||
// CHECK:STDOUT: generic assoc_const @T(@I.%U.loc3_13.2: type, @I.%Self.loc3_23.1: @I.%I.type (%I.type.070)) {
|
||||
// CHECK:STDOUT: assoc_const T:! type;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -1179,7 +1179,7 @@ interface I {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type => constants.%I.type.fc3
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.8a8
|
||||
// CHECK:STDOUT: %Self.loc3_23.2 => constants.%Self.8a8
|
||||
// CHECK:STDOUT: %I.assoc_type => constants.%I.assoc_type.b3c
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.3e4
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -474,11 +474,11 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %Main.import_ref.40af26.1: Core.IntLiteral = import_ref Main//generic_impl, loc11_13, loaded [symbolic = @MyInt.%N (constants.%N)]
|
||||
// CHECK:STDOUT: %Main.import_ref.ac2: <witness> = import_ref Main//generic_impl, loc13_1, loaded [symbolic = @MyInt.%complete_type (constants.%complete_type.a2d)]
|
||||
// CHECK:STDOUT: %Main.import_ref.0ad = import_ref Main//generic_impl, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c52 = import_ref Main//generic_impl, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c52 = import_ref Main//generic_impl, loc4_15, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.f99: %Add.assoc_type = import_ref Main//generic_impl, loc5_41, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.Op = import_ref Main//generic_impl, Op, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.5a3: %Add.Op.type = import_ref Main//generic_impl, loc5_41, loaded [concrete = constants.%Add.Op]
|
||||
// CHECK:STDOUT: %Main.import_ref.a78: %Add.type = import_ref Main//generic_impl, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.a78: %Add.type = import_ref Main//generic_impl, loc4_15, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.06e: <witness> = import_ref Main//generic_impl, loc15_48, loaded [symbolic = @MyInt.as.Add.impl.%Add.impl_witness (constants.%Add.impl_witness.ec1)]
|
||||
// CHECK:STDOUT: %Main.import_ref.40af26.2: Core.IntLiteral = import_ref Main//generic_impl, loc15_14, loaded [symbolic = @MyInt.as.Add.impl.%N (constants.%N)]
|
||||
// CHECK:STDOUT: %Main.import_ref.fbc: type = import_ref Main//generic_impl, loc15_39, loaded [symbolic = @MyInt.as.Add.impl.%MyInt (constants.%MyInt.19f)]
|
||||
|
||||
+10
-10
@@ -283,11 +283,11 @@ fn InstanceCallImportFail() {
|
||||
// CHECK:STDOUT: import Core//prelude
|
||||
// CHECK:STDOUT: import Core//prelude/...
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.700 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.700 = import_ref Main//lib, loc3_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e3c: %NonInstance.assoc_type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.F = import_ref Main//lib, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.474: %NonInstance.F.type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%NonInstance.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.1ee: %NonInstance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.1ee: %NonInstance.type = import_ref Main//lib, loc3_23, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.890: <witness> = import_ref Main//lib, loc7_30, loaded [concrete = constants.%NonInstance.impl_witness]
|
||||
// CHECK:STDOUT: %Main.import_ref.c9a: type = import_ref Main//lib, loc7_13, loaded [concrete = constants.%struct_type.i]
|
||||
// CHECK:STDOUT: %Main.import_ref.ef5: type = import_ref Main//lib, loc7_18, loaded [concrete = constants.%NonInstance.type]
|
||||
@@ -367,11 +367,11 @@ fn InstanceCallImportFail() {
|
||||
// CHECK:STDOUT: import Core//prelude
|
||||
// CHECK:STDOUT: import Core//prelude/...
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.700 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.700 = import_ref Main//lib, loc3_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e3c: %NonInstance.assoc_type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%assoc0.8ce]
|
||||
// CHECK:STDOUT: %Main.F = import_ref Main//lib, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.474: %NonInstance.F.type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%NonInstance.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.1ee: %NonInstance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.381]
|
||||
// CHECK:STDOUT: %Main.import_ref.1ee: %NonInstance.type = import_ref Main//lib, loc3_23, loaded [symbolic = constants.%Self.381]
|
||||
// CHECK:STDOUT: %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -447,11 +447,11 @@ fn InstanceCallImportFail() {
|
||||
// CHECK:STDOUT: import Core//prelude
|
||||
// CHECK:STDOUT: import Core//prelude/...
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.700 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.700 = import_ref Main//lib, loc3_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e3c: %NonInstance.assoc_type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%assoc0.8ce]
|
||||
// CHECK:STDOUT: %Main.F = import_ref Main//lib, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.474: %NonInstance.F.type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%NonInstance.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.1ee: %NonInstance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.381]
|
||||
// CHECK:STDOUT: %Main.import_ref.1ee: %NonInstance.type = import_ref Main//lib, loc3_23, loaded [symbolic = constants.%Self.381]
|
||||
// CHECK:STDOUT: %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -538,11 +538,11 @@ fn InstanceCallImportFail() {
|
||||
// CHECK:STDOUT: import Core//prelude
|
||||
// CHECK:STDOUT: import Core//prelude/...
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.34d = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.34d = import_ref Main//lib, loc11_20, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.124: %Instance.assoc_type = import_ref Main//lib, loc12_21, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.G = import_ref Main//lib, G, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.b4d: %Instance.G.type = import_ref Main//lib, loc12_21, loaded [concrete = constants.%Instance.G]
|
||||
// CHECK:STDOUT: %Main.import_ref.2d8: %Instance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.2d8: %Instance.type = import_ref Main//lib, loc11_20, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.4df: <witness> = import_ref Main//lib, loc15_27, loaded [concrete = constants.%Instance.impl_witness]
|
||||
// CHECK:STDOUT: %Main.import_ref.c9a: type = import_ref Main//lib, loc15_13, loaded [concrete = constants.%struct_type.i]
|
||||
// CHECK:STDOUT: %Main.import_ref.b49: type = import_ref Main//lib, loc15_18, loaded [concrete = constants.%Instance.type]
|
||||
@@ -667,11 +667,11 @@ fn InstanceCallImportFail() {
|
||||
// CHECK:STDOUT: import Core//prelude
|
||||
// CHECK:STDOUT: import Core//prelude/...
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.34d = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.34d = import_ref Main//lib, loc11_20, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.124: %Instance.assoc_type = import_ref Main//lib, loc12_21, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.G = import_ref Main//lib, G, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.b4d: %Instance.G.type = import_ref Main//lib, loc12_21, loaded [concrete = constants.%Instance.G]
|
||||
// CHECK:STDOUT: %Main.import_ref.2d8: %Instance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.2d8: %Instance.type = import_ref Main//lib, loc11_20, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.8a7 = import_ref Main//lib, loc15_27, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c9a: type = import_ref Main//lib, loc15_13, loaded [concrete = constants.%struct_type.i]
|
||||
// CHECK:STDOUT: %Main.import_ref.b49: type = import_ref Main//lib, loc15_18, loaded [concrete = constants.%Instance.type]
|
||||
|
||||
+2
-2
@@ -141,7 +141,7 @@ fn G(c: C) {
|
||||
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//extend_impl_library, loc12_1, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.2c4 = import_ref Main//extend_impl_library, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.3019d1.1: type = import_ref Main//extend_impl_library, loc9_18, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//extend_impl_library, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//extend_impl_library, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c44: %I.assoc_type = import_ref Main//extend_impl_library, loc5_9, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.F = import_ref Main//extend_impl_library, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e03: %I.F.type = import_ref Main//extend_impl_library, loc5_9, loaded [concrete = constants.%I.F]
|
||||
@@ -150,7 +150,7 @@ fn G(c: C) {
|
||||
// CHECK:STDOUT: %Main.import_ref.3019d1.2: type = import_ref Main//extend_impl_library, loc9_18, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.863: %C.as.I.impl.F.type = import_ref Main//extend_impl_library, loc10_12, loaded [concrete = constants.%C.as.I.impl.F]
|
||||
// CHECK:STDOUT: %I.impl_witness_table = impl_witness_table (%Main.import_ref.863), @C.as.I.impl [concrete]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//extend_impl_library, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//extend_impl_library, loc4_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
|
||||
+10
-10
@@ -178,13 +178,13 @@ impl forall [T:! type] D as J(T*) {}
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type: type = facet_type <@I, @I(%T.loc5_13.1)> [symbolic = %I.type (constants.%I.type.070)]
|
||||
// CHECK:STDOUT: %Self.2: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Self.loc5_23.2: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.loc5_23.2 (constants.%Self.269)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Self.loc5_23.1: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.loc5_23.2 (constants.%Self.269)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc5_23.1
|
||||
// CHECK:STDOUT: witness = ()
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -231,7 +231,7 @@ impl forall [T:! type] D as J(T*) {}
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type => constants.%I.type.070
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.269
|
||||
// CHECK:STDOUT: %Self.loc5_23.2 => constants.%Self.269
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @C.as.I.impl.f3e(constants.%T) {
|
||||
@@ -245,7 +245,7 @@ impl forall [T:! type] D as J(T*) {}
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type => constants.%I.type.229
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.6d0
|
||||
// CHECK:STDOUT: %Self.loc5_23.2 => constants.%Self.6d0
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @C.as.I.impl.1fd(constants.%T) {
|
||||
@@ -283,7 +283,7 @@ impl forall [T:! type] D as J(T*) {}
|
||||
// CHECK:STDOUT: %Main.C: type = import_ref Main//import_generic, C, loaded [concrete = constants.%C]
|
||||
// CHECK:STDOUT: %Main.I: %I.type.dac = import_ref Main//import_generic, I, loaded [concrete = constants.%I.generic]
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//import_generic, loc5_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//import_generic, loc5_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e46 = import_ref Main//import_generic, loc8_33, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//import_generic, loc4_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.2c4 = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
@@ -555,13 +555,13 @@ impl forall [T:! type] D as J(T*) {}
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %J.type: type = facet_type <@J, @J(%T.loc5_13.1)> [symbolic = %J.type (constants.%J.type.8ec)]
|
||||
// CHECK:STDOUT: %Self.2: @J.%J.type (%J.type.8ec) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc5_23.2: @J.%J.type (%J.type.8ec) = symbolic_binding Self, 1 [symbolic = %Self.loc5_23.2 (constants.%Self)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @J.%J.type (%J.type.8ec) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc5_23.1: @J.%J.type (%J.type.8ec) = symbolic_binding Self, 1 [symbolic = %Self.loc5_23.2 (constants.%Self)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc5_23.1
|
||||
// CHECK:STDOUT: witness = ()
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -636,7 +636,7 @@ impl forall [T:! type] D as J(T*) {}
|
||||
// CHECK:STDOUT: %Main.D: type = import_ref Main//import_generic_decl, D, loaded [concrete = constants.%D]
|
||||
// CHECK:STDOUT: %Main.J: %J.type.2b8 = import_ref Main//import_generic_decl, J, loaded [concrete = constants.%J.generic]
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//import_generic_decl, loc5_13, loaded [symbolic = @J.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.b3b = import_ref Main//import_generic_decl, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.b3b = import_ref Main//import_generic_decl, loc5_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//import_generic_decl, loc4_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.cab = import_ref Main//import_generic_decl, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//import_generic_decl, loc11_14, loaded [symbolic = @D.as.J.impl.b470bf.1.%T (constants.%T)]
|
||||
|
||||
@@ -330,12 +330,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -418,12 +418,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -523,12 +523,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -622,12 +622,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -735,7 +735,7 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I = import_ref Main//interface, I, unloaded
|
||||
// CHECK:STDOUT: %Main.I3: type = import_ref Main//interface, I3, loaded [concrete = constants.%I3.type]
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.cd2 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.cd2 = import_ref Main//interface, loc5_14, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.f5f: %I3.assoc_type = import_ref Main//interface, loc6_9, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.import_ref.680: %I3.assoc_type = import_ref Main//interface, loc7_9, loaded [concrete = constants.%assoc1]
|
||||
// CHECK:STDOUT: %Main.import_ref.181: %I3.assoc_type = import_ref Main//interface, loc8_9, loaded [concrete = constants.%assoc2]
|
||||
@@ -744,13 +744,13 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.T3 = import_ref Main//interface, T3, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.5fb: type = import_ref Main//interface, loc6_9, loaded [concrete = %T1]
|
||||
// CHECK:STDOUT: %T1: type = assoc_const_decl @T1 [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.fbb73e.1: %I3.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.fbb73e.1: %I3.type = import_ref Main//interface, loc5_14, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e26: type = import_ref Main//interface, loc7_9, loaded [concrete = %T2]
|
||||
// CHECK:STDOUT: %T2: type = assoc_const_decl @T2 [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.fbb73e.2: %I3.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.fbb73e.2: %I3.type = import_ref Main//interface, loc5_14, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e32: type = import_ref Main//interface, loc8_9, loaded [concrete = %T3]
|
||||
// CHECK:STDOUT: %T3: type = assoc_const_decl @T3 [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.fbb73e.3: %I3.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.fbb73e.3: %I3.type = import_ref Main//interface, loc5_14, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -901,12 +901,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -996,12 +996,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T = import_ref Main//interface, T, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -1089,12 +1089,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T = import_ref Main//interface, T, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -1181,12 +1181,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T = import_ref Main//interface, T, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -1273,12 +1273,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T = import_ref Main//interface, T, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -1367,12 +1367,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType = import_ref Main//interface, NonType, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//interface, loc3_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//interface, loc3_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -1467,12 +1467,12 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT: %Main.I = import_ref Main//interface, I, unloaded
|
||||
// CHECK:STDOUT: %Main.I3 = import_ref Main//interface, I3, unloaded
|
||||
// CHECK:STDOUT: %Main.NonType: type = import_ref Main//interface, NonType, loaded [concrete = constants.%NonType.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.b1e = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.b1e = import_ref Main//interface, loc11_19, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.9fa: %NonType.assoc_type = import_ref Main//interface, loc12_8, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.Y: %struct_type.a.225 = import_ref Main//interface, Y, loaded [concrete = %Y]
|
||||
// CHECK:STDOUT: %Main.import_ref.f3d: %struct_type.a.225 = import_ref Main//interface, loc12_8, loaded [concrete = %Y]
|
||||
// CHECK:STDOUT: %Y: %struct_type.a.225 = assoc_const_decl @Y [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.046: %NonType.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.046: %NonType.type = import_ref Main//interface, loc11_19, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -1599,11 +1599,11 @@ impl CD as IF where .F = 0 {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: imports {
|
||||
// CHECK:STDOUT: %Main.IF: type = import_ref Main//interface_with_function, IF, loaded [concrete = constants.%IF.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.14d = import_ref Main//interface_with_function, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.14d = import_ref Main//interface_with_function, loc3_14, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.f22: %IF.assoc_type = import_ref Main//interface_with_function, loc3_22, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.F: %IF.F.type = import_ref Main//interface_with_function, F, loaded [concrete = constants.%IF.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.4b7: %IF.F.type = import_ref Main//interface_with_function, loc3_22, loaded [concrete = constants.%IF.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.e8b: %IF.type = import_ref Main//interface_with_function, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e8b: %IF.type = import_ref Main//interface_with_function, loc3_14, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
|
||||
+2
-2
@@ -144,10 +144,10 @@ fn F(x: (), y: ()) -> () {
|
||||
// CHECK:STDOUT: import Core//prelude
|
||||
// CHECK:STDOUT: import Core//prelude/...
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.c52 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c52 = import_ref Main//a, loc4_15, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.f99: %Add.assoc_type = import_ref Main//a, loc5_41, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.Op: %Add.Op.type = import_ref Main//a, Op, loaded [concrete = constants.%Add.Op]
|
||||
// CHECK:STDOUT: %Main.import_ref.a78: %Add.type = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.a78: %Add.type = import_ref Main//a, loc4_15, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.5a3: %Add.Op.type = import_ref Main//a, loc5_41, loaded [concrete = constants.%Add.Op]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -345,25 +345,25 @@ impl forall [N:! E] D(N) as I where .Assoc = () {
|
||||
// CHECK:STDOUT: %Main.Z = import_ref Main//impl_def, Z, unloaded
|
||||
// CHECK:STDOUT: %Main.C: %C.type = import_ref Main//impl_def, C, loaded [concrete = constants.%C.generic]
|
||||
// CHECK:STDOUT: %Main.I: type = import_ref Main//impl_def, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//impl_def, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//impl_def, loc15_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.9ff: %I.assoc_type = import_ref Main//impl_def, loc16_12, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.import_ref.abf = import_ref Main//impl_def, loc24_20, unloaded
|
||||
// CHECK:STDOUT: %Main.Assoc: %Y.type = import_ref Main//impl_def, Assoc, loaded [concrete = %Assoc]
|
||||
// CHECK:STDOUT: %Main.F: %I.F.type = import_ref Main//impl_def, F, loaded [concrete = constants.%I.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.1d8: %Y.type = import_ref Main//impl_def, loc16_12, loaded [concrete = %Assoc]
|
||||
// CHECK:STDOUT: %Main.import_ref.581 = import_ref Main//impl_def, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.581 = import_ref Main//impl_def, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Assoc: %Y.type = assoc_const_decl @Assoc [concrete] {}
|
||||
// CHECK:STDOUT: %Main.import_ref.e339be.1: %I.type = import_ref Main//impl_def, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.e339be.1: %I.type = import_ref Main//impl_def, loc15_13, loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.338: <witness> = import_ref Main//impl_def, loc5_31, loaded [symbolic = @T.as.Y.impl.%Y.impl_witness (constants.%Y.impl_witness.278)]
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//impl_def, loc5_14, loaded [symbolic = @T.as.Y.impl.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.cb5: type = import_ref Main//impl_def, loc5_24, loaded [symbolic = @T.as.Y.impl.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.0a1: type = import_ref Main//impl_def, loc5_29, loaded [concrete = constants.%Y.type]
|
||||
// CHECK:STDOUT: %Y.impl_witness_table = impl_witness_table (), @T.as.Y.impl [concrete]
|
||||
// CHECK:STDOUT: %Main.import_ref.462 = import_ref Main//impl_def, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.462 = import_ref Main//impl_def, loc8_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.62f: %Z.type = import_ref Main//impl_def, loc11_9, loaded [symbolic = @C.%V (constants.%V)]
|
||||
// CHECK:STDOUT: %Main.import_ref.3fc: <witness> = import_ref Main//impl_def, loc13_1, loaded [concrete = constants.%complete_type.782]
|
||||
// CHECK:STDOUT: %Main.import_ref.f7e = import_ref Main//impl_def, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e339be.2: %I.type = import_ref Main//impl_def, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.e339be.2: %I.type = import_ref Main//impl_def, loc15_13, loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.cfb: <witness> = import_ref Main//impl_def, loc9_31, loaded [symbolic = @U.as.Z.impl.%Z.impl_witness (constants.%Z.impl_witness.5e4)]
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//impl_def, loc9_14, loaded [symbolic = @U.as.Z.impl.%U (constants.%U)]
|
||||
// CHECK:STDOUT: %Main.import_ref.ff3: type = import_ref Main//impl_def, loc9_24, loaded [symbolic = @U.as.Z.impl.%U (constants.%U)]
|
||||
|
||||
+4
-4
@@ -154,10 +154,10 @@ fn G() {
|
||||
// CHECK:STDOUT: import Core//prelude
|
||||
// CHECK:STDOUT: import Core//prelude/...
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//a, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.507 = import_ref Main//a, loc5_14, unloaded
|
||||
// CHECK:STDOUT: %Main.F: %I.F.type = import_ref Main//a, F, loaded [concrete = constants.%I.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//a, loc4_13, loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
|
||||
// CHECK:STDOUT: %Core.import_ref.f99: %Destroy.assoc_type = import_ref Core//prelude/parts/destroy, loc{{\d+_\d+}}, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Core.import_ref.725: %Destroy.Op.type = import_ref Core//prelude/parts/destroy, loc{{\d+_\d+}}, loaded [concrete = constants.%Destroy.Op]
|
||||
@@ -438,11 +438,11 @@ fn G() {
|
||||
// CHECK:STDOUT: %Main.import_ref.7a8327.1: %empty_tuple.type = import_ref Main//b, loc5_9, loaded [symbolic = @C.%X (constants.%X)]
|
||||
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//b, loc5_18, loaded [concrete = constants.%complete_type.357]
|
||||
// CHECK:STDOUT: %Main.import_ref.176 = import_ref Main//b, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//a, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c44: %I.assoc_type = import_ref Main//a, loc5_14, loaded [concrete = constants.%assoc0.3f3]
|
||||
// CHECK:STDOUT: %Main.F.8b9 = import_ref Main//a, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e03: %I.F.type = import_ref Main//a, loc5_14, loaded [concrete = constants.%I.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//a, loc4_13, loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.c03: <witness> = import_ref Main//b, loc7_32, loaded [symbolic = @C.as.I.impl.%I.impl_witness (constants.%I.impl_witness.9b0)]
|
||||
// CHECK:STDOUT: %Main.import_ref.7a8327.2: %empty_tuple.type = import_ref Main//b, loc7_14, loaded [symbolic = @C.as.I.impl.%Y (constants.%Y)]
|
||||
// CHECK:STDOUT: %Main.import_ref.801: type = import_ref Main//b, loc7_25, loaded [symbolic = @C.as.I.impl.%C (constants.%C.32c8ec.2)]
|
||||
|
||||
+2
-2
@@ -219,11 +219,11 @@ fn H() -> C({}).(I.F)() {}
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//import_generic, loc4_9, loaded [symbolic = @C.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//import_generic, loc4_20, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.034 = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//import_generic, loc6_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c44: %I.assoc_type = import_ref Main//import_generic, loc7_9, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %Main.F = import_ref Main//import_generic, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e03: %I.F.type = import_ref Main//import_generic, loc7_9, loaded [concrete = constants.%I.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//import_generic, loc6_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.bc1: <witness> = import_ref Main//import_generic, loc10_34, loaded [symbolic = @C.as.I.impl.%I.impl_witness (constants.%I.impl_witness.2ba)]
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//import_generic, loc10_14, loaded [symbolic = @C.as.I.impl.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.4d2: type = import_ref Main//import_generic, loc10_27, loaded [symbolic = @C.as.I.impl.%C (constants.%C.3f0)]
|
||||
|
||||
+28
-28
@@ -144,14 +144,14 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %ImplicitAs.type: type = facet_type <@ImplicitAs, @ImplicitAs(%Dest.loc3_22.1)> [symbolic = %ImplicitAs.type (constants.%ImplicitAs.type.841)]
|
||||
// CHECK:STDOUT: %Self.2: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc3_35.2: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self.loc3_35.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %ImplicitAs.Convert.type: type = fn_type @ImplicitAs.Convert, @ImplicitAs(%Dest.loc3_22.1) [symbolic = %ImplicitAs.Convert.type (constants.%ImplicitAs.Convert.type)]
|
||||
// CHECK:STDOUT: %ImplicitAs.Convert: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type) = struct_value () [symbolic = %ImplicitAs.Convert (constants.%ImplicitAs.Convert)]
|
||||
// CHECK:STDOUT: %ImplicitAs.assoc_type: type = assoc_entity_type @ImplicitAs, @ImplicitAs(%Dest.loc3_22.1) [symbolic = %ImplicitAs.assoc_type (constants.%ImplicitAs.assoc_type)]
|
||||
// CHECK:STDOUT: %assoc0.loc4_35.2: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type) = assoc_entity element0, %ImplicitAs.Convert.decl [symbolic = %assoc0.loc4_35.2 (constants.%assoc0)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc3_35.1: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self.loc3_35.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %ImplicitAs.Convert.decl: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type) = fn_decl @ImplicitAs.Convert [symbolic = @ImplicitAs.%ImplicitAs.Convert (constants.%ImplicitAs.Convert)] {
|
||||
// CHECK:STDOUT: %self.patt: @ImplicitAs.Convert.%pattern_type.loc4_14 (%pattern_type.4e2) = value_binding_pattern self [concrete]
|
||||
// CHECK:STDOUT: %self.param_patt: @ImplicitAs.Convert.%pattern_type.loc4_14 (%pattern_type.4e2) = value_param_pattern %self.patt, call_param0 [concrete]
|
||||
@@ -161,7 +161,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Dest.ref: type = name_ref Dest, @ImplicitAs.%Dest.loc3_22.2 [symbolic = %Dest (constants.%Dest)]
|
||||
// CHECK:STDOUT: %self.param: @ImplicitAs.Convert.%Self.binding.as_type (%Self.binding.as_type) = value_param call_param0
|
||||
// CHECK:STDOUT: %.loc4_20.1: type = splice_block %.loc4_20.3 [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)] {
|
||||
// CHECK:STDOUT: %.loc4_20.2: @ImplicitAs.Convert.%ImplicitAs.type (%ImplicitAs.type.841) = specific_constant @ImplicitAs.%Self.1, @ImplicitAs(constants.%Dest) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc4_20.2: @ImplicitAs.Convert.%ImplicitAs.type (%ImplicitAs.type.841) = specific_constant @ImplicitAs.%Self.loc3_35.1, @ImplicitAs(constants.%Dest) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @ImplicitAs.Convert.%ImplicitAs.type (%ImplicitAs.type.841) = name_ref Self, %.loc4_20.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type: type = facet_access_type %Self.ref [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
// CHECK:STDOUT: %.loc4_20.3: type = converted %Self.ref, %Self.as_type [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
@@ -173,14 +173,14 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %assoc0.loc4_35.1: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type) = assoc_entity element0, %ImplicitAs.Convert.decl [symbolic = %assoc0.loc4_35.2 (constants.%assoc0)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc3_35.1
|
||||
// CHECK:STDOUT: .Dest = <poisoned>
|
||||
// CHECK:STDOUT: .Convert = %assoc0.loc4_35.1
|
||||
// CHECK:STDOUT: witness = (%ImplicitAs.Convert.decl)
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @ImplicitAs.Convert(@ImplicitAs.%Dest.loc3_22.2: type, @ImplicitAs.%Self.1: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841)) {
|
||||
// CHECK:STDOUT: generic fn @ImplicitAs.Convert(@ImplicitAs.%Dest.loc3_22.2: type, @ImplicitAs.%Self.loc3_35.1: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.841)) {
|
||||
// CHECK:STDOUT: %Dest: type = symbolic_binding Dest, 0 [symbolic = %Dest (constants.%Dest)]
|
||||
// CHECK:STDOUT: %ImplicitAs.type: type = facet_type <@ImplicitAs, @ImplicitAs(%Dest)> [symbolic = %ImplicitAs.type (constants.%ImplicitAs.type.841)]
|
||||
// CHECK:STDOUT: %Self: @ImplicitAs.Convert.%ImplicitAs.type (%ImplicitAs.type.841) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self)]
|
||||
@@ -292,21 +292,21 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Action.type: type = facet_type <@Action, @Action(%T.loc4_18.1)> [symbolic = %Action.type (constants.%Action.type.f0c)]
|
||||
// CHECK:STDOUT: %Self.2: @Action.%Action.type (%Action.type.f0c) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Self.loc4_28.2: @Action.%Action.type (%Action.type.f0c) = symbolic_binding Self, 1 [symbolic = %Self.loc4_28.2 (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Action.Op.type: type = fn_type @Action.Op, @Action(%T.loc4_18.1) [symbolic = %Action.Op.type (constants.%Action.Op.type.0af)]
|
||||
// CHECK:STDOUT: %Action.Op: @Action.%Action.Op.type (%Action.Op.type.0af) = struct_value () [symbolic = %Action.Op (constants.%Action.Op.afb)]
|
||||
// CHECK:STDOUT: %Action.assoc_type: type = assoc_entity_type @Action, @Action(%T.loc4_18.1) [symbolic = %Action.assoc_type (constants.%Action.assoc_type.63f)]
|
||||
// CHECK:STDOUT: %assoc0.loc5_22.2: @Action.%Action.assoc_type (%Action.assoc_type.63f) = assoc_entity element0, %Action.Op.decl [symbolic = %assoc0.loc5_22.2 (constants.%assoc0.ba9)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @Action.%Action.type (%Action.type.f0c) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Self.loc4_28.1: @Action.%Action.type (%Action.type.f0c) = symbolic_binding Self, 1 [symbolic = %Self.loc4_28.2 (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Action.Op.decl: @Action.%Action.Op.type (%Action.Op.type.0af) = fn_decl @Action.Op [symbolic = @Action.%Action.Op (constants.%Action.Op.afb)] {
|
||||
// CHECK:STDOUT: %self.patt: @Action.Op.%pattern_type (%pattern_type.29e) = value_binding_pattern self [concrete]
|
||||
// CHECK:STDOUT: %self.param_patt: @Action.Op.%pattern_type (%pattern_type.29e) = value_param_pattern %self.patt, call_param0 [concrete]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @Action.Op.%Self.binding.as_type (%Self.binding.as_type) = value_param call_param0
|
||||
// CHECK:STDOUT: %.loc5_15.1: type = splice_block %.loc5_15.3 [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_15.2: @Action.Op.%Action.type (%Action.type.f0c) = specific_constant @Action.%Self.1, @Action(constants.%T) [symbolic = %Self (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %.loc5_15.2: @Action.Op.%Action.type (%Action.type.f0c) = specific_constant @Action.%Self.loc4_28.1, @Action(constants.%T) [symbolic = %Self (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Self.ref: @Action.Op.%Action.type (%Action.type.f0c) = name_ref Self, %.loc5_15.2 [symbolic = %Self (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Self.as_type: type = facet_access_type %Self.ref [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_15.3: type = converted %Self.ref, %Self.as_type [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
@@ -316,7 +316,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %assoc0.loc5_22.1: @Action.%Action.assoc_type (%Action.assoc_type.63f) = assoc_entity element0, %Action.Op.decl [symbolic = %assoc0.loc5_22.2 (constants.%assoc0.ba9)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc4_28.1
|
||||
// CHECK:STDOUT: .Op = %assoc0.loc5_22.1
|
||||
// CHECK:STDOUT: witness = (%Action.Op.decl)
|
||||
// CHECK:STDOUT: }
|
||||
@@ -361,7 +361,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: .Self = constants.%C
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @Action.Op(@Action.%T.loc4_18.2: type, @Action.%Self.1: @Action.%Action.type (%Action.type.f0c)) {
|
||||
// CHECK:STDOUT: generic fn @Action.Op(@Action.%T.loc4_18.2: type, @Action.%Self.loc4_28.1: @Action.%Action.type (%Action.type.f0c)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %Action.type: type = facet_type <@Action, @Action(%T)> [symbolic = %Action.type (constants.%Action.type.f0c)]
|
||||
// CHECK:STDOUT: %Self: @Action.Op.%Action.type (%Action.type.f0c) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self.e34)]
|
||||
@@ -407,7 +407,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Action.type => constants.%Action.type.74f
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.1b9
|
||||
// CHECK:STDOUT: %Self.loc4_28.2 => constants.%Self.1b9
|
||||
// CHECK:STDOUT: %Action.Op.type => constants.%Action.Op.type.54d
|
||||
// CHECK:STDOUT: %Action.Op => constants.%Action.Op.dba
|
||||
// CHECK:STDOUT: %Action.assoc_type => constants.%Action.assoc_type.4ee
|
||||
@@ -471,7 +471,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.1: <witness> = import_ref Main//action, loc9_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.54a = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//action, loc4_18, loaded [symbolic = @Action.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.0fd = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.0fd = import_ref Main//action, loc4_28, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.2c8: @Action.%Action.assoc_type (%Action.assoc_type.63f) = import_ref Main//action, loc5_22, loaded [symbolic = @Action.%assoc0 (constants.%assoc0.185053.2)]
|
||||
// CHECK:STDOUT: %Main.Op = import_ref Main//action, Op, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c2f: <witness> = import_ref Main//action, loc12_21, loaded [concrete = constants.%Action.impl_witness]
|
||||
@@ -481,7 +481,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Main.import_ref.99f: type = import_ref Main//action, loc12_19, loaded [concrete = constants.%Action.type.74f]
|
||||
// CHECK:STDOUT: %Main.import_ref.8c4 = import_ref Main//action, loc13_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//action, loc4_18, loaded [symbolic = @Action.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.e3c: @Action.%Action.type (%Action.type.f0c) = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Action.%Self (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Main.import_ref.e3c: @Action.%Action.type (%Action.type.f0c) = import_ref Main//action, loc4_28, loaded [symbolic = @Action.%Self (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Main.import_ref.35cfc8.1 = import_ref Main//action, loc5_22, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.38d: @Action.%Action.Op.type (%Action.Op.type.0af) = import_ref Main//action, loc5_22, loaded [symbolic = @Action.%Action.Op (constants.%Action.Op.afb)]
|
||||
// CHECK:STDOUT: %Main.import_ref.35cfc8.2 = import_ref Main//action, loc5_22, unloaded
|
||||
@@ -651,7 +651,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.1: <witness> = import_ref Main//action, loc9_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.54a = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//action, loc4_18, loaded [symbolic = @Action.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.0fd = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.0fd = import_ref Main//action, loc4_28, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.2c8: @Action.%Action.assoc_type (%Action.assoc_type.63f) = import_ref Main//action, loc5_22, loaded [symbolic = @Action.%assoc0 (constants.%assoc0.185)]
|
||||
// CHECK:STDOUT: %Main.Op = import_ref Main//action, Op, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.7bf = import_ref Main//action, loc12_21, unloaded
|
||||
@@ -661,7 +661,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Main.import_ref.99f: type = import_ref Main//action, loc12_19, loaded [concrete = constants.%Action.type.74f]
|
||||
// CHECK:STDOUT: %Main.import_ref.8c4 = import_ref Main//action, loc13_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//action, loc4_18, loaded [symbolic = @Action.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.e3c: @Action.%Action.type (%Action.type.f0c) = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Action.%Self (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Main.import_ref.e3c: @Action.%Action.type (%Action.type.f0c) = import_ref Main//action, loc4_28, loaded [symbolic = @Action.%Self (constants.%Self.e34)]
|
||||
// CHECK:STDOUT: %Main.import_ref.38d: @Action.%Action.Op.type (%Action.Op.type.0af) = import_ref Main//action, loc5_22, loaded [symbolic = @Action.%Action.Op (constants.%Action.Op.afb)]
|
||||
// CHECK:STDOUT: %Main.import_ref.35cfc8.1 = import_ref Main//action, loc5_22, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.3: <witness> = import_ref Main//action, loc10_10, loaded [concrete = constants.%complete_type]
|
||||
@@ -877,7 +877,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Factory.type: type = facet_type <@Factory, @Factory(%T.loc4_19.1)> [symbolic = %Factory.type (constants.%Factory.type.fc2)]
|
||||
// CHECK:STDOUT: %Self.2: @Factory.%Factory.type (%Factory.type.fc2) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Self.loc4_29.2: @Factory.%Factory.type (%Factory.type.fc2) = symbolic_binding Self, 1 [symbolic = %Self.loc4_29.2 (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Factory.Make.type: type = fn_type @Factory.Make, @Factory(%T.loc4_19.1) [symbolic = %Factory.Make.type (constants.%Factory.Make.type.b89)]
|
||||
// CHECK:STDOUT: %Factory.Make: @Factory.%Factory.Make.type (%Factory.Make.type.b89) = struct_value () [symbolic = %Factory.Make (constants.%Factory.Make.af4)]
|
||||
// CHECK:STDOUT: %Factory.assoc_type: type = assoc_entity_type @Factory, @Factory(%T.loc4_19.1) [symbolic = %Factory.assoc_type (constants.%Factory.assoc_type.f84)]
|
||||
@@ -887,7 +887,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %assoc1.loc8_31.2: @Factory.%Factory.assoc_type (%Factory.assoc_type.f84) = assoc_entity element1, %Factory.Method.decl [symbolic = %assoc1.loc8_31.2 (constants.%assoc1.45b)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @Factory.%Factory.type (%Factory.type.fc2) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Self.loc4_29.1: @Factory.%Factory.type (%Factory.type.fc2) = symbolic_binding Self, 1 [symbolic = %Self.loc4_29.2 (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Factory.Make.decl: @Factory.%Factory.Make.type (%Factory.Make.type.b89) = fn_decl @Factory.Make [symbolic = @Factory.%Factory.Make (constants.%Factory.Make.af4)] {
|
||||
// CHECK:STDOUT: %return.patt: @Factory.Make.%pattern_type (%pattern_type.e68) = return_slot_pattern [concrete]
|
||||
// CHECK:STDOUT: %return.param_patt: @Factory.Make.%pattern_type (%pattern_type.e68) = out_param_pattern %return.patt, call_param0 [concrete]
|
||||
@@ -906,7 +906,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, @Factory.%T.loc4_19.2 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %self.param: @Factory.Method.%Self.binding.as_type (%Self.binding.as_type) = value_param call_param0
|
||||
// CHECK:STDOUT: %.loc8_19.1: type = splice_block %.loc8_19.3 [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)] {
|
||||
// CHECK:STDOUT: %.loc8_19.2: @Factory.Method.%Factory.type (%Factory.type.fc2) = specific_constant @Factory.%Self.1, @Factory(constants.%T) [symbolic = %Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %.loc8_19.2: @Factory.Method.%Factory.type (%Factory.type.fc2) = specific_constant @Factory.%Self.loc4_29.1, @Factory(constants.%T) [symbolic = %Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Self.ref: @Factory.Method.%Factory.type (%Factory.type.fc2) = name_ref Self, %.loc8_19.2 [symbolic = %Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Self.as_type: type = facet_access_type %Self.ref [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
// CHECK:STDOUT: %.loc8_19.3: type = converted %Self.ref, %Self.as_type [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
@@ -918,7 +918,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %assoc1.loc8_31.1: @Factory.%Factory.assoc_type (%Factory.assoc_type.f84) = assoc_entity element1, %Factory.Method.decl [symbolic = %assoc1.loc8_31.2 (constants.%assoc1.45b)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc4_29.1
|
||||
// CHECK:STDOUT: .T = <poisoned>
|
||||
// CHECK:STDOUT: .Make = %assoc0.loc6_17.1
|
||||
// CHECK:STDOUT: .Method = %assoc1.loc8_31.1
|
||||
@@ -972,14 +972,14 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: .Self = constants.%B
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @Factory.Make(@Factory.%T.loc4_19.2: type, @Factory.%Self.1: @Factory.%Factory.type (%Factory.type.fc2)) {
|
||||
// CHECK:STDOUT: generic fn @Factory.Make(@Factory.%T.loc4_19.2: type, @Factory.%Self.loc4_29.1: @Factory.%Factory.type (%Factory.type.fc2)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %pattern_type: type = pattern_type %T [symbolic = %pattern_type (constants.%pattern_type.e68)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: fn() -> @Factory.Make.%T (%T);
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @Factory.Method(@Factory.%T.loc4_19.2: type, @Factory.%Self.1: @Factory.%Factory.type (%Factory.type.fc2)) {
|
||||
// CHECK:STDOUT: generic fn @Factory.Method(@Factory.%T.loc4_19.2: type, @Factory.%Self.loc4_29.1: @Factory.%Factory.type (%Factory.type.fc2)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %Factory.type: type = facet_type <@Factory, @Factory(%T)> [symbolic = %Factory.type (constants.%Factory.type.fc2)]
|
||||
// CHECK:STDOUT: %Self: @Factory.Method.%Factory.type (%Factory.type.fc2) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self.96a)]
|
||||
@@ -1017,7 +1017,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Factory.type => constants.%Factory.type.3cb
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.197
|
||||
// CHECK:STDOUT: %Self.loc4_29.2 => constants.%Self.197
|
||||
// CHECK:STDOUT: %Factory.Make.type => constants.%Factory.Make.type.c59
|
||||
// CHECK:STDOUT: %Factory.Make => constants.%Factory.Make.efe
|
||||
// CHECK:STDOUT: %Factory.assoc_type => constants.%Factory.assoc_type.579
|
||||
@@ -1101,7 +1101,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.1: <witness> = import_ref Main//factory, loc12_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.54a = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.1b4 = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.1b4 = import_ref Main//factory, loc4_29, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.2a0: @Factory.%Factory.assoc_type (%Factory.assoc_type.f84) = import_ref Main//factory, loc6_17, loaded [symbolic = @Factory.%assoc0 (constants.%assoc0.a6dba1.2)]
|
||||
// CHECK:STDOUT: %Main.import_ref.da9: @Factory.%Factory.assoc_type (%Factory.assoc_type.f84) = import_ref Main//factory, loc8_31, loaded [symbolic = @Factory.%assoc1 (constants.%assoc1.ed9a05.2)]
|
||||
// CHECK:STDOUT: %Main.Make = import_ref Main//factory, Make, unloaded
|
||||
@@ -1114,10 +1114,10 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Main.import_ref.22f = import_ref Main//factory, loc15_17, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.5a9 = import_ref Main//factory, loc16_31, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.85fa76.1: @Factory.%Factory.type (%Factory.type.fc2) = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Main.import_ref.85fa76.1: @Factory.%Factory.type (%Factory.type.fc2) = import_ref Main//factory, loc4_29, loaded [symbolic = @Factory.%Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Main.import_ref.b0ae2d.1 = import_ref Main//factory, loc6_17, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.3: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.85fa76.2: @Factory.%Factory.type (%Factory.type.fc2) = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Main.import_ref.85fa76.2: @Factory.%Factory.type (%Factory.type.fc2) = import_ref Main//factory, loc4_29, loaded [symbolic = @Factory.%Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Main.import_ref.b6f0d8.1 = import_ref Main//factory, loc8_31, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.b49: @Factory.%Factory.Make.type (%Factory.Make.type.b89) = import_ref Main//factory, loc6_17, loaded [symbolic = @Factory.%Factory.Make (constants.%Factory.Make.af4)]
|
||||
// CHECK:STDOUT: %Main.import_ref.a6b: @Factory.%Factory.Method.type (%Factory.Method.type.159) = import_ref Main//factory, loc8_31, loaded [symbolic = @Factory.%Factory.Method (constants.%Factory.Method.8f7)]
|
||||
@@ -1356,7 +1356,7 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.1: <witness> = import_ref Main//factory, loc12_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.54a = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.1b4 = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.1b4 = import_ref Main//factory, loc4_29, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.2a0: @Factory.%Factory.assoc_type (%Factory.assoc_type.f84) = import_ref Main//factory, loc6_17, loaded [symbolic = @Factory.%assoc0 (constants.%assoc0.a6d)]
|
||||
// CHECK:STDOUT: %Main.import_ref.da9: @Factory.%Factory.assoc_type (%Factory.assoc_type.f84) = import_ref Main//factory, loc8_31, loaded [symbolic = @Factory.%assoc1 (constants.%assoc1.ed9)]
|
||||
// CHECK:STDOUT: %Main.Make = import_ref Main//factory, Make, unloaded
|
||||
@@ -1369,10 +1369,10 @@ fn InstanceC(a: A) -> C {
|
||||
// CHECK:STDOUT: %Main.import_ref.22f = import_ref Main//factory, loc15_17, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.5a9 = import_ref Main//factory, loc16_31, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.85fa76.1: @Factory.%Factory.type (%Factory.type.fc2) = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Main.import_ref.85fa76.1: @Factory.%Factory.type (%Factory.type.fc2) = import_ref Main//factory, loc4_29, loaded [symbolic = @Factory.%Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Main.import_ref.b49: @Factory.%Factory.Make.type (%Factory.Make.type.b89) = import_ref Main//factory, loc6_17, loaded [symbolic = @Factory.%Factory.Make (constants.%Factory.Make.af4)]
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.3: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.85fa76.2: @Factory.%Factory.type (%Factory.type.fc2) = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Main.import_ref.85fa76.2: @Factory.%Factory.type (%Factory.type.fc2) = import_ref Main//factory, loc4_29, loaded [symbolic = @Factory.%Self (constants.%Self.96a)]
|
||||
// CHECK:STDOUT: %Main.import_ref.a6b: @Factory.%Factory.Method.type (%Factory.Method.type.159) = import_ref Main//factory, loc8_31, loaded [symbolic = @Factory.%Factory.Method (constants.%Factory.Method.8f7)]
|
||||
// CHECK:STDOUT: %Main.import_ref.b0ae2d.1 = import_ref Main//factory, loc6_17, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.b6f0d8.1 = import_ref Main//factory, loc8_31, unloaded
|
||||
|
||||
+14
-14
@@ -920,21 +920,21 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %HasF.type: type = facet_type <@HasF, @HasF(%T.loc4_16.1)> [symbolic = %HasF.type (constants.%HasF.type.59b)]
|
||||
// CHECK:STDOUT: %Self.2: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.loc4_26.2: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.loc4_26.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %HasF.F.type: type = fn_type @HasF.F, @HasF(%T.loc4_16.1) [symbolic = %HasF.F.type (constants.%HasF.F.type.940)]
|
||||
// CHECK:STDOUT: %HasF.F: @HasF.%HasF.F.type (%HasF.F.type.940) = struct_value () [symbolic = %HasF.F (constants.%HasF.F.86b)]
|
||||
// CHECK:STDOUT: %HasF.assoc_type: type = assoc_entity_type @HasF, @HasF(%T.loc4_16.1) [symbolic = %HasF.assoc_type (constants.%HasF.assoc_type.1aa)]
|
||||
// CHECK:STDOUT: %assoc0.loc5_21.2: @HasF.%HasF.assoc_type (%HasF.assoc_type.1aa) = assoc_entity element0, %HasF.F.decl [symbolic = %assoc0.loc5_21.2 (constants.%assoc0.bd3)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.loc4_26.1: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.loc4_26.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %HasF.F.decl: @HasF.%HasF.F.type (%HasF.F.type.940) = fn_decl @HasF.F [symbolic = @HasF.%HasF.F (constants.%HasF.F.86b)] {
|
||||
// CHECK:STDOUT: %self.patt: @HasF.F.%pattern_type (%pattern_type.429) = value_binding_pattern self [concrete]
|
||||
// CHECK:STDOUT: %self.param_patt: @HasF.F.%pattern_type (%pattern_type.429) = value_param_pattern %self.patt, call_param0 [concrete]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @HasF.F.%Self.binding.as_type (%Self.binding.as_type) = value_param call_param0
|
||||
// CHECK:STDOUT: %.loc5_14.1: type = splice_block %.loc5_14.3 [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_14.2: @HasF.F.%HasF.type (%HasF.type.59b) = specific_constant @HasF.%Self.1, @HasF(constants.%T) [symbolic = %Self (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %.loc5_14.2: @HasF.F.%HasF.type (%HasF.type.59b) = specific_constant @HasF.%Self.loc4_26.1, @HasF(constants.%T) [symbolic = %Self (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.ref: @HasF.F.%HasF.type (%HasF.type.59b) = name_ref Self, %.loc5_14.2 [symbolic = %Self (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.as_type: type = facet_access_type %Self.ref [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_14.3: type = converted %Self.ref, %Self.as_type [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
@@ -944,7 +944,7 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: %assoc0.loc5_21.1: @HasF.%HasF.assoc_type (%HasF.assoc_type.1aa) = assoc_entity element0, %HasF.F.decl [symbolic = %assoc0.loc5_21.2 (constants.%assoc0.bd3)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc4_26.1
|
||||
// CHECK:STDOUT: .F = %assoc0.loc5_21.1
|
||||
// CHECK:STDOUT: witness = (%HasF.F.decl)
|
||||
// CHECK:STDOUT: }
|
||||
@@ -976,7 +976,7 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @HasF.F(@HasF.%T.loc4_16.2: type, @HasF.%Self.1: @HasF.%HasF.type (%HasF.type.59b)) {
|
||||
// CHECK:STDOUT: generic fn @HasF.F(@HasF.%T.loc4_16.2: type, @HasF.%Self.loc4_26.1: @HasF.%HasF.type (%HasF.type.59b)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %HasF.type: type = facet_type <@HasF, @HasF(%T)> [symbolic = %HasF.type (constants.%HasF.type.59b)]
|
||||
// CHECK:STDOUT: %Self: @HasF.F.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self.69f)]
|
||||
@@ -1017,7 +1017,7 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %HasF.type => constants.%HasF.type.59b
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.69f
|
||||
// CHECK:STDOUT: %Self.loc4_26.2 => constants.%Self.69f
|
||||
// CHECK:STDOUT: %HasF.F.type => constants.%HasF.F.type.940
|
||||
// CHECK:STDOUT: %HasF.F => constants.%HasF.F.86b
|
||||
// CHECK:STDOUT: %HasF.assoc_type => constants.%HasF.assoc_type.1aa
|
||||
@@ -1058,7 +1058,7 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %HasF.type => constants.%HasF.type.48b
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.82e
|
||||
// CHECK:STDOUT: %Self.loc4_26.2 => constants.%Self.82e
|
||||
// CHECK:STDOUT: %HasF.F.type => constants.%HasF.F.type.b0b
|
||||
// CHECK:STDOUT: %HasF.F => constants.%HasF.F.418
|
||||
// CHECK:STDOUT: %HasF.assoc_type => constants.%HasF.assoc_type.9e4
|
||||
@@ -1335,21 +1335,21 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %HasF.type: type = facet_type <@HasF, @HasF(%T.loc4_16.1)> [symbolic = %HasF.type (constants.%HasF.type.59b)]
|
||||
// CHECK:STDOUT: %Self.2: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.loc4_26.2: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.loc4_26.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %HasF.F.type: type = fn_type @HasF.F, @HasF(%T.loc4_16.1) [symbolic = %HasF.F.type (constants.%HasF.F.type.940)]
|
||||
// CHECK:STDOUT: %HasF.F: @HasF.%HasF.F.type (%HasF.F.type.940) = struct_value () [symbolic = %HasF.F (constants.%HasF.F.86b)]
|
||||
// CHECK:STDOUT: %HasF.assoc_type: type = assoc_entity_type @HasF, @HasF(%T.loc4_16.1) [symbolic = %HasF.assoc_type (constants.%HasF.assoc_type.1aa)]
|
||||
// CHECK:STDOUT: %assoc0.loc5_21.2: @HasF.%HasF.assoc_type (%HasF.assoc_type.1aa) = assoc_entity element0, %HasF.F.decl [symbolic = %assoc0.loc5_21.2 (constants.%assoc0.bd3)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.loc4_26.1: @HasF.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self.loc4_26.2 (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %HasF.F.decl: @HasF.%HasF.F.type (%HasF.F.type.940) = fn_decl @HasF.F [symbolic = @HasF.%HasF.F (constants.%HasF.F.86b)] {
|
||||
// CHECK:STDOUT: %self.patt: @HasF.F.%pattern_type (%pattern_type.429) = value_binding_pattern self [concrete]
|
||||
// CHECK:STDOUT: %self.param_patt: @HasF.F.%pattern_type (%pattern_type.429) = value_param_pattern %self.patt, call_param0 [concrete]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @HasF.F.%Self.binding.as_type (%Self.binding.as_type) = value_param call_param0
|
||||
// CHECK:STDOUT: %.loc5_14.1: type = splice_block %.loc5_14.3 [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_14.2: @HasF.F.%HasF.type (%HasF.type.59b) = specific_constant @HasF.%Self.1, @HasF(constants.%T) [symbolic = %Self (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %.loc5_14.2: @HasF.F.%HasF.type (%HasF.type.59b) = specific_constant @HasF.%Self.loc4_26.1, @HasF(constants.%T) [symbolic = %Self (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.ref: @HasF.F.%HasF.type (%HasF.type.59b) = name_ref Self, %.loc5_14.2 [symbolic = %Self (constants.%Self.69f)]
|
||||
// CHECK:STDOUT: %Self.as_type: type = facet_access_type %Self.ref [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_14.3: type = converted %Self.ref, %Self.as_type [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
@@ -1359,7 +1359,7 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: %assoc0.loc5_21.1: @HasF.%HasF.assoc_type (%HasF.assoc_type.1aa) = assoc_entity element0, %HasF.F.decl [symbolic = %assoc0.loc5_21.2 (constants.%assoc0.bd3)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc4_26.1
|
||||
// CHECK:STDOUT: .F = %assoc0.loc5_21.1
|
||||
// CHECK:STDOUT: witness = (%HasF.F.decl)
|
||||
// CHECK:STDOUT: }
|
||||
@@ -1407,7 +1407,7 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: .Self = constants.%B
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @HasF.F(@HasF.%T.loc4_16.2: type, @HasF.%Self.1: @HasF.%HasF.type (%HasF.type.59b)) {
|
||||
// CHECK:STDOUT: generic fn @HasF.F(@HasF.%T.loc4_16.2: type, @HasF.%Self.loc4_26.1: @HasF.%HasF.type (%HasF.type.59b)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %HasF.type: type = facet_type <@HasF, @HasF(%T)> [symbolic = %HasF.type (constants.%HasF.type.59b)]
|
||||
// CHECK:STDOUT: %Self: @HasF.F.%HasF.type (%HasF.type.59b) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self.69f)]
|
||||
@@ -1446,7 +1446,7 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %HasF.type => constants.%HasF.type.59b
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.69f
|
||||
// CHECK:STDOUT: %Self.loc4_26.2 => constants.%Self.69f
|
||||
// CHECK:STDOUT: %HasF.F.type => constants.%HasF.F.type.940
|
||||
// CHECK:STDOUT: %HasF.F => constants.%HasF.F.86b
|
||||
// CHECK:STDOUT: %HasF.assoc_type => constants.%HasF.assoc_type.1aa
|
||||
@@ -1490,7 +1490,7 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %HasF.type => constants.%HasF.type.296
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.3f1
|
||||
// CHECK:STDOUT: %Self.loc4_26.2 => constants.%Self.3f1
|
||||
// CHECK:STDOUT: %HasF.F.type => constants.%HasF.F.type.1c6
|
||||
// CHECK:STDOUT: %HasF.F => constants.%HasF.F.7cf
|
||||
// CHECK:STDOUT: %HasF.assoc_type => constants.%HasF.assoc_type.1af
|
||||
|
||||
+34
-34
@@ -389,10 +389,10 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageA.import_ref.8f2: <witness> = import_ref PackageA//default, loc8_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageA.HasF: type = import_ref PackageA//default, HasF, loaded [concrete = constants.%HasF.type]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2fb = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2fb = import_ref PackageA//default, loc4_16, unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.c63 = import_ref PackageA//default, loc5_21, unloaded
|
||||
// CHECK:STDOUT: %PackageA.F: %HasF.F.type = import_ref PackageA//default, F, loaded [concrete = constants.%HasF.F]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.512: %HasF.type = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.9ba]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.512: %HasF.type = import_ref PackageA//default, loc4_16, loaded [symbolic = constants.%Self.9ba]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -617,11 +617,11 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageA.import_ref.8f2: <witness> = import_ref PackageA//default, loc8_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageA.HasF: type = import_ref PackageA//default, HasF, loaded [concrete = constants.%HasF.type]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2fb = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2fb = import_ref PackageA//default, loc4_16, unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.b36: %HasF.assoc_type = import_ref PackageA//default, loc5_21, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %PackageA.F = import_ref PackageA//default, F, unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.ab2: %HasF.F.type = import_ref PackageA//default, loc5_21, loaded [concrete = constants.%HasF.F]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.512: %HasF.type = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.512: %HasF.type = import_ref PackageA//default, loc4_16, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.a12: <witness> = import_ref PackageA//default, loc11_16, loaded [concrete = constants.%HasF.impl_witness]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.29a: type = import_ref PackageA//default, loc11_6, loaded [concrete = constants.%C]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.e8c: type = import_ref PackageA//default, loc11_11, loaded [concrete = constants.%HasF.type]
|
||||
@@ -740,11 +740,11 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageB.import_ref.8f2: <witness> = import_ref PackageB//default, loc10_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.cab = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageA.HasF: type = import_ref PackageA//default, HasF, loaded [concrete = constants.%HasF.type]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2fb = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2fb = import_ref PackageA//default, loc4_16, unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.b36: %HasF.assoc_type = import_ref PackageA//default, loc5_21, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %PackageA.F = import_ref PackageA//default, F, unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.ab2: %HasF.F.type = import_ref PackageA//default, loc5_21, loaded [concrete = constants.%HasF.F]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.512: %HasF.type = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.512: %HasF.type = import_ref PackageA//default, loc4_16, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.54d = import_ref PackageA//default, loc11_16, unloaded
|
||||
// CHECK:STDOUT: %PackageA.import_ref.8f2: <witness> = import_ref PackageA//default, loc8_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
@@ -882,11 +882,11 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageA.import_ref.8f2: <witness> = import_ref PackageA//default, loc8_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageB.HasG: type = import_ref PackageB//default, HasG, loaded [concrete = constants.%HasG.type]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.103 = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageB.import_ref.103 = import_ref PackageB//default, loc6_16, unloaded
|
||||
// CHECK:STDOUT: %PackageB.import_ref.6c2: %HasG.assoc_type = import_ref PackageB//default, loc7_21, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %PackageB.G = import_ref PackageB//default, G, unloaded
|
||||
// CHECK:STDOUT: %PackageB.import_ref.70a: %HasG.G.type = import_ref PackageB//default, loc7_21, loaded [concrete = constants.%HasG.G]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.175: %HasG.type = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.175: %HasG.type = import_ref PackageB//default, loc6_16, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.f06: <witness> = import_ref PackageB//default, loc13_25, loaded [concrete = constants.%HasG.impl_witness]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.dfb: type = import_ref PackageB//default, loc13_14, loaded [concrete = constants.%C]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.cee586.1: type = import_ref PackageB//default, loc13_20, loaded [concrete = constants.%HasG.type]
|
||||
@@ -1021,11 +1021,11 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageB.import_ref.8f2: <witness> = import_ref PackageB//default, loc10_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.cab = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageB.HasG: type = import_ref PackageB//default, HasG, loaded [concrete = constants.%HasG.type]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.103 = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageB.import_ref.103 = import_ref PackageB//default, loc6_16, unloaded
|
||||
// CHECK:STDOUT: %PackageB.import_ref.6c2: %HasG.assoc_type = import_ref PackageB//default, loc7_21, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %PackageB.G = import_ref PackageB//default, G, unloaded
|
||||
// CHECK:STDOUT: %PackageB.import_ref.70a: %HasG.G.type = import_ref PackageB//default, loc7_21, loaded [concrete = constants.%HasG.G]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.175: %HasG.type = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.175: %HasG.type = import_ref PackageB//default, loc6_16, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.f94 = import_ref PackageB//default, loc13_25, unloaded
|
||||
// CHECK:STDOUT: %PackageB.import_ref.8db: <witness> = import_ref PackageB//default, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %PackageB.import_ref.6a9 = import_ref PackageB//default, inst{{[0-9A-F]+}} [indirect], unloaded
|
||||
@@ -1254,11 +1254,11 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: import PackageAssociatedInterface//default
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.Z: type = import_ref PackageAssociatedInterface//default, Z, loaded [concrete = constants.%Z.type]
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.462 = import_ref PackageAssociatedInterface//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.462 = import_ref PackageAssociatedInterface//default, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.609: %Z.assoc_type = import_ref PackageAssociatedInterface//default, loc5_21, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.H = import_ref PackageAssociatedInterface//default, H, unloaded
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.250: %Z.H.type = import_ref PackageAssociatedInterface//default, loc5_21, loaded [concrete = constants.%Z.H]
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.837: %Z.type = import_ref PackageAssociatedInterface//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.837: %Z.type = import_ref PackageAssociatedInterface//default, loc4_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.915: <witness> = import_ref PackageAssociatedInterface//default, loc8_14, loaded [concrete = constants.%Z.impl_witness]
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.e5c: type = import_ref PackageAssociatedInterface//default, loc8_7, loaded [concrete = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %PackageAssociatedInterface.import_ref.df1: type = import_ref PackageAssociatedInterface//default, loc8_12, loaded [concrete = constants.%Z.type]
|
||||
@@ -1502,10 +1502,10 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.8f2: <witness> = import_ref PackageHasParam//default, loc4_34, loaded [concrete = constants.%complete_type.357]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.f6b = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.Y: type = import_ref PackageHasParam//default, Y, loaded [concrete = constants.%Y.type]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.581 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.581 = import_ref PackageHasParam//default, loc6_13, unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.f69: %Y.assoc_type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%assoc0.494]
|
||||
// CHECK:STDOUT: %PackageHasParam.K: %Y.K.type = import_ref PackageHasParam//default, K, loaded [concrete = constants.%Y.K]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.3d5: %Y.type = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.ad2]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.3d5: %Y.type = import_ref PackageHasParam//default, loc6_13, loaded [symbolic = constants.%Self.ad2]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.ce2: %Y.K.type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%Y.K]
|
||||
// CHECK:STDOUT: %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -1543,13 +1543,13 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %GenericInterface.type: type = facet_type <@GenericInterface, @GenericInterface(%U.loc6_28.1)> [symbolic = %GenericInterface.type (constants.%GenericInterface.type.114)]
|
||||
// CHECK:STDOUT: %Self.2: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.1f6)]
|
||||
// CHECK:STDOUT: %Self.loc6_38.2: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114) = symbolic_binding Self, 1 [symbolic = %Self.loc6_38.2 (constants.%Self.1f6)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.1f6)]
|
||||
// CHECK:STDOUT: %Self.loc6_38.1: @GenericInterface.%GenericInterface.type (%GenericInterface.type.114) = symbolic_binding Self, 1 [symbolic = %Self.loc6_38.2 (constants.%Self.1f6)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc6_38.1
|
||||
// CHECK:STDOUT: witness = ()
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -1738,13 +1738,13 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.f6b = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageGenericInterface.GenericInterface: %GenericInterface.type.0da = import_ref PackageGenericInterface//default, GenericInterface, loaded [concrete = constants.%GenericInterface.generic]
|
||||
// CHECK:STDOUT: %PackageGenericInterface.import_ref.efc: type = import_ref PackageGenericInterface//default, loc6_28, loaded [symbolic = @GenericInterface.%U (constants.%U)]
|
||||
// CHECK:STDOUT: %PackageGenericInterface.import_ref.4d7 = import_ref PackageGenericInterface//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageGenericInterface.import_ref.4d7 = import_ref PackageGenericInterface//default, loc6_38, unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.Y: type = import_ref PackageHasParam//default, Y, loaded [concrete = constants.%Y.type]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.581 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.581 = import_ref PackageHasParam//default, loc6_13, unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.f69: %Y.assoc_type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%assoc0.494]
|
||||
// CHECK:STDOUT: %PackageHasParam.K = import_ref PackageHasParam//default, K, unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.ce2: %Y.K.type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%Y.K]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.3d5: %Y.type = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.ad2]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.3d5: %Y.type = import_ref PackageHasParam//default, loc6_13, loaded [symbolic = constants.%Self.ad2]
|
||||
// CHECK:STDOUT: %PackageGenericInterface.import_ref.ba6: <witness> = import_ref PackageGenericInterface//default, loc8_70, loaded [concrete = constants.%Y.impl_witness]
|
||||
// CHECK:STDOUT: %PackageGenericInterface.import_ref.321: type = import_ref PackageGenericInterface//default, loc8_47, loaded [concrete = constants.%AnyParam.861]
|
||||
// CHECK:STDOUT: %PackageGenericInterface.import_ref.ca6: type = import_ref PackageGenericInterface//default, loc8_67, loaded [concrete = constants.%Y.type]
|
||||
@@ -1943,10 +1943,10 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.8f2: <witness> = import_ref PackageHasParam//default, loc4_34, loaded [concrete = constants.%complete_type.357]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.f6b = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.Y: type = import_ref PackageHasParam//default, Y, loaded [concrete = constants.%Y.type]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.581 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.581 = import_ref PackageHasParam//default, loc6_13, unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.f69: %Y.assoc_type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%assoc0.494]
|
||||
// CHECK:STDOUT: %PackageHasParam.K: %Y.K.type = import_ref PackageHasParam//default, K, loaded [concrete = constants.%Y.K]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.3d5: %Y.type = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.ad2]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.3d5: %Y.type = import_ref PackageHasParam//default, loc6_13, loaded [symbolic = constants.%Self.ad2]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.ce2: %Y.K.type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%Y.K]
|
||||
// CHECK:STDOUT: %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -2178,11 +2178,11 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %PackageGenericClass.import_ref.8f2: <witness> = import_ref PackageGenericClass//default, loc6_31, loaded [concrete = constants.%complete_type.357]
|
||||
// CHECK:STDOUT: %PackageGenericClass.import_ref.ec6 = import_ref PackageGenericClass//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.Y: type = import_ref PackageHasParam//default, Y, loaded [concrete = constants.%Y.type]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.581 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.581 = import_ref PackageHasParam//default, loc6_13, unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.f69: %Y.assoc_type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%assoc0.494]
|
||||
// CHECK:STDOUT: %PackageHasParam.K = import_ref PackageHasParam//default, K, unloaded
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.ce2: %Y.K.type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%Y.K]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.3d5: %Y.type = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.ad2]
|
||||
// CHECK:STDOUT: %PackageHasParam.import_ref.3d5: %Y.type = import_ref PackageHasParam//default, loc6_13, loaded [symbolic = constants.%Self.ad2]
|
||||
// CHECK:STDOUT: %PackageGenericClass.import_ref.812: <witness> = import_ref PackageGenericClass//default, loc8_66, loaded [concrete = constants.%Y.impl_witness]
|
||||
// CHECK:STDOUT: %PackageGenericClass.import_ref.a0e: type = import_ref PackageGenericClass//default, loc8_43, loaded [concrete = constants.%AnyParam.d71]
|
||||
// CHECK:STDOUT: %PackageGenericClass.import_ref.ca6: type = import_ref PackageGenericClass//default, loc8_63, loaded [concrete = constants.%Y.type]
|
||||
@@ -2615,20 +2615,20 @@ fn Test(c: HasExtraInterfaces.C(type)) {
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.8f2: <witness> = import_ref HasExtraInterfaces//default, loc13_20, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.034 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.I: type = import_ref HasExtraInterfaces//default, I, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.8df = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.8df = import_ref HasExtraInterfaces//default, loc14_13, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.be9: %I.assoc_type = import_ref HasExtraInterfaces//default, loc14_33, loaded [concrete = constants.%assoc0]
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.F = import_ref HasExtraInterfaces//default, F, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.d54: %I.F.type = import_ref HasExtraInterfaces//default, loc14_33, loaded [concrete = constants.%I.F]
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.909: %I.type = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.e04]
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.909: %I.type = import_ref HasExtraInterfaces//default, loc14_13, loaded [symbolic = constants.%Self.e04]
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.80c = import_ref HasExtraInterfaces//default, loc16_79, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.c8c = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.591 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.16e = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.e5e = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.178 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.e5d = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.7fd = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.642 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.c8c = import_ref HasExtraInterfaces//default, loc11_18, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.591 = import_ref HasExtraInterfaces//default, loc10_18, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.16e = import_ref HasExtraInterfaces//default, loc9_18, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.e5e = import_ref HasExtraInterfaces//default, loc8_18, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.178 = import_ref HasExtraInterfaces//default, loc7_18, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.e5d = import_ref HasExtraInterfaces//default, loc6_18, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.7fd = import_ref HasExtraInterfaces//default, loc5_18, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.642 = import_ref HasExtraInterfaces//default, loc4_18, unloaded
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.ef7: type = import_ref HasExtraInterfaces//default, loc16_72, loaded [concrete = constants.%C.c07]
|
||||
// CHECK:STDOUT: %HasExtraInterfaces.import_ref.301: type = import_ref HasExtraInterfaces//default, loc16_77, loaded [concrete = constants.%I.type]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+12
-12
@@ -203,24 +203,24 @@ fn F() {
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %OuterParam: type = symbolic_binding OuterParam, 0 [symbolic = %OuterParam (constants.%OuterParam)]
|
||||
// CHECK:STDOUT: %Y.type: type = facet_type <@Y, @Y(%OuterParam)> [symbolic = %Y.type (constants.%Y.type.c70)]
|
||||
// CHECK:STDOUT: %Self.2: @Y.%Y.type (%Y.type.c70) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.2a9)]
|
||||
// CHECK:STDOUT: %Self.loc50_15.2: @Y.%Y.type (%Y.type.c70) = symbolic_binding Self, 1 [symbolic = %Self.loc50_15.2 (constants.%Self.2a9)]
|
||||
// CHECK:STDOUT: %Y.assoc_type: type = assoc_entity_type @Y, @Y(%OuterParam) [symbolic = %Y.assoc_type (constants.%Y.assoc_type.f4b)]
|
||||
// CHECK:STDOUT: %assoc0: @Y.%Y.assoc_type (%Y.assoc_type.f4b) = assoc_entity element0, %T [symbolic = %assoc0 (constants.%assoc0.97a)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @Y.%Y.type (%Y.type.c70) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.2a9)]
|
||||
// CHECK:STDOUT: %Self.loc50_15.1: @Y.%Y.type (%Y.type.c70) = symbolic_binding Self, 1 [symbolic = %Self.loc50_15.2 (constants.%Self.2a9)]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {
|
||||
// CHECK:STDOUT: %assoc0: @Y.%Y.assoc_type (%Y.assoc_type.f4b) = assoc_entity element0, @Y.%T [symbolic = @Y.%assoc0 (constants.%assoc0.97a)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc50_15.1
|
||||
// CHECK:STDOUT: .T = @T.%assoc0
|
||||
// CHECK:STDOUT: witness = (%T)
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic assoc_const @T(@Outer.%OuterParam.loc49_13.2: type, @Y.%Self.1: @Y.%Y.type (%Y.type.c70)) {
|
||||
// CHECK:STDOUT: generic assoc_const @T(@Outer.%OuterParam.loc49_13.2: type, @Y.%Self.loc50_15.1: @Y.%Y.type (%Y.type.c70)) {
|
||||
// CHECK:STDOUT: assoc_const T:! type;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -325,7 +325,7 @@ fn F() {
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %OuterParam => constants.%OuterParam
|
||||
// CHECK:STDOUT: %Y.type => constants.%Y.type.c70
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.2a9
|
||||
// CHECK:STDOUT: %Self.loc50_15.2 => constants.%Self.2a9
|
||||
// CHECK:STDOUT: %Y.assoc_type => constants.%Y.assoc_type.f4b
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.97a
|
||||
// CHECK:STDOUT: }
|
||||
@@ -362,7 +362,7 @@ fn F() {
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %OuterParam => constants.%empty_tuple.type
|
||||
// CHECK:STDOUT: %Y.type => constants.%Y.type.c91
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.d55
|
||||
// CHECK:STDOUT: %Self.loc50_15.2 => constants.%Self.d55
|
||||
// CHECK:STDOUT: %Y.assoc_type => constants.%Y.assoc_type.06e
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.0a6
|
||||
// CHECK:STDOUT: }
|
||||
@@ -526,24 +526,24 @@ fn F() {
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %OuterParam: %Z1.type = symbolic_binding OuterParam, 0 [symbolic = %OuterParam (constants.%OuterParam)]
|
||||
// CHECK:STDOUT: %Y.type: type = facet_type <@Y, @Y(%OuterParam)> [symbolic = %Y.type (constants.%Y.type.bfe)]
|
||||
// CHECK:STDOUT: %Self.2: @Y.%Y.type (%Y.type.bfe) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.6b9)]
|
||||
// CHECK:STDOUT: %Self.loc7_15.2: @Y.%Y.type (%Y.type.bfe) = symbolic_binding Self, 1 [symbolic = %Self.loc7_15.2 (constants.%Self.6b9)]
|
||||
// CHECK:STDOUT: %Y.assoc_type: type = assoc_entity_type @Y, @Y(%OuterParam) [symbolic = %Y.assoc_type (constants.%Y.assoc_type.476)]
|
||||
// CHECK:STDOUT: %assoc0: @Y.%Y.assoc_type (%Y.assoc_type.476) = assoc_entity element0, %T [symbolic = %assoc0 (constants.%assoc0.1b6)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @Y.%Y.type (%Y.type.bfe) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.6b9)]
|
||||
// CHECK:STDOUT: %Self.loc7_15.1: @Y.%Y.type (%Y.type.bfe) = symbolic_binding Self, 1 [symbolic = %Self.loc7_15.2 (constants.%Self.6b9)]
|
||||
// CHECK:STDOUT: %T: type = assoc_const_decl @T [concrete] {
|
||||
// CHECK:STDOUT: %assoc0: @Y.%Y.assoc_type (%Y.assoc_type.476) = assoc_entity element0, @Y.%T [symbolic = @Y.%assoc0 (constants.%assoc0.1b6)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc7_15.1
|
||||
// CHECK:STDOUT: .T = @T.%assoc0
|
||||
// CHECK:STDOUT: witness = (%T)
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic assoc_const @T(@Outer.%OuterParam.loc6_13.2: %Z1.type, @Y.%Self.1: @Y.%Y.type (%Y.type.bfe)) {
|
||||
// CHECK:STDOUT: generic assoc_const @T(@Outer.%OuterParam.loc6_13.2: %Z1.type, @Y.%Self.loc7_15.1: @Y.%Y.type (%Y.type.bfe)) {
|
||||
// CHECK:STDOUT: assoc_const T:! type;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -731,7 +731,7 @@ fn F() {
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %OuterParam => constants.%OuterParam
|
||||
// CHECK:STDOUT: %Y.type => constants.%Y.type.bfe
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.6b9
|
||||
// CHECK:STDOUT: %Self.loc7_15.2 => constants.%Self.6b9
|
||||
// CHECK:STDOUT: %Y.assoc_type => constants.%Y.assoc_type.476
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.1b6
|
||||
// CHECK:STDOUT: }
|
||||
@@ -787,7 +787,7 @@ fn F() {
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %OuterParam => constants.%Z1.facet
|
||||
// CHECK:STDOUT: %Y.type => constants.%Y.type.048
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.ece
|
||||
// CHECK:STDOUT: %Self.loc7_15.2 => constants.%Self.ece
|
||||
// CHECK:STDOUT: %Y.assoc_type => constants.%Y.assoc_type.38c
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.84b
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+12
-12
@@ -250,24 +250,24 @@ fn F[T:! Ptr](var t: T) -> T.(Ptr.Type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Z.type: type = facet_type <@Z, @Z(%T.loc3_13.1)> [symbolic = %Z.type (constants.%Z.type.4d7)]
|
||||
// CHECK:STDOUT: %Self.2: @Z.%Z.type (%Z.type.4d7) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.c41)]
|
||||
// CHECK:STDOUT: %Self.loc3_23.2: @Z.%Z.type (%Z.type.4d7) = symbolic_binding Self, 1 [symbolic = %Self.loc3_23.2 (constants.%Self.c41)]
|
||||
// CHECK:STDOUT: %Z.assoc_type: type = assoc_entity_type @Z, @Z(%T.loc3_13.1) [symbolic = %Z.assoc_type (constants.%Z.assoc_type.815)]
|
||||
// CHECK:STDOUT: %assoc0: @Z.%Z.assoc_type (%Z.assoc_type.815) = assoc_entity element0, %X [symbolic = %assoc0 (constants.%assoc0.6bf)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @Z.%Z.type (%Z.type.4d7) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.c41)]
|
||||
// CHECK:STDOUT: %Self.loc3_23.1: @Z.%Z.type (%Z.type.4d7) = symbolic_binding Self, 1 [symbolic = %Self.loc3_23.2 (constants.%Self.c41)]
|
||||
// CHECK:STDOUT: %X: type = assoc_const_decl @X [concrete] {
|
||||
// CHECK:STDOUT: %assoc0: @Z.%Z.assoc_type (%Z.assoc_type.815) = assoc_entity element0, @Z.%X [symbolic = @Z.%assoc0 (constants.%assoc0.6bf)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc3_23.1
|
||||
// CHECK:STDOUT: .X = @X.%assoc0
|
||||
// CHECK:STDOUT: witness = (%X)
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic assoc_const @X(@Z.%T.loc3_13.2: type, @Z.%Self.1: @Z.%Z.type (%Z.type.4d7)) {
|
||||
// CHECK:STDOUT: generic assoc_const @X(@Z.%T.loc3_13.2: type, @Z.%Self.loc3_23.1: @Z.%Z.type (%Z.type.4d7)) {
|
||||
// CHECK:STDOUT: assoc_const X:! type;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -355,7 +355,7 @@ fn F[T:! Ptr](var t: T) -> T.(Ptr.Type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Z.type => constants.%Z.type.c56
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.af2
|
||||
// CHECK:STDOUT: %Self.loc3_23.2 => constants.%Self.af2
|
||||
// CHECK:STDOUT: %Z.assoc_type => constants.%Z.assoc_type.fae
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.175
|
||||
// CHECK:STDOUT: }
|
||||
@@ -383,7 +383,7 @@ fn F[T:! Ptr](var t: T) -> T.(Ptr.Type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Z.type => constants.%Z.type.a71
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.6ec
|
||||
// CHECK:STDOUT: %Self.loc3_23.2 => constants.%Self.6ec
|
||||
// CHECK:STDOUT: %Z.assoc_type => constants.%Z.assoc_type.252
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.ea4
|
||||
// CHECK:STDOUT: }
|
||||
@@ -591,18 +591,18 @@ fn F[T:! Ptr](var t: T) -> T.(Ptr.Type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Z.type: type = facet_type <@Z, @Z(%T.loc3_13.1)> [symbolic = %Z.type (constants.%Z.type.4d7)]
|
||||
// CHECK:STDOUT: %Self.2: @Z.%Z.type (%Z.type.4d7) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.c41)]
|
||||
// CHECK:STDOUT: %Self.loc3_23.2: @Z.%Z.type (%Z.type.4d7) = symbolic_binding Self, 1 [symbolic = %Self.loc3_23.2 (constants.%Self.c41)]
|
||||
// CHECK:STDOUT: %Z.assoc_type: type = assoc_entity_type @Z, @Z(%T.loc3_13.1) [symbolic = %Z.assoc_type (constants.%Z.assoc_type.815)]
|
||||
// CHECK:STDOUT: %assoc0: @Z.%Z.assoc_type (%Z.assoc_type.815) = assoc_entity element0, %X [symbolic = %assoc0 (constants.%assoc0.6bf)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @Z.%Z.type (%Z.type.4d7) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self.c41)]
|
||||
// CHECK:STDOUT: %Self.loc3_23.1: @Z.%Z.type (%Z.type.4d7) = symbolic_binding Self, 1 [symbolic = %Self.loc3_23.2 (constants.%Self.c41)]
|
||||
// CHECK:STDOUT: %X: type = assoc_const_decl @X [concrete] {
|
||||
// CHECK:STDOUT: %assoc0: @Z.%Z.assoc_type (%Z.assoc_type.815) = assoc_entity element0, @Z.%X [symbolic = @Z.%assoc0 (constants.%assoc0.6bf)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc3_23.1
|
||||
// CHECK:STDOUT: .X = @X.%assoc0
|
||||
// CHECK:STDOUT: witness = (%X)
|
||||
// CHECK:STDOUT: }
|
||||
@@ -616,7 +616,7 @@ fn F[T:! Ptr](var t: T) -> T.(Ptr.Type) {
|
||||
// CHECK:STDOUT: witness = ()
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic assoc_const @X(@Z.%T.loc3_13.2: type, @Z.%Self.1: @Z.%Z.type (%Z.type.4d7)) {
|
||||
// CHECK:STDOUT: generic assoc_const @X(@Z.%T.loc3_13.2: type, @Z.%Self.loc3_23.1: @Z.%Z.type (%Z.type.4d7)) {
|
||||
// CHECK:STDOUT: assoc_const X:! type;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -715,7 +715,7 @@ fn F[T:! Ptr](var t: T) -> T.(Ptr.Type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Z.type => constants.%Z.type.c56
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.af2
|
||||
// CHECK:STDOUT: %Self.loc3_23.2 => constants.%Self.af2
|
||||
// CHECK:STDOUT: %Z.assoc_type => constants.%Z.assoc_type.fae
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.175
|
||||
// CHECK:STDOUT: }
|
||||
@@ -743,7 +743,7 @@ fn F[T:! Ptr](var t: T) -> T.(Ptr.Type) {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %Z.type => constants.%Z.type.a71
|
||||
// CHECK:STDOUT: %Self.2 => constants.%Self.6ec
|
||||
// CHECK:STDOUT: %Self.loc3_23.2 => constants.%Self.6ec
|
||||
// CHECK:STDOUT: %Z.assoc_type => constants.%Z.assoc_type.252
|
||||
// CHECK:STDOUT: %assoc0 => constants.%assoc0.ea4
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+13
-13
@@ -106,21 +106,21 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !definition:
|
||||
// CHECK:STDOUT: %I.type: type = facet_type <@I, @I(%T.loc4_13.1)> [symbolic = %I.type (constants.%I.type.070)]
|
||||
// CHECK:STDOUT: %Self.2: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc4_23.2: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.loc4_23.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %I.F.type: type = fn_type @I.F, @I(%T.loc4_13.1) [symbolic = %I.F.type (constants.%I.F.type)]
|
||||
// CHECK:STDOUT: %I.F: @I.%I.F.type (%I.F.type) = struct_value () [symbolic = %I.F (constants.%I.F)]
|
||||
// CHECK:STDOUT: %I.assoc_type: type = assoc_entity_type @I, @I(%T.loc4_13.1) [symbolic = %I.assoc_type (constants.%I.assoc_type)]
|
||||
// CHECK:STDOUT: %assoc0.loc4_43.2: @I.%I.assoc_type (%I.assoc_type) = assoc_entity element0, %I.F.decl [symbolic = %assoc0.loc4_43.2 (constants.%assoc0)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: interface {
|
||||
// CHECK:STDOUT: %Self.1: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.loc4_23.1: @I.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self.loc4_23.2 (constants.%Self)]
|
||||
// CHECK:STDOUT: %I.F.decl: @I.%I.F.type (%I.F.type) = fn_decl @I.F [symbolic = @I.%I.F (constants.%I.F)] {
|
||||
// CHECK:STDOUT: %self.patt: @I.F.%pattern_type (%pattern_type.dbc) = value_binding_pattern self [concrete]
|
||||
// CHECK:STDOUT: %self.param_patt: @I.F.%pattern_type (%pattern_type.dbc) = value_param_pattern %self.patt, call_param0 [concrete]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @I.F.%Self.binding.as_type (%Self.binding.as_type) = value_param call_param0
|
||||
// CHECK:STDOUT: %.loc4_36.1: type = splice_block %.loc4_36.3 [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)] {
|
||||
// CHECK:STDOUT: %.loc4_36.2: @I.F.%I.type (%I.type.070) = specific_constant @I.%Self.1, @I(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc4_36.2: @I.F.%I.type (%I.type.070) = specific_constant @I.%Self.loc4_23.1, @I(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @I.F.%I.type (%I.type.070) = name_ref Self, %.loc4_36.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type: type = facet_access_type %Self.ref [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
// CHECK:STDOUT: %.loc4_36.3: type = converted %Self.ref, %Self.as_type [symbolic = %Self.binding.as_type (constants.%Self.binding.as_type)]
|
||||
@@ -130,7 +130,7 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
|
||||
// CHECK:STDOUT: %assoc0.loc4_43.1: @I.%I.assoc_type (%I.assoc_type) = assoc_entity element0, %I.F.decl [symbolic = %assoc0.loc4_43.2 (constants.%assoc0)]
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: !members:
|
||||
// CHECK:STDOUT: .Self = %Self.1
|
||||
// CHECK:STDOUT: .Self = %Self.loc4_23.1
|
||||
// CHECK:STDOUT: .F = %assoc0.loc4_43.1
|
||||
// CHECK:STDOUT: witness = (%I.F.decl)
|
||||
// CHECK:STDOUT: }
|
||||
@@ -158,7 +158,7 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
|
||||
// CHECK:STDOUT: .Self = constants.%X
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: generic fn @I.F(@I.%T.loc4_13.2: type, @I.%Self.1: @I.%I.type (%I.type.070)) {
|
||||
// CHECK:STDOUT: generic fn @I.F(@I.%T.loc4_13.2: type, @I.%Self.loc4_23.1: @I.%I.type (%I.type.070)) {
|
||||
// CHECK:STDOUT: %T: type = symbolic_binding T, 0 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %I.type: type = facet_type <@I, @I(%T)> [symbolic = %I.type (constants.%I.type.070)]
|
||||
// CHECK:STDOUT: %Self: @I.F.%I.type (%I.type.070) = symbolic_binding Self, 1 [symbolic = %Self (constants.%Self)]
|
||||
@@ -222,11 +222,11 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
|
||||
// CHECK:STDOUT: %Main.import_ref.8f2: <witness> = import_ref Main//types, loc7_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.acf = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//types, loc4_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.2de = import_ref Main//types, loc4_43, unloaded
|
||||
// CHECK:STDOUT: %Main.F: @I.%I.F.type (%I.F.type.76d) = import_ref Main//types, F, loaded [symbolic = @I.%I.F (constants.%I.F.dde)]
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.781: @I.%I.type (%I.type.070) = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Main.import_ref.781: @I.%I.type (%I.type.070) = import_ref Main//types, loc4_23, loaded [symbolic = @I.%Self (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Main.import_ref.e2f = import_ref Main//types, loc4_43, unloaded
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -389,11 +389,11 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.1: <witness> = import_ref Main//types, loc7_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.acf = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.1: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//types, loc4_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.715: @I.%I.assoc_type (%I.assoc_type.b65) = import_ref Main//types, loc4_43, loaded [symbolic = @I.%assoc0 (constants.%assoc0.254)]
|
||||
// CHECK:STDOUT: %Main.F = import_ref Main//types, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.781: @I.%I.type (%I.type.070) = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Main.import_ref.781: @I.%I.type (%I.type.070) = import_ref Main//types, loc4_23, loaded [symbolic = @I.%Self (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Main.import_ref.21c: @I.%I.F.type (%I.F.type.76d) = import_ref Main//types, loc4_43, loaded [symbolic = @I.%I.F (constants.%I.F.dde)]
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.2: <witness> = import_ref Main//impl_in_interface_args, loc5_24, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.bf8 = import_ref Main//impl_in_interface_args, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
@@ -554,11 +554,11 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.1: <witness> = import_ref Main//types, loc5_20, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.034 = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//types, loc4_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.2de = import_ref Main//types, loc4_43, unloaded
|
||||
// CHECK:STDOUT: %Main.F: @I.%I.F.type (%I.F.type.76d) = import_ref Main//types, F, loaded [symbolic = @I.%I.F (constants.%I.F.dde)]
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.3: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.781: @I.%I.type (%I.type.070) = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Main.import_ref.781: @I.%I.type (%I.type.070) = import_ref Main//types, loc4_23, loaded [symbolic = @I.%Self (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Main.import_ref.e2f = import_ref Main//types, loc4_43, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.2: <witness> = import_ref Main//types, loc7_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.acf = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
@@ -754,11 +754,11 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.2: <witness> = import_ref Main//impl_in_class_args, loc5_20, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.683 = import_ref Main//impl_in_class_args, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.2: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.769 = import_ref Main//types, loc4_23, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.715: @I.%I.assoc_type (%I.assoc_type.b65) = import_ref Main//types, loc4_43, loaded [symbolic = @I.%assoc0 (constants.%assoc0.254)]
|
||||
// CHECK:STDOUT: %Main.F = import_ref Main//types, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.efcd44.3: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
|
||||
// CHECK:STDOUT: %Main.import_ref.781: @I.%I.type (%I.type.070) = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Main.import_ref.781: @I.%I.type (%I.type.070) = import_ref Main//types, loc4_23, loaded [symbolic = @I.%Self (constants.%Self.269)]
|
||||
// CHECK:STDOUT: %Main.import_ref.21c: @I.%I.F.type (%I.F.type.76d) = import_ref Main//types, loc4_43, loaded [symbolic = @I.%I.F (constants.%I.F.dde)]
|
||||
// CHECK:STDOUT: %Main.import_ref.8f24d3.3: <witness> = import_ref Main//types, loc7_10, loaded [concrete = constants.%complete_type]
|
||||
// CHECK:STDOUT: %Main.import_ref.acf = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
|
||||
+4
-4
@@ -137,10 +137,10 @@ fn Call() {
|
||||
// CHECK:STDOUT: import Core//prelude
|
||||
// CHECK:STDOUT: import Core//prelude/...
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//i, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//i, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.507 = import_ref Main//i, loc4_33, unloaded
|
||||
// CHECK:STDOUT: %Main.F: %I.F.type = import_ref Main//i, F, loaded [concrete = constants.%I.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//i, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//i, loc4_13, loaded [symbolic = constants.%Self]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
@@ -306,11 +306,11 @@ fn Call() {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Main.import_ref.8db: <witness> = import_ref Main//get, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.357]
|
||||
// CHECK:STDOUT: %Main.import_ref.6a9 = import_ref Main//get, inst{{[0-9A-F]+}} [indirect], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//i, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.8df = import_ref Main//i, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.c44: %I.assoc_type = import_ref Main//i, loc4_33, loaded [concrete = constants.%assoc0.3f3]
|
||||
// CHECK:STDOUT: %Main.F = import_ref Main//i, F, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e03: %I.F.type = import_ref Main//i, loc4_33, loaded [concrete = constants.%I.F]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//i, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.e33: %I.type = import_ref Main//i, loc4_13, loaded [symbolic = constants.%Self.9f2]
|
||||
// CHECK:STDOUT: %Main.import_ref.f2d: <witness> = import_ref Main//c, loc7_13, loaded [concrete = constants.%I.impl_witness]
|
||||
// CHECK:STDOUT: %Main.import_ref.29a: type = import_ref Main//c, loc7_6, loaded [concrete = constants.%C]
|
||||
// CHECK:STDOUT: %Main.import_ref.f50: type = import_ref Main//c, loc7_11, loaded [concrete = constants.%I.type]
|
||||
|
||||
@@ -146,7 +146,7 @@ impl () as D;
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: imports {
|
||||
// CHECK:STDOUT: %Main.A: type = import_ref Main//decl_in_api_definition_in_impl, A, loaded [concrete = constants.%A.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.3b8 = import_ref Main//decl_in_api_definition_in_impl, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.3b8 = import_ref Main//decl_in_api_definition_in_impl, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e5c: type = import_ref Main//decl_in_api_definition_in_impl, loc10_7, loaded [concrete = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.831: type = import_ref Main//decl_in_api_definition_in_impl, loc10_12, loaded [concrete = constants.%A.type]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -246,7 +246,7 @@ impl () as D;
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: imports {
|
||||
// CHECK:STDOUT: %Main.B = import_ref Main//decl_only_in_api, B, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.5c0 = import_ref Main//decl_only_in_api, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.5c0 = import_ref Main//decl_only_in_api, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e5c: type = import_ref Main//decl_only_in_api, loc10_7, loaded [concrete = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.171: type = import_ref Main//decl_only_in_api, loc10_12, loaded [concrete = constants.%B.type]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -309,7 +309,7 @@ impl () as D;
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: imports {
|
||||
// CHECK:STDOUT: %Main.C: type = import_ref Main//decl_in_api_decl_in_impl, C, loaded [concrete = constants.%C.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.a1a = import_ref Main//decl_in_api_decl_in_impl, inst{{[0-9A-F]+}} [no loc], unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.a1a = import_ref Main//decl_in_api_decl_in_impl, loc4_13, unloaded
|
||||
// CHECK:STDOUT: %Main.import_ref.e5c: type = import_ref Main//decl_in_api_decl_in_impl, loc10_7, loaded [concrete = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %Main.import_ref.653: type = import_ref Main//decl_in_api_decl_in_impl, loc10_12, loaded [concrete = constants.%C.type]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
Reference in New Issue
Block a user