From 90dd31aaca86d4c8f2385c20befa11790b3ea0b0 Mon Sep 17 00:00:00 2001 From: Luke Boswell Date: Wed, 15 Mar 2023 18:24:16 +1100 Subject: [PATCH] update mono --- crates/compiler/builtins/roc/Bool.roc | 2 +- .../encode_derived_nested_record_string.txt | 128 +++++++++--------- ...encode_derived_record_one_field_string.txt | 70 +++++----- ...ncode_derived_record_two_field_strings.txt | 70 +++++----- .../generated/encode_derived_string.txt | 12 +- .../encode_derived_tag_one_field_string.txt | 70 +++++----- ...encode_derived_tag_two_payloads_string.txt | 70 +++++----- .../test_mono/generated/issue_4749.txt | 118 ++++++++-------- ..._4772_weakened_monomorphic_destructure.txt | 118 ++++++++-------- ...not_duplicate_identical_concrete_types.txt | 70 +++++----- ...types_without_unification_of_unifiable.txt | 118 ++++++++-------- 11 files changed, 423 insertions(+), 423 deletions(-) diff --git a/crates/compiler/builtins/roc/Bool.roc b/crates/compiler/builtins/roc/Bool.roc index 9f33d39da2..d16e8b2494 100644 --- a/crates/compiler/builtins/roc/Bool.roc +++ b/crates/compiler/builtins/roc/Bool.roc @@ -32,7 +32,7 @@ Eq has ## cannot derive `isEq` for types that contain functions. isEq : a, a -> Bool | a has Eq -## Represents the boolean truthy and falsy using an opaque type. +## Represents the boolean true and false using an opaque type. ## `Bool` implements the `Eq` ability. Bool := [True, False] has [Eq { isEq: boolIsEq }] diff --git a/crates/compiler/test_mono/generated/encode_derived_nested_record_string.txt b/crates/compiler/test_mono/generated/encode_derived_nested_record_string.txt index 9d0fb573fb..88a33c90e0 100644 --- a/crates/compiler/test_mono/generated/encode_derived_nested_record_string.txt +++ b/crates/compiler/test_mono/generated/encode_derived_nested_record_string.txt @@ -44,7 +44,7 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): ret Encode.106; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.113 : List U8 = CallByName Json.115 Encode.94 Encode.96 Encode.102; + let Encode.113 : List U8 = CallByName Json.114 Encode.94 Encode.96 Encode.102; ret Encode.113; procedure Encode.23 (Encode.94, Encode.102, Encode.96): @@ -52,11 +52,11 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): ret Encode.115; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.125 : List U8 = CallByName Json.115 Encode.94 Encode.96 Encode.102; + let Encode.125 : List U8 = CallByName Json.114 Encode.94 Encode.96 Encode.102; ret Encode.125; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.128 : List U8 = CallByName Json.99 Encode.94 Encode.96 Encode.102; + let Encode.128 : List U8 = CallByName Json.98 Encode.94 Encode.96 Encode.102; ret Encode.128; procedure Encode.25 (Encode.100, Encode.101): @@ -69,54 +69,54 @@ procedure Json.1 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.115 (Json.116, Json.428, Json.114): +procedure Json.114 (Json.115, Json.428, Json.113): let Json.461 : I64 = 123i64; let Json.460 : U8 = CallByName Num.127 Json.461; - let Json.118 : List U8 = CallByName List.4 Json.116 Json.460; - let Json.459 : U64 = CallByName List.6 Json.114; - let Json.436 : {List U8, U64} = Struct {Json.118, Json.459}; + let Json.117 : List U8 = CallByName List.4 Json.115 Json.460; + let Json.459 : U64 = CallByName List.6 Json.113; + let Json.436 : {List U8, U64} = Struct {Json.117, Json.459}; let Json.437 : {} = Struct {}; - let Json.435 : {List U8, U64} = CallByName List.18 Json.114 Json.436 Json.437; - dec Json.114; - let Json.120 : List U8 = StructAtIndex 0 Json.435; - inc Json.120; + let Json.435 : {List U8, U64} = CallByName List.18 Json.113 Json.436 Json.437; + dec Json.113; + let Json.119 : List U8 = StructAtIndex 0 Json.435; + inc Json.119; dec Json.435; let Json.434 : I64 = 125i64; let Json.433 : U8 = CallByName Num.127 Json.434; - let Json.432 : List U8 = CallByName List.4 Json.120 Json.433; + let Json.432 : List U8 = CallByName List.4 Json.119 Json.433; ret Json.432; -procedure Json.115 (Json.116, Json.428, Json.114): +procedure Json.114 (Json.115, Json.428, Json.113): let Json.501 : I64 = 123i64; let Json.500 : U8 = CallByName Num.127 Json.501; - let Json.118 : List U8 = CallByName List.4 Json.116 Json.500; - let Json.499 : U64 = CallByName List.6 Json.114; - let Json.476 : {List U8, U64} = Struct {Json.118, Json.499}; + let Json.117 : List U8 = CallByName List.4 Json.115 Json.500; + let Json.499 : U64 = CallByName List.6 Json.113; + let Json.476 : {List U8, U64} = Struct {Json.117, Json.499}; let Json.477 : {} = Struct {}; - let Json.475 : {List U8, U64} = CallByName List.18 Json.114 Json.476 Json.477; - dec Json.114; - let Json.120 : List U8 = StructAtIndex 0 Json.475; - inc Json.120; + let Json.475 : {List U8, U64} = CallByName List.18 Json.113 Json.476 Json.477; + dec Json.113; + let Json.119 : List U8 = StructAtIndex 0 Json.475; + inc Json.119; dec Json.475; let Json.474 : I64 = 125i64; let Json.473 : U8 = CallByName Num.127 Json.474; - let Json.472 : List U8 = CallByName List.4 Json.120 Json.473; + let Json.472 : List U8 = CallByName List.4 Json.119 Json.473; ret Json.472; -procedure Json.117 (Json.430, Json.431): - let Json.123 : Str = StructAtIndex 0 Json.431; +procedure Json.116 (Json.430, Json.431): + let Json.122 : Str = StructAtIndex 0 Json.431; + inc Json.122; + let Json.123 : Str = StructAtIndex 1 Json.431; inc Json.123; - let Json.124 : Str = StructAtIndex 1 Json.431; - inc Json.124; dec Json.431; - let Json.121 : List U8 = StructAtIndex 0 Json.430; - inc Json.121; - let Json.122 : U64 = StructAtIndex 1 Json.430; + let Json.120 : List U8 = StructAtIndex 0 Json.430; + inc Json.120; + let Json.121 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.458 : I64 = 34i64; let Json.457 : U8 = CallByName Num.127 Json.458; - let Json.455 : List U8 = CallByName List.4 Json.121 Json.457; - let Json.456 : List U8 = CallByName Str.12 Json.123; + let Json.455 : List U8 = CallByName List.4 Json.120 Json.457; + let Json.456 : List U8 = CallByName Str.12 Json.122; let Json.452 : List U8 = CallByName List.8 Json.455 Json.456; let Json.454 : I64 = 34i64; let Json.453 : U8 = CallByName Num.127 Json.454; @@ -125,37 +125,37 @@ procedure Json.117 (Json.430, Json.431): let Json.450 : U8 = CallByName Num.127 Json.451; let Json.447 : List U8 = CallByName List.4 Json.449 Json.450; let Json.448 : {} = Struct {}; - let Json.125 : List U8 = CallByName Encode.23 Json.447 Json.124 Json.448; - joinpoint Json.442 Json.126: + let Json.124 : List U8 = CallByName Encode.23 Json.447 Json.123 Json.448; + joinpoint Json.442 Json.125: let Json.440 : U64 = 1i64; - let Json.439 : U64 = CallByName Num.20 Json.122 Json.440; - let Json.438 : {List U8, U64} = Struct {Json.126, Json.439}; + let Json.439 : U64 = CallByName Num.20 Json.121 Json.440; + let Json.438 : {List U8, U64} = Struct {Json.125, Json.439}; ret Json.438; in let Json.446 : U64 = 1i64; - let Json.443 : Int1 = CallByName Num.24 Json.122 Json.446; + let Json.443 : Int1 = CallByName Num.24 Json.121 Json.446; if Json.443 then let Json.445 : I64 = 44i64; let Json.444 : U8 = CallByName Num.127 Json.445; - let Json.441 : List U8 = CallByName List.4 Json.125 Json.444; + let Json.441 : List U8 = CallByName List.4 Json.124 Json.444; jump Json.442 Json.441; else - jump Json.442 Json.125; + jump Json.442 Json.124; -procedure Json.117 (Json.430, Json.431): - let Json.123 : Str = StructAtIndex 0 Json.431; +procedure Json.116 (Json.430, Json.431): + let Json.122 : Str = StructAtIndex 0 Json.431; + inc Json.122; + let Json.123 : Str = StructAtIndex 1 Json.431; inc Json.123; - let Json.124 : Str = StructAtIndex 1 Json.431; - inc Json.124; dec Json.431; - let Json.121 : List U8 = StructAtIndex 0 Json.430; - inc Json.121; - let Json.122 : U64 = StructAtIndex 1 Json.430; + let Json.120 : List U8 = StructAtIndex 0 Json.430; + inc Json.120; + let Json.121 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.498 : I64 = 34i64; let Json.497 : U8 = CallByName Num.127 Json.498; - let Json.495 : List U8 = CallByName List.4 Json.121 Json.497; - let Json.496 : List U8 = CallByName Str.12 Json.123; + let Json.495 : List U8 = CallByName List.4 Json.120 Json.497; + let Json.496 : List U8 = CallByName Str.12 Json.122; let Json.492 : List U8 = CallByName List.8 Json.495 Json.496; let Json.494 : I64 = 34i64; let Json.493 : U8 = CallByName Num.127 Json.494; @@ -164,40 +164,40 @@ procedure Json.117 (Json.430, Json.431): let Json.490 : U8 = CallByName Num.127 Json.491; let Json.487 : List U8 = CallByName List.4 Json.489 Json.490; let Json.488 : {} = Struct {}; - let Json.125 : List U8 = CallByName Encode.23 Json.487 Json.124 Json.488; - joinpoint Json.482 Json.126: + let Json.124 : List U8 = CallByName Encode.23 Json.487 Json.123 Json.488; + joinpoint Json.482 Json.125: let Json.480 : U64 = 1i64; - let Json.479 : U64 = CallByName Num.20 Json.122 Json.480; - let Json.478 : {List U8, U64} = Struct {Json.126, Json.479}; + let Json.479 : U64 = CallByName Num.20 Json.121 Json.480; + let Json.478 : {List U8, U64} = Struct {Json.125, Json.479}; ret Json.478; in let Json.486 : U64 = 1i64; - let Json.483 : Int1 = CallByName Num.24 Json.122 Json.486; + let Json.483 : Int1 = CallByName Num.24 Json.121 Json.486; if Json.483 then let Json.485 : I64 = 44i64; let Json.484 : U8 = CallByName Num.127 Json.485; - let Json.481 : List U8 = CallByName List.4 Json.125 Json.484; + let Json.481 : List U8 = CallByName List.4 Json.124 Json.484; jump Json.482 Json.481; else - jump Json.482 Json.125; + jump Json.482 Json.124; -procedure Json.18 (Json.98): - let Json.502 : Str = CallByName Encode.22 Json.98; +procedure Json.18 (Json.97): + let Json.502 : Str = CallByName Encode.22 Json.97; ret Json.502; -procedure Json.20 (Json.114): - let Json.426 : List {Str, Str} = CallByName Encode.22 Json.114; +procedure Json.20 (Json.113): + let Json.426 : List {Str, Str} = CallByName Encode.22 Json.113; ret Json.426; -procedure Json.20 (Json.114): - let Json.468 : List {Str, Str} = CallByName Encode.22 Json.114; +procedure Json.20 (Json.113): + let Json.468 : List {Str, Str} = CallByName Encode.22 Json.113; ret Json.468; -procedure Json.99 (Json.100, Json.504, Json.98): +procedure Json.98 (Json.99, Json.504, Json.97): let Json.513 : I64 = 34i64; let Json.512 : U8 = CallByName Num.127 Json.513; - let Json.510 : List U8 = CallByName List.4 Json.100 Json.512; - let Json.511 : List U8 = CallByName Str.12 Json.98; + let Json.510 : List U8 = CallByName List.4 Json.99 Json.512; + let Json.511 : List U8 = CallByName Str.12 Json.97; let Json.507 : List U8 = CallByName List.8 Json.510 Json.511; let Json.509 : I64 = 34i64; let Json.508 : U8 = CallByName Num.127 Json.509; @@ -205,11 +205,11 @@ procedure Json.99 (Json.100, Json.504, Json.98): ret Json.506; procedure List.139 (List.140, List.141, List.138): - let List.535 : {List U8, U64} = CallByName Json.117 List.140 List.141; + let List.535 : {List U8, U64} = CallByName Json.116 List.140 List.141; ret List.535; procedure List.139 (List.140, List.141, List.138): - let List.608 : {List U8, U64} = CallByName Json.117 List.140 List.141; + let List.608 : {List U8, U64} = CallByName Json.116 List.140 List.141; ret List.608; procedure List.18 (List.136, List.137, List.138): diff --git a/crates/compiler/test_mono/generated/encode_derived_record_one_field_string.txt b/crates/compiler/test_mono/generated/encode_derived_record_one_field_string.txt index bc4a7aebff..97b7795b5b 100644 --- a/crates/compiler/test_mono/generated/encode_derived_record_one_field_string.txt +++ b/crates/compiler/test_mono/generated/encode_derived_record_one_field_string.txt @@ -25,11 +25,11 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): ret Encode.106; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.113 : List U8 = CallByName Json.115 Encode.94 Encode.96 Encode.102; + let Encode.113 : List U8 = CallByName Json.114 Encode.94 Encode.96 Encode.102; ret Encode.113; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.116 : List U8 = CallByName Json.99 Encode.94 Encode.96 Encode.102; + let Encode.116 : List U8 = CallByName Json.98 Encode.94 Encode.96 Encode.102; ret Encode.116; procedure Encode.25 (Encode.100, Encode.101): @@ -42,37 +42,37 @@ procedure Json.1 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.115 (Json.116, Json.428, Json.114): +procedure Json.114 (Json.115, Json.428, Json.113): let Json.461 : I64 = 123i64; let Json.460 : U8 = CallByName Num.127 Json.461; - let Json.118 : List U8 = CallByName List.4 Json.116 Json.460; - let Json.459 : U64 = CallByName List.6 Json.114; - let Json.436 : {List U8, U64} = Struct {Json.118, Json.459}; + let Json.117 : List U8 = CallByName List.4 Json.115 Json.460; + let Json.459 : U64 = CallByName List.6 Json.113; + let Json.436 : {List U8, U64} = Struct {Json.117, Json.459}; let Json.437 : {} = Struct {}; - let Json.435 : {List U8, U64} = CallByName List.18 Json.114 Json.436 Json.437; - dec Json.114; - let Json.120 : List U8 = StructAtIndex 0 Json.435; - inc Json.120; + let Json.435 : {List U8, U64} = CallByName List.18 Json.113 Json.436 Json.437; + dec Json.113; + let Json.119 : List U8 = StructAtIndex 0 Json.435; + inc Json.119; dec Json.435; let Json.434 : I64 = 125i64; let Json.433 : U8 = CallByName Num.127 Json.434; - let Json.432 : List U8 = CallByName List.4 Json.120 Json.433; + let Json.432 : List U8 = CallByName List.4 Json.119 Json.433; ret Json.432; -procedure Json.117 (Json.430, Json.431): - let Json.123 : Str = StructAtIndex 0 Json.431; +procedure Json.116 (Json.430, Json.431): + let Json.122 : Str = StructAtIndex 0 Json.431; + inc Json.122; + let Json.123 : Str = StructAtIndex 1 Json.431; inc Json.123; - let Json.124 : Str = StructAtIndex 1 Json.431; - inc Json.124; dec Json.431; - let Json.121 : List U8 = StructAtIndex 0 Json.430; - inc Json.121; - let Json.122 : U64 = StructAtIndex 1 Json.430; + let Json.120 : List U8 = StructAtIndex 0 Json.430; + inc Json.120; + let Json.121 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.458 : I64 = 34i64; let Json.457 : U8 = CallByName Num.127 Json.458; - let Json.455 : List U8 = CallByName List.4 Json.121 Json.457; - let Json.456 : List U8 = CallByName Str.12 Json.123; + let Json.455 : List U8 = CallByName List.4 Json.120 Json.457; + let Json.456 : List U8 = CallByName Str.12 Json.122; let Json.452 : List U8 = CallByName List.8 Json.455 Json.456; let Json.454 : I64 = 34i64; let Json.453 : U8 = CallByName Num.127 Json.454; @@ -81,36 +81,36 @@ procedure Json.117 (Json.430, Json.431): let Json.450 : U8 = CallByName Num.127 Json.451; let Json.447 : List U8 = CallByName List.4 Json.449 Json.450; let Json.448 : {} = Struct {}; - let Json.125 : List U8 = CallByName Encode.23 Json.447 Json.124 Json.448; - joinpoint Json.442 Json.126: + let Json.124 : List U8 = CallByName Encode.23 Json.447 Json.123 Json.448; + joinpoint Json.442 Json.125: let Json.440 : U64 = 1i64; - let Json.439 : U64 = CallByName Num.20 Json.122 Json.440; - let Json.438 : {List U8, U64} = Struct {Json.126, Json.439}; + let Json.439 : U64 = CallByName Num.20 Json.121 Json.440; + let Json.438 : {List U8, U64} = Struct {Json.125, Json.439}; ret Json.438; in let Json.446 : U64 = 1i64; - let Json.443 : Int1 = CallByName Num.24 Json.122 Json.446; + let Json.443 : Int1 = CallByName Num.24 Json.121 Json.446; if Json.443 then let Json.445 : I64 = 44i64; let Json.444 : U8 = CallByName Num.127 Json.445; - let Json.441 : List U8 = CallByName List.4 Json.125 Json.444; + let Json.441 : List U8 = CallByName List.4 Json.124 Json.444; jump Json.442 Json.441; else - jump Json.442 Json.125; + jump Json.442 Json.124; -procedure Json.18 (Json.98): - let Json.462 : Str = CallByName Encode.22 Json.98; +procedure Json.18 (Json.97): + let Json.462 : Str = CallByName Encode.22 Json.97; ret Json.462; -procedure Json.20 (Json.114): - let Json.426 : List {Str, Str} = CallByName Encode.22 Json.114; +procedure Json.20 (Json.113): + let Json.426 : List {Str, Str} = CallByName Encode.22 Json.113; ret Json.426; -procedure Json.99 (Json.100, Json.464, Json.98): +procedure Json.98 (Json.99, Json.464, Json.97): let Json.473 : I64 = 34i64; let Json.472 : U8 = CallByName Num.127 Json.473; - let Json.470 : List U8 = CallByName List.4 Json.100 Json.472; - let Json.471 : List U8 = CallByName Str.12 Json.98; + let Json.470 : List U8 = CallByName List.4 Json.99 Json.472; + let Json.471 : List U8 = CallByName Str.12 Json.97; let Json.467 : List U8 = CallByName List.8 Json.470 Json.471; let Json.469 : I64 = 34i64; let Json.468 : U8 = CallByName Num.127 Json.469; @@ -118,7 +118,7 @@ procedure Json.99 (Json.100, Json.464, Json.98): ret Json.466; procedure List.139 (List.140, List.141, List.138): - let List.541 : {List U8, U64} = CallByName Json.117 List.140 List.141; + let List.541 : {List U8, U64} = CallByName Json.116 List.140 List.141; ret List.541; procedure List.18 (List.136, List.137, List.138): diff --git a/crates/compiler/test_mono/generated/encode_derived_record_two_field_strings.txt b/crates/compiler/test_mono/generated/encode_derived_record_two_field_strings.txt index 90ed071d4b..25877ce78a 100644 --- a/crates/compiler/test_mono/generated/encode_derived_record_two_field_strings.txt +++ b/crates/compiler/test_mono/generated/encode_derived_record_two_field_strings.txt @@ -33,11 +33,11 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): ret Encode.106; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.113 : List U8 = CallByName Json.115 Encode.94 Encode.96 Encode.102; + let Encode.113 : List U8 = CallByName Json.114 Encode.94 Encode.96 Encode.102; ret Encode.113; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.117 : List U8 = CallByName Json.99 Encode.94 Encode.96 Encode.102; + let Encode.117 : List U8 = CallByName Json.98 Encode.94 Encode.96 Encode.102; ret Encode.117; procedure Encode.25 (Encode.100, Encode.101): @@ -50,37 +50,37 @@ procedure Json.1 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.115 (Json.116, Json.428, Json.114): +procedure Json.114 (Json.115, Json.428, Json.113): let Json.461 : I64 = 123i64; let Json.460 : U8 = CallByName Num.127 Json.461; - let Json.118 : List U8 = CallByName List.4 Json.116 Json.460; - let Json.459 : U64 = CallByName List.6 Json.114; - let Json.436 : {List U8, U64} = Struct {Json.118, Json.459}; + let Json.117 : List U8 = CallByName List.4 Json.115 Json.460; + let Json.459 : U64 = CallByName List.6 Json.113; + let Json.436 : {List U8, U64} = Struct {Json.117, Json.459}; let Json.437 : {} = Struct {}; - let Json.435 : {List U8, U64} = CallByName List.18 Json.114 Json.436 Json.437; - dec Json.114; - let Json.120 : List U8 = StructAtIndex 0 Json.435; - inc Json.120; + let Json.435 : {List U8, U64} = CallByName List.18 Json.113 Json.436 Json.437; + dec Json.113; + let Json.119 : List U8 = StructAtIndex 0 Json.435; + inc Json.119; dec Json.435; let Json.434 : I64 = 125i64; let Json.433 : U8 = CallByName Num.127 Json.434; - let Json.432 : List U8 = CallByName List.4 Json.120 Json.433; + let Json.432 : List U8 = CallByName List.4 Json.119 Json.433; ret Json.432; -procedure Json.117 (Json.430, Json.431): - let Json.123 : Str = StructAtIndex 0 Json.431; +procedure Json.116 (Json.430, Json.431): + let Json.122 : Str = StructAtIndex 0 Json.431; + inc Json.122; + let Json.123 : Str = StructAtIndex 1 Json.431; inc Json.123; - let Json.124 : Str = StructAtIndex 1 Json.431; - inc Json.124; dec Json.431; - let Json.121 : List U8 = StructAtIndex 0 Json.430; - inc Json.121; - let Json.122 : U64 = StructAtIndex 1 Json.430; + let Json.120 : List U8 = StructAtIndex 0 Json.430; + inc Json.120; + let Json.121 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.458 : I64 = 34i64; let Json.457 : U8 = CallByName Num.127 Json.458; - let Json.455 : List U8 = CallByName List.4 Json.121 Json.457; - let Json.456 : List U8 = CallByName Str.12 Json.123; + let Json.455 : List U8 = CallByName List.4 Json.120 Json.457; + let Json.456 : List U8 = CallByName Str.12 Json.122; let Json.452 : List U8 = CallByName List.8 Json.455 Json.456; let Json.454 : I64 = 34i64; let Json.453 : U8 = CallByName Num.127 Json.454; @@ -89,36 +89,36 @@ procedure Json.117 (Json.430, Json.431): let Json.450 : U8 = CallByName Num.127 Json.451; let Json.447 : List U8 = CallByName List.4 Json.449 Json.450; let Json.448 : {} = Struct {}; - let Json.125 : List U8 = CallByName Encode.23 Json.447 Json.124 Json.448; - joinpoint Json.442 Json.126: + let Json.124 : List U8 = CallByName Encode.23 Json.447 Json.123 Json.448; + joinpoint Json.442 Json.125: let Json.440 : U64 = 1i64; - let Json.439 : U64 = CallByName Num.20 Json.122 Json.440; - let Json.438 : {List U8, U64} = Struct {Json.126, Json.439}; + let Json.439 : U64 = CallByName Num.20 Json.121 Json.440; + let Json.438 : {List U8, U64} = Struct {Json.125, Json.439}; ret Json.438; in let Json.446 : U64 = 1i64; - let Json.443 : Int1 = CallByName Num.24 Json.122 Json.446; + let Json.443 : Int1 = CallByName Num.24 Json.121 Json.446; if Json.443 then let Json.445 : I64 = 44i64; let Json.444 : U8 = CallByName Num.127 Json.445; - let Json.441 : List U8 = CallByName List.4 Json.125 Json.444; + let Json.441 : List U8 = CallByName List.4 Json.124 Json.444; jump Json.442 Json.441; else - jump Json.442 Json.125; + jump Json.442 Json.124; -procedure Json.18 (Json.98): - let Json.474 : Str = CallByName Encode.22 Json.98; +procedure Json.18 (Json.97): + let Json.474 : Str = CallByName Encode.22 Json.97; ret Json.474; -procedure Json.20 (Json.114): - let Json.426 : List {Str, Str} = CallByName Encode.22 Json.114; +procedure Json.20 (Json.113): + let Json.426 : List {Str, Str} = CallByName Encode.22 Json.113; ret Json.426; -procedure Json.99 (Json.100, Json.464, Json.98): +procedure Json.98 (Json.99, Json.464, Json.97): let Json.473 : I64 = 34i64; let Json.472 : U8 = CallByName Num.127 Json.473; - let Json.470 : List U8 = CallByName List.4 Json.100 Json.472; - let Json.471 : List U8 = CallByName Str.12 Json.98; + let Json.470 : List U8 = CallByName List.4 Json.99 Json.472; + let Json.471 : List U8 = CallByName Str.12 Json.97; let Json.467 : List U8 = CallByName List.8 Json.470 Json.471; let Json.469 : I64 = 34i64; let Json.468 : U8 = CallByName Num.127 Json.469; @@ -126,7 +126,7 @@ procedure Json.99 (Json.100, Json.464, Json.98): ret Json.466; procedure List.139 (List.140, List.141, List.138): - let List.541 : {List U8, U64} = CallByName Json.117 List.140 List.141; + let List.541 : {List U8, U64} = CallByName Json.116 List.140 List.141; ret List.541; procedure List.18 (List.136, List.137, List.138): diff --git a/crates/compiler/test_mono/generated/encode_derived_string.txt b/crates/compiler/test_mono/generated/encode_derived_string.txt index 5779515b4e..355ce87c7c 100644 --- a/crates/compiler/test_mono/generated/encode_derived_string.txt +++ b/crates/compiler/test_mono/generated/encode_derived_string.txt @@ -2,7 +2,7 @@ procedure Encode.22 (Encode.93): ret Encode.93; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.106 : List U8 = CallByName Json.99 Encode.94 Encode.96 Encode.102; + let Encode.106 : List U8 = CallByName Json.98 Encode.94 Encode.96 Encode.102; ret Encode.106; procedure Encode.25 (Encode.100, Encode.101): @@ -15,15 +15,15 @@ procedure Json.1 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.18 (Json.98): - let Json.426 : Str = CallByName Encode.22 Json.98; +procedure Json.18 (Json.97): + let Json.426 : Str = CallByName Encode.22 Json.97; ret Json.426; -procedure Json.99 (Json.100, Json.428, Json.98): +procedure Json.98 (Json.99, Json.428, Json.97): let Json.437 : I64 = 34i64; let Json.436 : U8 = CallByName Num.127 Json.437; - let Json.434 : List U8 = CallByName List.4 Json.100 Json.436; - let Json.435 : List U8 = CallByName Str.12 Json.98; + let Json.434 : List U8 = CallByName List.4 Json.99 Json.436; + let Json.435 : List U8 = CallByName Str.12 Json.97; let Json.431 : List U8 = CallByName List.8 Json.434 Json.435; let Json.433 : I64 = 34i64; let Json.432 : U8 = CallByName Num.127 Json.433; diff --git a/crates/compiler/test_mono/generated/encode_derived_tag_one_field_string.txt b/crates/compiler/test_mono/generated/encode_derived_tag_one_field_string.txt index 13a97da89e..2b88715190 100644 --- a/crates/compiler/test_mono/generated/encode_derived_tag_one_field_string.txt +++ b/crates/compiler/test_mono/generated/encode_derived_tag_one_field_string.txt @@ -27,11 +27,11 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): ret Encode.106; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.113 : List U8 = CallByName Json.129 Encode.94 Encode.96 Encode.102; + let Encode.113 : List U8 = CallByName Json.128 Encode.94 Encode.96 Encode.102; ret Encode.113; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.116 : List U8 = CallByName Json.99 Encode.94 Encode.96 Encode.102; + let Encode.116 : List U8 = CallByName Json.98 Encode.94 Encode.96 Encode.102; ret Encode.116; procedure Encode.25 (Encode.100, Encode.101): @@ -44,19 +44,19 @@ procedure Json.1 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.129 (Json.130, Json.428, #Attr.12): - let Json.128 : List Str = StructAtIndex 1 #Attr.12; - inc Json.128; - let Json.127 : Str = StructAtIndex 0 #Attr.12; +procedure Json.128 (Json.129, Json.428, #Attr.12): + let Json.127 : List Str = StructAtIndex 1 #Attr.12; inc Json.127; + let Json.126 : Str = StructAtIndex 0 #Attr.12; + inc Json.126; dec #Attr.12; let Json.466 : I64 = 123i64; let Json.465 : U8 = CallByName Num.127 Json.466; - let Json.462 : List U8 = CallByName List.4 Json.130 Json.465; + let Json.462 : List U8 = CallByName List.4 Json.129 Json.465; let Json.464 : I64 = 34i64; let Json.463 : U8 = CallByName Num.127 Json.464; let Json.460 : List U8 = CallByName List.4 Json.462 Json.463; - let Json.461 : List U8 = CallByName Str.12 Json.127; + let Json.461 : List U8 = CallByName Str.12 Json.126; let Json.457 : List U8 = CallByName List.8 Json.460 Json.461; let Json.459 : I64 = 34i64; let Json.458 : U8 = CallByName Num.127 Json.459; @@ -66,60 +66,60 @@ procedure Json.129 (Json.130, Json.428, #Attr.12): let Json.451 : List U8 = CallByName List.4 Json.454 Json.455; let Json.453 : I64 = 91i64; let Json.452 : U8 = CallByName Num.127 Json.453; - let Json.132 : List U8 = CallByName List.4 Json.451 Json.452; - let Json.450 : U64 = CallByName List.6 Json.128; - let Json.438 : {List U8, U64} = Struct {Json.132, Json.450}; + let Json.131 : List U8 = CallByName List.4 Json.451 Json.452; + let Json.450 : U64 = CallByName List.6 Json.127; + let Json.438 : {List U8, U64} = Struct {Json.131, Json.450}; let Json.439 : {} = Struct {}; - let Json.437 : {List U8, U64} = CallByName List.18 Json.128 Json.438 Json.439; - dec Json.128; - let Json.134 : List U8 = StructAtIndex 0 Json.437; - inc Json.134; + let Json.437 : {List U8, U64} = CallByName List.18 Json.127 Json.438 Json.439; + dec Json.127; + let Json.133 : List U8 = StructAtIndex 0 Json.437; + inc Json.133; dec Json.437; let Json.436 : I64 = 93i64; let Json.435 : U8 = CallByName Num.127 Json.436; - let Json.432 : List U8 = CallByName List.4 Json.134 Json.435; + let Json.432 : List U8 = CallByName List.4 Json.133 Json.435; let Json.434 : I64 = 125i64; let Json.433 : U8 = CallByName Num.127 Json.434; let Json.431 : List U8 = CallByName List.4 Json.432 Json.433; ret Json.431; -procedure Json.131 (Json.430, Json.137): - let Json.135 : List U8 = StructAtIndex 0 Json.430; - inc Json.135; - let Json.136 : U64 = StructAtIndex 1 Json.430; +procedure Json.130 (Json.430, Json.136): + let Json.134 : List U8 = StructAtIndex 0 Json.430; + inc Json.134; + let Json.135 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.449 : {} = Struct {}; - let Json.138 : List U8 = CallByName Encode.23 Json.135 Json.137 Json.449; - joinpoint Json.444 Json.139: + let Json.137 : List U8 = CallByName Encode.23 Json.134 Json.136 Json.449; + joinpoint Json.444 Json.138: let Json.442 : U64 = 1i64; - let Json.441 : U64 = CallByName Num.20 Json.136 Json.442; - let Json.440 : {List U8, U64} = Struct {Json.139, Json.441}; + let Json.441 : U64 = CallByName Num.20 Json.135 Json.442; + let Json.440 : {List U8, U64} = Struct {Json.138, Json.441}; ret Json.440; in let Json.448 : U64 = 1i64; - let Json.445 : Int1 = CallByName Num.24 Json.136 Json.448; + let Json.445 : Int1 = CallByName Num.24 Json.135 Json.448; if Json.445 then let Json.447 : I64 = 44i64; let Json.446 : U8 = CallByName Num.127 Json.447; - let Json.443 : List U8 = CallByName List.4 Json.138 Json.446; + let Json.443 : List U8 = CallByName List.4 Json.137 Json.446; jump Json.444 Json.443; else - jump Json.444 Json.138; + jump Json.444 Json.137; -procedure Json.18 (Json.98): - let Json.467 : Str = CallByName Encode.22 Json.98; +procedure Json.18 (Json.97): + let Json.467 : Str = CallByName Encode.22 Json.97; ret Json.467; -procedure Json.21 (Json.127, Json.128): - let Json.427 : {Str, List Str} = Struct {Json.127, Json.128}; +procedure Json.21 (Json.126, Json.127): + let Json.427 : {Str, List Str} = Struct {Json.126, Json.127}; let Json.426 : {Str, List Str} = CallByName Encode.22 Json.427; ret Json.426; -procedure Json.99 (Json.100, Json.469, Json.98): +procedure Json.98 (Json.99, Json.469, Json.97): let Json.478 : I64 = 34i64; let Json.477 : U8 = CallByName Num.127 Json.478; - let Json.475 : List U8 = CallByName List.4 Json.100 Json.477; - let Json.476 : List U8 = CallByName Str.12 Json.98; + let Json.475 : List U8 = CallByName List.4 Json.99 Json.477; + let Json.476 : List U8 = CallByName Str.12 Json.97; let Json.472 : List U8 = CallByName List.8 Json.475 Json.476; let Json.474 : I64 = 34i64; let Json.473 : U8 = CallByName Num.127 Json.474; @@ -127,7 +127,7 @@ procedure Json.99 (Json.100, Json.469, Json.98): ret Json.471; procedure List.139 (List.140, List.141, List.138): - let List.547 : {List U8, U64} = CallByName Json.131 List.140 List.141; + let List.547 : {List U8, U64} = CallByName Json.130 List.140 List.141; ret List.547; procedure List.18 (List.136, List.137, List.138): diff --git a/crates/compiler/test_mono/generated/encode_derived_tag_two_payloads_string.txt b/crates/compiler/test_mono/generated/encode_derived_tag_two_payloads_string.txt index 212677158a..12fa4eb50e 100644 --- a/crates/compiler/test_mono/generated/encode_derived_tag_two_payloads_string.txt +++ b/crates/compiler/test_mono/generated/encode_derived_tag_two_payloads_string.txt @@ -33,11 +33,11 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): ret Encode.106; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.113 : List U8 = CallByName Json.129 Encode.94 Encode.96 Encode.102; + let Encode.113 : List U8 = CallByName Json.128 Encode.94 Encode.96 Encode.102; ret Encode.113; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.117 : List U8 = CallByName Json.99 Encode.94 Encode.96 Encode.102; + let Encode.117 : List U8 = CallByName Json.98 Encode.94 Encode.96 Encode.102; ret Encode.117; procedure Encode.25 (Encode.100, Encode.101): @@ -50,19 +50,19 @@ procedure Json.1 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.129 (Json.130, Json.428, #Attr.12): - let Json.128 : List Str = StructAtIndex 1 #Attr.12; - inc Json.128; - let Json.127 : Str = StructAtIndex 0 #Attr.12; +procedure Json.128 (Json.129, Json.428, #Attr.12): + let Json.127 : List Str = StructAtIndex 1 #Attr.12; inc Json.127; + let Json.126 : Str = StructAtIndex 0 #Attr.12; + inc Json.126; dec #Attr.12; let Json.466 : I64 = 123i64; let Json.465 : U8 = CallByName Num.127 Json.466; - let Json.462 : List U8 = CallByName List.4 Json.130 Json.465; + let Json.462 : List U8 = CallByName List.4 Json.129 Json.465; let Json.464 : I64 = 34i64; let Json.463 : U8 = CallByName Num.127 Json.464; let Json.460 : List U8 = CallByName List.4 Json.462 Json.463; - let Json.461 : List U8 = CallByName Str.12 Json.127; + let Json.461 : List U8 = CallByName Str.12 Json.126; let Json.457 : List U8 = CallByName List.8 Json.460 Json.461; let Json.459 : I64 = 34i64; let Json.458 : U8 = CallByName Num.127 Json.459; @@ -72,60 +72,60 @@ procedure Json.129 (Json.130, Json.428, #Attr.12): let Json.451 : List U8 = CallByName List.4 Json.454 Json.455; let Json.453 : I64 = 91i64; let Json.452 : U8 = CallByName Num.127 Json.453; - let Json.132 : List U8 = CallByName List.4 Json.451 Json.452; - let Json.450 : U64 = CallByName List.6 Json.128; - let Json.438 : {List U8, U64} = Struct {Json.132, Json.450}; + let Json.131 : List U8 = CallByName List.4 Json.451 Json.452; + let Json.450 : U64 = CallByName List.6 Json.127; + let Json.438 : {List U8, U64} = Struct {Json.131, Json.450}; let Json.439 : {} = Struct {}; - let Json.437 : {List U8, U64} = CallByName List.18 Json.128 Json.438 Json.439; - dec Json.128; - let Json.134 : List U8 = StructAtIndex 0 Json.437; - inc Json.134; + let Json.437 : {List U8, U64} = CallByName List.18 Json.127 Json.438 Json.439; + dec Json.127; + let Json.133 : List U8 = StructAtIndex 0 Json.437; + inc Json.133; dec Json.437; let Json.436 : I64 = 93i64; let Json.435 : U8 = CallByName Num.127 Json.436; - let Json.432 : List U8 = CallByName List.4 Json.134 Json.435; + let Json.432 : List U8 = CallByName List.4 Json.133 Json.435; let Json.434 : I64 = 125i64; let Json.433 : U8 = CallByName Num.127 Json.434; let Json.431 : List U8 = CallByName List.4 Json.432 Json.433; ret Json.431; -procedure Json.131 (Json.430, Json.137): - let Json.135 : List U8 = StructAtIndex 0 Json.430; - inc Json.135; - let Json.136 : U64 = StructAtIndex 1 Json.430; +procedure Json.130 (Json.430, Json.136): + let Json.134 : List U8 = StructAtIndex 0 Json.430; + inc Json.134; + let Json.135 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.449 : {} = Struct {}; - let Json.138 : List U8 = CallByName Encode.23 Json.135 Json.137 Json.449; - joinpoint Json.444 Json.139: + let Json.137 : List U8 = CallByName Encode.23 Json.134 Json.136 Json.449; + joinpoint Json.444 Json.138: let Json.442 : U64 = 1i64; - let Json.441 : U64 = CallByName Num.20 Json.136 Json.442; - let Json.440 : {List U8, U64} = Struct {Json.139, Json.441}; + let Json.441 : U64 = CallByName Num.20 Json.135 Json.442; + let Json.440 : {List U8, U64} = Struct {Json.138, Json.441}; ret Json.440; in let Json.448 : U64 = 1i64; - let Json.445 : Int1 = CallByName Num.24 Json.136 Json.448; + let Json.445 : Int1 = CallByName Num.24 Json.135 Json.448; if Json.445 then let Json.447 : I64 = 44i64; let Json.446 : U8 = CallByName Num.127 Json.447; - let Json.443 : List U8 = CallByName List.4 Json.138 Json.446; + let Json.443 : List U8 = CallByName List.4 Json.137 Json.446; jump Json.444 Json.443; else - jump Json.444 Json.138; + jump Json.444 Json.137; -procedure Json.18 (Json.98): - let Json.479 : Str = CallByName Encode.22 Json.98; +procedure Json.18 (Json.97): + let Json.479 : Str = CallByName Encode.22 Json.97; ret Json.479; -procedure Json.21 (Json.127, Json.128): - let Json.427 : {Str, List Str} = Struct {Json.127, Json.128}; +procedure Json.21 (Json.126, Json.127): + let Json.427 : {Str, List Str} = Struct {Json.126, Json.127}; let Json.426 : {Str, List Str} = CallByName Encode.22 Json.427; ret Json.426; -procedure Json.99 (Json.100, Json.469, Json.98): +procedure Json.98 (Json.99, Json.469, Json.97): let Json.478 : I64 = 34i64; let Json.477 : U8 = CallByName Num.127 Json.478; - let Json.475 : List U8 = CallByName List.4 Json.100 Json.477; - let Json.476 : List U8 = CallByName Str.12 Json.98; + let Json.475 : List U8 = CallByName List.4 Json.99 Json.477; + let Json.476 : List U8 = CallByName Str.12 Json.97; let Json.472 : List U8 = CallByName List.8 Json.475 Json.476; let Json.474 : I64 = 34i64; let Json.473 : U8 = CallByName Num.127 Json.474; @@ -133,7 +133,7 @@ procedure Json.99 (Json.100, Json.469, Json.98): ret Json.471; procedure List.139 (List.140, List.141, List.138): - let List.547 : {List U8, U64} = CallByName Json.131 List.140 List.141; + let List.547 : {List U8, U64} = CallByName Json.130 List.140 List.141; ret List.547; procedure List.18 (List.136, List.137, List.138): diff --git a/crates/compiler/test_mono/generated/issue_4749.txt b/crates/compiler/test_mono/generated/issue_4749.txt index fa1da04283..c22978b0e1 100644 --- a/crates/compiler/test_mono/generated/issue_4749.txt +++ b/crates/compiler/test_mono/generated/issue_4749.txt @@ -32,7 +32,7 @@ procedure Decode.23 (Decode.94): ret Decode.94; procedure Decode.24 (Decode.95, Decode.114, Decode.97): - let Decode.127 : {List U8, [C {}, C Str]} = CallByName Json.300 Decode.95 Decode.97; + let Decode.127 : {List U8, [C {}, C Str]} = CallByName Json.299 Decode.95 Decode.97; ret Decode.127; procedure Decode.25 (Decode.98, Decode.99): @@ -70,60 +70,60 @@ procedure Decode.26 (Decode.100, Decode.101): let Decode.116 : [C [C List U8, C ], C Str] = TagId(0) Decode.117; ret Decode.116; -procedure Json.145 (Json.512, Json.513): - joinpoint Json.450 Json.447 Json.144: - let Json.147 : List U8 = StructAtIndex 0 Json.447; - inc Json.147; - let Json.146 : List U8 = StructAtIndex 1 Json.447; +procedure Json.144 (Json.512, Json.513): + joinpoint Json.450 Json.447 Json.143: + let Json.146 : List U8 = StructAtIndex 0 Json.447; inc Json.146; + let Json.145 : List U8 = StructAtIndex 1 Json.447; + inc Json.145; dec Json.447; joinpoint Json.490: - let Json.487 : {List U8, List U8} = Struct {Json.147, Json.146}; + let Json.487 : {List U8, List U8} = Struct {Json.146, Json.145}; ret Json.487; in - let Json.496 : U64 = lowlevel ListLen Json.147; + let Json.496 : U64 = lowlevel ListLen Json.146; let Json.497 : U64 = 2i64; let Json.498 : Int1 = lowlevel NumGte Json.496 Json.497; if Json.498 then let Json.489 : U64 = 0i64; - let Json.148 : U8 = lowlevel ListGetUnsafe Json.147 Json.489; + let Json.147 : U8 = lowlevel ListGetUnsafe Json.146 Json.489; let Json.488 : U64 = 1i64; - let Json.149 : U8 = lowlevel ListGetUnsafe Json.147 Json.488; - let Json.458 : Int1 = CallByName Json.22 Json.148 Json.149; + let Json.148 : U8 = lowlevel ListGetUnsafe Json.146 Json.488; + let Json.458 : Int1 = CallByName Json.22 Json.147 Json.148; if Json.458 then let Json.465 : U64 = 2i64; - let Json.462 : List U8 = CallByName List.29 Json.147 Json.465; - let Json.464 : List U8 = CallByName List.4 Json.146 Json.148; - let Json.463 : List U8 = CallByName List.4 Json.464 Json.149; + let Json.462 : List U8 = CallByName List.29 Json.146 Json.465; + let Json.464 : List U8 = CallByName List.4 Json.145 Json.147; + let Json.463 : List U8 = CallByName List.4 Json.464 Json.148; let Json.460 : {List U8, List U8} = Struct {Json.462, Json.463}; - jump Json.450 Json.460 Json.144; + jump Json.450 Json.460 Json.143; else - let Json.452 : Int1 = CallByName Json.290 Json.148; + let Json.452 : Int1 = CallByName Json.289 Json.147; if Json.452 then - let Json.456 : List U8 = CallByName List.38 Json.147; - let Json.457 : List U8 = CallByName List.4 Json.146 Json.148; + let Json.456 : List U8 = CallByName List.38 Json.146; + let Json.457 : List U8 = CallByName List.4 Json.145 Json.147; let Json.454 : {List U8, List U8} = Struct {Json.456, Json.457}; - jump Json.450 Json.454 Json.144; + jump Json.450 Json.454 Json.143; else - let Json.451 : {List U8, List U8} = Struct {Json.147, Json.146}; + let Json.451 : {List U8, List U8} = Struct {Json.146, Json.145}; ret Json.451; else - let Json.493 : U64 = lowlevel ListLen Json.147; + let Json.493 : U64 = lowlevel ListLen Json.146; let Json.494 : U64 = 1i64; let Json.495 : Int1 = lowlevel NumGte Json.493 Json.494; if Json.495 then let Json.492 : U64 = 0i64; - let Json.150 : U8 = lowlevel ListGetUnsafe Json.147 Json.492; + let Json.149 : U8 = lowlevel ListGetUnsafe Json.146 Json.492; joinpoint Json.485 Json.491: if Json.491 then - let Json.483 : List U8 = CallByName List.38 Json.147; - let Json.484 : List U8 = CallByName List.4 Json.146 Json.150; + let Json.483 : List U8 = CallByName List.38 Json.146; + let Json.484 : List U8 = CallByName List.4 Json.145 Json.149; let Json.481 : {List U8, List U8} = Struct {Json.483, Json.484}; - jump Json.450 Json.481 Json.144; + jump Json.450 Json.481 Json.143; else jump Json.490; in - let Json.486 : Int1 = CallByName Json.290 Json.150; + let Json.486 : Int1 = CallByName Json.289 Json.149; jump Json.485 Json.486; else jump Json.490; @@ -134,8 +134,8 @@ procedure Json.2 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.22 (Json.140, Json.141): - let Json.466 : {U8, U8} = Struct {Json.140, Json.141}; +procedure Json.22 (Json.139, Json.140): + let Json.466 : {U8, U8} = Struct {Json.139, Json.140}; joinpoint Json.475: let Json.474 : Int1 = CallByName Bool.1; ret Json.474; @@ -180,71 +180,71 @@ procedure Json.22 (Json.140, Json.141): else jump Json.475; -procedure Json.23 (Json.143, Json.144): +procedure Json.23 (Json.142, Json.143): let Json.500 : List U8 = Array []; - let Json.449 : {List U8, List U8} = Struct {Json.143, Json.500}; - let Json.448 : {List U8, List U8} = CallByName Json.145 Json.449 Json.144; + let Json.449 : {List U8, List U8} = Struct {Json.142, Json.500}; + let Json.448 : {List U8, List U8} = CallByName Json.144 Json.449 Json.143; ret Json.448; -procedure Json.290 (Json.291): +procedure Json.289 (Json.290): let Json.502 : U8 = 34i64; - let Json.501 : Int1 = CallByName Bool.7 Json.291 Json.502; + let Json.501 : Int1 = CallByName Bool.7 Json.290 Json.502; ret Json.501; -procedure Json.300 (Json.301, Json.428): - let Json.429 : {List U8, [C {}, C Str]} = CallByName Json.41 Json.301; +procedure Json.299 (Json.300, Json.428): + let Json.429 : {List U8, [C {}, C Str]} = CallByName Json.41 Json.300; ret Json.429; -procedure Json.41 (Json.283): +procedure Json.41 (Json.282): let Json.506 : U64 = 1i64; + inc Json.282; + let Json.505 : {List U8, List U8} = CallByName List.52 Json.282 Json.506; + let Json.283 : List U8 = StructAtIndex 0 Json.505; inc Json.283; - let Json.505 : {List U8, List U8} = CallByName List.52 Json.283 Json.506; - let Json.284 : List U8 = StructAtIndex 0 Json.505; - inc Json.284; - let Json.286 : List U8 = StructAtIndex 1 Json.505; - inc Json.286; + let Json.285 : List U8 = StructAtIndex 1 Json.505; + inc Json.285; dec Json.505; let Json.504 : U8 = 34i64; let Json.503 : List U8 = Array [Json.504]; - let Json.433 : Int1 = CallByName Bool.11 Json.284 Json.503; + let Json.433 : Int1 = CallByName Bool.11 Json.283 Json.503; dec Json.503; - dec Json.284; + dec Json.283; if Json.433 then - dec Json.283; + dec Json.282; let Json.446 : {} = Struct {}; - let Json.445 : {List U8, List U8} = CallByName Json.23 Json.286 Json.446; - let Json.289 : List U8 = StructAtIndex 0 Json.445; - inc Json.289; - let Json.288 : List U8 = StructAtIndex 1 Json.445; + let Json.445 : {List U8, List U8} = CallByName Json.23 Json.285 Json.446; + let Json.288 : List U8 = StructAtIndex 0 Json.445; inc Json.288; + let Json.287 : List U8 = StructAtIndex 1 Json.445; + inc Json.287; dec Json.445; - let Json.434 : [C {U64, U8}, C Str] = CallByName Str.9 Json.288; + let Json.434 : [C {U64, U8}, C Str] = CallByName Str.9 Json.287; let Json.442 : U8 = 1i64; let Json.443 : U8 = GetTagId Json.434; let Json.444 : Int1 = lowlevel Eq Json.442 Json.443; if Json.444 then - let Json.292 : Str = UnionAtIndex (Id 1) (Index 0) Json.434; - inc Json.292; + let Json.291 : Str = UnionAtIndex (Id 1) (Index 0) Json.434; + inc Json.291; dec Json.434; let Json.438 : U64 = 1i64; - let Json.437 : {List U8, List U8} = CallByName List.52 Json.289 Json.438; - let Json.294 : List U8 = StructAtIndex 1 Json.437; - inc Json.294; + let Json.437 : {List U8, List U8} = CallByName List.52 Json.288 Json.438; + let Json.293 : List U8 = StructAtIndex 1 Json.437; + inc Json.293; dec Json.437; - let Json.436 : [C {}, C Str] = TagId(1) Json.292; - let Json.435 : {List U8, [C {}, C Str]} = Struct {Json.294, Json.436}; + let Json.436 : [C {}, C Str] = TagId(1) Json.291; + let Json.435 : {List U8, [C {}, C Str]} = Struct {Json.293, Json.436}; ret Json.435; else dec Json.434; let Json.441 : {} = Struct {}; let Json.440 : [C {}, C Str] = TagId(0) Json.441; - let Json.439 : {List U8, [C {}, C Str]} = Struct {Json.289, Json.440}; + let Json.439 : {List U8, [C {}, C Str]} = Struct {Json.288, Json.440}; ret Json.439; else - dec Json.286; + dec Json.285; let Json.432 : {} = Struct {}; let Json.431 : [C {}, C Str] = TagId(0) Json.432; - let Json.430 : {List U8, [C {}, C Str]} = Struct {Json.283, Json.431}; + let Json.430 : {List U8, [C {}, C Str]} = Struct {Json.282, Json.431}; ret Json.430; procedure Json.42 (): diff --git a/crates/compiler/test_mono/generated/issue_4772_weakened_monomorphic_destructure.txt b/crates/compiler/test_mono/generated/issue_4772_weakened_monomorphic_destructure.txt index 4a4bc17830..b837e7fcd3 100644 --- a/crates/compiler/test_mono/generated/issue_4772_weakened_monomorphic_destructure.txt +++ b/crates/compiler/test_mono/generated/issue_4772_weakened_monomorphic_destructure.txt @@ -36,7 +36,7 @@ procedure Decode.23 (Decode.94): ret Decode.94; procedure Decode.24 (Decode.95, Decode.114, Decode.97): - let Decode.117 : {List U8, [C {}, C Str]} = CallByName Json.300 Decode.95 Decode.97; + let Decode.117 : {List U8, [C {}, C Str]} = CallByName Json.299 Decode.95 Decode.97; ret Decode.117; procedure Decode.25 (Decode.98, Decode.99): @@ -44,60 +44,60 @@ procedure Decode.25 (Decode.98, Decode.99): let Decode.115 : {List U8, [C {}, C Str]} = CallByName Decode.24 Decode.98 Decode.116 Decode.99; ret Decode.115; -procedure Json.145 (Json.512, Json.513): - joinpoint Json.450 Json.447 Json.144: - let Json.147 : List U8 = StructAtIndex 0 Json.447; - inc Json.147; - let Json.146 : List U8 = StructAtIndex 1 Json.447; +procedure Json.144 (Json.512, Json.513): + joinpoint Json.450 Json.447 Json.143: + let Json.146 : List U8 = StructAtIndex 0 Json.447; inc Json.146; + let Json.145 : List U8 = StructAtIndex 1 Json.447; + inc Json.145; dec Json.447; joinpoint Json.490: - let Json.487 : {List U8, List U8} = Struct {Json.147, Json.146}; + let Json.487 : {List U8, List U8} = Struct {Json.146, Json.145}; ret Json.487; in - let Json.496 : U64 = lowlevel ListLen Json.147; + let Json.496 : U64 = lowlevel ListLen Json.146; let Json.497 : U64 = 2i64; let Json.498 : Int1 = lowlevel NumGte Json.496 Json.497; if Json.498 then let Json.489 : U64 = 0i64; - let Json.148 : U8 = lowlevel ListGetUnsafe Json.147 Json.489; + let Json.147 : U8 = lowlevel ListGetUnsafe Json.146 Json.489; let Json.488 : U64 = 1i64; - let Json.149 : U8 = lowlevel ListGetUnsafe Json.147 Json.488; - let Json.458 : Int1 = CallByName Json.22 Json.148 Json.149; + let Json.148 : U8 = lowlevel ListGetUnsafe Json.146 Json.488; + let Json.458 : Int1 = CallByName Json.22 Json.147 Json.148; if Json.458 then let Json.465 : U64 = 2i64; - let Json.462 : List U8 = CallByName List.29 Json.147 Json.465; - let Json.464 : List U8 = CallByName List.4 Json.146 Json.148; - let Json.463 : List U8 = CallByName List.4 Json.464 Json.149; + let Json.462 : List U8 = CallByName List.29 Json.146 Json.465; + let Json.464 : List U8 = CallByName List.4 Json.145 Json.147; + let Json.463 : List U8 = CallByName List.4 Json.464 Json.148; let Json.460 : {List U8, List U8} = Struct {Json.462, Json.463}; - jump Json.450 Json.460 Json.144; + jump Json.450 Json.460 Json.143; else - let Json.452 : Int1 = CallByName Json.290 Json.148; + let Json.452 : Int1 = CallByName Json.289 Json.147; if Json.452 then - let Json.456 : List U8 = CallByName List.38 Json.147; - let Json.457 : List U8 = CallByName List.4 Json.146 Json.148; + let Json.456 : List U8 = CallByName List.38 Json.146; + let Json.457 : List U8 = CallByName List.4 Json.145 Json.147; let Json.454 : {List U8, List U8} = Struct {Json.456, Json.457}; - jump Json.450 Json.454 Json.144; + jump Json.450 Json.454 Json.143; else - let Json.451 : {List U8, List U8} = Struct {Json.147, Json.146}; + let Json.451 : {List U8, List U8} = Struct {Json.146, Json.145}; ret Json.451; else - let Json.493 : U64 = lowlevel ListLen Json.147; + let Json.493 : U64 = lowlevel ListLen Json.146; let Json.494 : U64 = 1i64; let Json.495 : Int1 = lowlevel NumGte Json.493 Json.494; if Json.495 then let Json.492 : U64 = 0i64; - let Json.150 : U8 = lowlevel ListGetUnsafe Json.147 Json.492; + let Json.149 : U8 = lowlevel ListGetUnsafe Json.146 Json.492; joinpoint Json.485 Json.491: if Json.491 then - let Json.483 : List U8 = CallByName List.38 Json.147; - let Json.484 : List U8 = CallByName List.4 Json.146 Json.150; + let Json.483 : List U8 = CallByName List.38 Json.146; + let Json.484 : List U8 = CallByName List.4 Json.145 Json.149; let Json.481 : {List U8, List U8} = Struct {Json.483, Json.484}; - jump Json.450 Json.481 Json.144; + jump Json.450 Json.481 Json.143; else jump Json.490; in - let Json.486 : Int1 = CallByName Json.290 Json.150; + let Json.486 : Int1 = CallByName Json.289 Json.149; jump Json.485 Json.486; else jump Json.490; @@ -108,8 +108,8 @@ procedure Json.2 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.22 (Json.140, Json.141): - let Json.466 : {U8, U8} = Struct {Json.140, Json.141}; +procedure Json.22 (Json.139, Json.140): + let Json.466 : {U8, U8} = Struct {Json.139, Json.140}; joinpoint Json.475: let Json.474 : Int1 = CallByName Bool.1; ret Json.474; @@ -154,71 +154,71 @@ procedure Json.22 (Json.140, Json.141): else jump Json.475; -procedure Json.23 (Json.143, Json.144): +procedure Json.23 (Json.142, Json.143): let Json.500 : List U8 = Array []; - let Json.449 : {List U8, List U8} = Struct {Json.143, Json.500}; - let Json.448 : {List U8, List U8} = CallByName Json.145 Json.449 Json.144; + let Json.449 : {List U8, List U8} = Struct {Json.142, Json.500}; + let Json.448 : {List U8, List U8} = CallByName Json.144 Json.449 Json.143; ret Json.448; -procedure Json.290 (Json.291): +procedure Json.289 (Json.290): let Json.502 : U8 = 34i64; - let Json.501 : Int1 = CallByName Bool.7 Json.291 Json.502; + let Json.501 : Int1 = CallByName Bool.7 Json.290 Json.502; ret Json.501; -procedure Json.300 (Json.301, Json.428): - let Json.429 : {List U8, [C {}, C Str]} = CallByName Json.41 Json.301; +procedure Json.299 (Json.300, Json.428): + let Json.429 : {List U8, [C {}, C Str]} = CallByName Json.41 Json.300; ret Json.429; -procedure Json.41 (Json.283): +procedure Json.41 (Json.282): let Json.506 : U64 = 1i64; + inc Json.282; + let Json.505 : {List U8, List U8} = CallByName List.52 Json.282 Json.506; + let Json.283 : List U8 = StructAtIndex 0 Json.505; inc Json.283; - let Json.505 : {List U8, List U8} = CallByName List.52 Json.283 Json.506; - let Json.284 : List U8 = StructAtIndex 0 Json.505; - inc Json.284; - let Json.286 : List U8 = StructAtIndex 1 Json.505; - inc Json.286; + let Json.285 : List U8 = StructAtIndex 1 Json.505; + inc Json.285; dec Json.505; let Json.504 : U8 = 34i64; let Json.503 : List U8 = Array [Json.504]; - let Json.433 : Int1 = CallByName Bool.11 Json.284 Json.503; + let Json.433 : Int1 = CallByName Bool.11 Json.283 Json.503; dec Json.503; - dec Json.284; + dec Json.283; if Json.433 then - dec Json.283; + dec Json.282; let Json.446 : {} = Struct {}; - let Json.445 : {List U8, List U8} = CallByName Json.23 Json.286 Json.446; - let Json.289 : List U8 = StructAtIndex 0 Json.445; - inc Json.289; - let Json.288 : List U8 = StructAtIndex 1 Json.445; + let Json.445 : {List U8, List U8} = CallByName Json.23 Json.285 Json.446; + let Json.288 : List U8 = StructAtIndex 0 Json.445; inc Json.288; + let Json.287 : List U8 = StructAtIndex 1 Json.445; + inc Json.287; dec Json.445; - let Json.434 : [C {U64, U8}, C Str] = CallByName Str.9 Json.288; + let Json.434 : [C {U64, U8}, C Str] = CallByName Str.9 Json.287; let Json.442 : U8 = 1i64; let Json.443 : U8 = GetTagId Json.434; let Json.444 : Int1 = lowlevel Eq Json.442 Json.443; if Json.444 then - let Json.292 : Str = UnionAtIndex (Id 1) (Index 0) Json.434; - inc Json.292; + let Json.291 : Str = UnionAtIndex (Id 1) (Index 0) Json.434; + inc Json.291; dec Json.434; let Json.438 : U64 = 1i64; - let Json.437 : {List U8, List U8} = CallByName List.52 Json.289 Json.438; - let Json.294 : List U8 = StructAtIndex 1 Json.437; - inc Json.294; + let Json.437 : {List U8, List U8} = CallByName List.52 Json.288 Json.438; + let Json.293 : List U8 = StructAtIndex 1 Json.437; + inc Json.293; dec Json.437; - let Json.436 : [C {}, C Str] = TagId(1) Json.292; - let Json.435 : {List U8, [C {}, C Str]} = Struct {Json.294, Json.436}; + let Json.436 : [C {}, C Str] = TagId(1) Json.291; + let Json.435 : {List U8, [C {}, C Str]} = Struct {Json.293, Json.436}; ret Json.435; else dec Json.434; let Json.441 : {} = Struct {}; let Json.440 : [C {}, C Str] = TagId(0) Json.441; - let Json.439 : {List U8, [C {}, C Str]} = Struct {Json.289, Json.440}; + let Json.439 : {List U8, [C {}, C Str]} = Struct {Json.288, Json.440}; ret Json.439; else - dec Json.286; + dec Json.285; let Json.432 : {} = Struct {}; let Json.431 : [C {}, C Str] = TagId(0) Json.432; - let Json.430 : {List U8, [C {}, C Str]} = Struct {Json.283, Json.431}; + let Json.430 : {List U8, [C {}, C Str]} = Struct {Json.282, Json.431}; ret Json.430; procedure Json.42 (): diff --git a/crates/compiler/test_mono/generated/unspecialized_lambda_set_unification_does_not_duplicate_identical_concrete_types.txt b/crates/compiler/test_mono/generated/unspecialized_lambda_set_unification_does_not_duplicate_identical_concrete_types.txt index e7bb02c66e..74e6638f31 100644 --- a/crates/compiler/test_mono/generated/unspecialized_lambda_set_unification_does_not_duplicate_identical_concrete_types.txt +++ b/crates/compiler/test_mono/generated/unspecialized_lambda_set_unification_does_not_duplicate_identical_concrete_types.txt @@ -16,11 +16,11 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): ret Encode.106; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.113 : List U8 = CallByName Json.129 Encode.94 Encode.96 Encode.102; + let Encode.113 : List U8 = CallByName Json.128 Encode.94 Encode.96 Encode.102; ret Encode.113; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.118 : List U8 = CallByName Json.99 Encode.94 Encode.96 Encode.102; + let Encode.118 : List U8 = CallByName Json.98 Encode.94 Encode.96 Encode.102; ret Encode.118; procedure Encode.25 (Encode.100, Encode.101): @@ -33,19 +33,19 @@ procedure Json.1 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.129 (Json.130, Json.428, #Attr.12): - let Json.128 : List Str = StructAtIndex 1 #Attr.12; - inc Json.128; - let Json.127 : Str = StructAtIndex 0 #Attr.12; +procedure Json.128 (Json.129, Json.428, #Attr.12): + let Json.127 : List Str = StructAtIndex 1 #Attr.12; inc Json.127; + let Json.126 : Str = StructAtIndex 0 #Attr.12; + inc Json.126; dec #Attr.12; let Json.466 : I64 = 123i64; let Json.465 : U8 = CallByName Num.127 Json.466; - let Json.462 : List U8 = CallByName List.4 Json.130 Json.465; + let Json.462 : List U8 = CallByName List.4 Json.129 Json.465; let Json.464 : I64 = 34i64; let Json.463 : U8 = CallByName Num.127 Json.464; let Json.460 : List U8 = CallByName List.4 Json.462 Json.463; - let Json.461 : List U8 = CallByName Str.12 Json.127; + let Json.461 : List U8 = CallByName Str.12 Json.126; let Json.457 : List U8 = CallByName List.8 Json.460 Json.461; let Json.459 : I64 = 34i64; let Json.458 : U8 = CallByName Num.127 Json.459; @@ -55,60 +55,60 @@ procedure Json.129 (Json.130, Json.428, #Attr.12): let Json.451 : List U8 = CallByName List.4 Json.454 Json.455; let Json.453 : I64 = 91i64; let Json.452 : U8 = CallByName Num.127 Json.453; - let Json.132 : List U8 = CallByName List.4 Json.451 Json.452; - let Json.450 : U64 = CallByName List.6 Json.128; - let Json.438 : {List U8, U64} = Struct {Json.132, Json.450}; + let Json.131 : List U8 = CallByName List.4 Json.451 Json.452; + let Json.450 : U64 = CallByName List.6 Json.127; + let Json.438 : {List U8, U64} = Struct {Json.131, Json.450}; let Json.439 : {} = Struct {}; - let Json.437 : {List U8, U64} = CallByName List.18 Json.128 Json.438 Json.439; - dec Json.128; - let Json.134 : List U8 = StructAtIndex 0 Json.437; - inc Json.134; + let Json.437 : {List U8, U64} = CallByName List.18 Json.127 Json.438 Json.439; + dec Json.127; + let Json.133 : List U8 = StructAtIndex 0 Json.437; + inc Json.133; dec Json.437; let Json.436 : I64 = 93i64; let Json.435 : U8 = CallByName Num.127 Json.436; - let Json.432 : List U8 = CallByName List.4 Json.134 Json.435; + let Json.432 : List U8 = CallByName List.4 Json.133 Json.435; let Json.434 : I64 = 125i64; let Json.433 : U8 = CallByName Num.127 Json.434; let Json.431 : List U8 = CallByName List.4 Json.432 Json.433; ret Json.431; -procedure Json.131 (Json.430, Json.137): - let Json.135 : List U8 = StructAtIndex 0 Json.430; - inc Json.135; - let Json.136 : U64 = StructAtIndex 1 Json.430; +procedure Json.130 (Json.430, Json.136): + let Json.134 : List U8 = StructAtIndex 0 Json.430; + inc Json.134; + let Json.135 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.449 : {} = Struct {}; - let Json.138 : List U8 = CallByName Encode.23 Json.135 Json.137 Json.449; - joinpoint Json.444 Json.139: + let Json.137 : List U8 = CallByName Encode.23 Json.134 Json.136 Json.449; + joinpoint Json.444 Json.138: let Json.442 : U64 = 1i64; - let Json.441 : U64 = CallByName Num.20 Json.136 Json.442; - let Json.440 : {List U8, U64} = Struct {Json.139, Json.441}; + let Json.441 : U64 = CallByName Num.20 Json.135 Json.442; + let Json.440 : {List U8, U64} = Struct {Json.138, Json.441}; ret Json.440; in let Json.448 : U64 = 1i64; - let Json.445 : Int1 = CallByName Num.24 Json.136 Json.448; + let Json.445 : Int1 = CallByName Num.24 Json.135 Json.448; if Json.445 then let Json.447 : I64 = 44i64; let Json.446 : U8 = CallByName Num.127 Json.447; - let Json.443 : List U8 = CallByName List.4 Json.138 Json.446; + let Json.443 : List U8 = CallByName List.4 Json.137 Json.446; jump Json.444 Json.443; else - jump Json.444 Json.138; + jump Json.444 Json.137; -procedure Json.18 (Json.98): - let Json.482 : Str = CallByName Encode.22 Json.98; +procedure Json.18 (Json.97): + let Json.482 : Str = CallByName Encode.22 Json.97; ret Json.482; -procedure Json.21 (Json.127, Json.128): - let Json.468 : {Str, List Str} = Struct {Json.127, Json.128}; +procedure Json.21 (Json.126, Json.127): + let Json.468 : {Str, List Str} = Struct {Json.126, Json.127}; let Json.467 : {Str, List Str} = CallByName Encode.22 Json.468; ret Json.467; -procedure Json.99 (Json.100, Json.472, Json.98): +procedure Json.98 (Json.99, Json.472, Json.97): let Json.481 : I64 = 34i64; let Json.480 : U8 = CallByName Num.127 Json.481; - let Json.478 : List U8 = CallByName List.4 Json.100 Json.480; - let Json.479 : List U8 = CallByName Str.12 Json.98; + let Json.478 : List U8 = CallByName List.4 Json.99 Json.480; + let Json.479 : List U8 = CallByName Str.12 Json.97; let Json.475 : List U8 = CallByName List.8 Json.478 Json.479; let Json.477 : I64 = 34i64; let Json.476 : U8 = CallByName Num.127 Json.477; @@ -116,7 +116,7 @@ procedure Json.99 (Json.100, Json.472, Json.98): ret Json.474; procedure List.139 (List.140, List.141, List.138): - let List.545 : {List U8, U64} = CallByName Json.131 List.140 List.141; + let List.545 : {List U8, U64} = CallByName Json.130 List.140 List.141; ret List.545; procedure List.18 (List.136, List.137, List.138): diff --git a/crates/compiler/test_mono/generated/unspecialized_lambda_set_unification_keeps_all_concrete_types_without_unification_of_unifiable.txt b/crates/compiler/test_mono/generated/unspecialized_lambda_set_unification_keeps_all_concrete_types_without_unification_of_unifiable.txt index e909de748d..b2d8b4e9cb 100644 --- a/crates/compiler/test_mono/generated/unspecialized_lambda_set_unification_keeps_all_concrete_types_without_unification_of_unifiable.txt +++ b/crates/compiler/test_mono/generated/unspecialized_lambda_set_unification_keeps_all_concrete_types_without_unification_of_unifiable.txt @@ -51,7 +51,7 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): ret Encode.106; procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.113 : List U8 = CallByName Json.129 Encode.94 Encode.96 Encode.102; + let Encode.113 : List U8 = CallByName Json.128 Encode.94 Encode.96 Encode.102; ret Encode.113; procedure Encode.23 (Encode.94, Encode.102, Encode.96): @@ -67,7 +67,7 @@ procedure Encode.23 (Encode.94, Encode.102, Encode.96): procedure Encode.23 (Encode.94, Encode.102, Encode.96): - let Encode.129 : List U8 = CallByName Json.129 Encode.94 Encode.96 Encode.102; + let Encode.129 : List U8 = CallByName Json.128 Encode.94 Encode.96 Encode.102; ret Encode.129; procedure Encode.23 (Encode.94, Encode.102, Encode.96): @@ -84,19 +84,19 @@ procedure Json.1 (): let Json.425 : {} = Struct {}; ret Json.425; -procedure Json.129 (Json.130, Json.428, #Attr.12): - let Json.128 : List [C {}, C {}] = StructAtIndex 1 #Attr.12; - inc Json.128; - let Json.127 : Str = StructAtIndex 0 #Attr.12; +procedure Json.128 (Json.129, Json.428, #Attr.12): + let Json.127 : List [C {}, C {}] = StructAtIndex 1 #Attr.12; inc Json.127; + let Json.126 : Str = StructAtIndex 0 #Attr.12; + inc Json.126; dec #Attr.12; let Json.466 : I64 = 123i64; let Json.465 : U8 = CallByName Num.127 Json.466; - let Json.462 : List U8 = CallByName List.4 Json.130 Json.465; + let Json.462 : List U8 = CallByName List.4 Json.129 Json.465; let Json.464 : I64 = 34i64; let Json.463 : U8 = CallByName Num.127 Json.464; let Json.460 : List U8 = CallByName List.4 Json.462 Json.463; - let Json.461 : List U8 = CallByName Str.12 Json.127; + let Json.461 : List U8 = CallByName Str.12 Json.126; let Json.457 : List U8 = CallByName List.8 Json.460 Json.461; let Json.459 : I64 = 34i64; let Json.458 : U8 = CallByName Num.127 Json.459; @@ -106,36 +106,36 @@ procedure Json.129 (Json.130, Json.428, #Attr.12): let Json.451 : List U8 = CallByName List.4 Json.454 Json.455; let Json.453 : I64 = 91i64; let Json.452 : U8 = CallByName Num.127 Json.453; - let Json.132 : List U8 = CallByName List.4 Json.451 Json.452; - let Json.450 : U64 = CallByName List.6 Json.128; - let Json.438 : {List U8, U64} = Struct {Json.132, Json.450}; + let Json.131 : List U8 = CallByName List.4 Json.451 Json.452; + let Json.450 : U64 = CallByName List.6 Json.127; + let Json.438 : {List U8, U64} = Struct {Json.131, Json.450}; let Json.439 : {} = Struct {}; - let Json.437 : {List U8, U64} = CallByName List.18 Json.128 Json.438 Json.439; - dec Json.128; - let Json.134 : List U8 = StructAtIndex 0 Json.437; - inc Json.134; + let Json.437 : {List U8, U64} = CallByName List.18 Json.127 Json.438 Json.439; + dec Json.127; + let Json.133 : List U8 = StructAtIndex 0 Json.437; + inc Json.133; dec Json.437; let Json.436 : I64 = 93i64; let Json.435 : U8 = CallByName Num.127 Json.436; - let Json.432 : List U8 = CallByName List.4 Json.134 Json.435; + let Json.432 : List U8 = CallByName List.4 Json.133 Json.435; let Json.434 : I64 = 125i64; let Json.433 : U8 = CallByName Num.127 Json.434; let Json.431 : List U8 = CallByName List.4 Json.432 Json.433; ret Json.431; -procedure Json.129 (Json.130, Json.428, #Attr.12): - let Json.128 : List [] = StructAtIndex 1 #Attr.12; - inc Json.128; - let Json.127 : Str = StructAtIndex 0 #Attr.12; +procedure Json.128 (Json.129, Json.428, #Attr.12): + let Json.127 : List [] = StructAtIndex 1 #Attr.12; inc Json.127; + let Json.126 : Str = StructAtIndex 0 #Attr.12; + inc Json.126; dec #Attr.12; let Json.516 : I64 = 123i64; let Json.515 : U8 = CallByName Num.127 Json.516; - let Json.512 : List U8 = CallByName List.4 Json.130 Json.515; + let Json.512 : List U8 = CallByName List.4 Json.129 Json.515; let Json.514 : I64 = 34i64; let Json.513 : U8 = CallByName Num.127 Json.514; let Json.510 : List U8 = CallByName List.4 Json.512 Json.513; - let Json.511 : List U8 = CallByName Str.12 Json.127; + let Json.511 : List U8 = CallByName Str.12 Json.126; let Json.507 : List U8 = CallByName List.8 Json.510 Json.511; let Json.509 : I64 = 34i64; let Json.508 : U8 = CallByName Num.127 Json.509; @@ -145,86 +145,86 @@ procedure Json.129 (Json.130, Json.428, #Attr.12): let Json.501 : List U8 = CallByName List.4 Json.504 Json.505; let Json.503 : I64 = 91i64; let Json.502 : U8 = CallByName Num.127 Json.503; - let Json.132 : List U8 = CallByName List.4 Json.501 Json.502; - let Json.500 : U64 = CallByName List.6 Json.128; - let Json.488 : {List U8, U64} = Struct {Json.132, Json.500}; + let Json.131 : List U8 = CallByName List.4 Json.501 Json.502; + let Json.500 : U64 = CallByName List.6 Json.127; + let Json.488 : {List U8, U64} = Struct {Json.131, Json.500}; let Json.489 : {} = Struct {}; - let Json.487 : {List U8, U64} = CallByName List.18 Json.128 Json.488 Json.489; - dec Json.128; - let Json.134 : List U8 = StructAtIndex 0 Json.487; - inc Json.134; + let Json.487 : {List U8, U64} = CallByName List.18 Json.127 Json.488 Json.489; + dec Json.127; + let Json.133 : List U8 = StructAtIndex 0 Json.487; + inc Json.133; dec Json.487; let Json.486 : I64 = 93i64; let Json.485 : U8 = CallByName Num.127 Json.486; - let Json.482 : List U8 = CallByName List.4 Json.134 Json.485; + let Json.482 : List U8 = CallByName List.4 Json.133 Json.485; let Json.484 : I64 = 125i64; let Json.483 : U8 = CallByName Num.127 Json.484; let Json.481 : List U8 = CallByName List.4 Json.482 Json.483; ret Json.481; -procedure Json.131 (Json.430, Json.137): - let Json.135 : List U8 = StructAtIndex 0 Json.430; - inc Json.135; - let Json.136 : U64 = StructAtIndex 1 Json.430; +procedure Json.130 (Json.430, Json.136): + let Json.134 : List U8 = StructAtIndex 0 Json.430; + inc Json.134; + let Json.135 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.449 : {} = Struct {}; - let Json.138 : List U8 = CallByName Encode.23 Json.135 Json.137 Json.449; - joinpoint Json.444 Json.139: + let Json.137 : List U8 = CallByName Encode.23 Json.134 Json.136 Json.449; + joinpoint Json.444 Json.138: let Json.442 : U64 = 1i64; - let Json.441 : U64 = CallByName Num.20 Json.136 Json.442; - let Json.440 : {List U8, U64} = Struct {Json.139, Json.441}; + let Json.441 : U64 = CallByName Num.20 Json.135 Json.442; + let Json.440 : {List U8, U64} = Struct {Json.138, Json.441}; ret Json.440; in let Json.448 : U64 = 1i64; - let Json.445 : Int1 = CallByName Num.24 Json.136 Json.448; + let Json.445 : Int1 = CallByName Num.24 Json.135 Json.448; if Json.445 then let Json.447 : I64 = 44i64; let Json.446 : U8 = CallByName Num.127 Json.447; - let Json.443 : List U8 = CallByName List.4 Json.138 Json.446; + let Json.443 : List U8 = CallByName List.4 Json.137 Json.446; jump Json.444 Json.443; else - jump Json.444 Json.138; + jump Json.444 Json.137; -procedure Json.131 (Json.430, Json.137): - let Json.135 : List U8 = StructAtIndex 0 Json.430; - inc Json.135; - let Json.136 : U64 = StructAtIndex 1 Json.430; +procedure Json.130 (Json.430, Json.136): + let Json.134 : List U8 = StructAtIndex 0 Json.430; + inc Json.134; + let Json.135 : U64 = StructAtIndex 1 Json.430; dec Json.430; let Json.499 : {} = Struct {}; - let Json.138 : List U8 = CallByName Encode.23 Json.135 Json.137 Json.499; - dec Json.135; - joinpoint Json.494 Json.139: + let Json.137 : List U8 = CallByName Encode.23 Json.134 Json.136 Json.499; + dec Json.134; + joinpoint Json.494 Json.138: let Json.492 : U64 = 1i64; - let Json.491 : U64 = CallByName Num.20 Json.136 Json.492; - let Json.490 : {List U8, U64} = Struct {Json.139, Json.491}; + let Json.491 : U64 = CallByName Num.20 Json.135 Json.492; + let Json.490 : {List U8, U64} = Struct {Json.138, Json.491}; ret Json.490; in let Json.498 : U64 = 1i64; - let Json.495 : Int1 = CallByName Num.24 Json.136 Json.498; + let Json.495 : Int1 = CallByName Num.24 Json.135 Json.498; if Json.495 then let Json.497 : I64 = 44i64; let Json.496 : U8 = CallByName Num.127 Json.497; - let Json.493 : List U8 = CallByName List.4 Json.138 Json.496; + let Json.493 : List U8 = CallByName List.4 Json.137 Json.496; jump Json.494 Json.493; else - jump Json.494 Json.138; + jump Json.494 Json.137; -procedure Json.21 (Json.127, Json.128): - let Json.468 : {Str, List [C {}, C {}]} = Struct {Json.127, Json.128}; +procedure Json.21 (Json.126, Json.127): + let Json.468 : {Str, List [C {}, C {}]} = Struct {Json.126, Json.127}; let Json.467 : {Str, List [C {}, C {}]} = CallByName Encode.22 Json.468; ret Json.467; -procedure Json.21 (Json.127, Json.128): - let Json.518 : {Str, List []} = Struct {Json.127, Json.128}; +procedure Json.21 (Json.126, Json.127): + let Json.518 : {Str, List []} = Struct {Json.126, Json.127}; let Json.517 : {Str, List []} = CallByName Encode.22 Json.518; ret Json.517; procedure List.139 (List.140, List.141, List.138): - let List.539 : {List U8, U64} = CallByName Json.131 List.140 List.141; + let List.539 : {List U8, U64} = CallByName Json.130 List.140 List.141; ret List.539; procedure List.139 (List.140, List.141, List.138): - let List.612 : {List U8, U64} = CallByName Json.131 List.140 List.141; + let List.612 : {List U8, U64} = CallByName Json.130 List.140 List.141; ret List.612; procedure List.18 (List.136, List.137, List.138):