Weaken zero-argument tags in let bindings

This commit is contained in:
Ayaz Hafiz 2023-01-12 14:47:20 -06:00
parent fb0668f13b
commit 52c2f3a054
No known key found for this signature in database
GPG key ID: 0E2A37416A25EF58
7 changed files with 51 additions and 44 deletions

View file

@ -1,5 +1,5 @@
procedure Test.0 ():
let Test.4 : [<rnu><null>, C List *self] = TagId(1) ;
let Test.5 : [C List [<rnu><null>, C List *self], C U16, C ] = TagId(2) ;
let Test.12 : {[<rnu><null>, C List *self], [C List [<rnu><null>, C List *self], C U16, C ]} = Struct {Test.4, Test.5};
let Test.4 : [<rnw>C List *self, C U16, <null>] = TagId(2) ;
inc Test.4;
let Test.12 : {[<rnw>C List *self, C U16, <null>], [<rnw>C List *self, C U16, <null>]} = Struct {Test.4, Test.4};
ret Test.12;

View file

@ -1,8 +1,15 @@
procedure Test.2 (Test.4, Test.5):
let Test.7 : U8 = 18i64;
ret Test.7;
procedure Test.1 (Test.4):
let Test.12 : Int1 = false;
ret Test.12;
procedure Test.2 (Test.5, Test.6):
let Test.10 : U8 = 18i64;
ret Test.10;
procedure Test.0 ():
let Test.1 : Int1 = false;
let Test.6 : U8 = CallByName Test.2 Test.1 Test.1;
ret Test.6;
let Test.13 : {} = Struct {};
let Test.8 : Int1 = CallByName Test.1 Test.13;
let Test.11 : {} = Struct {};
let Test.9 : Int1 = CallByName Test.1 Test.11;
let Test.7 : U8 = CallByName Test.2 Test.8 Test.9;
ret Test.7;