|
|
@@ -192,17 +192,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type.1: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type.1 = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type.2: type = interface_type @Foo, @Foo(%a) [symbolic]
|
|
|
// CHECK:STDOUT: %Self.1: %Foo.type.2 = bind_symbolic_name Self, 1 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.3: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Bar.type.1: type = generic_interface_type @Bar [template]
|
|
|
// CHECK:STDOUT: %Bar: %Bar.type.1 = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.4: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Bar.type.2: type = interface_type @Bar, @Bar(%a) [symbolic]
|
|
|
// CHECK:STDOUT: %Self.2: %Bar.type.2 = bind_symbolic_name Self, 1 [symbolic]
|
|
|
// CHECK:STDOUT: }
|
|
|
@@ -218,32 +215,32 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, %C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %D: type = bind_alias D, %C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %Foo.decl.loc7: %Foo.type.1 = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref.loc7: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param.loc7: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc7_15.1: %C = bind_symbolic_name a, 0, %a.param.loc7 [symbolic = %a.loc7_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %Foo.decl.loc8: %Foo.type.1 = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref.loc8: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param.loc8: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc8: %C = bind_symbolic_name a, 0, %a.param.loc8 [symbolic = constants.%a]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %Bar.decl.loc10: %Bar.type.1 = interface_decl @Bar [template = constants.%Bar] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc10_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc10_15.2 (constants.%a.patt.3)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc10_15.1, runtime_param<invalid> [symbolic = %a.patt.loc10_15.2 (constants.%a.patt.3)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc10_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc10_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc10_15.1, runtime_param<invalid> [symbolic = %a.patt.loc10_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %D.ref.loc10: type = name_ref D, file.%D [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param.loc10: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc10_15.1: %C = bind_symbolic_name a, 0, %a.param.loc10 [symbolic = %a.loc10_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %Bar.decl.loc11: %Bar.type.1 = interface_decl @Bar [template = constants.%Bar] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc10_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc10_15.2 (constants.%a.patt.3)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc10_15.1, runtime_param<invalid> [symbolic = %a.patt.loc10_15.2 (constants.%a.patt.3)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc10_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc10_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc10_15.1, runtime_param<invalid> [symbolic = %a.patt.loc10_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %D.ref.loc11: type = name_ref D, file.%D [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param.loc11: %C = value_param runtime_param<invalid>
|
|
|
@@ -253,7 +250,7 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(%a.loc7_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc7_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc7_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %Foo.type: type = interface_type @Foo, @Foo(%a.loc7_15.2) [symbolic = %Foo.type (constants.%Foo.type.2)]
|
|
|
@@ -270,7 +267,7 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Bar(%a.loc10_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc10_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc10_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc10_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc10_15.2 (constants.%a.patt.3)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc10_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc10_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %Bar.type: type = interface_type @Bar, @Bar(%a.loc10_15.2) [symbolic = %Bar.type (constants.%Bar.type.2)]
|
|
|
@@ -319,11 +316,10 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type.1: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type.1 = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type.2: type = interface_type @Foo, @Foo(%a) [symbolic]
|
|
|
// CHECK:STDOUT: %Self: %Foo.type.2 = bind_symbolic_name Self, 1 [symbolic]
|
|
|
// CHECK:STDOUT: }
|
|
|
@@ -335,16 +331,16 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %C.decl: type = class_decl @C [template = constants.%C] {} {}
|
|
|
// CHECK:STDOUT: %Foo.decl.loc6: %Foo.type.1 = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_21.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_21.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_21.1, runtime_param<invalid> [symbolic = %a.patt.loc6_21.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_21.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_21.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_21.1, runtime_param<invalid> [symbolic = %a.patt.loc6_21.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref.loc6: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param.loc6: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc6_21.1: %C = bind_symbolic_name a, 0, %a.param.loc6 [symbolic = %a.loc6_21.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %Foo.decl.loc7: %Foo.type.1 = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_21.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_21.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_21.1, runtime_param<invalid> [symbolic = %a.patt.loc6_21.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_21.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_21.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_21.1, runtime_param<invalid> [symbolic = %a.patt.loc6_21.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref.loc7: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param.loc7: %C = value_param runtime_param<invalid>
|
|
|
@@ -354,7 +350,7 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(%a.loc6_21.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc6_21.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc6_21.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_21.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_21.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_21.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_21.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %Foo.type: type = interface_type @Foo, @Foo(%a.loc6_21.2) [symbolic = %Foo.type (constants.%Foo.type.2)]
|
|
|
@@ -393,11 +389,10 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %.type.1: type = generic_interface_type @.1 [template]
|
|
|
// CHECK:STDOUT: %.3: %.type.1 = struct_value () [template]
|
|
|
// CHECK:STDOUT: %.type.2: type = interface_type @.1, @.1(%a) [symbolic]
|
|
|
@@ -411,16 +406,16 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %C.decl: type = class_decl @C [template = constants.%C] {} {}
|
|
|
// CHECK:STDOUT: %Foo.decl: %Foo.type = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_15.1, runtime_param<invalid> [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_15.1, runtime_param<invalid> [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc6_15.1: %C = bind_symbolic_name a, 0, %a.param [symbolic = %a.loc6_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %.decl: %.type.1 = interface_decl @.1 [template = constants.%.3] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc14_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc14_15.2 (constants.%a.patt.2)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc14_15.1, runtime_param<invalid> [symbolic = %a.patt.loc14_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc14_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc14_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc14_15.1, runtime_param<invalid> [symbolic = %a.patt.loc14_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
@@ -430,14 +425,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(%a.loc6_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc6_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc6_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @.1(%a.loc14_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc14_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc14_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc14_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc14_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc14_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc14_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %.type: type = interface_type @.1, @.1(%a.loc14_15.2) [symbolic = %.type (constants.%.type.2)]
|
|
|
@@ -481,11 +476,10 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type.1: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type.1 = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type.2: type = interface_type @Foo, @Foo(%a) [symbolic]
|
|
|
// CHECK:STDOUT: %Self: %Foo.type.2 = bind_symbolic_name Self, 1 [symbolic]
|
|
|
// CHECK:STDOUT: }
|
|
|
@@ -497,16 +491,16 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %C.decl: type = class_decl @C [template = constants.%C] {} {}
|
|
|
// CHECK:STDOUT: %Foo.decl.loc6: %Foo.type.1 = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_15.1, runtime_param<invalid> [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_15.1, runtime_param<invalid> [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref.loc6: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param.loc6: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc6_15.1: %C = bind_symbolic_name a, 0, %a.param.loc6 [symbolic = %a.loc6_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %Foo.decl.loc7: %Foo.type.1 = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_15.1, runtime_param<invalid> [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc6_15.1, runtime_param<invalid> [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref.loc7: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param.loc7: %C = value_param runtime_param<invalid>
|
|
|
@@ -516,7 +510,7 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(%a.loc6_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc6_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc6_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %Foo.type: type = interface_type @Foo, @Foo(%a.loc6_15.2) [symbolic = %Foo.type (constants.%Foo.type.2)]
|
|
|
@@ -555,11 +549,10 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Bar.type: type = generic_interface_type @Bar [template]
|
|
|
// CHECK:STDOUT: %Bar: %Bar.type = struct_value () [template]
|
|
|
// CHECK:STDOUT: }
|
|
|
@@ -575,16 +568,16 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, %C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %D: type = bind_alias D, %C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %Foo.decl: %Foo.type = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc7_15.1: %C = bind_symbolic_name a, 0, %a.param [symbolic = %a.loc7_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %Bar.decl: %Bar.type = interface_decl @Bar [template = constants.%Bar] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc8_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc8_15.2 (constants.%a.patt.2)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc8_15.1, runtime_param<invalid> [symbolic = %a.patt.loc8_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc8_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc8_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc8_15.1, runtime_param<invalid> [symbolic = %a.patt.loc8_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %D.ref: type = name_ref D, file.%D [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
@@ -594,14 +587,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(%a.loc7_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc7_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc7_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Bar(%a.loc8_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc8_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc8_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc8_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc8_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc8_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc8_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
@@ -630,16 +623,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %.type.1: type = generic_interface_type @.1 [template]
|
|
|
// CHECK:STDOUT: %.3: %.type.1 = struct_value () [template]
|
|
|
// CHECK:STDOUT: %.type.2: type = interface_type @.1, @.1(%a) [symbolic]
|
|
|
// CHECK:STDOUT: %Self.1: %.type.2 = bind_symbolic_name Self, 1 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.3: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Bar.type: type = generic_interface_type @Bar [template]
|
|
|
// CHECK:STDOUT: %Bar: %Bar.type = struct_value () [template]
|
|
|
// CHECK:STDOUT: %.type.3: type = generic_interface_type @.2 [template]
|
|
|
@@ -652,7 +643,7 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %import_ref.1: type = import_ref Main//two_file, inst+1, loaded [template = constants.%C]
|
|
|
// CHECK:STDOUT: %import_ref.2: type = import_ref Main//two_file, inst+7, loaded [template = constants.%C]
|
|
|
// CHECK:STDOUT: %import_ref.3: %Foo.type = import_ref Main//two_file, inst+15, loaded [template = constants.%Foo]
|
|
|
-// CHECK:STDOUT: %import_ref.4: %Bar.type = import_ref Main//two_file, inst+27, loaded [template = constants.%Bar]
|
|
|
+// CHECK:STDOUT: %import_ref.4: %Bar.type = import_ref Main//two_file, inst+26, loaded [template = constants.%Bar]
|
|
|
// CHECK:STDOUT: %import_ref.5 = import_ref Main//two_file, inst+2, unloaded
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
@@ -666,16 +657,16 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %default.import.loc2_6.1 = import <invalid>
|
|
|
// CHECK:STDOUT: %default.import.loc2_6.2 = import <invalid>
|
|
|
// CHECK:STDOUT: %.decl.loc12: %.type.1 = interface_decl @.1 [template = constants.%.3] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc12_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc12_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc12_15.1, runtime_param<invalid> [symbolic = %a.patt.loc12_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc12_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc12_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc12_15.1, runtime_param<invalid> [symbolic = %a.patt.loc12_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, imports.%import_ref.1 [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc12_15.1: %C = bind_symbolic_name a, 0, %a.param [symbolic = %a.loc12_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %.decl.loc21: %.type.3 = interface_decl @.2 [template = constants.%.4] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc21_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc21_15.2 (constants.%a.patt.3)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc21_15.1, runtime_param<invalid> [symbolic = %a.patt.loc21_15.2 (constants.%a.patt.3)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc21_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc21_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc21_15.1, runtime_param<invalid> [symbolic = %a.patt.loc21_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %D.ref: type = name_ref D, imports.%import_ref.2 [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
@@ -685,14 +676,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(constants.%a: %C) {
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic = %a (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @.1(%a.loc12_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc12_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc12_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc12_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc12_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc12_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc12_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %.type: type = interface_type @.1, @.1(%a.loc12_15.2) [symbolic = %.type (constants.%.type.2)]
|
|
|
@@ -709,14 +700,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Bar(constants.%a: %C) {
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic = %a (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @.2(%a.loc21_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc21_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc21_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc21_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc21_15.2 (constants.%a.patt.3)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc21_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc21_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %.type: type = interface_type @.2, @.2(%a.loc21_15.2) [symbolic = %.type (constants.%.type.4)]
|
|
|
@@ -865,11 +856,10 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %.type.1: type = generic_interface_type @.1 [template]
|
|
|
// CHECK:STDOUT: %.3: %.type.1 = struct_value () [template]
|
|
|
// CHECK:STDOUT: %.type.2: type = interface_type @.1, @.1(%a) [symbolic]
|
|
|
@@ -886,16 +876,16 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, %C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %D: type = bind_alias D, %C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %Foo.decl: %Foo.type = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc7_15.1: %C = bind_symbolic_name a, 0, %a.param [symbolic = %a.loc7_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %.decl: %.type.1 = interface_decl @.1 [template = constants.%.3] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc15_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc15_15.2 (constants.%a.patt.2)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc15_15.1, runtime_param<invalid> [symbolic = %a.patt.loc15_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc15_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc15_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc15_15.1, runtime_param<invalid> [symbolic = %a.patt.loc15_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %D.ref: type = name_ref D, file.%D [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
@@ -905,14 +895,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(%a.loc7_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc7_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc7_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @.1(%a.loc15_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc15_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc15_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc15_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc15_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc15_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc15_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %.type: type = interface_type @.1, @.1(%a.loc15_15.2) [symbolic = %.type (constants.%.type.2)]
|
|
|
@@ -956,11 +946,10 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %.type.1: type = generic_interface_type @.1 [template]
|
|
|
// CHECK:STDOUT: %.3: %.type.1 = struct_value () [template]
|
|
|
// CHECK:STDOUT: %.type.2: type = interface_type @.1, @.1(%a) [symbolic]
|
|
|
@@ -977,16 +966,16 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, %C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %D: type = bind_alias D, %C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %Foo.decl: %Foo.type = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc7_15.1, runtime_param<invalid> [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
// CHECK:STDOUT: %a.loc7_15.1: %C = bind_symbolic_name a, 0, %a.param [symbolic = %a.loc7_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %.decl: %.type.1 = interface_decl @.1 [template = constants.%.3] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc15_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc15_15.2 (constants.%a.patt.2)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc15_15.1, runtime_param<invalid> [symbolic = %a.patt.loc15_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc15_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc15_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc15_15.1, runtime_param<invalid> [symbolic = %a.patt.loc15_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %D.ref: type = name_ref D, file.%D [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
@@ -996,14 +985,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(%a.loc7_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc7_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc7_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc7_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc7_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc7_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @.1(%a.loc15_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc15_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc15_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc15_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc15_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc15_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc15_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %.type: type = interface_type @.1, @.1(%a.loc15_15.2) [symbolic = %.type (constants.%.type.2)]
|
|
|
@@ -1095,11 +1084,10 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.1: type = struct_type {} [template]
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %C = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %.type.1: type = generic_interface_type @.1 [template]
|
|
|
// CHECK:STDOUT: %.3: %.type.1 = struct_value () [template]
|
|
|
// CHECK:STDOUT: %.type.2: type = interface_type @.1, @.1(%a) [symbolic]
|
|
|
@@ -1123,8 +1111,8 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, imports.%import_ref.1 [template = constants.%C]
|
|
|
// CHECK:STDOUT: %D: type = bind_alias D, imports.%import_ref.1 [template = constants.%C]
|
|
|
// CHECK:STDOUT: %.decl: %.type.1 = interface_decl @.1 [template = constants.%.3] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc17_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc17_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc17_15.1, runtime_param<invalid> [symbolic = %a.patt.loc17_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc17_15.1: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc17_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %C = value_param_pattern %a.patt.loc17_15.1, runtime_param<invalid> [symbolic = %a.patt.loc17_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %D.ref: type = name_ref D, file.%D [template = constants.%C]
|
|
|
// CHECK:STDOUT: %a.param: %C = value_param runtime_param<invalid>
|
|
|
@@ -1134,14 +1122,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(constants.%a: %C) {
|
|
|
// CHECK:STDOUT: %a: %C = bind_symbolic_name a, 0 [symbolic = %a (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @.1(%a.loc17_15.1: %C) {
|
|
|
// CHECK:STDOUT: %a.loc17_15.2: %C = bind_symbolic_name a, 0 [symbolic = %a.loc17_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc17_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc17_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc17_15.2: %C = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc17_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %.type: type = interface_type @.1, @.1(%a.loc17_15.2) [symbolic = %.type (constants.%.type.2)]
|
|
|
@@ -1184,11 +1172,10 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %.2: <witness> = complete_type_witness %.1 [template]
|
|
|
// CHECK:STDOUT: %.3: type = const_type %C [template]
|
|
|
// CHECK:STDOUT: %a: %.3 = bind_symbolic_name a, 0 [symbolic]
|
|
|
-// CHECK:STDOUT: %a.patt.1: %.3 = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
+// CHECK:STDOUT: %a.patt: %.3 = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %Foo.type: type = generic_interface_type @Foo [template]
|
|
|
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [template]
|
|
|
// CHECK:STDOUT: %Foo: %Foo.type = struct_value () [template]
|
|
|
-// CHECK:STDOUT: %a.patt.2: %.3 = symbolic_binding_pattern a, 0 [symbolic]
|
|
|
// CHECK:STDOUT: %.type.1: type = generic_interface_type @.1 [template]
|
|
|
// CHECK:STDOUT: %.4: %.type.1 = struct_value () [template]
|
|
|
// CHECK:STDOUT: %.type.2: type = interface_type @.1, @.1(%a) [symbolic]
|
|
|
@@ -1202,8 +1189,8 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %C.decl: type = class_decl @C [template = constants.%C] {} {}
|
|
|
// CHECK:STDOUT: %Foo.decl: %Foo.type = interface_decl @Foo [template = constants.%Foo] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_15.1: %.3 = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %.3 = value_param_pattern %a.patt.loc6_15.1, runtime_param<invalid> [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_15.1: %.3 = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %.3 = value_param_pattern %a.patt.loc6_15.1, runtime_param<invalid> [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %.loc6: type = const_type %C [template = constants.%.3]
|
|
|
@@ -1211,8 +1198,8 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT: %a.loc6_15.1: %.3 = bind_symbolic_name a, 0, %a.param [symbolic = %a.loc6_15.2 (constants.%a)]
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT: %.decl: %.type.1 = interface_decl @.1 [template = constants.%.4] {
|
|
|
-// CHECK:STDOUT: %a.patt.loc17_15.1: %.3 = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc17_15.2 (constants.%a.patt.2)]
|
|
|
-// CHECK:STDOUT: %a.param_patt: %.3 = value_param_pattern %a.patt.loc17_15.1, runtime_param<invalid> [symbolic = %a.patt.loc17_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc17_15.1: %.3 = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc17_15.2 (constants.%a.patt)]
|
|
|
+// CHECK:STDOUT: %a.param_patt: %.3 = value_param_pattern %a.patt.loc17_15.1, runtime_param<invalid> [symbolic = %a.patt.loc17_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT: } {
|
|
|
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
|
|
// CHECK:STDOUT: %.loc17_26: type = const_type %C [template = constants.%.3]
|
|
|
@@ -1224,14 +1211,14 @@ interface Foo(a:! const (const C)) {}
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @Foo(%a.loc6_15.1: %.3) {
|
|
|
// CHECK:STDOUT: %a.loc6_15.2: %.3 = bind_symbolic_name a, 0 [symbolic = %a.loc6_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc6_15.2: %.3 = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt.1)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc6_15.2: %.3 = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc6_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: interface;
|
|
|
// CHECK:STDOUT: }
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: generic interface @.1(%a.loc17_15.1: %.3) {
|
|
|
// CHECK:STDOUT: %a.loc17_15.2: %.3 = bind_symbolic_name a, 0 [symbolic = %a.loc17_15.2 (constants.%a)]
|
|
|
-// CHECK:STDOUT: %a.patt.loc17_15.2: %.3 = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc17_15.2 (constants.%a.patt.2)]
|
|
|
+// CHECK:STDOUT: %a.patt.loc17_15.2: %.3 = symbolic_binding_pattern a, 0 [symbolic = %a.patt.loc17_15.2 (constants.%a.patt)]
|
|
|
// CHECK:STDOUT:
|
|
|
// CHECK:STDOUT: !definition:
|
|
|
// CHECK:STDOUT: %.type: type = interface_type @.1, @.1(%a.loc17_15.2) [symbolic = %.type (constants.%.type.2)]
|