Fix the textual IR name of WrapperBindingPattern (#7650)

`at_binding_pattern` is a relic from an earlier revision of #6930.
This commit is contained in:
Geoff Romer
2026-08-18 22:31:27 +00:00
committed by GitHub
parent 70b6abd6f1
commit d21cc3197f
333 changed files with 3806 additions and 3806 deletions
@@ -473,7 +473,7 @@ class V {
// CHECK:STDOUT: %ptr.976: type = ptr_type %Derived [concrete]
// CHECK:STDOUT: %pattern_type.d23: type = pattern_type %ptr.976 [concrete]
// CHECK:STDOUT: %d.param_patt.9b7: %pattern_type.d23 = value_param_pattern [concrete]
// CHECK:STDOUT: %d.patt.1fc: %pattern_type.d23 = at_binding_pattern d, %d.param_patt.9b7 [concrete]
// CHECK:STDOUT: %d.patt.336: %pattern_type.d23 = wrapper_binding_pattern d, %d.param_patt.9b7 [concrete]
// CHECK:STDOUT: %Base: type = class_type @Base [concrete]
// CHECK:STDOUT: %ptr.0e0: type = ptr_type %Base [concrete]
// CHECK:STDOUT: %.866: Core.Form = init_form %ptr.0e0 [concrete]
@@ -498,7 +498,7 @@ class V {
// CHECK:STDOUT: %AcceptVal: %AcceptVal.type = struct_value () [concrete]
// CHECK:STDOUT: %pattern_type.2f5: type = pattern_type %Derived [concrete]
// CHECK:STDOUT: %d.param_patt.0f5: %pattern_type.2f5 = value_param_pattern [concrete]
// CHECK:STDOUT: %d.patt.e5a: %pattern_type.2f5 = at_binding_pattern d, %d.param_patt.0f5 [concrete]
// CHECK:STDOUT: %d.patt.0e6: %pattern_type.2f5 = wrapper_binding_pattern d, %d.param_patt.0f5 [concrete]
// CHECK:STDOUT: %ConvertVal.type: type = fn_type @ConvertVal [concrete]
// CHECK:STDOUT: %ConvertVal: %ConvertVal.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -518,7 +518,7 @@ class V {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %ConvertPtr.decl: %ConvertPtr.type = fn_decl @ConvertPtr [concrete = constants.%ConvertPtr] {
// CHECK:STDOUT: %d.param_patt: %pattern_type.d23 = value_param_pattern [concrete = constants.%d.param_patt.9b7]
// CHECK:STDOUT: %d.patt: %pattern_type.d23 = at_binding_pattern d, %d.param_patt [concrete = constants.%d.patt.1fc]
// CHECK:STDOUT: %d.patt: %pattern_type.d23 = wrapper_binding_pattern d, %d.param_patt [concrete = constants.%d.patt.336]
// CHECK:STDOUT: %return.param_patt: %pattern_type.cb0 = out_param_pattern [concrete = constants.%return.param_patt.b43]
// CHECK:STDOUT: %return.patt: %pattern_type.cb0 = return_slot_pattern %return.param_patt, %ptr.loc7_43 [concrete = constants.%return.patt.363]
// CHECK:STDOUT: } {
@@ -538,7 +538,7 @@ class V {
// CHECK:STDOUT: }
// CHECK:STDOUT: %ConvertVal.decl: %ConvertVal.type = fn_decl @ConvertVal [concrete = constants.%ConvertVal] {
// CHECK:STDOUT: %d.param_patt: %pattern_type.2f5 = value_param_pattern [concrete = constants.%d.param_patt.0f5]
// CHECK:STDOUT: %d.patt: %pattern_type.2f5 = at_binding_pattern d, %d.param_patt [concrete = constants.%d.patt.e5a]
// CHECK:STDOUT: %d.patt: %pattern_type.2f5 = wrapper_binding_pattern d, %d.param_patt [concrete = constants.%d.patt.0e6]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %d.param: %Derived = value_param call_param0
// CHECK:STDOUT: %.loc15: type = splice_block %Derived.ref [concrete = constants.%Derived] {
@@ -259,7 +259,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -275,7 +275,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -296,7 +296,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -312,7 +312,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -333,7 +333,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -349,7 +349,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -440,7 +440,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: %ptr.227: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr.227 [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: %foo_bar.patt: %pattern_type = value_binding_pattern foo_bar [concrete]
@@ -458,7 +458,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr.227 = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr.loc7 [concrete = constants.%ptr.227] {
@@ -496,7 +496,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: %ptr.227: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type.1b6: type = pattern_type %ptr.227 [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type.1b6 = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type.1b6 = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type.1b6 = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
@@ -523,7 +523,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type.1b6 = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type.1b6 = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type.1b6 = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr.227 = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr.227] {
@@ -615,7 +615,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -634,7 +634,7 @@ fn GenericUse(p2: Generic(Cpp.Class1)) {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -35,7 +35,7 @@ fn MyF(bar: Cpp.Bar*);
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -51,7 +51,7 @@ fn MyF(bar: Cpp.Bar*);
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -180,7 +180,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -196,7 +196,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -217,7 +217,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -233,7 +233,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -254,7 +254,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -270,7 +270,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -361,7 +361,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: %ptr.227: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr.227 [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: %foo_bar.patt: %pattern_type = value_binding_pattern foo_bar [concrete]
@@ -379,7 +379,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr.227 = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr.loc7 [concrete = constants.%ptr.227] {
@@ -420,7 +420,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: %ptr: type = ptr_type %Bar [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete]
// CHECK:STDOUT: %MyF.type: type = fn_type @MyF [concrete]
// CHECK:STDOUT: %MyF: %MyF.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -439,7 +439,7 @@ fn MyF(bar: Cpp.Bar(Cpp.X)*);
// CHECK:STDOUT: file {
// CHECK:STDOUT: %MyF.decl: %MyF.type = fn_decl @MyF [concrete = constants.%MyF] {
// CHECK:STDOUT: %bar.param_patt: %pattern_type = value_param_pattern [concrete = constants.%bar.param_patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = at_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: %bar.patt: %pattern_type = wrapper_binding_pattern bar, %bar.param_patt [concrete = constants.%bar.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %bar.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.loc7: type = splice_block %ptr [concrete = constants.%ptr] {
@@ -63,7 +63,7 @@ fn MyF() {
// CHECK:STDOUT: %UnsizedEnum: type = class_type @UnsizedEnum [concrete]
// CHECK:STDOUT: %pattern_type: type = pattern_type %UnsizedEnum [concrete]
// CHECK:STDOUT: %e.param_patt: %pattern_type = value_param_pattern [concrete]
// CHECK:STDOUT: %e.patt: %pattern_type = at_binding_pattern e, %e.param_patt [concrete]
// CHECK:STDOUT: %e.patt: %pattern_type = wrapper_binding_pattern e, %e.param_patt [concrete]
// CHECK:STDOUT: %F.type: type = fn_type @F [concrete]
// CHECK:STDOUT: %F: %F.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -79,7 +79,7 @@ fn MyF() {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %F.decl: %F.type = fn_decl @F [concrete = constants.%F] {
// CHECK:STDOUT: %e.param_patt: %pattern_type = value_param_pattern [concrete = constants.%e.param_patt]
// CHECK:STDOUT: %e.patt: %pattern_type = at_binding_pattern e, %e.param_patt [concrete = constants.%e.patt]
// CHECK:STDOUT: %e.patt: %pattern_type = wrapper_binding_pattern e, %e.param_patt [concrete = constants.%e.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %e.param: %UnsizedEnum = value_param call_param0
// CHECK:STDOUT: %.loc12: type = splice_block %UnsizedEnum.ref [concrete = constants.%UnsizedEnum] {
@@ -145,7 +145,7 @@ void G() {
// CHECK:STDOUT: %Self.as_type.c84: type = facet_access_type %Self.37e [symbolic]
// CHECK:STDOUT: %pattern_type.c60: type = pattern_type %Self.as_type.c84 [symbolic]
// CHECK:STDOUT: %self.param_patt.a33: %pattern_type.c60 = value_param_pattern [symbolic]
// CHECK:STDOUT: %self.patt.696: %pattern_type.c60 = at_binding_pattern self, %self.param_patt.a33 [symbolic]
// CHECK:STDOUT: %self.patt.85e: %pattern_type.c60 = wrapper_binding_pattern self, %self.param_patt.a33 [symbolic]
// CHECK:STDOUT: %.8fc: Core.Form = init_form %Self.as_type.c84 [symbolic]
// CHECK:STDOUT: %return.param_patt.434: %pattern_type.c60 = out_param_pattern [symbolic]
// CHECK:STDOUT: %return.patt.44a: %pattern_type.c60 = return_slot_pattern %return.param_patt.434, %Self.as_type.c84 [symbolic]
@@ -159,7 +159,7 @@ void G() {
// CHECK:STDOUT: %I.impl_witness.ca2: <witness> = impl_witness @A.as.I.impl.%I.impl_witness_table [concrete]
// CHECK:STDOUT: %pattern_type.9ef: type = pattern_type %A [concrete]
// CHECK:STDOUT: %self.param_patt.04e: %pattern_type.9ef = value_param_pattern [concrete]
// CHECK:STDOUT: %self.patt.312: %pattern_type.9ef = at_binding_pattern self, %self.param_patt.04e [concrete]
// CHECK:STDOUT: %self.patt.7cd: %pattern_type.9ef = wrapper_binding_pattern self, %self.param_patt.04e [concrete]
// CHECK:STDOUT: %.cbf: Core.Form = init_form %A [concrete]
// CHECK:STDOUT: %return.param_patt.f0c: %pattern_type.9ef = out_param_pattern [concrete]
// CHECK:STDOUT: %return.patt.a6d: %pattern_type.9ef = return_slot_pattern %return.param_patt.f0c, %A [concrete]
@@ -177,7 +177,7 @@ void G() {
// CHECK:STDOUT: %I.impl_witness.b14: <witness> = impl_witness @B.as.I.impl.%I.impl_witness_table [concrete]
// CHECK:STDOUT: %pattern_type.e39: type = pattern_type %B [concrete]
// CHECK:STDOUT: %self.param_patt.f1f: %pattern_type.e39 = value_param_pattern [concrete]
// CHECK:STDOUT: %self.patt.4eb: %pattern_type.e39 = at_binding_pattern self, %self.param_patt.f1f [concrete]
// CHECK:STDOUT: %self.patt.4c3: %pattern_type.e39 = wrapper_binding_pattern self, %self.param_patt.f1f [concrete]
// CHECK:STDOUT: %.d83: Core.Form = init_form %B [concrete]
// CHECK:STDOUT: %return.param_patt.934: %pattern_type.e39 = out_param_pattern [concrete]
// CHECK:STDOUT: %return.patt.911: %pattern_type.e39 = return_slot_pattern %return.param_patt.934, %B [concrete]
@@ -195,7 +195,7 @@ void G() {
// CHECK:STDOUT: %T.as_type: type = facet_access_type %T [symbolic]
// CHECK:STDOUT: %pattern_type.b3a: type = pattern_type %T.as_type [symbolic]
// CHECK:STDOUT: %t.param_patt.5db: %pattern_type.b3a = value_param_pattern [symbolic]
// CHECK:STDOUT: %t.patt.030: %pattern_type.b3a = at_binding_pattern t, %t.param_patt.5db [symbolic]
// CHECK:STDOUT: %t.patt.d48: %pattern_type.b3a = wrapper_binding_pattern t, %t.param_patt.5db [symbolic]
// CHECK:STDOUT: %.0ce: Core.Form = init_form %T.as_type [symbolic]
// CHECK:STDOUT: %return.param_patt.b82: %pattern_type.b3a = out_param_pattern [symbolic]
// CHECK:STDOUT: %return.patt.2e6: %pattern_type.b3a = return_slot_pattern %return.param_patt.b82, %T.as_type [symbolic]
@@ -208,7 +208,7 @@ void G() {
// CHECK:STDOUT: %.8a9: type = fn_type_with_self_type %I.WithSelf.Doit.type.860, %T [symbolic]
// CHECK:STDOUT: %impl.elem0: %.8a9 = impl_witness_access %I.lookup_impl_witness, element0 [symbolic]
// CHECK:STDOUT: %self.param_patt.58e: %pattern_type.b3a = value_param_pattern [symbolic]
// CHECK:STDOUT: %self.patt.300: %pattern_type.b3a = at_binding_pattern self, %self.param_patt.58e [symbolic]
// CHECK:STDOUT: %self.patt.b4c: %pattern_type.b3a = wrapper_binding_pattern self, %self.param_patt.58e [symbolic]
// CHECK:STDOUT: %specific_impl_fn: <specific function> = specific_impl_function %impl.elem0, @I.WithSelf.Doit(%T) [symbolic]
// CHECK:STDOUT: %Destroy.type: type = facet_type <@Destroy> [concrete]
// CHECK:STDOUT: %Destroy.Op.type.1d8f74.2: type = fn_type @Destroy.Op.loc16_9.2 [concrete]
@@ -224,10 +224,10 @@ void G() {
// CHECK:STDOUT: %Destroy.WithSelf.Op.type.09e: type = fn_type @Destroy.WithSelf.Op, @Destroy.WithSelf(%Destroy.facet.6e5) [concrete]
// CHECK:STDOUT: %.dca: type = fn_type_with_self_type %Destroy.WithSelf.Op.type.09e, %Destroy.facet.6e5 [concrete]
// CHECK:STDOUT: %t.param_patt.169: %pattern_type.9ef = value_param_pattern [concrete]
// CHECK:STDOUT: %t.patt.ee8: %pattern_type.9ef = at_binding_pattern t, %t.param_patt.169 [concrete]
// CHECK:STDOUT: %t.patt.490: %pattern_type.9ef = wrapper_binding_pattern t, %t.param_patt.169 [concrete]
// CHECK:STDOUT: %F.specific_fn.9d8: <specific function> = specific_function %F, @F(%I.facet.f31) [concrete]
// CHECK:STDOUT: %t.param_patt.267: %pattern_type.e39 = value_param_pattern [concrete]
// CHECK:STDOUT: %t.patt.062: %pattern_type.e39 = at_binding_pattern t, %t.param_patt.267 [concrete]
// CHECK:STDOUT: %t.patt.614: %pattern_type.e39 = wrapper_binding_pattern t, %t.param_patt.267 [concrete]
// CHECK:STDOUT: %F.specific_fn.480: <specific function> = specific_function %F, @F(%I.facet.a68) [concrete]
// CHECK:STDOUT: %.760: type = fn_type_with_self_type %I.WithSelf.Doit.type.808, %I.facet.f31 [concrete]
// CHECK:STDOUT: %.10f: type = fn_type_with_self_type %I.WithSelf.Doit.type.a07, %I.facet.a68 [concrete]
@@ -246,7 +246,7 @@ void G() {
// CHECK:STDOUT: %F.decl: %F.type = fn_decl @F [concrete = constants.%F] {
// CHECK:STDOUT: %T.patt.loc24_7.1: %pattern_type.6cb = symbolic_binding_pattern T, 0 [symbolic = %T.patt.loc24_7.2 (constants.%T.patt)]
// CHECK:STDOUT: %t.param_patt.loc24_13.1: @F.%pattern_type (%pattern_type.b3a) = value_param_pattern [symbolic = %t.param_patt.loc24_13.2 (constants.%t.param_patt.5db)]
// CHECK:STDOUT: %t.patt.loc24_13.1: @F.%pattern_type (%pattern_type.b3a) = at_binding_pattern t, %t.param_patt.loc24_13.1 [symbolic = %t.patt.loc24_13.2 (constants.%t.patt.030)]
// CHECK:STDOUT: %t.patt.loc24_13.1: @F.%pattern_type (%pattern_type.b3a) = wrapper_binding_pattern t, %t.param_patt.loc24_13.1 [symbolic = %t.patt.loc24_13.2 (constants.%t.patt.d48)]
// CHECK:STDOUT: %return.param_patt.loc24_21.1: @F.%pattern_type (%pattern_type.b3a) = out_param_pattern [symbolic = %return.param_patt.loc24_21.2 (constants.%return.param_patt.b82)]
// CHECK:STDOUT: %return.patt.loc24_18.1: @F.%pattern_type (%pattern_type.b3a) = return_slot_pattern %return.param_patt.loc24_21.1, %.loc24_21.3 [symbolic = %return.patt.loc24_18.2 (constants.%return.patt.2e6)]
// CHECK:STDOUT: } {
@@ -284,7 +284,7 @@ void G() {
// CHECK:STDOUT: !with Self:
// CHECK:STDOUT: %I.WithSelf.Doit.decl: @I.WithSelf.%I.WithSelf.Doit.type (%I.WithSelf.Doit.type.26f) = fn_decl @I.WithSelf.Doit [symbolic = @I.WithSelf.%I.WithSelf.Doit (constants.%I.WithSelf.Doit.11f)] {
// CHECK:STDOUT: %self.param_patt.loc6_11.1: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = value_param_pattern [symbolic = %self.param_patt.loc6_11.2 (constants.%self.param_patt.a33)]
// CHECK:STDOUT: %self.patt.loc6_11.1: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = at_binding_pattern self, %self.param_patt.loc6_11.1 [symbolic = %self.patt.loc6_11.2 (constants.%self.patt.696)]
// CHECK:STDOUT: %self.patt.loc6_11.1: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = wrapper_binding_pattern self, %self.param_patt.loc6_11.1 [symbolic = %self.patt.loc6_11.2 (constants.%self.patt.85e)]
// CHECK:STDOUT: %return.param_patt.loc6_20.1: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = out_param_pattern [symbolic = %return.param_patt.loc6_20.2 (constants.%return.param_patt.434)]
// CHECK:STDOUT: %return.patt.loc6_17.1: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = return_slot_pattern %return.param_patt.loc6_20.1, %.loc6_20.2 [symbolic = %return.patt.loc6_17.2 (constants.%return.patt.44a)]
// CHECK:STDOUT: } {
@@ -315,7 +315,7 @@ void G() {
// CHECK:STDOUT: impl @A.as.I.impl: %Self.ref as %I.ref {
// CHECK:STDOUT: %A.as.I.impl.Doit.decl: %A.as.I.impl.Doit.type = fn_decl @A.as.I.impl.Doit [concrete = constants.%A.as.I.impl.Doit] {
// CHECK:STDOUT: %self.param_patt: %pattern_type.9ef = value_param_pattern [concrete = constants.%self.param_patt.04e]
// CHECK:STDOUT: %self.patt: %pattern_type.9ef = at_binding_pattern self, %self.param_patt [concrete = constants.%self.patt.312]
// CHECK:STDOUT: %self.patt: %pattern_type.9ef = wrapper_binding_pattern self, %self.param_patt [concrete = constants.%self.patt.7cd]
// CHECK:STDOUT: %return.param_patt: %pattern_type.9ef = out_param_pattern [concrete = constants.%return.param_patt.f0c]
// CHECK:STDOUT: %return.patt: %pattern_type.9ef = return_slot_pattern %return.param_patt, %Self.ref.loc11_29 [concrete = constants.%return.patt.a6d]
// CHECK:STDOUT: } {
@@ -339,7 +339,7 @@ void G() {
// CHECK:STDOUT: impl @B.as.I.impl: %Self.ref as %I.ref {
// CHECK:STDOUT: %B.as.I.impl.Doit.decl: %B.as.I.impl.Doit.type = fn_decl @B.as.I.impl.Doit [concrete = constants.%B.as.I.impl.Doit] {
// CHECK:STDOUT: %self.param_patt: %pattern_type.e39 = value_param_pattern [concrete = constants.%self.param_patt.f1f]
// CHECK:STDOUT: %self.patt: %pattern_type.e39 = at_binding_pattern self, %self.param_patt [concrete = constants.%self.patt.4eb]
// CHECK:STDOUT: %self.patt: %pattern_type.e39 = wrapper_binding_pattern self, %self.param_patt [concrete = constants.%self.patt.4c3]
// CHECK:STDOUT: %return.param_patt: %pattern_type.e39 = out_param_pattern [concrete = constants.%return.param_patt.934]
// CHECK:STDOUT: %return.patt: %pattern_type.e39 = return_slot_pattern %return.param_patt, %Self.ref.loc18_29 [concrete = constants.%return.patt.911]
// CHECK:STDOUT: } {
@@ -395,7 +395,7 @@ void G() {
// CHECK:STDOUT: %Self.as_type.loc6_11.1: type = facet_access_type %Self [symbolic = %Self.as_type.loc6_11.1 (constants.%Self.as_type.c84)]
// CHECK:STDOUT: %pattern_type: type = pattern_type %Self.as_type.loc6_11.1 [symbolic = %pattern_type (constants.%pattern_type.c60)]
// CHECK:STDOUT: %self.param_patt.loc6_11.2: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = value_param_pattern [symbolic = %self.param_patt.loc6_11.2 (constants.%self.param_patt.a33)]
// CHECK:STDOUT: %self.patt.loc6_11.2: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = at_binding_pattern self, %self.param_patt.loc6_11.2 [symbolic = %self.patt.loc6_11.2 (constants.%self.patt.696)]
// CHECK:STDOUT: %self.patt.loc6_11.2: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = wrapper_binding_pattern self, %self.param_patt.loc6_11.2 [symbolic = %self.patt.loc6_11.2 (constants.%self.patt.85e)]
// CHECK:STDOUT: %.loc6_20.1: Core.Form = init_form %Self.as_type.loc6_11.1 [symbolic = %.loc6_20.1 (constants.%.8fc)]
// CHECK:STDOUT: %return.param_patt.loc6_20.2: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = out_param_pattern [symbolic = %return.param_patt.loc6_20.2 (constants.%return.param_patt.434)]
// CHECK:STDOUT: %return.patt.loc6_17.2: @I.WithSelf.Doit.%pattern_type (%pattern_type.c60) = return_slot_pattern %return.param_patt.loc6_20.2, %Self.as_type.loc6_11.1 [symbolic = %return.patt.loc6_17.2 (constants.%return.patt.44a)]
@@ -425,7 +425,7 @@ void G() {
// CHECK:STDOUT: %T.as_type.loc24_15.1: type = facet_access_type %T.loc24_7.1 [symbolic = %T.as_type.loc24_15.1 (constants.%T.as_type)]
// CHECK:STDOUT: %pattern_type: type = pattern_type %T.as_type.loc24_15.1 [symbolic = %pattern_type (constants.%pattern_type.b3a)]
// CHECK:STDOUT: %t.param_patt.loc24_13.2: @F.%pattern_type (%pattern_type.b3a) = value_param_pattern [symbolic = %t.param_patt.loc24_13.2 (constants.%t.param_patt.5db)]
// CHECK:STDOUT: %t.patt.loc24_13.2: @F.%pattern_type (%pattern_type.b3a) = at_binding_pattern t, %t.param_patt.loc24_13.2 [symbolic = %t.patt.loc24_13.2 (constants.%t.patt.030)]
// CHECK:STDOUT: %t.patt.loc24_13.2: @F.%pattern_type (%pattern_type.b3a) = wrapper_binding_pattern t, %t.param_patt.loc24_13.2 [symbolic = %t.patt.loc24_13.2 (constants.%t.patt.d48)]
// CHECK:STDOUT: %.loc24_21.2: Core.Form = init_form %T.as_type.loc24_15.1 [symbolic = %.loc24_21.2 (constants.%.0ce)]
// CHECK:STDOUT: %return.param_patt.loc24_21.2: @F.%pattern_type (%pattern_type.b3a) = out_param_pattern [symbolic = %return.param_patt.loc24_21.2 (constants.%return.param_patt.b82)]
// CHECK:STDOUT: %return.patt.loc24_18.2: @F.%pattern_type (%pattern_type.b3a) = return_slot_pattern %return.param_patt.loc24_21.2, %T.as_type.loc24_15.1 [symbolic = %return.patt.loc24_18.2 (constants.%return.patt.2e6)]
@@ -524,7 +524,7 @@ void G() {
// CHECK:STDOUT: %Self.as_type.loc6_11.1 => constants.%Self.as_type.c84
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.c60
// CHECK:STDOUT: %self.param_patt.loc6_11.2 => constants.%self.param_patt.a33
// CHECK:STDOUT: %self.patt.loc6_11.2 => constants.%self.patt.696
// CHECK:STDOUT: %self.patt.loc6_11.2 => constants.%self.patt.85e
// CHECK:STDOUT: %.loc6_20.1 => constants.%.8fc
// CHECK:STDOUT: %return.param_patt.loc6_20.2 => constants.%return.param_patt.434
// CHECK:STDOUT: %return.patt.loc6_17.2 => constants.%return.patt.44a
@@ -542,7 +542,7 @@ void G() {
// CHECK:STDOUT: %Self.as_type.loc6_11.1 => constants.%A
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.9ef
// CHECK:STDOUT: %self.param_patt.loc6_11.2 => constants.%self.param_patt.04e
// CHECK:STDOUT: %self.patt.loc6_11.2 => constants.%self.patt.312
// CHECK:STDOUT: %self.patt.loc6_11.2 => constants.%self.patt.7cd
// CHECK:STDOUT: %.loc6_20.1 => constants.%.cbf
// CHECK:STDOUT: %return.param_patt.loc6_20.2 => constants.%return.param_patt.f0c
// CHECK:STDOUT: %return.patt.loc6_17.2 => constants.%return.patt.a6d
@@ -560,7 +560,7 @@ void G() {
// CHECK:STDOUT: %Self.as_type.loc6_11.1 => constants.%B
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.e39
// CHECK:STDOUT: %self.param_patt.loc6_11.2 => constants.%self.param_patt.f1f
// CHECK:STDOUT: %self.patt.loc6_11.2 => constants.%self.patt.4eb
// CHECK:STDOUT: %self.patt.loc6_11.2 => constants.%self.patt.4c3
// CHECK:STDOUT: %.loc6_20.1 => constants.%.d83
// CHECK:STDOUT: %return.param_patt.loc6_20.2 => constants.%return.param_patt.934
// CHECK:STDOUT: %return.patt.loc6_17.2 => constants.%return.patt.911
@@ -572,7 +572,7 @@ void G() {
// CHECK:STDOUT: %T.as_type.loc24_15.1 => constants.%T.as_type
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.b3a
// CHECK:STDOUT: %t.param_patt.loc24_13.2 => constants.%t.param_patt.5db
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.030
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.d48
// CHECK:STDOUT: %.loc24_21.2 => constants.%.0ce
// CHECK:STDOUT: %return.param_patt.loc24_21.2 => constants.%return.param_patt.b82
// CHECK:STDOUT: %return.patt.loc24_18.2 => constants.%return.patt.2e6
@@ -590,7 +590,7 @@ void G() {
// CHECK:STDOUT: %Self.as_type.loc6_11.1 => constants.%T.as_type
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.b3a
// CHECK:STDOUT: %self.param_patt.loc6_11.2 => constants.%self.param_patt.58e
// CHECK:STDOUT: %self.patt.loc6_11.2 => constants.%self.patt.300
// CHECK:STDOUT: %self.patt.loc6_11.2 => constants.%self.patt.b4c
// CHECK:STDOUT: %.loc6_20.1 => constants.%.0ce
// CHECK:STDOUT: %return.param_patt.loc6_20.2 => constants.%return.param_patt.b82
// CHECK:STDOUT: %return.patt.loc6_17.2 => constants.%return.patt.2e6
@@ -602,7 +602,7 @@ void G() {
// CHECK:STDOUT: %T.as_type.loc24_15.1 => constants.%A
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.9ef
// CHECK:STDOUT: %t.param_patt.loc24_13.2 => constants.%t.param_patt.169
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.ee8
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.490
// CHECK:STDOUT: %.loc24_21.2 => constants.%.cbf
// CHECK:STDOUT: %return.param_patt.loc24_21.2 => constants.%return.param_patt.f0c
// CHECK:STDOUT: %return.patt.loc24_18.2 => constants.%return.patt.a6d
@@ -614,7 +614,7 @@ void G() {
// CHECK:STDOUT: %T.as_type.loc24_15.1 => constants.%A
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.9ef
// CHECK:STDOUT: %t.param_patt.loc24_13.2 => constants.%t.param_patt.169
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.ee8
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.490
// CHECK:STDOUT: %.loc24_21.2 => constants.%.cbf
// CHECK:STDOUT: %return.param_patt.loc24_21.2 => constants.%return.param_patt.f0c
// CHECK:STDOUT: %return.patt.loc24_18.2 => constants.%return.patt.a6d
@@ -634,7 +634,7 @@ void G() {
// CHECK:STDOUT: %T.as_type.loc24_15.1 => constants.%B
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.e39
// CHECK:STDOUT: %t.param_patt.loc24_13.2 => constants.%t.param_patt.267
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.062
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.614
// CHECK:STDOUT: %.loc24_21.2 => constants.%.d83
// CHECK:STDOUT: %return.param_patt.loc24_21.2 => constants.%return.param_patt.934
// CHECK:STDOUT: %return.patt.loc24_18.2 => constants.%return.patt.911
@@ -646,7 +646,7 @@ void G() {
// CHECK:STDOUT: %T.as_type.loc24_15.1 => constants.%B
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.e39
// CHECK:STDOUT: %t.param_patt.loc24_13.2 => constants.%t.param_patt.267
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.062
// CHECK:STDOUT: %t.patt.loc24_13.2 => constants.%t.patt.614
// CHECK:STDOUT: %.loc24_21.2 => constants.%.d83
// CHECK:STDOUT: %return.param_patt.loc24_21.2 => constants.%return.param_patt.934
// CHECK:STDOUT: %return.patt.loc24_18.2 => constants.%return.patt.911
@@ -426,9 +426,9 @@ fn Call() {
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(%int_32) [concrete]
// CHECK:STDOUT: %pattern_type.6b6: type = pattern_type %i32 [concrete]
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete]
// CHECK:STDOUT: %b.param_patt: %pattern_type.6b6 = value_param_pattern [concrete]
// CHECK:STDOUT: %b.patt: %pattern_type.6b6 = at_binding_pattern b, %b.param_patt [concrete]
// CHECK:STDOUT: %b.patt: %pattern_type.6b6 = wrapper_binding_pattern b, %b.param_patt [concrete]
// CHECK:STDOUT: %GlobalNoReturn__carbon_thunk.type.b46fe2.1: type = fn_type @GlobalNoReturn__carbon_thunk.1 [concrete]
// CHECK:STDOUT: %GlobalNoReturn__carbon_thunk.4bc5a6.1: %GlobalNoReturn__carbon_thunk.type.b46fe2.1 = struct_value () [concrete]
// CHECK:STDOUT: %ImplicitAs.type.0ff: type = generic_interface_type @ImplicitAs [concrete]
@@ -459,7 +459,7 @@ fn Call() {
// CHECK:STDOUT: %GlobalReturnInt__carbon_thunk: %GlobalReturnInt__carbon_thunk.type = struct_value () [concrete]
// CHECK:STDOUT: %int_3.1ba: Core.IntLiteral = int_value 3 [concrete]
// CHECK:STDOUT: %c.param_patt: %pattern_type.6b6 = value_param_pattern [concrete]
// CHECK:STDOUT: %c.patt: %pattern_type.6b6 = at_binding_pattern c, %c.param_patt [concrete]
// CHECK:STDOUT: %c.patt: %pattern_type.6b6 = wrapper_binding_pattern c, %c.param_patt [concrete]
// CHECK:STDOUT: %GlobalNoReturn__carbon_thunk.type.b46fe2.2: type = fn_type @GlobalNoReturn__carbon_thunk.2 [concrete]
// CHECK:STDOUT: %GlobalNoReturn__carbon_thunk.4bc5a6.2: %GlobalNoReturn__carbon_thunk.type.b46fe2.2 = struct_value () [concrete]
// CHECK:STDOUT: %Core.IntLiteral.as.ImplicitAs.impl.Convert.bound.485: <bound method> = bound_method %int_3.1ba, %Core.IntLiteral.as.ImplicitAs.impl.Convert.e39 [concrete]
@@ -476,7 +476,7 @@ fn Call() {
// CHECK:STDOUT: %bound_method.f8c: <bound method> = bound_method %.414, %X.B.cpp_overload_set.value [concrete]
// CHECK:STDOUT: %pattern_type.fa7: type = pattern_type %X [concrete]
// CHECK:STDOUT: %this.param_patt: %pattern_type.fa7 = value_param_pattern [concrete]
// CHECK:STDOUT: %this.patt: %pattern_type.fa7 = at_binding_pattern this, %this.param_patt [concrete]
// CHECK:STDOUT: %this.patt: %pattern_type.fa7 = wrapper_binding_pattern this, %this.param_patt [concrete]
// CHECK:STDOUT: %B__carbon_thunk.type: type = fn_type @B__carbon_thunk [concrete]
// CHECK:STDOUT: %B__carbon_thunk: %B__carbon_thunk.type = struct_value () [concrete]
// CHECK:STDOUT: %Destroy.type: type = facet_type <@Destroy> [concrete]
@@ -484,7 +484,7 @@ fn Call() {
// CHECK:STDOUT: %Destroy.WithSelf.Op.type.d3e: type = fn_type @Destroy.WithSelf.Op, @Destroy.WithSelf(%Self.0e7) [symbolic]
// CHECK:STDOUT: %Destroy.WithSelf.Op.42b: %Destroy.WithSelf.Op.type.d3e = struct_value () [symbolic]
// CHECK:STDOUT: %self.param_patt.a14: %pattern_type.fa7 = ref_param_pattern [concrete]
// CHECK:STDOUT: %self.patt.37b: %pattern_type.fa7 = at_binding_pattern self, %self.param_patt.a14 [concrete]
// CHECK:STDOUT: %self.patt.3ab: %pattern_type.fa7 = wrapper_binding_pattern self, %self.param_patt.a14 [concrete]
// CHECK:STDOUT: %X.cpp_destructor.type: type = fn_type @X.cpp_destructor [concrete]
// CHECK:STDOUT: %X.cpp_destructor: %X.cpp_destructor.type = struct_value () [concrete]
// CHECK:STDOUT: %custom_witness.c5a: <witness> = custom_witness (), @Destroy [concrete]
@@ -501,7 +501,7 @@ fn Call() {
// CHECK:STDOUT: %ptr.ca1: type = ptr_type %X [concrete]
// CHECK:STDOUT: %pattern_type.cf1: type = pattern_type %ptr.ca1 [concrete]
// CHECK:STDOUT: %_.param_patt: %pattern_type.cf1 = value_param_pattern [concrete]
// CHECK:STDOUT: %_.patt: %pattern_type.cf1 = at_binding_pattern _, %_.param_patt [concrete]
// CHECK:STDOUT: %_.patt: %pattern_type.cf1 = wrapper_binding_pattern _, %_.param_patt [concrete]
// CHECK:STDOUT: %D__carbon_thunk.type: type = fn_type @D__carbon_thunk [concrete]
// CHECK:STDOUT: %D__carbon_thunk: %D__carbon_thunk.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -524,9 +524,9 @@ fn Call() {
// CHECK:STDOUT: %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
// CHECK:STDOUT: %GlobalNoReturn__carbon_thunk.decl.04a738.1: %GlobalNoReturn__carbon_thunk.type.b46fe2.1 = fn_decl @GlobalNoReturn__carbon_thunk.1 [concrete = constants.%GlobalNoReturn__carbon_thunk.4bc5a6.1] {
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%a.param_patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %b.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%b.param_patt]
// CHECK:STDOUT: %b.patt: %pattern_type.6b6 = at_binding_pattern b, %b.param_patt [concrete = constants.%b.patt]
// CHECK:STDOUT: %b.patt: %pattern_type.6b6 = wrapper_binding_pattern b, %b.param_patt [concrete = constants.%b.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %a.param: %i32 = value_param call_param0
// CHECK:STDOUT: %.1: type = splice_block %i32.4 [concrete = constants.%i32] {
@@ -549,9 +549,9 @@ fn Call() {
// CHECK:STDOUT: %GlobalReturnInt.cpp_overload_set.value: %GlobalReturnInt.cpp_overload_set.type = cpp_overload_set_value @GlobalReturnInt.cpp_overload_set [concrete = constants.%GlobalReturnInt.cpp_overload_set.value]
// CHECK:STDOUT: %GlobalReturnInt__carbon_thunk.decl: %GlobalReturnInt__carbon_thunk.type = fn_decl @GlobalReturnInt__carbon_thunk [concrete = constants.%GlobalReturnInt__carbon_thunk] {
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%a.param_patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %b.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%b.param_patt]
// CHECK:STDOUT: %b.patt: %pattern_type.6b6 = at_binding_pattern b, %b.param_patt [concrete = constants.%b.patt]
// CHECK:STDOUT: %b.patt: %pattern_type.6b6 = wrapper_binding_pattern b, %b.param_patt [concrete = constants.%b.patt]
// CHECK:STDOUT: %return.param_patt: %pattern_type.6b6 = out_param_pattern [concrete = constants.%return.param_patt.a9a]
// CHECK:STDOUT: %return.patt: %pattern_type.6b6 = return_slot_pattern %return.param_patt, %i32.2 [concrete = constants.%return.patt.e1b]
// CHECK:STDOUT: } {
@@ -577,11 +577,11 @@ fn Call() {
// CHECK:STDOUT: }
// CHECK:STDOUT: %GlobalNoReturn__carbon_thunk.decl.04a738.2: %GlobalNoReturn__carbon_thunk.type.b46fe2.2 = fn_decl @GlobalNoReturn__carbon_thunk.2 [concrete = constants.%GlobalNoReturn__carbon_thunk.4bc5a6.2] {
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%a.param_patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %b.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%b.param_patt]
// CHECK:STDOUT: %b.patt: %pattern_type.6b6 = at_binding_pattern b, %b.param_patt [concrete = constants.%b.patt]
// CHECK:STDOUT: %b.patt: %pattern_type.6b6 = wrapper_binding_pattern b, %b.param_patt [concrete = constants.%b.patt]
// CHECK:STDOUT: %c.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%c.param_patt]
// CHECK:STDOUT: %c.patt: %pattern_type.6b6 = at_binding_pattern c, %c.param_patt [concrete = constants.%c.patt]
// CHECK:STDOUT: %c.patt: %pattern_type.6b6 = wrapper_binding_pattern c, %c.param_patt [concrete = constants.%c.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %a.param: %i32 = value_param call_param0
// CHECK:STDOUT: %.1: type = splice_block %i32.6 [concrete = constants.%i32] {
@@ -609,9 +609,9 @@ fn Call() {
// CHECK:STDOUT: %X.B.cpp_overload_set.value: %X.B.cpp_overload_set.type = cpp_overload_set_value @X.B.cpp_overload_set [concrete = constants.%X.B.cpp_overload_set.value]
// CHECK:STDOUT: %B__carbon_thunk.decl: %B__carbon_thunk.type = fn_decl @B__carbon_thunk [concrete = constants.%B__carbon_thunk] {
// CHECK:STDOUT: %this.param_patt: %pattern_type.fa7 = value_param_pattern [concrete = constants.%this.param_patt]
// CHECK:STDOUT: %this.patt: %pattern_type.fa7 = at_binding_pattern this, %this.param_patt [concrete = constants.%this.patt]
// CHECK:STDOUT: %this.patt: %pattern_type.fa7 = wrapper_binding_pattern this, %this.param_patt [concrete = constants.%this.patt]
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%a.param_patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %this.param: %X = value_param call_param0
// CHECK:STDOUT: %this: %X = wrapper_binding this, %this.param
@@ -627,7 +627,7 @@ fn Call() {
// CHECK:STDOUT: %Destroy.WithSelf.Op.decl: %Destroy.WithSelf.Op.type.d3e = fn_decl @Destroy.WithSelf.Op [symbolic = @Destroy.WithSelf.%Destroy.WithSelf.Op (constants.%Destroy.WithSelf.Op.42b)] {} {}
// CHECK:STDOUT: %X.cpp_destructor.decl: %X.cpp_destructor.type = fn_decl @X.cpp_destructor [concrete = constants.%X.cpp_destructor] {
// CHECK:STDOUT: %self.param_patt: %pattern_type.fa7 = ref_param_pattern [concrete = constants.%self.param_patt.a14]
// CHECK:STDOUT: %self.patt: %pattern_type.fa7 = at_binding_pattern self, %self.param_patt [concrete = constants.%self.patt.37b]
// CHECK:STDOUT: %self.patt: %pattern_type.fa7 = wrapper_binding_pattern self, %self.param_patt [concrete = constants.%self.patt.3ab]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %self.param: ref %X = ref_param call_param0
// CHECK:STDOUT: %self: ref %X = wrapper_binding self, %self.param
@@ -635,7 +635,7 @@ fn Call() {
// CHECK:STDOUT: %X.C.cpp_overload_set.value: %X.C.cpp_overload_set.type = cpp_overload_set_value @X.C.cpp_overload_set [concrete = constants.%X.C.cpp_overload_set.value]
// CHECK:STDOUT: %C__carbon_thunk.decl: %C__carbon_thunk.type = fn_decl @C__carbon_thunk [concrete = constants.%C__carbon_thunk] {
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%a.param_patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %a.param: %i32 = value_param call_param0
// CHECK:STDOUT: %.1: type = splice_block %i32.2 [concrete = constants.%i32] {
@@ -648,9 +648,9 @@ fn Call() {
// CHECK:STDOUT: %X.D.cpp_overload_set.value: %X.D.cpp_overload_set.type = cpp_overload_set_value @X.D.cpp_overload_set [concrete = constants.%X.D.cpp_overload_set.value]
// CHECK:STDOUT: %D__carbon_thunk.decl: %D__carbon_thunk.type = fn_decl @D__carbon_thunk [concrete = constants.%D__carbon_thunk] {
// CHECK:STDOUT: %_.param_patt: %pattern_type.cf1 = value_param_pattern [concrete = constants.%_.param_patt]
// CHECK:STDOUT: %_.patt: %pattern_type.cf1 = at_binding_pattern _, %_.param_patt [concrete = constants.%_.patt]
// CHECK:STDOUT: %_.patt: %pattern_type.cf1 = wrapper_binding_pattern _, %_.param_patt [concrete = constants.%_.patt]
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%a.param_patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %_.param: %ptr.ca1 = value_param call_param0
// CHECK:STDOUT: %_: %ptr.ca1 = wrapper_binding _, %_.param
@@ -784,7 +784,7 @@ fn Call() {
// CHECK:STDOUT: %B__carbon_thunk.call: init %empty_tuple.type = call imports.%B__carbon_thunk.decl(%.loc11_7.3, %.loc11_19.2)
// CHECK:STDOUT: %X.Op.decl: %X.Op.type = fn_decl @X.Op [concrete = constants.%X.Op] {
// CHECK:STDOUT: %.1: %pattern_type.fa7 = specific_constant constants.%self.param_patt.a14, @Destroy.WithSelf.Op(constants.%Destroy.facet.761) [concrete = constants.%self.param_patt.a14]
// CHECK:STDOUT: %self.patt: %pattern_type.fa7 = at_binding_pattern self, %.1 [concrete = constants.%self.patt.37b]
// CHECK:STDOUT: %self.patt: %pattern_type.fa7 = wrapper_binding_pattern self, %.1 [concrete = constants.%self.patt.3ab]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %self.param: ref %X = ref_param call_param0
// CHECK:STDOUT: %self: ref %X = wrapper_binding self, %self.param
@@ -99,7 +99,7 @@ fn F() {
// CHECK:STDOUT: %ptr.686: type = ptr_type %i16 [concrete]
// CHECK:STDOUT: %pattern_type.f71: type = pattern_type %ptr.686 [concrete]
// CHECK:STDOUT: %a.param_patt.58a: %pattern_type.f71 = value_param_pattern [concrete]
// CHECK:STDOUT: %a.patt.da1: %pattern_type.f71 = at_binding_pattern a, %a.param_patt.58a [concrete]
// CHECK:STDOUT: %a.patt.3be: %pattern_type.f71 = wrapper_binding_pattern a, %a.param_patt.58a [concrete]
// CHECK:STDOUT: %foo__carbon_thunk.type: type = fn_type @foo__carbon_thunk [concrete]
// CHECK:STDOUT: %foo__carbon_thunk: %foo__carbon_thunk.type = struct_value () [concrete]
// CHECK:STDOUT: %Copy.type: type = facet_type <@Copy> [concrete]
@@ -142,7 +142,7 @@ fn F() {
// CHECK:STDOUT: %As.impl_witness_table.d22 = impl_witness_table (%Core.import_ref.64b), @Core.IntLiteral.as.As.impl [concrete]
// CHECK:STDOUT: %foo__carbon_thunk.decl: %foo__carbon_thunk.type = fn_decl @foo__carbon_thunk [concrete = constants.%foo__carbon_thunk] {
// CHECK:STDOUT: %a.param_patt: %pattern_type.f71 = value_param_pattern [concrete = constants.%a.param_patt.58a]
// CHECK:STDOUT: %a.patt: %pattern_type.f71 = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt.da1]
// CHECK:STDOUT: %a.patt: %pattern_type.f71 = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt.3be]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %a.param: %ptr.686 = value_param call_param0
// CHECK:STDOUT: %.1: type = splice_block constants.%ptr.686 [concrete = constants.%ptr.686] {
@@ -223,7 +223,7 @@ fn F() {
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(%int_32) [concrete]
// CHECK:STDOUT: %pattern_type.6b6: type = pattern_type %i32 [concrete]
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete]
// CHECK:STDOUT: %foo.type: type = fn_type @foo [concrete]
// CHECK:STDOUT: %foo: %foo.type = struct_value () [concrete]
// CHECK:STDOUT: %ImplicitAs.type.0ff: type = generic_interface_type @ImplicitAs [concrete]
@@ -259,7 +259,7 @@ fn F() {
// CHECK:STDOUT: %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
// CHECK:STDOUT: %foo.decl: %foo.type = fn_decl @foo [concrete = constants.%foo] {
// CHECK:STDOUT: %a.param_patt: %pattern_type.6b6 = value_param_pattern [concrete = constants.%a.param_patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %a.patt: %pattern_type.6b6 = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %a.param: %i32 = value_param call_param0
// CHECK:STDOUT: %.1: type = splice_block %i32.2 [concrete = constants.%i32] {
@@ -323,7 +323,7 @@ fn F() {
// CHECK:STDOUT: %ptr: type = ptr_type %i16 [concrete]
// CHECK:STDOUT: %pattern_type.f71: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %return.param_patt.667: %pattern_type.f71 = value_param_pattern [concrete]
// CHECK:STDOUT: %return.patt.4ab: %pattern_type.f71 = at_binding_pattern r#return, %return.param_patt.667 [concrete]
// CHECK:STDOUT: %return.patt.f57: %pattern_type.f71 = wrapper_binding_pattern r#return, %return.param_patt.667 [concrete]
// CHECK:STDOUT: %foo_short__carbon_thunk.type: type = fn_type @foo_short__carbon_thunk [concrete]
// CHECK:STDOUT: %foo_short__carbon_thunk: %foo_short__carbon_thunk.type = struct_value () [concrete]
// CHECK:STDOUT: %Destroy.type: type = facet_type <@Destroy> [concrete]
@@ -346,7 +346,7 @@ fn F() {
// CHECK:STDOUT: %foo_short.cpp_overload_set.value: %foo_short.cpp_overload_set.type = cpp_overload_set_value @foo_short.cpp_overload_set [concrete = constants.%foo_short.cpp_overload_set.value]
// CHECK:STDOUT: %foo_short__carbon_thunk.decl: %foo_short__carbon_thunk.type = fn_decl @foo_short__carbon_thunk [concrete = constants.%foo_short__carbon_thunk] {
// CHECK:STDOUT: %return.param_patt: %pattern_type.f71 = value_param_pattern [concrete = constants.%return.param_patt.667]
// CHECK:STDOUT: %return.patt: %pattern_type.f71 = at_binding_pattern r#return, %return.param_patt [concrete = constants.%return.patt.4ab]
// CHECK:STDOUT: %return.patt: %pattern_type.f71 = wrapper_binding_pattern r#return, %return.param_patt [concrete = constants.%return.patt.f57]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %return.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.1: type = splice_block constants.%ptr [concrete = constants.%ptr] {
@@ -281,7 +281,7 @@ fn Var() {
// CHECK:STDOUT: %ptr: type = ptr_type %u8 [concrete]
// CHECK:STDOUT: %pattern_type.015: type = pattern_type %ptr [concrete]
// CHECK:STDOUT: %return.param_patt.d05: %pattern_type.015 = value_param_pattern [concrete]
// CHECK:STDOUT: %return.patt.cb2: %pattern_type.015 = at_binding_pattern r#return, %return.param_patt.d05 [concrete]
// CHECK:STDOUT: %return.patt.f47: %pattern_type.015 = wrapper_binding_pattern r#return, %return.param_patt.d05 [concrete]
// CHECK:STDOUT: %ReturnU8__carbon_thunk.type: type = fn_type @ReturnU8__carbon_thunk [concrete]
// CHECK:STDOUT: %ReturnU8__carbon_thunk: %ReturnU8__carbon_thunk.type = struct_value () [concrete]
// CHECK:STDOUT: }
@@ -300,7 +300,7 @@ fn Var() {
// CHECK:STDOUT: %ReturnU8.cpp_overload_set.value: %ReturnU8.cpp_overload_set.type = cpp_overload_set_value @ReturnU8.cpp_overload_set [concrete = constants.%ReturnU8.cpp_overload_set.value]
// CHECK:STDOUT: %ReturnU8__carbon_thunk.decl: %ReturnU8__carbon_thunk.type = fn_decl @ReturnU8__carbon_thunk [concrete = constants.%ReturnU8__carbon_thunk] {
// CHECK:STDOUT: %return.param_patt: %pattern_type.015 = value_param_pattern [concrete = constants.%return.param_patt.d05]
// CHECK:STDOUT: %return.patt: %pattern_type.015 = at_binding_pattern r#return, %return.param_patt [concrete = constants.%return.patt.cb2]
// CHECK:STDOUT: %return.patt: %pattern_type.015 = wrapper_binding_pattern r#return, %return.param_patt [concrete = constants.%return.patt.f47]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %return.param: %ptr = value_param call_param0
// CHECK:STDOUT: %.1: type = splice_block constants.%ptr [concrete = constants.%ptr] {
+3 -3
View File
@@ -253,7 +253,7 @@ fn F() {
// CHECK:STDOUT: %a.var_patt.d25: %pattern_type.a12 = var_pattern %a.patt.b64 [concrete]
// CHECK:STDOUT: %TrivialDestructor.val: %TrivialDestructor = struct_value () [concrete]
// CHECK:STDOUT: %self.param_patt.e73: %pattern_type.a12 = ref_param_pattern [concrete]
// CHECK:STDOUT: %self.patt.b81: %pattern_type.a12 = at_binding_pattern self, %self.param_patt.e73 [concrete]
// CHECK:STDOUT: %self.patt.01e: %pattern_type.a12 = wrapper_binding_pattern self, %self.param_patt.e73 [concrete]
// CHECK:STDOUT: %TrivialDestructor.cpp_destructor.type: type = fn_type @TrivialDestructor.cpp_destructor [concrete]
// CHECK:STDOUT: %TrivialDestructor.cpp_destructor: %TrivialDestructor.cpp_destructor.type = struct_value () [concrete]
// CHECK:STDOUT: %Destroy.facet.c09: %Destroy.type = facet_value %TrivialDestructor, (%custom_witness.c5a) [concrete]
@@ -278,7 +278,7 @@ fn F() {
// CHECK:STDOUT: %TrivialDestructor.decl: type = class_decl @TrivialDestructor [concrete = constants.%TrivialDestructor] {} {}
// CHECK:STDOUT: %TrivialDestructor.cpp_destructor.decl: %TrivialDestructor.cpp_destructor.type = fn_decl @TrivialDestructor.cpp_destructor [concrete = constants.%TrivialDestructor.cpp_destructor] {
// CHECK:STDOUT: %self.param_patt: %pattern_type.a12 = ref_param_pattern [concrete = constants.%self.param_patt.e73]
// CHECK:STDOUT: %self.patt: %pattern_type.a12 = at_binding_pattern self, %self.param_patt [concrete = constants.%self.patt.b81]
// CHECK:STDOUT: %self.patt: %pattern_type.a12 = wrapper_binding_pattern self, %self.param_patt [concrete = constants.%self.patt.01e]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %self.param: ref %TrivialDestructor = ref_param call_param0
// CHECK:STDOUT: %self: ref %TrivialDestructor = wrapper_binding self, %self.param
@@ -359,7 +359,7 @@ fn F() {
// CHECK:STDOUT: }
// CHECK:STDOUT: %TrivialDestructor.Op.decl: %TrivialDestructor.Op.type = fn_decl @TrivialDestructor.Op [concrete = constants.%TrivialDestructor.Op] {
// CHECK:STDOUT: %.1: %pattern_type.a12 = specific_constant constants.%self.param_patt.e73, @Destroy.WithSelf.Op(constants.%Destroy.facet.c09) [concrete = constants.%self.param_patt.e73]
// CHECK:STDOUT: %self.patt: %pattern_type.a12 = at_binding_pattern self, %.1 [concrete = constants.%self.patt.b81]
// CHECK:STDOUT: %self.patt: %pattern_type.a12 = wrapper_binding_pattern self, %.1 [concrete = constants.%self.patt.01e]
// CHECK:STDOUT: } {
// CHECK:STDOUT: %self.param: ref %TrivialDestructor = ref_param call_param0
// CHECK:STDOUT: %self: ref %TrivialDestructor = wrapper_binding self, %self.param
File diff suppressed because it is too large Load Diff
+32 -32
View File
@@ -378,10 +378,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type: type = facet_access_type %T [symbolic]
// CHECK:STDOUT: %pattern_type.e6374a.2: type = pattern_type %T.as_type [symbolic]
// CHECK:STDOUT: %x.param_patt.aa2: %pattern_type.e6374a.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %x.patt.4e4: %pattern_type.e6374a.2 = at_binding_pattern x, %x.param_patt.aa2 [symbolic]
// CHECK:STDOUT: %x.patt.03e: %pattern_type.e6374a.2 = wrapper_binding_pattern x, %x.param_patt.aa2 [symbolic]
// CHECK:STDOUT: %pattern_type.51d1c4.2: type = pattern_type %U [symbolic]
// CHECK:STDOUT: %y.param_patt.be3: %pattern_type.51d1c4.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %y.patt.b85: %pattern_type.51d1c4.2 = at_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %y.patt.678: %pattern_type.51d1c4.2 = wrapper_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %EqWith.assoc_type.85b122.2: type = assoc_entity_type @EqWith.1, @EqWith.1(%U) [symbolic]
// CHECK:STDOUT: %assoc0.eee873.2: %EqWith.assoc_type.85b122.2 = assoc_entity element0, imports.%Core.import_ref.5ba [symbolic]
// CHECK:STDOUT: %assoc1.0ffc88.2: %EqWith.assoc_type.85b122.2 = assoc_entity element1, imports.%Core.import_ref.03f [symbolic]
@@ -414,9 +414,9 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %pattern_type.876: type = pattern_type %EqWith.type.6a7 [concrete]
// CHECK:STDOUT: %T.patt.d6d: %pattern_type.876 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.427: %pattern_type.73b = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.570: %pattern_type.73b = at_binding_pattern x, %x.param_patt.427 [concrete]
// CHECK:STDOUT: %x.patt.e43: %pattern_type.73b = wrapper_binding_pattern x, %x.param_patt.427 [concrete]
// CHECK:STDOUT: %y.param_patt.464: %pattern_type.73b = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.d34: %pattern_type.73b = at_binding_pattern y, %y.param_patt.464 [concrete]
// CHECK:STDOUT: %y.patt.522: %pattern_type.73b = wrapper_binding_pattern y, %y.param_patt.464 [concrete]
// CHECK:STDOUT: %complete_type.c86: <witness> = complete_type_witness %EqWith.type.6a7 [concrete]
// CHECK:STDOUT: %EqWith.WithSelf.Equal.type.6ae: type = fn_type @EqWith.WithSelf.Equal, @EqWith.WithSelf(%EqualityComparable, %EqWith.facet.b15) [concrete]
// CHECK:STDOUT: %.96d: type = fn_type_with_self_type %EqWith.WithSelf.Equal.type.6ae, %EqWith.facet.b15 [concrete]
@@ -488,10 +488,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type.loc11_42.1 => constants.%T.as_type
// CHECK:STDOUT: %pattern_type.loc11_40 => constants.%pattern_type.e6374a.2
// CHECK:STDOUT: %x.param_patt.loc11_40.2 => constants.%x.param_patt.aa2
// CHECK:STDOUT: %x.patt.loc11_40.2 => constants.%x.patt.4e4
// CHECK:STDOUT: %x.patt.loc11_40.2 => constants.%x.patt.03e
// CHECK:STDOUT: %pattern_type.loc11_46 => constants.%pattern_type.51d1c4.2
// CHECK:STDOUT: %y.param_patt.loc11_46.2 => constants.%y.param_patt.be3
// CHECK:STDOUT: %y.patt.loc11_46.2 => constants.%y.patt.b85
// CHECK:STDOUT: %y.patt.loc11_46.2 => constants.%y.patt.678
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @EqWith.loc11(constants.%EqualityComparable, constants.%EqWith.facet.b15) {
@@ -504,10 +504,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type.loc11_42.1 => constants.%EqualityComparable
// CHECK:STDOUT: %pattern_type.loc11_40 => constants.%pattern_type.73b
// CHECK:STDOUT: %x.param_patt.loc11_40.2 => constants.%x.param_patt.427
// CHECK:STDOUT: %x.patt.loc11_40.2 => constants.%x.patt.570
// CHECK:STDOUT: %x.patt.loc11_40.2 => constants.%x.patt.e43
// CHECK:STDOUT: %pattern_type.loc11_46 => constants.%pattern_type.73b
// CHECK:STDOUT: %y.param_patt.loc11_46.2 => constants.%y.param_patt.464
// CHECK:STDOUT: %y.patt.loc11_46.2 => constants.%y.patt.d34
// CHECK:STDOUT: %y.patt.loc11_46.2 => constants.%y.patt.522
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc11_40 => constants.%complete_type.357
@@ -548,10 +548,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type: type = facet_access_type %T [symbolic]
// CHECK:STDOUT: %pattern_type.e6374a.2: type = pattern_type %T.as_type [symbolic]
// CHECK:STDOUT: %x.param_patt.aa2: %pattern_type.e6374a.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %x.patt.4e4: %pattern_type.e6374a.2 = at_binding_pattern x, %x.param_patt.aa2 [symbolic]
// CHECK:STDOUT: %x.patt.03e: %pattern_type.e6374a.2 = wrapper_binding_pattern x, %x.param_patt.aa2 [symbolic]
// CHECK:STDOUT: %pattern_type.51d1c4.2: type = pattern_type %U [symbolic]
// CHECK:STDOUT: %y.param_patt.be3: %pattern_type.51d1c4.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %y.patt.b85: %pattern_type.51d1c4.2 = at_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %y.patt.678: %pattern_type.51d1c4.2 = wrapper_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %EqWith.assoc_type.85b122.2: type = assoc_entity_type @EqWith.1, @EqWith.1(%U) [symbolic]
// CHECK:STDOUT: %assoc0.eee873.2: %EqWith.assoc_type.85b122.2 = assoc_entity element0, imports.%Core.import_ref.5ba [symbolic]
// CHECK:STDOUT: %assoc1.0ffc88.2: %EqWith.assoc_type.85b122.2 = assoc_entity element1, imports.%Core.import_ref.03f [symbolic]
@@ -594,9 +594,9 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %pattern_type.e16: type = pattern_type %EqWith.type.6ed [concrete]
// CHECK:STDOUT: %T.patt.869: %pattern_type.e16 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.c7f: %pattern_type.3b4 = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.4ff: %pattern_type.3b4 = at_binding_pattern x, %x.param_patt.c7f [concrete]
// CHECK:STDOUT: %x.patt.efd: %pattern_type.3b4 = wrapper_binding_pattern x, %x.param_patt.c7f [concrete]
// CHECK:STDOUT: %y.param_patt.9d7: %pattern_type.5b2 = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.979: %pattern_type.5b2 = at_binding_pattern y, %y.param_patt.9d7 [concrete]
// CHECK:STDOUT: %y.patt.9fc: %pattern_type.5b2 = wrapper_binding_pattern y, %y.param_patt.9d7 [concrete]
// CHECK:STDOUT: %EqWith.type.dda: type = facet_type <@EqWith.1, @EqWith.1(%A1)> [concrete]
// CHECK:STDOUT: %EqWith.assoc_type.5ce: type = assoc_entity_type @EqWith.1, @EqWith.1(%A1) [concrete]
// CHECK:STDOUT: %assoc0.7c8: %EqWith.assoc_type.5ce = assoc_entity element0, imports.%Core.import_ref.5ba [concrete]
@@ -610,9 +610,9 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %pattern_type.a95: type = pattern_type %EqWith.type.dda [concrete]
// CHECK:STDOUT: %T.patt.b7f: %pattern_type.a95 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.bff: %pattern_type.5b2 = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.f3d: %pattern_type.5b2 = at_binding_pattern x, %x.param_patt.bff [concrete]
// CHECK:STDOUT: %x.patt.033: %pattern_type.5b2 = wrapper_binding_pattern x, %x.param_patt.bff [concrete]
// CHECK:STDOUT: %y.param_patt.257: %pattern_type.3b4 = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.774: %pattern_type.3b4 = at_binding_pattern y, %y.param_patt.257 [concrete]
// CHECK:STDOUT: %y.patt.ab9: %pattern_type.3b4 = wrapper_binding_pattern y, %y.param_patt.257 [concrete]
// CHECK:STDOUT: %EqWith.type.c63: type = facet_type <@EqWith.1, @EqWith.1(%A2)> [concrete]
// CHECK:STDOUT: %EqWith.assoc_type.2ca: type = assoc_entity_type @EqWith.1, @EqWith.1(%A2) [concrete]
// CHECK:STDOUT: %assoc0.878: %EqWith.assoc_type.2ca = assoc_entity element0, imports.%Core.import_ref.5ba [concrete]
@@ -626,9 +626,9 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %pattern_type.cbd: type = pattern_type %EqWith.type.c63 [concrete]
// CHECK:STDOUT: %T.patt.aaf: %pattern_type.cbd = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.0e6: %pattern_type.d1e = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.94e: %pattern_type.d1e = at_binding_pattern x, %x.param_patt.0e6 [concrete]
// CHECK:STDOUT: %x.patt.d0b: %pattern_type.d1e = wrapper_binding_pattern x, %x.param_patt.0e6 [concrete]
// CHECK:STDOUT: %y.param_patt.a4f: %pattern_type.9f0 = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.912: %pattern_type.9f0 = at_binding_pattern y, %y.param_patt.a4f [concrete]
// CHECK:STDOUT: %y.patt.a96: %pattern_type.9f0 = wrapper_binding_pattern y, %y.param_patt.a4f [concrete]
// CHECK:STDOUT: %EqWith.type.2e6: type = facet_type <@EqWith.1, @EqWith.1(%B3)> [concrete]
// CHECK:STDOUT: %EqWith.assoc_type.eda: type = assoc_entity_type @EqWith.1, @EqWith.1(%B3) [concrete]
// CHECK:STDOUT: %assoc0.34f: %EqWith.assoc_type.eda = assoc_entity element0, imports.%Core.import_ref.5ba [concrete]
@@ -642,9 +642,9 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %pattern_type.2b2: type = pattern_type %EqWith.type.2e6 [concrete]
// CHECK:STDOUT: %T.patt.7d5: %pattern_type.2b2 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.429: %pattern_type.7fe = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.6e2: %pattern_type.7fe = at_binding_pattern x, %x.param_patt.429 [concrete]
// CHECK:STDOUT: %x.patt.39e: %pattern_type.7fe = wrapper_binding_pattern x, %x.param_patt.429 [concrete]
// CHECK:STDOUT: %y.param_patt.b51: %pattern_type.2dd = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.7b8: %pattern_type.2dd = at_binding_pattern y, %y.param_patt.b51 [concrete]
// CHECK:STDOUT: %y.patt.e2b: %pattern_type.2dd = wrapper_binding_pattern y, %y.param_patt.b51 [concrete]
// CHECK:STDOUT: %EqWith.type.831: type = facet_type <@EqWith.1, @EqWith.1(%A3)> [concrete]
// CHECK:STDOUT: %EqWith.assoc_type.d85: type = assoc_entity_type @EqWith.1, @EqWith.1(%A3) [concrete]
// CHECK:STDOUT: %assoc0.b7b: %EqWith.assoc_type.d85 = assoc_entity element0, imports.%Core.import_ref.5ba [concrete]
@@ -658,9 +658,9 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %pattern_type.9c8: type = pattern_type %EqWith.type.831 [concrete]
// CHECK:STDOUT: %T.patt.fcb: %pattern_type.9c8 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.074: %pattern_type.2dd = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.234: %pattern_type.2dd = at_binding_pattern x, %x.param_patt.074 [concrete]
// CHECK:STDOUT: %x.patt.9ae: %pattern_type.2dd = wrapper_binding_pattern x, %x.param_patt.074 [concrete]
// CHECK:STDOUT: %y.param_patt.d86: %pattern_type.7fe = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.fd9: %pattern_type.7fe = at_binding_pattern y, %y.param_patt.d86 [concrete]
// CHECK:STDOUT: %y.patt.426: %pattern_type.7fe = wrapper_binding_pattern y, %y.param_patt.d86 [concrete]
// CHECK:STDOUT: %complete_type.1d5: <witness> = complete_type_witness %EqWith.type.6ed [concrete]
// CHECK:STDOUT: %EqWith.WithSelf.Equal.type.b99: type = fn_type @EqWith.WithSelf.Equal, @EqWith.WithSelf(%B1, %EqWith.facet.2d3) [concrete]
// CHECK:STDOUT: %.bad: type = fn_type_with_self_type %EqWith.WithSelf.Equal.type.b99, %EqWith.facet.2d3 [concrete]
@@ -752,10 +752,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type.loc34_42.1 => constants.%T.as_type
// CHECK:STDOUT: %pattern_type.loc34_40 => constants.%pattern_type.e6374a.2
// CHECK:STDOUT: %x.param_patt.loc34_40.2 => constants.%x.param_patt.aa2
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.4e4
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.03e
// CHECK:STDOUT: %pattern_type.loc34_46 => constants.%pattern_type.51d1c4.2
// CHECK:STDOUT: %y.param_patt.loc34_46.2 => constants.%y.param_patt.be3
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.b85
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.678
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @EqWith.loc34(constants.%B1, constants.%EqWith.facet.2d3) {
@@ -768,10 +768,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type.loc34_42.1 => constants.%A1
// CHECK:STDOUT: %pattern_type.loc34_40 => constants.%pattern_type.3b4
// CHECK:STDOUT: %x.param_patt.loc34_40.2 => constants.%x.param_patt.c7f
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.4ff
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.efd
// CHECK:STDOUT: %pattern_type.loc34_46 => constants.%pattern_type.5b2
// CHECK:STDOUT: %y.param_patt.loc34_46.2 => constants.%y.param_patt.9d7
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.979
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.9fc
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc34_40 => constants.%complete_type.357
@@ -801,10 +801,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type.loc34_42.1 => constants.%B1
// CHECK:STDOUT: %pattern_type.loc34_40 => constants.%pattern_type.5b2
// CHECK:STDOUT: %x.param_patt.loc34_40.2 => constants.%x.param_patt.bff
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.f3d
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.033
// CHECK:STDOUT: %pattern_type.loc34_46 => constants.%pattern_type.3b4
// CHECK:STDOUT: %y.param_patt.loc34_46.2 => constants.%y.param_patt.257
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.774
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.ab9
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc34_40 => constants.%complete_type.357
@@ -834,10 +834,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type.loc34_42.1 => constants.%B2
// CHECK:STDOUT: %pattern_type.loc34_40 => constants.%pattern_type.d1e
// CHECK:STDOUT: %x.param_patt.loc34_40.2 => constants.%x.param_patt.0e6
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.94e
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.d0b
// CHECK:STDOUT: %pattern_type.loc34_46 => constants.%pattern_type.9f0
// CHECK:STDOUT: %y.param_patt.loc34_46.2 => constants.%y.param_patt.a4f
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.912
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.a96
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc34_40 => constants.%complete_type.357
@@ -867,10 +867,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type.loc34_42.1 => constants.%A3
// CHECK:STDOUT: %pattern_type.loc34_40 => constants.%pattern_type.7fe
// CHECK:STDOUT: %x.param_patt.loc34_40.2 => constants.%x.param_patt.429
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.6e2
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.39e
// CHECK:STDOUT: %pattern_type.loc34_46 => constants.%pattern_type.2dd
// CHECK:STDOUT: %y.param_patt.loc34_46.2 => constants.%y.param_patt.b51
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.7b8
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.e2b
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc34_40 => constants.%complete_type.357
@@ -900,10 +900,10 @@ fn Test(only_neq: Cpp.OnlyNeq,
// CHECK:STDOUT: %T.as_type.loc34_42.1 => constants.%B3
// CHECK:STDOUT: %pattern_type.loc34_40 => constants.%pattern_type.2dd
// CHECK:STDOUT: %x.param_patt.loc34_40.2 => constants.%x.param_patt.074
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.234
// CHECK:STDOUT: %x.patt.loc34_40.2 => constants.%x.patt.9ae
// CHECK:STDOUT: %pattern_type.loc34_46 => constants.%pattern_type.7fe
// CHECK:STDOUT: %y.param_patt.loc34_46.2 => constants.%y.param_patt.d86
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.fd9
// CHECK:STDOUT: %y.patt.loc34_46.2 => constants.%y.patt.426
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc34_40 => constants.%complete_type.357
@@ -414,10 +414,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type: type = facet_access_type %T [symbolic]
// CHECK:STDOUT: %pattern_type.f6ec4f.2: type = pattern_type %T.as_type [symbolic]
// CHECK:STDOUT: %x.param_patt.a58: %pattern_type.f6ec4f.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %x.patt.140: %pattern_type.f6ec4f.2 = at_binding_pattern x, %x.param_patt.a58 [symbolic]
// CHECK:STDOUT: %x.patt.bcb: %pattern_type.f6ec4f.2 = wrapper_binding_pattern x, %x.param_patt.a58 [symbolic]
// CHECK:STDOUT: %pattern_type.51d1c4.2: type = pattern_type %U [symbolic]
// CHECK:STDOUT: %y.param_patt.be3: %pattern_type.51d1c4.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %y.patt.b85: %pattern_type.51d1c4.2 = at_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %y.patt.678: %pattern_type.51d1c4.2 = wrapper_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %OrderedWith.assoc_type.1d2e6f.2: type = assoc_entity_type @OrderedWith.1, @OrderedWith.1(%U) [symbolic]
// CHECK:STDOUT: %assoc0.c0023b.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element0, imports.%Core.import_ref.e7a [symbolic]
// CHECK:STDOUT: %assoc1.3efd77.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element1, imports.%Core.import_ref.3f7 [symbolic]
@@ -468,9 +468,9 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %pattern_type.d57: type = pattern_type %OrderedWith.type.39d [concrete]
// CHECK:STDOUT: %T.patt.67e: %pattern_type.d57 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.e3d: %pattern_type.e66 = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.51a: %pattern_type.e66 = at_binding_pattern x, %x.param_patt.e3d [concrete]
// CHECK:STDOUT: %x.patt.88c: %pattern_type.e66 = wrapper_binding_pattern x, %x.param_patt.e3d [concrete]
// CHECK:STDOUT: %y.param_patt.4a3: %pattern_type.e66 = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.397: %pattern_type.e66 = at_binding_pattern y, %y.param_patt.4a3 [concrete]
// CHECK:STDOUT: %y.patt.68b: %pattern_type.e66 = wrapper_binding_pattern y, %y.param_patt.4a3 [concrete]
// CHECK:STDOUT: %complete_type.e48: <witness> = complete_type_witness %OrderedWith.type.39d [concrete]
// CHECK:STDOUT: %OrderedWith.WithSelf.Less.type.652: type = fn_type @OrderedWith.WithSelf.Less, @OrderedWith.WithSelf(%Ordered, %OrderedWith.facet.517) [concrete]
// CHECK:STDOUT: %.92e: type = fn_type_with_self_type %OrderedWith.WithSelf.Less.type.652, %OrderedWith.facet.517 [concrete]
@@ -582,10 +582,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type.loc13_52.1 => constants.%T.as_type
// CHECK:STDOUT: %pattern_type.loc13_50 => constants.%pattern_type.f6ec4f.2
// CHECK:STDOUT: %x.param_patt.loc13_50.2 => constants.%x.param_patt.a58
// CHECK:STDOUT: %x.patt.loc13_50.2 => constants.%x.patt.140
// CHECK:STDOUT: %x.patt.loc13_50.2 => constants.%x.patt.bcb
// CHECK:STDOUT: %pattern_type.loc13_56 => constants.%pattern_type.51d1c4.2
// CHECK:STDOUT: %y.param_patt.loc13_56.2 => constants.%y.param_patt.be3
// CHECK:STDOUT: %y.patt.loc13_56.2 => constants.%y.patt.b85
// CHECK:STDOUT: %y.patt.loc13_56.2 => constants.%y.patt.678
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @OrderedWith.loc13(constants.%Ordered, constants.%OrderedWith.facet.517) {
@@ -598,10 +598,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type.loc13_52.1 => constants.%Ordered
// CHECK:STDOUT: %pattern_type.loc13_50 => constants.%pattern_type.e66
// CHECK:STDOUT: %x.param_patt.loc13_50.2 => constants.%x.param_patt.e3d
// CHECK:STDOUT: %x.patt.loc13_50.2 => constants.%x.patt.51a
// CHECK:STDOUT: %x.patt.loc13_50.2 => constants.%x.patt.88c
// CHECK:STDOUT: %pattern_type.loc13_56 => constants.%pattern_type.e66
// CHECK:STDOUT: %y.param_patt.loc13_56.2 => constants.%y.param_patt.4a3
// CHECK:STDOUT: %y.patt.loc13_56.2 => constants.%y.patt.397
// CHECK:STDOUT: %y.patt.loc13_56.2 => constants.%y.patt.68b
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc13_50 => constants.%complete_type.357
@@ -656,10 +656,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type: type = facet_access_type %T [symbolic]
// CHECK:STDOUT: %pattern_type.f6ec4f.2: type = pattern_type %T.as_type [symbolic]
// CHECK:STDOUT: %x.param_patt.a58: %pattern_type.f6ec4f.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %x.patt.140: %pattern_type.f6ec4f.2 = at_binding_pattern x, %x.param_patt.a58 [symbolic]
// CHECK:STDOUT: %x.patt.bcb: %pattern_type.f6ec4f.2 = wrapper_binding_pattern x, %x.param_patt.a58 [symbolic]
// CHECK:STDOUT: %pattern_type.51d1c4.2: type = pattern_type %U [symbolic]
// CHECK:STDOUT: %y.param_patt.be3: %pattern_type.51d1c4.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %y.patt.b85: %pattern_type.51d1c4.2 = at_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %y.patt.678: %pattern_type.51d1c4.2 = wrapper_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %OrderedWith.assoc_type.1d2e6f.2: type = assoc_entity_type @OrderedWith.1, @OrderedWith.1(%U) [symbolic]
// CHECK:STDOUT: %assoc0.c0023b.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element0, imports.%Core.import_ref.e7a [symbolic]
// CHECK:STDOUT: %assoc1.3efd77.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element1, imports.%Core.import_ref.3f7 [symbolic]
@@ -720,9 +720,9 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %pattern_type.53b: type = pattern_type %OrderedWith.type.4d9 [concrete]
// CHECK:STDOUT: %T.patt.8c1: %pattern_type.53b = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.c7f: %pattern_type.3b4 = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.4ff: %pattern_type.3b4 = at_binding_pattern x, %x.param_patt.c7f [concrete]
// CHECK:STDOUT: %x.patt.efd: %pattern_type.3b4 = wrapper_binding_pattern x, %x.param_patt.c7f [concrete]
// CHECK:STDOUT: %y.param_patt.9d7: %pattern_type.5b2 = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.979: %pattern_type.5b2 = at_binding_pattern y, %y.param_patt.9d7 [concrete]
// CHECK:STDOUT: %y.patt.9fc: %pattern_type.5b2 = wrapper_binding_pattern y, %y.param_patt.9d7 [concrete]
// CHECK:STDOUT: %OrderedWith.type.fe8: type = facet_type <@OrderedWith.1, @OrderedWith.1(%A1)> [concrete]
// CHECK:STDOUT: %OrderedWith.assoc_type.31d: type = assoc_entity_type @OrderedWith.1, @OrderedWith.1(%A1) [concrete]
// CHECK:STDOUT: %assoc0.a34: %OrderedWith.assoc_type.31d = assoc_entity element0, imports.%Core.import_ref.e7a [concrete]
@@ -742,9 +742,9 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %pattern_type.280: type = pattern_type %OrderedWith.type.fe8 [concrete]
// CHECK:STDOUT: %T.patt.5de: %pattern_type.280 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.bff: %pattern_type.5b2 = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.f3d: %pattern_type.5b2 = at_binding_pattern x, %x.param_patt.bff [concrete]
// CHECK:STDOUT: %x.patt.033: %pattern_type.5b2 = wrapper_binding_pattern x, %x.param_patt.bff [concrete]
// CHECK:STDOUT: %y.param_patt.257: %pattern_type.3b4 = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.774: %pattern_type.3b4 = at_binding_pattern y, %y.param_patt.257 [concrete]
// CHECK:STDOUT: %y.patt.ab9: %pattern_type.3b4 = wrapper_binding_pattern y, %y.param_patt.257 [concrete]
// CHECK:STDOUT: %OrderedWith.type.9ee: type = facet_type <@OrderedWith.1, @OrderedWith.1(%A2)> [concrete]
// CHECK:STDOUT: %OrderedWith.assoc_type.941: type = assoc_entity_type @OrderedWith.1, @OrderedWith.1(%A2) [concrete]
// CHECK:STDOUT: %assoc0.73a: %OrderedWith.assoc_type.941 = assoc_entity element0, imports.%Core.import_ref.e7a [concrete]
@@ -764,9 +764,9 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %pattern_type.a96: type = pattern_type %OrderedWith.type.9ee [concrete]
// CHECK:STDOUT: %T.patt.e0a: %pattern_type.a96 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.0e6: %pattern_type.d1e = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.94e: %pattern_type.d1e = at_binding_pattern x, %x.param_patt.0e6 [concrete]
// CHECK:STDOUT: %x.patt.d0b: %pattern_type.d1e = wrapper_binding_pattern x, %x.param_patt.0e6 [concrete]
// CHECK:STDOUT: %y.param_patt.a4f: %pattern_type.9f0 = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.912: %pattern_type.9f0 = at_binding_pattern y, %y.param_patt.a4f [concrete]
// CHECK:STDOUT: %y.patt.a96: %pattern_type.9f0 = wrapper_binding_pattern y, %y.param_patt.a4f [concrete]
// CHECK:STDOUT: %OrderedWith.type.cc8: type = facet_type <@OrderedWith.1, @OrderedWith.1(%B3)> [concrete]
// CHECK:STDOUT: %OrderedWith.assoc_type.45f: type = assoc_entity_type @OrderedWith.1, @OrderedWith.1(%B3) [concrete]
// CHECK:STDOUT: %assoc0.2c4: %OrderedWith.assoc_type.45f = assoc_entity element0, imports.%Core.import_ref.e7a [concrete]
@@ -786,9 +786,9 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %pattern_type.edf: type = pattern_type %OrderedWith.type.cc8 [concrete]
// CHECK:STDOUT: %T.patt.8a7: %pattern_type.edf = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.429: %pattern_type.7fe = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.6e2: %pattern_type.7fe = at_binding_pattern x, %x.param_patt.429 [concrete]
// CHECK:STDOUT: %x.patt.39e: %pattern_type.7fe = wrapper_binding_pattern x, %x.param_patt.429 [concrete]
// CHECK:STDOUT: %y.param_patt.b51: %pattern_type.2dd = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.7b8: %pattern_type.2dd = at_binding_pattern y, %y.param_patt.b51 [concrete]
// CHECK:STDOUT: %y.patt.e2b: %pattern_type.2dd = wrapper_binding_pattern y, %y.param_patt.b51 [concrete]
// CHECK:STDOUT: %OrderedWith.type.30a: type = facet_type <@OrderedWith.1, @OrderedWith.1(%A3)> [concrete]
// CHECK:STDOUT: %OrderedWith.assoc_type.18e: type = assoc_entity_type @OrderedWith.1, @OrderedWith.1(%A3) [concrete]
// CHECK:STDOUT: %assoc0.d97: %OrderedWith.assoc_type.18e = assoc_entity element0, imports.%Core.import_ref.e7a [concrete]
@@ -808,9 +808,9 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %pattern_type.5db: type = pattern_type %OrderedWith.type.30a [concrete]
// CHECK:STDOUT: %T.patt.36b: %pattern_type.5db = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %x.param_patt.074: %pattern_type.2dd = value_param_pattern [concrete]
// CHECK:STDOUT: %x.patt.234: %pattern_type.2dd = at_binding_pattern x, %x.param_patt.074 [concrete]
// CHECK:STDOUT: %x.patt.9ae: %pattern_type.2dd = wrapper_binding_pattern x, %x.param_patt.074 [concrete]
// CHECK:STDOUT: %y.param_patt.d86: %pattern_type.7fe = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.fd9: %pattern_type.7fe = at_binding_pattern y, %y.param_patt.d86 [concrete]
// CHECK:STDOUT: %y.patt.426: %pattern_type.7fe = wrapper_binding_pattern y, %y.param_patt.d86 [concrete]
// CHECK:STDOUT: %complete_type.f5b: <witness> = complete_type_witness %OrderedWith.type.4d9 [concrete]
// CHECK:STDOUT: %OrderedWith.WithSelf.Less.type.bf4: type = fn_type @OrderedWith.WithSelf.Less, @OrderedWith.WithSelf(%B1, %OrderedWith.facet.370) [concrete]
// CHECK:STDOUT: %.e3b: type = fn_type_with_self_type %OrderedWith.WithSelf.Less.type.bf4, %OrderedWith.facet.370 [concrete]
@@ -958,10 +958,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type.loc54_52.1 => constants.%T.as_type
// CHECK:STDOUT: %pattern_type.loc54_50 => constants.%pattern_type.f6ec4f.2
// CHECK:STDOUT: %x.param_patt.loc54_50.2 => constants.%x.param_patt.a58
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.140
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.bcb
// CHECK:STDOUT: %pattern_type.loc54_56 => constants.%pattern_type.51d1c4.2
// CHECK:STDOUT: %y.param_patt.loc54_56.2 => constants.%y.param_patt.be3
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.b85
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.678
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @OrderedWith.loc54(constants.%B1, constants.%OrderedWith.facet.370) {
@@ -974,10 +974,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type.loc54_52.1 => constants.%A1
// CHECK:STDOUT: %pattern_type.loc54_50 => constants.%pattern_type.3b4
// CHECK:STDOUT: %x.param_patt.loc54_50.2 => constants.%x.param_patt.c7f
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.4ff
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.efd
// CHECK:STDOUT: %pattern_type.loc54_56 => constants.%pattern_type.5b2
// CHECK:STDOUT: %y.param_patt.loc54_56.2 => constants.%y.param_patt.9d7
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.979
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.9fc
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc54_50 => constants.%complete_type.357
@@ -1017,10 +1017,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type.loc54_52.1 => constants.%B1
// CHECK:STDOUT: %pattern_type.loc54_50 => constants.%pattern_type.5b2
// CHECK:STDOUT: %x.param_patt.loc54_50.2 => constants.%x.param_patt.bff
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.f3d
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.033
// CHECK:STDOUT: %pattern_type.loc54_56 => constants.%pattern_type.3b4
// CHECK:STDOUT: %y.param_patt.loc54_56.2 => constants.%y.param_patt.257
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.774
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.ab9
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc54_50 => constants.%complete_type.357
@@ -1060,10 +1060,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type.loc54_52.1 => constants.%B2
// CHECK:STDOUT: %pattern_type.loc54_50 => constants.%pattern_type.d1e
// CHECK:STDOUT: %x.param_patt.loc54_50.2 => constants.%x.param_patt.0e6
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.94e
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.d0b
// CHECK:STDOUT: %pattern_type.loc54_56 => constants.%pattern_type.9f0
// CHECK:STDOUT: %y.param_patt.loc54_56.2 => constants.%y.param_patt.a4f
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.912
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.a96
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc54_50 => constants.%complete_type.357
@@ -1103,10 +1103,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type.loc54_52.1 => constants.%A3
// CHECK:STDOUT: %pattern_type.loc54_50 => constants.%pattern_type.7fe
// CHECK:STDOUT: %x.param_patt.loc54_50.2 => constants.%x.param_patt.429
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.6e2
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.39e
// CHECK:STDOUT: %pattern_type.loc54_56 => constants.%pattern_type.2dd
// CHECK:STDOUT: %y.param_patt.loc54_56.2 => constants.%y.param_patt.b51
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.7b8
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.e2b
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc54_50 => constants.%complete_type.357
@@ -1146,10 +1146,10 @@ fn Test(missing_less: Cpp.MissingLess,
// CHECK:STDOUT: %T.as_type.loc54_52.1 => constants.%B3
// CHECK:STDOUT: %pattern_type.loc54_50 => constants.%pattern_type.2dd
// CHECK:STDOUT: %x.param_patt.loc54_50.2 => constants.%x.param_patt.074
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.234
// CHECK:STDOUT: %x.patt.loc54_50.2 => constants.%x.patt.9ae
// CHECK:STDOUT: %pattern_type.loc54_56 => constants.%pattern_type.7fe
// CHECK:STDOUT: %y.param_patt.loc54_56.2 => constants.%y.param_patt.d86
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.fd9
// CHECK:STDOUT: %y.patt.loc54_56.2 => constants.%y.patt.426
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc54_50 => constants.%complete_type.357
@@ -247,10 +247,10 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %T.as_type.93d: type = facet_access_type %T.d94 [symbolic]
// CHECK:STDOUT: %pattern_type.e6374a.2: type = pattern_type %T.as_type.93d [symbolic]
// CHECK:STDOUT: %x.param_patt.aa2: %pattern_type.e6374a.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %x.patt.4e4: %pattern_type.e6374a.2 = at_binding_pattern x, %x.param_patt.aa2 [symbolic]
// CHECK:STDOUT: %x.patt.03e: %pattern_type.e6374a.2 = wrapper_binding_pattern x, %x.param_patt.aa2 [symbolic]
// CHECK:STDOUT: %pattern_type.51d1c4.2: type = pattern_type %U [symbolic]
// CHECK:STDOUT: %y.param_patt.be3: %pattern_type.51d1c4.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %y.patt.b85: %pattern_type.51d1c4.2 = at_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %y.patt.678: %pattern_type.51d1c4.2 = wrapper_binding_pattern y, %y.param_patt.be3 [symbolic]
// CHECK:STDOUT: %EqWith.assoc_type.85b122.2: type = assoc_entity_type @EqWith.1, @EqWith.1(%U) [symbolic]
// CHECK:STDOUT: %assoc0.eee873.2: %EqWith.assoc_type.85b122.2 = assoc_entity element0, imports.%Core.import_ref.5ba [symbolic]
// CHECK:STDOUT: %assoc1.0ffc88.2: %EqWith.assoc_type.85b122.2 = assoc_entity element1, imports.%Core.import_ref.03f [symbolic]
@@ -284,9 +284,9 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %T.as_type.262: type = facet_access_type %T.7df [symbolic]
// CHECK:STDOUT: %pattern_type.f6ec4f.2: type = pattern_type %T.as_type.262 [symbolic]
// CHECK:STDOUT: %x.param_patt.a58: %pattern_type.f6ec4f.2 = value_param_pattern [symbolic]
// CHECK:STDOUT: %x.patt.140: %pattern_type.f6ec4f.2 = at_binding_pattern x, %x.param_patt.a58 [symbolic]
// CHECK:STDOUT: %x.patt.bcb: %pattern_type.f6ec4f.2 = wrapper_binding_pattern x, %x.param_patt.a58 [symbolic]
// CHECK:STDOUT: %OrderedWith.assoc_type.1d2e6f.2: type = assoc_entity_type @OrderedWith.1, @OrderedWith.1(%U) [symbolic]
// CHECK:STDOUT: %assoc0.c0023b.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element0, imports.%Core.import_ref.e7a [symbolic]
// CHECK:STDOUT: %assoc0.c0023b.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element0, imports.%Core.import_ref.e7a5 [symbolic]
// CHECK:STDOUT: %assoc1.3efd77.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element1, imports.%Core.import_ref.3f7 [symbolic]
// CHECK:STDOUT: %assoc2.48eff0.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element2, imports.%Core.import_ref.385 [symbolic]
// CHECK:STDOUT: %assoc3.5d53f7.2: %OrderedWith.assoc_type.1d2e6f.2 = assoc_entity element3, imports.%Core.import_ref.39b [symbolic]
@@ -326,7 +326,7 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %pattern_type.062: type = pattern_type %EqWith.type.bf2 [concrete]
// CHECK:STDOUT: %T.patt.107: %pattern_type.062 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %y.param_patt.62b: %pattern_type.80f = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.e91: %pattern_type.80f = at_binding_pattern y, %y.param_patt.62b [concrete]
// CHECK:STDOUT: %y.patt.80c: %pattern_type.80f = wrapper_binding_pattern y, %y.param_patt.62b [concrete]
// CHECK:STDOUT: %OrderedWith.type.33f: type = facet_type <@OrderedWith.1, @OrderedWith.1(%DefaultSpaceshipOnly)> [concrete]
// CHECK:STDOUT: %pattern_type.7f2: type = pattern_type %OrderedWith.type.33f [concrete]
// CHECK:STDOUT: %T.patt.84b: %pattern_type.7f2 = symbolic_binding_pattern T, 1 [symbolic]
@@ -334,22 +334,22 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %pattern_type.623: type = pattern_type %OrderedWith.type.0fb [concrete]
// CHECK:STDOUT: %T.patt.62e: %pattern_type.623 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %y.param_patt.794: %pattern_type.37f = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.e01: %pattern_type.37f = at_binding_pattern y, %y.param_patt.794 [concrete]
// CHECK:STDOUT: %y.patt.d59: %pattern_type.37f = wrapper_binding_pattern y, %y.param_patt.794 [concrete]
// CHECK:STDOUT: %OrderedWith.type.5f1: type = facet_type <@OrderedWith.1, @OrderedWith.1(%ReturnsPartialOrdering)> [concrete]
// CHECK:STDOUT: %pattern_type.53d: type = pattern_type %OrderedWith.type.5f1 [concrete]
// CHECK:STDOUT: %T.patt.d27: %pattern_type.53d = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %y.param_patt.301: %pattern_type.9ae = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.e76: %pattern_type.9ae = at_binding_pattern y, %y.param_patt.301 [concrete]
// CHECK:STDOUT: %y.patt.f84: %pattern_type.9ae = wrapper_binding_pattern y, %y.param_patt.301 [concrete]
// CHECK:STDOUT: %OrderedWith.type.8cb: type = facet_type <@OrderedWith.1, @OrderedWith.1(%CrossTypeRhs)> [concrete]
// CHECK:STDOUT: %pattern_type.935: type = pattern_type %OrderedWith.type.8cb [concrete]
// CHECK:STDOUT: %T.patt.d75: %pattern_type.935 = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %y.param_patt.da2: %pattern_type.aac = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.ac7: %pattern_type.aac = at_binding_pattern y, %y.param_patt.da2 [concrete]
// CHECK:STDOUT: %y.patt.b85: %pattern_type.aac = wrapper_binding_pattern y, %y.param_patt.da2 [concrete]
// CHECK:STDOUT: %OrderedWith.type.c6c: type = facet_type <@OrderedWith.1, @OrderedWith.1(%CrossTypeLhs)> [concrete]
// CHECK:STDOUT: %pattern_type.b4e: type = pattern_type %OrderedWith.type.c6c [concrete]
// CHECK:STDOUT: %T.patt.6f6: %pattern_type.b4e = symbolic_binding_pattern T, 1 [symbolic]
// CHECK:STDOUT: %y.param_patt.65d: %pattern_type.eb5 = value_param_pattern [concrete]
// CHECK:STDOUT: %y.patt.6a4: %pattern_type.eb5 = at_binding_pattern y, %y.param_patt.65d [concrete]
// CHECK:STDOUT: %y.patt.80b: %pattern_type.eb5 = wrapper_binding_pattern y, %y.param_patt.65d [concrete]
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: imports {
@@ -366,7 +366,7 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %Core.import_ref.39b: @OrderedWith.WithSelf.%OrderedWith.WithSelf.GreaterOrEquivalent.type (%OrderedWith.WithSelf.GreaterOrEquivalent.type.7dedb2.1) = import_ref Core//prelude/operators/comparison, loc{{\d+_\d+}}, loaded [symbolic = @OrderedWith.WithSelf.%OrderedWith.WithSelf.GreaterOrEquivalent (constants.%OrderedWith.WithSelf.GreaterOrEquivalent.937fbb.1)]
// CHECK:STDOUT: %Core.import_ref.385: @OrderedWith.WithSelf.%OrderedWith.WithSelf.Greater.type (%OrderedWith.WithSelf.Greater.type.9ce25c.1) = import_ref Core//prelude/operators/comparison, loc{{\d+_\d+}}, loaded [symbolic = @OrderedWith.WithSelf.%OrderedWith.WithSelf.Greater (constants.%OrderedWith.WithSelf.Greater.c0b4fa.1)]
// CHECK:STDOUT: %Core.import_ref.3f7: @OrderedWith.WithSelf.%OrderedWith.WithSelf.LessOrEquivalent.type (%OrderedWith.WithSelf.LessOrEquivalent.type.13d375.1) = import_ref Core//prelude/operators/comparison, loc{{\d+_\d+}}, loaded [symbolic = @OrderedWith.WithSelf.%OrderedWith.WithSelf.LessOrEquivalent (constants.%OrderedWith.WithSelf.LessOrEquivalent.e31723.1)]
// CHECK:STDOUT: %Core.import_ref.e7a: @OrderedWith.WithSelf.%OrderedWith.WithSelf.Less.type (%OrderedWith.WithSelf.Less.type.b87f4b.1) = import_ref Core//prelude/operators/comparison, loc{{\d+_\d+}}, loaded [symbolic = @OrderedWith.WithSelf.%OrderedWith.WithSelf.Less (constants.%OrderedWith.WithSelf.Less.9e1f56.1)]
// CHECK:STDOUT: %Core.import_ref.e7a5: @OrderedWith.WithSelf.%OrderedWith.WithSelf.Less.type (%OrderedWith.WithSelf.Less.type.b87f4b.1) = import_ref Core//prelude/operators/comparison, loc{{\d+_\d+}}, loaded [symbolic = @OrderedWith.WithSelf.%OrderedWith.WithSelf.Less (constants.%OrderedWith.WithSelf.Less.9e1f56.1)]
// CHECK:STDOUT: %Core.import_ref.447 = import_ref Core//prelude/operators/comparison, loc{{\d+_\d+}}, unloaded
// CHECK:STDOUT: %Core.import_ref.efc = import_ref Core//prelude/operators/comparison, loc{{\d+_\d+}}, unloaded
// CHECK:STDOUT: %Core.import_ref.e60 = import_ref Core//prelude/operators/comparison, loc{{\d+_\d+}}, unloaded
@@ -425,7 +425,7 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: <elided>
// CHECK:STDOUT: %require_complete.loc13: <witness> = require_complete_type %OrderedWith.type.loc11_46.1 [symbolic = %require_complete.loc13 (constants.%require_complete.3c0)]
// CHECK:STDOUT: %OrderedWith.assoc_type: type = assoc_entity_type @OrderedWith.1, @OrderedWith.1(%U.loc11_17.1) [symbolic = %OrderedWith.assoc_type (constants.%OrderedWith.assoc_type.1d2e6f.2)]
// CHECK:STDOUT: %assoc0: @OrderedWith.loc11.%OrderedWith.assoc_type (%OrderedWith.assoc_type.1d2e6f.2) = assoc_entity element0, imports.%Core.import_ref.e7a [symbolic = %assoc0 (constants.%assoc0.c0023b.2)]
// CHECK:STDOUT: %assoc0: @OrderedWith.loc11.%OrderedWith.assoc_type (%OrderedWith.assoc_type.1d2e6f.2) = assoc_entity element0, imports.%Core.import_ref.e7a5 [symbolic = %assoc0 (constants.%assoc0.c0023b.2)]
// CHECK:STDOUT: %OrderedWith.WithSelf.Less.type: type = fn_type @OrderedWith.WithSelf.Less, @OrderedWith.WithSelf(%U.loc11_17.1, %T.loc11_26.1) [symbolic = %OrderedWith.WithSelf.Less.type (constants.%OrderedWith.WithSelf.Less.type.b87f4b.3)]
// CHECK:STDOUT: %.loc13_5.2: type = fn_type_with_self_type %OrderedWith.WithSelf.Less.type, %T.loc11_26.1 [symbolic = %.loc13_5.2 (constants.%.6ec)]
// CHECK:STDOUT: %OrderedWith.lookup_impl_witness: <witness> = lookup_impl_witness %T.loc11_26.1, @OrderedWith.1, @OrderedWith.1(%U.loc11_17.1) [symbolic = %OrderedWith.lookup_impl_witness (constants.%OrderedWith.lookup_impl_witness)]
@@ -503,10 +503,10 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %T.as_type.loc4_42.1 => constants.%T.as_type.93d
// CHECK:STDOUT: %pattern_type.loc4_40 => constants.%pattern_type.e6374a.2
// CHECK:STDOUT: %x.param_patt.loc4_40.2 => constants.%x.param_patt.aa2
// CHECK:STDOUT: %x.patt.loc4_40.2 => constants.%x.patt.4e4
// CHECK:STDOUT: %x.patt.loc4_40.2 => constants.%x.patt.03e
// CHECK:STDOUT: %pattern_type.loc4_46 => constants.%pattern_type.51d1c4.2
// CHECK:STDOUT: %y.param_patt.loc4_46.2 => constants.%y.param_patt.be3
// CHECK:STDOUT: %y.patt.loc4_46.2 => constants.%y.patt.b85
// CHECK:STDOUT: %y.patt.loc4_46.2 => constants.%y.patt.678
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @OrderedWith.loc11(constants.%U, constants.%T.7df) {
@@ -519,10 +519,10 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %T.as_type.loc11_52.1 => constants.%T.as_type.262
// CHECK:STDOUT: %pattern_type.loc11_50 => constants.%pattern_type.f6ec4f.2
// CHECK:STDOUT: %x.param_patt.loc11_50.2 => constants.%x.param_patt.a58
// CHECK:STDOUT: %x.patt.loc11_50.2 => constants.%x.patt.140
// CHECK:STDOUT: %x.patt.loc11_50.2 => constants.%x.patt.bcb
// CHECK:STDOUT: %pattern_type.loc11_56 => constants.%pattern_type.51d1c4.2
// CHECK:STDOUT: %y.param_patt.loc11_56.2 => constants.%y.param_patt.be3
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.b85
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.678
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @EqWith.loc4(constants.%DefaultSpaceshipOnly, <error>) {
@@ -538,7 +538,7 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %x.patt.loc4_40.2 => <error>
// CHECK:STDOUT: %pattern_type.loc4_46 => constants.%pattern_type.80f
// CHECK:STDOUT: %y.param_patt.loc4_46.2 => constants.%y.param_patt.62b
// CHECK:STDOUT: %y.patt.loc4_46.2 => constants.%y.patt.e91
// CHECK:STDOUT: %y.patt.loc4_46.2 => constants.%y.patt.80c
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @OrderedWith.loc11(constants.%DefaultSpaceshipOnly, <error>) {
@@ -554,7 +554,7 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %x.patt.loc11_50.2 => <error>
// CHECK:STDOUT: %pattern_type.loc11_56 => constants.%pattern_type.80f
// CHECK:STDOUT: %y.param_patt.loc11_56.2 => constants.%y.param_patt.62b
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.e91
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.80c
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @OrderedWith.loc11(constants.%ReturnsStrongOrdering, <error>) {
@@ -570,7 +570,7 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %x.patt.loc11_50.2 => <error>
// CHECK:STDOUT: %pattern_type.loc11_56 => constants.%pattern_type.37f
// CHECK:STDOUT: %y.param_patt.loc11_56.2 => constants.%y.param_patt.794
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.e01
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.d59
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @OrderedWith.loc11(constants.%ReturnsPartialOrdering, <error>) {
@@ -586,7 +586,7 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %x.patt.loc11_50.2 => <error>
// CHECK:STDOUT: %pattern_type.loc11_56 => constants.%pattern_type.9ae
// CHECK:STDOUT: %y.param_patt.loc11_56.2 => constants.%y.param_patt.301
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.e76
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.f84
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @OrderedWith.loc11(constants.%CrossTypeRhs, <error>) {
@@ -602,7 +602,7 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %x.patt.loc11_50.2 => <error>
// CHECK:STDOUT: %pattern_type.loc11_56 => constants.%pattern_type.aac
// CHECK:STDOUT: %y.param_patt.loc11_56.2 => constants.%y.param_patt.da2
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.ac7
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.b85
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @OrderedWith.loc11(constants.%CrossTypeLhs, <error>) {
@@ -618,6 +618,6 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
// CHECK:STDOUT: %x.patt.loc11_50.2 => <error>
// CHECK:STDOUT: %pattern_type.loc11_56 => constants.%pattern_type.eb5
// CHECK:STDOUT: %y.param_patt.loc11_56.2 => constants.%y.param_patt.65d
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.6a4
// CHECK:STDOUT: %y.patt.loc11_56.2 => constants.%y.patt.80b
// CHECK:STDOUT: }
// CHECK:STDOUT:
@@ -3133,8 +3133,8 @@ fn CopyUnsignedLong() {
// CHECK:STDOUT: %Core.import_ref.6fb: @Int.as.BitXorAssignWith.impl.%Int.as.BitXorAssignWith.impl.Op.type.2 (%Int.as.BitXorAssignWith.impl.Op.type.6fa003.1) = import_ref Core//prelude/types/int, loc{{\d+_\d+}}, loaded [symbolic = @Int.as.BitXorAssignWith.impl.%Int.as.BitXorAssignWith.impl.Op.2 (constants.%Int.as.BitXorAssignWith.impl.Op.492b4e.1)]
// CHECK:STDOUT: %BitXorAssignWith.impl_witness_table.070 = impl_witness_table (%Core.import_ref.6fb), @Int.as.BitXorAssignWith.impl [concrete]
// CHECK:STDOUT: %Core.Op.f83: @Int.as.BitXorAssignWith.impl.%Int.as.BitXorAssignWith.impl.Op.type.1 (%Int.as.BitXorAssignWith.impl.Op.type.6fa003.2) = import_ref Core//prelude/types/int, Op, loaded [symbolic = @Int.as.BitXorAssignWith.impl.%Int.as.BitXorAssignWith.impl.Op.1 (constants.%Int.as.BitXorAssignWith.impl.Op.492b4e.2)]
// CHECK:STDOUT: %Core.import_ref.48b6: @Int.as.LeftShiftAssignWith.impl.%Int.as.LeftShiftAssignWith.impl.Op.type.2 (%Int.as.LeftShiftAssignWith.impl.Op.type.2e97cd.1) = import_ref Core//prelude/types/int, loc{{\d+_\d+}}, loaded [symbolic = @Int.as.LeftShiftAssignWith.impl.%Int.as.LeftShiftAssignWith.impl.Op.2 (constants.%Int.as.LeftShiftAssignWith.impl.Op.d04a1c.1)]
// CHECK:STDOUT: %LeftShiftAssignWith.impl_witness_table.fb7 = impl_witness_table (%Core.import_ref.48b6), @Int.as.LeftShiftAssignWith.impl [concrete]
// CHECK:STDOUT: %Core.import_ref.48b: @Int.as.LeftShiftAssignWith.impl.%Int.as.LeftShiftAssignWith.impl.Op.type.2 (%Int.as.LeftShiftAssignWith.impl.Op.type.2e97cd.1) = import_ref Core//prelude/types/int, loc{{\d+_\d+}}, loaded [symbolic = @Int.as.LeftShiftAssignWith.impl.%Int.as.LeftShiftAssignWith.impl.Op.2 (constants.%Int.as.LeftShiftAssignWith.impl.Op.d04a1c.1)]
// CHECK:STDOUT: %LeftShiftAssignWith.impl_witness_table.fb7 = impl_witness_table (%Core.import_ref.48b), @Int.as.LeftShiftAssignWith.impl [concrete]
// CHECK:STDOUT: %Core.Op.f1f: @Int.as.LeftShiftAssignWith.impl.%Int.as.LeftShiftAssignWith.impl.Op.type.1 (%Int.as.LeftShiftAssignWith.impl.Op.type.2e97cd.2) = import_ref Core//prelude/types/int, Op, loaded [symbolic = @Int.as.LeftShiftAssignWith.impl.%Int.as.LeftShiftAssignWith.impl.Op.1 (constants.%Int.as.LeftShiftAssignWith.impl.Op.d04a1c.2)]
// CHECK:STDOUT: %Core.import_ref.357: @Int.as.RightShiftAssignWith.impl.%Int.as.RightShiftAssignWith.impl.Op.type.2 (%Int.as.RightShiftAssignWith.impl.Op.type.143884.1) = import_ref Core//prelude/types/int, loc{{\d+_\d+}}, loaded [symbolic = @Int.as.RightShiftAssignWith.impl.%Int.as.RightShiftAssignWith.impl.Op.2 (constants.%Int.as.RightShiftAssignWith.impl.Op.904f0d.1)]
// CHECK:STDOUT: %RightShiftAssignWith.impl_witness_table.be8 = impl_witness_table (%Core.import_ref.357), @Int.as.RightShiftAssignWith.impl [concrete]
@@ -1756,11 +1756,11 @@ fn CopyUnsignedLong() {
// CHECK:STDOUT: %Core.NotEqual.db5: @Cpp.long.as.EqWith.impl.5b1.%Cpp.long.as.EqWith.impl.NotEqual.type.1 (%Cpp.long.as.EqWith.impl.NotEqual.type.21e369.2) = import_ref Core//prelude/types/cpp/int, NotEqual, loaded [symbolic = @Cpp.long.as.EqWith.impl.5b1.%Cpp.long.as.EqWith.impl.NotEqual.1 (constants.%Cpp.long.as.EqWith.impl.NotEqual.385432.2)]
// CHECK:STDOUT: %Core.import_ref.06c923.2: %i32.as.ImplicitAs.impl.Convert.type = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [concrete = constants.%i32.as.ImplicitAs.impl.Convert]
// CHECK:STDOUT: %ImplicitAs.impl_witness_table.96f = impl_witness_table (%Core.import_ref.06c923.2), @i32.as.ImplicitAs.impl.133 [concrete]
// CHECK:STDOUT: %Core.import_ref.d32f: @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Less.type.2 (%Cpp.long.as.OrderedWith.impl.Less.type.3ff9ca.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Less.2 (constants.%Cpp.long.as.OrderedWith.impl.Less.76c9f3.1)]
// CHECK:STDOUT: %Core.import_ref.d32: @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Less.type.2 (%Cpp.long.as.OrderedWith.impl.Less.type.3ff9ca.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Less.2 (constants.%Cpp.long.as.OrderedWith.impl.Less.76c9f3.1)]
// CHECK:STDOUT: %Core.import_ref.4beb: @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.LessOrEquivalent.type.2 (%Cpp.long.as.OrderedWith.impl.LessOrEquivalent.type.35cecb.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.LessOrEquivalent.2 (constants.%Cpp.long.as.OrderedWith.impl.LessOrEquivalent.351d50.1)]
// CHECK:STDOUT: %Core.import_ref.b5f66: @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Greater.type.2 (%Cpp.long.as.OrderedWith.impl.Greater.type.e2eef7.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Greater.2 (constants.%Cpp.long.as.OrderedWith.impl.Greater.37f70d.1)]
// CHECK:STDOUT: %Core.import_ref.a8b: @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.GreaterOrEquivalent.type.2 (%Cpp.long.as.OrderedWith.impl.GreaterOrEquivalent.type.154997.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.GreaterOrEquivalent.2 (constants.%Cpp.long.as.OrderedWith.impl.GreaterOrEquivalent.e4afa3.1)]
// CHECK:STDOUT: %OrderedWith.impl_witness_table.208 = impl_witness_table (%Core.import_ref.d32f, %Core.import_ref.4beb, %Core.import_ref.b5f66, %Core.import_ref.a8b), @Cpp.long.as.OrderedWith.impl.3fc [concrete]
// CHECK:STDOUT: %OrderedWith.impl_witness_table.208 = impl_witness_table (%Core.import_ref.d32, %Core.import_ref.4beb, %Core.import_ref.b5f66, %Core.import_ref.a8b), @Cpp.long.as.OrderedWith.impl.3fc [concrete]
// CHECK:STDOUT: %Core.Less.a91: @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Less.type.1 (%Cpp.long.as.OrderedWith.impl.Less.type.3ff9ca.2) = import_ref Core//prelude/types/cpp/int, Less, loaded [symbolic = @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Less.1 (constants.%Cpp.long.as.OrderedWith.impl.Less.76c9f3.2)]
// CHECK:STDOUT: %Core.LessOrEquivalent.a62: @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.LessOrEquivalent.type.1 (%Cpp.long.as.OrderedWith.impl.LessOrEquivalent.type.35cecb.2) = import_ref Core//prelude/types/cpp/int, LessOrEquivalent, loaded [symbolic = @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.LessOrEquivalent.1 (constants.%Cpp.long.as.OrderedWith.impl.LessOrEquivalent.351d50.2)]
// CHECK:STDOUT: %Core.Greater.ac9: @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Greater.type.1 (%Cpp.long.as.OrderedWith.impl.Greater.type.e2eef7.2) = import_ref Core//prelude/types/cpp/int, Greater, loaded [symbolic = @Cpp.long.as.OrderedWith.impl.3fc.%Cpp.long.as.OrderedWith.impl.Greater.1 (constants.%Cpp.long.as.OrderedWith.impl.Greater.37f70d.2)]
@@ -2237,8 +2237,8 @@ fn CopyUnsignedLong() {
// CHECK:STDOUT: %Core.import_ref.0c1: @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.Less.type.2 (%T.as_type.as.OrderedWith.impl.Less.type.62945a.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.Less.2 (constants.%T.as_type.as.OrderedWith.impl.Less.2ef721.1)]
// CHECK:STDOUT: %Core.import_ref.f03: @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.2 (%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.accc59.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.2 (constants.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.e8206a.1)]
// CHECK:STDOUT: %Core.import_ref.dc8: @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.Greater.type.2 (%T.as_type.as.OrderedWith.impl.Greater.type.4af657.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.Greater.2 (constants.%T.as_type.as.OrderedWith.impl.Greater.00ebff.1)]
// CHECK:STDOUT: %Core.import_ref.fbeb1: @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.type.2 (%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.type.2225a2.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.2 (constants.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.56ba82.1)]
// CHECK:STDOUT: %OrderedWith.impl_witness_table.413 = impl_witness_table (%Core.import_ref.0c1, %Core.import_ref.f03, %Core.import_ref.dc8, %Core.import_ref.fbeb1), @T.as_type.as.OrderedWith.impl.821 [concrete]
// CHECK:STDOUT: %Core.import_ref.fbe: @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.type.2 (%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.type.2225a2.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.2 (constants.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.56ba82.1)]
// CHECK:STDOUT: %OrderedWith.impl_witness_table.413 = impl_witness_table (%Core.import_ref.0c1, %Core.import_ref.f03, %Core.import_ref.dc8, %Core.import_ref.fbe), @T.as_type.as.OrderedWith.impl.821 [concrete]
// CHECK:STDOUT: %Core.Less.2f9: @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.Less.type.1 (%T.as_type.as.OrderedWith.impl.Less.type.62945a.2) = import_ref Core//prelude/types/cpp/int, Less, loaded [symbolic = @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.Less.1 (constants.%T.as_type.as.OrderedWith.impl.Less.2ef721.2)]
// CHECK:STDOUT: %Core.LessOrEquivalent.27e: @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.1 (%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.accc59.2) = import_ref Core//prelude/types/cpp/int, LessOrEquivalent, loaded [symbolic = @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.1 (constants.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.e8206a.2)]
// CHECK:STDOUT: %Core.Greater.0b3: @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.Greater.type.1 (%T.as_type.as.OrderedWith.impl.Greater.type.4af657.2) = import_ref Core//prelude/types/cpp/int, Greater, loaded [symbolic = @T.as_type.as.OrderedWith.impl.821.%T.as_type.as.OrderedWith.impl.Greater.1 (constants.%T.as_type.as.OrderedWith.impl.Greater.00ebff.2)]
@@ -2160,10 +2160,10 @@ fn CopyUnsignedLongLong() {
// CHECK:STDOUT: %Core.import_ref.06c923.2: %i64.as.ImplicitAs.impl.Convert.type = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [concrete = constants.%i64.as.ImplicitAs.impl.Convert]
// CHECK:STDOUT: %ImplicitAs.impl_witness_table.527 = impl_witness_table (%Core.import_ref.06c923.2), @i64.as.ImplicitAs.impl [concrete]
// CHECK:STDOUT: %Core.import_ref.97f: @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.Less.type.2 (%T.as_type.as.OrderedWith.impl.Less.type.2daa9a.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.Less.2 (constants.%T.as_type.as.OrderedWith.impl.Less.c37ef5.1)]
// CHECK:STDOUT: %Core.import_ref.4096: @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.2 (%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.3d985f.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.2 (constants.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.2cb445.1)]
// CHECK:STDOUT: %Core.import_ref.409: @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.2 (%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.3d985f.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.2 (constants.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.2cb445.1)]
// CHECK:STDOUT: %Core.import_ref.56a: @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.Greater.type.2 (%T.as_type.as.OrderedWith.impl.Greater.type.4fb98a.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.Greater.2 (constants.%T.as_type.as.OrderedWith.impl.Greater.878ae3.1)]
// CHECK:STDOUT: %Core.import_ref.b00d: @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.type.2 (%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.type.d6724c.1) = import_ref Core//prelude/types/cpp/int, loc{{\d+_\d+}}, loaded [symbolic = @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.2 (constants.%T.as_type.as.OrderedWith.impl.GreaterOrEquivalent.df5290.1)]
// CHECK:STDOUT: %OrderedWith.impl_witness_table.7c0 = impl_witness_table (%Core.import_ref.97f, %Core.import_ref.4096, %Core.import_ref.56a, %Core.import_ref.b00d), @T.as_type.as.OrderedWith.impl.df2 [concrete]
// CHECK:STDOUT: %OrderedWith.impl_witness_table.7c0 = impl_witness_table (%Core.import_ref.97f, %Core.import_ref.409, %Core.import_ref.56a, %Core.import_ref.b00d), @T.as_type.as.OrderedWith.impl.df2 [concrete]
// CHECK:STDOUT: %Core.Less.2d9: @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.Less.type.1 (%T.as_type.as.OrderedWith.impl.Less.type.2daa9a.2) = import_ref Core//prelude/types/cpp/int, Less, loaded [symbolic = @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.Less.1 (constants.%T.as_type.as.OrderedWith.impl.Less.c37ef5.2)]
// CHECK:STDOUT: %Core.LessOrEquivalent.d90: @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.1 (%T.as_type.as.OrderedWith.impl.LessOrEquivalent.type.3d985f.2) = import_ref Core//prelude/types/cpp/int, LessOrEquivalent, loaded [symbolic = @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.1 (constants.%T.as_type.as.OrderedWith.impl.LessOrEquivalent.2cb445.2)]
// CHECK:STDOUT: %Core.Greater.c24: @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.Greater.type.1 (%T.as_type.as.OrderedWith.impl.Greater.type.4fb98a.2) = import_ref Core//prelude/types/cpp/int, Greater, loaded [symbolic = @T.as_type.as.OrderedWith.impl.df2.%T.as_type.as.OrderedWith.impl.Greater.1 (constants.%T.as_type.as.OrderedWith.impl.Greater.878ae3.2)]
+23 -23
View File
@@ -863,7 +863,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type: type = facet_access_type %R [symbolic]
// CHECK:STDOUT: %pattern_type.073: type = pattern_type %R.as_type [symbolic]
// CHECK:STDOUT: %r.param_patt.d39: %pattern_type.073 = value_param_pattern [symbolic]
// CHECK:STDOUT: %r.patt.de1: %pattern_type.073 = at_binding_pattern r, %r.param_patt.d39 [symbolic]
// CHECK:STDOUT: %r.patt.5af: %pattern_type.073 = wrapper_binding_pattern r, %r.param_patt.d39 [symbolic]
// CHECK:STDOUT: %facet_type.037: type = facet_type <@IntFitsIn, @IntFitsIn(%Int.67af24.2) & @AnyInt> [symbolic]
// CHECK:STDOUT: %From.6a4: %facet_type.037 = symbolic_binding From, 1 [symbolic]
// CHECK:STDOUT: %From.as_type.as.ImplicitAs.impl.Convert.type.7fa: type = fn_type @From.as_type.as.ImplicitAs.impl.Convert, @From.as_type.as.ImplicitAs.impl(%To, %From.6a4) [symbolic]
@@ -968,7 +968,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %Iterate.facet.fdf: %Iterate.type = facet_value %MutableRange, (%Iterate.impl_witness.0b0) [concrete]
// CHECK:STDOUT: %facet_value.8a3: %Iterate_where.type.01c = facet_value %MutableRange, (%Iterate.impl_witness.0b0) [concrete]
// CHECK:STDOUT: %r.param_patt.c79: %pattern_type.e635 = value_param_pattern [concrete]
// CHECK:STDOUT: %r.patt.16f: %pattern_type.e635 = at_binding_pattern r, %r.param_patt.c79 [concrete]
// CHECK:STDOUT: %r.patt.94f: %pattern_type.e635 = wrapper_binding_pattern r, %r.param_patt.c79 [concrete]
// CHECK:STDOUT: %Iterator.260: type = class_type @Iterator.2 [concrete]
// CHECK:STDOUT: %ConstRange.Begin.type: type = fn_type @ConstRange.Begin [concrete]
// CHECK:STDOUT: %ConstRange.Begin: %ConstRange.Begin.type = struct_value () [concrete]
@@ -1003,7 +1003,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %Iterate.facet.4c8: %Iterate.type = facet_value %ConstRange, (%Iterate.impl_witness.bb2) [concrete]
// CHECK:STDOUT: %facet_value.9af: %Iterate_where.type.01c = facet_value %ConstRange, (%Iterate.impl_witness.bb2) [concrete]
// CHECK:STDOUT: %r.param_patt.83e: %pattern_type.0ba = value_param_pattern [concrete]
// CHECK:STDOUT: %r.patt.116: %pattern_type.0ba = at_binding_pattern r, %r.param_patt.83e [concrete]
// CHECK:STDOUT: %r.patt.c21: %pattern_type.0ba = wrapper_binding_pattern r, %r.param_patt.83e [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.NewCursor.type.5e7: type = fn_type @Iterate.WithSelf.NewCursor, @Iterate.WithSelf(%Iterate.facet.fdf) [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.Next.type.08a: type = fn_type @Iterate.WithSelf.Next, @Iterate.WithSelf(%Iterate.facet.fdf) [concrete]
// CHECK:STDOUT: %.641: type = fn_type_with_self_type %Iterate.WithSelf.NewCursor.type.5e7, %Iterate.facet.fdf [concrete]
@@ -1353,7 +1353,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc30_61.1 => constants.%R.as_type
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.073
// CHECK:STDOUT: %r.param_patt.loc30_59.2 => constants.%r.param_patt.d39
// CHECK:STDOUT: %r.patt.loc30_59.2 => constants.%r.patt.de1
// CHECK:STDOUT: %r.patt.loc30_59.2 => constants.%r.patt.5af
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @TestIterate(constants.%facet_value.8a3) {
@@ -1362,7 +1362,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc30_61.1 => constants.%MutableRange
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.e635
// CHECK:STDOUT: %r.param_patt.loc30_59.2 => constants.%r.param_patt.c79
// CHECK:STDOUT: %r.patt.loc30_59.2 => constants.%r.patt.16f
// CHECK:STDOUT: %r.patt.loc30_59.2 => constants.%r.patt.94f
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc30 => constants.%complete_type.357
@@ -1393,7 +1393,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc30_61.1 => constants.%ConstRange
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.0ba
// CHECK:STDOUT: %r.param_patt.loc30_59.2 => constants.%r.param_patt.83e
// CHECK:STDOUT: %r.patt.loc30_59.2 => constants.%r.patt.116
// CHECK:STDOUT: %r.patt.loc30_59.2 => constants.%r.patt.c21
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc30 => constants.%complete_type.357
@@ -2546,7 +2546,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type: type = facet_access_type %R [symbolic]
// CHECK:STDOUT: %pattern_type.d35: type = pattern_type %R.as_type [symbolic]
// CHECK:STDOUT: %r.param_patt.bc2: %pattern_type.d35 = value_param_pattern [symbolic]
// CHECK:STDOUT: %r.patt.f03: %pattern_type.d35 = at_binding_pattern r, %r.param_patt.bc2 [symbolic]
// CHECK:STDOUT: %r.patt.47e: %pattern_type.d35 = wrapper_binding_pattern r, %r.param_patt.bc2 [symbolic]
// CHECK:STDOUT: %i.patt: %pattern_type.fb7 = value_binding_pattern i [concrete]
// CHECK:STDOUT: %Iterate.lookup_impl_witness.757: <witness> = lookup_impl_witness %R, @Iterate [symbolic]
// CHECK:STDOUT: %Iterate.facet.737: %Iterate.type = facet_value %R.as_type, (%Iterate.lookup_impl_witness.757) [symbolic]
@@ -2630,7 +2630,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %Iterate.facet.212: %Iterate.type = facet_value %ConstRange, (%Iterate.impl_witness.526) [concrete]
// CHECK:STDOUT: %facet_value.eb1: %Iterate_where.type.e6d = facet_value %ConstRange, (%Iterate.impl_witness.526) [concrete]
// CHECK:STDOUT: %r.param_patt.a73: %pattern_type.025 = value_param_pattern [concrete]
// CHECK:STDOUT: %r.patt.0e2: %pattern_type.025 = at_binding_pattern r, %r.param_patt.a73 [concrete]
// CHECK:STDOUT: %r.patt.0b5: %pattern_type.025 = wrapper_binding_pattern r, %r.param_patt.a73 [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.NewCursor.type.8e0: type = fn_type @Iterate.WithSelf.NewCursor, @Iterate.WithSelf(%Iterate.facet.212) [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.Next.type.2d3: type = fn_type @Iterate.WithSelf.Next, @Iterate.WithSelf(%Iterate.facet.212) [concrete]
// CHECK:STDOUT: %.835: type = fn_type_with_self_type %Iterate.WithSelf.NewCursor.type.8e0, %Iterate.facet.212 [concrete]
@@ -2878,7 +2878,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc20_61.1 => constants.%R.as_type
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.d35
// CHECK:STDOUT: %r.param_patt.loc20_59.2 => constants.%r.param_patt.bc2
// CHECK:STDOUT: %r.patt.loc20_59.2 => constants.%r.patt.f03
// CHECK:STDOUT: %r.patt.loc20_59.2 => constants.%r.patt.47e
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @TestIterate(constants.%facet_value.eb1) {
@@ -2887,7 +2887,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc20_61.1 => constants.%ConstRange
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.025
// CHECK:STDOUT: %r.param_patt.loc20_59.2 => constants.%r.param_patt.a73
// CHECK:STDOUT: %r.patt.loc20_59.2 => constants.%r.patt.0e2
// CHECK:STDOUT: %r.patt.loc20_59.2 => constants.%r.patt.0b5
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc20 => constants.%complete_type.357
@@ -2979,7 +2979,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type: type = facet_access_type %R [symbolic]
// CHECK:STDOUT: %pattern_type.d35: type = pattern_type %R.as_type [symbolic]
// CHECK:STDOUT: %r.param_patt.bc2: %pattern_type.d35 = value_param_pattern [symbolic]
// CHECK:STDOUT: %r.patt.f03: %pattern_type.d35 = at_binding_pattern r, %r.param_patt.bc2 [symbolic]
// CHECK:STDOUT: %r.patt.47e: %pattern_type.d35 = wrapper_binding_pattern r, %r.param_patt.bc2 [symbolic]
// CHECK:STDOUT: %i.patt: %pattern_type.fb7 = value_binding_pattern i [concrete]
// CHECK:STDOUT: %Iterate.lookup_impl_witness.757: <witness> = lookup_impl_witness %R, @Iterate [symbolic]
// CHECK:STDOUT: %Iterate.facet.737: %Iterate.type = facet_value %R.as_type, (%Iterate.lookup_impl_witness.757) [symbolic]
@@ -3063,7 +3063,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %Iterate.facet.24a: %Iterate.type = facet_value %MutableRange, (%Iterate.impl_witness.15e) [concrete]
// CHECK:STDOUT: %facet_value.6bc: %Iterate_where.type.e6d = facet_value %MutableRange, (%Iterate.impl_witness.15e) [concrete]
// CHECK:STDOUT: %r.param_patt.aeb: %pattern_type.992 = value_param_pattern [concrete]
// CHECK:STDOUT: %r.patt.fe7: %pattern_type.992 = at_binding_pattern r, %r.param_patt.aeb [concrete]
// CHECK:STDOUT: %r.patt.892: %pattern_type.992 = wrapper_binding_pattern r, %r.param_patt.aeb [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.NewCursor.type.4f1: type = fn_type @Iterate.WithSelf.NewCursor, @Iterate.WithSelf(%Iterate.facet.24a) [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.Next.type.e92: type = fn_type @Iterate.WithSelf.Next, @Iterate.WithSelf(%Iterate.facet.24a) [concrete]
// CHECK:STDOUT: %.534: type = fn_type_with_self_type %Iterate.WithSelf.NewCursor.type.4f1, %Iterate.facet.24a [concrete]
@@ -3313,7 +3313,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc22_61.1 => constants.%R.as_type
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.d35
// CHECK:STDOUT: %r.param_patt.loc22_59.2 => constants.%r.param_patt.bc2
// CHECK:STDOUT: %r.patt.loc22_59.2 => constants.%r.patt.f03
// CHECK:STDOUT: %r.patt.loc22_59.2 => constants.%r.patt.47e
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @TestIterate(constants.%facet_value.6bc) {
@@ -3322,7 +3322,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc22_61.1 => constants.%MutableRange
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.992
// CHECK:STDOUT: %r.param_patt.loc22_59.2 => constants.%r.param_patt.aeb
// CHECK:STDOUT: %r.patt.loc22_59.2 => constants.%r.patt.fe7
// CHECK:STDOUT: %r.patt.loc22_59.2 => constants.%r.patt.892
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc22 => constants.%complete_type.357
@@ -3419,7 +3419,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type: type = facet_access_type %R [symbolic]
// CHECK:STDOUT: %pattern_type.17d: type = pattern_type %R.as_type [symbolic]
// CHECK:STDOUT: %r.param_patt.90c: %pattern_type.17d = value_param_pattern [symbolic]
// CHECK:STDOUT: %r.patt.d6c: %pattern_type.17d = at_binding_pattern r, %r.param_patt.90c [symbolic]
// CHECK:STDOUT: %r.patt.db8: %pattern_type.17d = wrapper_binding_pattern r, %r.param_patt.90c [symbolic]
// CHECK:STDOUT: %i.patt: %pattern_type.e41 = value_binding_pattern i [concrete]
// CHECK:STDOUT: %Iterate.lookup_impl_witness.173: <witness> = lookup_impl_witness %R, @Iterate [symbolic]
// CHECK:STDOUT: %Iterate.facet.b38: %Iterate.type = facet_value %R.as_type, (%Iterate.lookup_impl_witness.173) [symbolic]
@@ -3497,7 +3497,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %Iterate.facet.eeb: %Iterate.type = facet_value %ConstRange, (%Iterate.impl_witness.228) [concrete]
// CHECK:STDOUT: %facet_value.811: %Iterate_where.type.f9d = facet_value %ConstRange, (%Iterate.impl_witness.228) [concrete]
// CHECK:STDOUT: %r.param_patt.a73: %pattern_type.025 = value_param_pattern [concrete]
// CHECK:STDOUT: %r.patt.0e2: %pattern_type.025 = at_binding_pattern r, %r.param_patt.a73 [concrete]
// CHECK:STDOUT: %r.patt.0b5: %pattern_type.025 = wrapper_binding_pattern r, %r.param_patt.a73 [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.NewCursor.type.3de: type = fn_type @Iterate.WithSelf.NewCursor, @Iterate.WithSelf(%Iterate.facet.eeb) [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.Next.type.6bd: type = fn_type @Iterate.WithSelf.Next, @Iterate.WithSelf(%Iterate.facet.eeb) [concrete]
// CHECK:STDOUT: %.f54: type = fn_type_with_self_type %Iterate.WithSelf.NewCursor.type.3de, %Iterate.facet.eeb [concrete]
@@ -3780,7 +3780,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc27_73.1 => constants.%R.as_type
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.17d
// CHECK:STDOUT: %r.param_patt.loc27_71.2 => constants.%r.param_patt.90c
// CHECK:STDOUT: %r.patt.loc27_71.2 => constants.%r.patt.d6c
// CHECK:STDOUT: %r.patt.loc27_71.2 => constants.%r.patt.db8
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @TestIterate(constants.%facet_value.811) {
@@ -3789,7 +3789,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc27_73.1 => constants.%ConstRange
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.025
// CHECK:STDOUT: %r.param_patt.loc27_71.2 => constants.%r.param_patt.a73
// CHECK:STDOUT: %r.patt.loc27_71.2 => constants.%r.patt.0e2
// CHECK:STDOUT: %r.patt.loc27_71.2 => constants.%r.patt.0b5
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc27 => constants.%complete_type.357
@@ -3857,7 +3857,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type: type = facet_access_type %R [symbolic]
// CHECK:STDOUT: %pattern_type.17d: type = pattern_type %R.as_type [symbolic]
// CHECK:STDOUT: %r.param_patt: %pattern_type.17d = value_param_pattern [symbolic]
// CHECK:STDOUT: %r.patt: %pattern_type.17d = at_binding_pattern r, %r.param_patt [symbolic]
// CHECK:STDOUT: %r.patt: %pattern_type.17d = wrapper_binding_pattern r, %r.param_patt [symbolic]
// CHECK:STDOUT: %i.patt: %pattern_type.e41 = value_binding_pattern i [concrete]
// CHECK:STDOUT: %Iterate.lookup_impl_witness.173: <witness> = lookup_impl_witness %R, @Iterate [symbolic]
// CHECK:STDOUT: %Iterate.facet.b38: %Iterate.type = facet_value %R.as_type, (%Iterate.lookup_impl_witness.173) [symbolic]
@@ -4186,7 +4186,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type: type = facet_access_type %R [symbolic]
// CHECK:STDOUT: %pattern_type.17d: type = pattern_type %R.as_type [symbolic]
// CHECK:STDOUT: %r.param_patt.90c: %pattern_type.17d = value_param_pattern [symbolic]
// CHECK:STDOUT: %r.patt.d6c: %pattern_type.17d = at_binding_pattern r, %r.param_patt.90c [symbolic]
// CHECK:STDOUT: %r.patt.db8: %pattern_type.17d = wrapper_binding_pattern r, %r.param_patt.90c [symbolic]
// CHECK:STDOUT: %i.patt: %pattern_type.e41 = value_binding_pattern i [concrete]
// CHECK:STDOUT: %Iterate.lookup_impl_witness.173: <witness> = lookup_impl_witness %R, @Iterate [symbolic]
// CHECK:STDOUT: %Iterate.facet.b38: %Iterate.type = facet_value %R.as_type, (%Iterate.lookup_impl_witness.173) [symbolic]
@@ -4260,7 +4260,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %Iterate.facet.878: %Iterate.type = facet_value %MutableAndConstRange, (%Iterate.impl_witness.c1c) [concrete]
// CHECK:STDOUT: %facet_value.530: %Iterate_where.type.f9d = facet_value %MutableAndConstRange, (%Iterate.impl_witness.c1c) [concrete]
// CHECK:STDOUT: %r.param_patt.8bb: %pattern_type.394 = value_param_pattern [concrete]
// CHECK:STDOUT: %r.patt.ac4: %pattern_type.394 = at_binding_pattern r, %r.param_patt.8bb [concrete]
// CHECK:STDOUT: %r.patt.429: %pattern_type.394 = wrapper_binding_pattern r, %r.param_patt.8bb [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.NewCursor.type.5d8: type = fn_type @Iterate.WithSelf.NewCursor, @Iterate.WithSelf(%Iterate.facet.878) [concrete]
// CHECK:STDOUT: %Iterate.WithSelf.Next.type.1eb: type = fn_type @Iterate.WithSelf.Next, @Iterate.WithSelf(%Iterate.facet.878) [concrete]
// CHECK:STDOUT: %.2a5: type = fn_type_with_self_type %Iterate.WithSelf.NewCursor.type.5d8, %Iterate.facet.878 [concrete]
@@ -4545,7 +4545,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc34_73.1 => constants.%R.as_type
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.17d
// CHECK:STDOUT: %r.param_patt.loc34_71.2 => constants.%r.param_patt.90c
// CHECK:STDOUT: %r.patt.loc34_71.2 => constants.%r.patt.d6c
// CHECK:STDOUT: %r.patt.loc34_71.2 => constants.%r.patt.db8
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: specific @TestIterate(constants.%facet_value.530) {
@@ -4554,7 +4554,7 @@ fn TestDriver(var no_begin_end: Cpp.NoBeginEnd,
// CHECK:STDOUT: %R.as_type.loc34_73.1 => constants.%MutableAndConstRange
// CHECK:STDOUT: %pattern_type => constants.%pattern_type.394
// CHECK:STDOUT: %r.param_patt.loc34_71.2 => constants.%r.param_patt.8bb
// CHECK:STDOUT: %r.patt.loc34_71.2 => constants.%r.patt.ac4
// CHECK:STDOUT: %r.patt.loc34_71.2 => constants.%r.patt.429
// CHECK:STDOUT:
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: %require_complete.loc34 => constants.%complete_type.357
@@ -72,7 +72,7 @@ fn F() {
// CHECK:STDOUT: %array_type: type = array_type %int_3.1ba, %i32 [concrete]
// CHECK:STDOUT: %pattern_type.771: type = pattern_type %array_type [concrete]
// CHECK:STDOUT: %_.param_patt: %pattern_type.771 = value_param_pattern [concrete]
// CHECK:STDOUT: %_.patt.a48: %pattern_type.771 = at_binding_pattern _, %_.param_patt [concrete]
// CHECK:STDOUT: %_.patt.03c: %pattern_type.771 = wrapper_binding_pattern _, %_.param_patt [concrete]
// CHECK:STDOUT: %.0ee: Core.Form = init_form %initializer_list [concrete]
// CHECK:STDOUT: %return.param_patt.199: %pattern_type.7fc = out_param_pattern [concrete]
// CHECK:STDOUT: %return.patt.07e: %pattern_type.7fc = return_slot_pattern %return.param_patt.199, %initializer_list [concrete]
@@ -156,7 +156,7 @@ fn F() {
// CHECK:STDOUT: generated {
// CHECK:STDOUT: %initializer_list.initializer_list.decl.f8e97d.1: %initializer_list.initializer_list.type.0fbcd7.1 = fn_decl @initializer_list.initializer_list.loc8 [concrete = constants.%initializer_list.initializer_list.0db5f6.1] {
// CHECK:STDOUT: %_.param_patt: %pattern_type.771 = value_param_pattern [concrete = constants.%_.param_patt]
// CHECK:STDOUT: %_.patt: %pattern_type.771 = at_binding_pattern _, %_.param_patt [concrete = constants.%_.patt.a48]
// CHECK:STDOUT: %_.patt: %pattern_type.771 = wrapper_binding_pattern _, %_.param_patt [concrete = constants.%_.patt.03c]
// CHECK:STDOUT: %return.param_patt: %pattern_type.7fc = out_param_pattern [concrete = constants.%return.param_patt.199]
// CHECK:STDOUT: %return.patt: %pattern_type.7fc = return_slot_pattern %return.param_patt, constants.%initializer_list [concrete = constants.%return.patt.07e]
// CHECK:STDOUT: } {
@@ -168,7 +168,7 @@ fn F() {
// CHECK:STDOUT: }
// CHECK:STDOUT: %initializer_list.initializer_list.decl.f8e97d.2: %initializer_list.initializer_list.type.0fbcd7.2 = fn_decl @initializer_list.initializer_list.loc10 [concrete = constants.%initializer_list.initializer_list.0db5f6.2] {
// CHECK:STDOUT: %_.param_patt: %pattern_type.771 = value_param_pattern [concrete = constants.%_.param_patt]
// CHECK:STDOUT: %_.patt: %pattern_type.771 = at_binding_pattern _, %_.param_patt [concrete = constants.%_.patt.a48]
// CHECK:STDOUT: %_.patt: %pattern_type.771 = wrapper_binding_pattern _, %_.param_patt [concrete = constants.%_.patt.03c]
// CHECK:STDOUT: %return.param_patt: %pattern_type.7fc = out_param_pattern [concrete = constants.%return.param_patt.199]
// CHECK:STDOUT: %return.patt: %pattern_type.7fc = return_slot_pattern %return.param_patt, constants.%initializer_list [concrete = constants.%return.patt.07e]
// CHECK:STDOUT: } {
@@ -180,7 +180,7 @@ fn F() {
// CHECK:STDOUT: }
// CHECK:STDOUT: %initializer_list.initializer_list.decl.f8e97d.3: %initializer_list.initializer_list.type.0fbcd7.3 = fn_decl @initializer_list.initializer_list.loc12 [concrete = constants.%initializer_list.initializer_list.0db5f6.3] {
// CHECK:STDOUT: %_.param_patt: %pattern_type.771 = value_param_pattern [concrete = constants.%_.param_patt]
// CHECK:STDOUT: %_.patt: %pattern_type.771 = at_binding_pattern _, %_.param_patt [concrete = constants.%_.patt.a48]
// CHECK:STDOUT: %_.patt: %pattern_type.771 = wrapper_binding_pattern _, %_.param_patt [concrete = constants.%_.patt.03c]
// CHECK:STDOUT: %return.param_patt: %pattern_type.7fc = out_param_pattern [concrete = constants.%return.param_patt.199]
// CHECK:STDOUT: %return.patt: %pattern_type.7fc = return_slot_pattern %return.param_patt, constants.%initializer_list [concrete = constants.%return.patt.07e]
// CHECK:STDOUT: } {
@@ -168,9 +168,9 @@ fn StarstWith(a: str, b: str) -> bool {
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
// CHECK:STDOUT: %pattern_type.adf: type = pattern_type %str [concrete]
// CHECK:STDOUT: %a.param_patt: %pattern_type.adf = value_param_pattern [concrete]
// CHECK:STDOUT: %a.patt: %pattern_type.adf = at_binding_pattern a, %a.param_patt [concrete]
// CHECK:STDOUT: %a.patt: %pattern_type.adf = wrapper_binding_pattern a, %a.param_patt [concrete]
// CHECK:STDOUT: %b.param_patt: %pattern_type.adf = value_param_pattern [concrete]
// CHECK:STDOUT: %b.patt: %pattern_type.adf = at_binding_pattern b, %b.param_patt [concrete]
// CHECK:STDOUT: %b.patt: %pattern_type.adf = wrapper_binding_pattern b, %b.param_patt [concrete]
// CHECK:STDOUT: %.f34: Core.Form = init_form bool [concrete]
// CHECK:STDOUT: %pattern_type.831: type = pattern_type bool [concrete]
// CHECK:STDOUT: %return.param_patt.5a1: %pattern_type.831 = out_param_pattern [concrete]
@@ -203,9 +203,9 @@ fn StarstWith(a: str, b: str) -> bool {
// CHECK:STDOUT: file {
// CHECK:STDOUT: %StarstWith.decl: %StarstWith.type = fn_decl @StarstWith [concrete = constants.%StarstWith] {
// CHECK:STDOUT: %a.param_patt: %pattern_type.adf = value_param_pattern [concrete = constants.%a.param_patt]
// CHECK:STDOUT: %a.patt: %pattern_type.adf = at_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %a.patt: %pattern_type.adf = wrapper_binding_pattern a, %a.param_patt [concrete = constants.%a.patt]
// CHECK:STDOUT: %b.param_patt: %pattern_type.adf = value_param_pattern [concrete = constants.%b.param_patt]
// CHECK:STDOUT: %b.patt: %pattern_type.adf = at_binding_pattern b, %b.param_patt [concrete = constants.%b.patt]
// CHECK:STDOUT: %b.patt: %pattern_type.adf = wrapper_binding_pattern b, %b.param_patt [concrete = constants.%b.patt]
// CHECK:STDOUT: %return.param_patt: %pattern_type.831 = out_param_pattern [concrete = constants.%return.param_patt.5a1]
// CHECK:STDOUT: %return.patt: %pattern_type.831 = return_slot_pattern %return.param_patt, %.loc7_34.1 [concrete = constants.%return.patt.c0c]
// CHECK:STDOUT: } {