• R/O
  • SSH
  • HTTPS

jpl: Commit


Commit MetaInfo

Revision1184 (tree)
Time2021-03-02 07:55:52
Authorjakobthomsen

Log Message

implement if-next construct

Change Summary

Incremental Difference

--- trunk/jpl_compiler_pragmatic/compiler.compiled.c (revision 1183)
+++ trunk/jpl_compiler_pragmatic/compiler.compiled.c (revision 1184)
@@ -23145,7 +23145,7 @@
2314523145 case 1976LLU: // return from reportid to ProcCall
2314623146 {
2314723147 // copy mutable arguments back from call to reportid
23148- fprintf(stderr, "%s", ": at least one argument must be a substructure (i.e. part of parameter obtained by switch)\n");
23148+ fprintf(stderr, "%s", ": at least one argument must be a substructure (i.e. part of CONSTANT parameter, obtained by switch case / while next / if next / getbyte)\n");
2314923149 {
2315023150 label = 1779LLU; // throw: begin to unroll stack
2315123151 break;
@@ -23830,9 +23830,9 @@
2383023830
2383123831 // consequent
2383223832 struct listnode *next = list->next;
23833- stack[base + 38]/*typeidx*/ = list->data;
23833+ /*typeidx*/stack[base + 38] = list->data;
2383423834 Free(1, sizeof(struct listnode), list);
23835- stack[base + 0]/*dsttypeids*/ = (uint64_t)next;
23835+ /*dsttypeids*/stack[base + 0] = (uint64_t)next;
2383623836 }
2383723837 if(/*typeidx*/0 != ((uint64_t *)(stack[base + 38]/*typeidx*/))[0])
2383823838 {
@@ -27358,9 +27358,9 @@
2735827358
2735927359 // consequent
2736027360 struct listnode *next = list->next;
27361- stack[base + 37]/*typeidx*/ = list->data;
27361+ /*typeidx*/stack[base + 37] = list->data;
2736227362 Free(1, sizeof(struct listnode), list);
27363- stack[base + 0]/*dsttypeids*/ = (uint64_t)next;
27363+ /*dsttypeids*/stack[base + 0] = (uint64_t)next;
2736427364 }
2736527365 if(/*typeidx*/0 != ((uint64_t *)(stack[base + 37]/*typeidx*/))[0])
2736627366 {
@@ -33972,9 +33972,9 @@
3397233972
3397333973 // consequent
3397433974 struct listnode *next = list->next;
33975- stack[base + 36]/*typeidx*/ = list->data;
33975+ /*typeidx*/stack[base + 36] = list->data;
3397633976 Free(1, sizeof(struct listnode), list);
33977- stack[base + 20]/*BLKRESULTS*/ = (uint64_t)next;
33977+ /*BLKRESULTS*/stack[base + 20] = (uint64_t)next;
3397833978 }
3397933979 if(/*typeidx*/0 != ((uint64_t *)(stack[base + 36]/*typeidx*/))[0])
3398033980 {
@@ -35695,9 +35695,9 @@
3569535695
3569635696 // consequent
3569735697 struct listnode *next = list->next;
35698- stack[base + 31]/*RESULT*/ = list->data;
35698+ /*RESULT*/stack[base + 31] = list->data;
3569935699 Free(1, sizeof(struct listnode), list);
35700- stack[base + 17]/*results*/ = (uint64_t)next;
35700+ /*results*/stack[base + 17] = (uint64_t)next;
3570135701 }
3570235702 if(/*result*/0 != ((uint64_t *)(stack[base + 29]/*result*/))[0])
3570335703 {
@@ -41365,133 +41365,261 @@
4136541365 }
4136641366 case 3434LLU: // alternative
4136741367 {
41368+ label = 3477LLU; // skip deleter
41369+ break;
41370+ }
41371+ case 3476LLU: // deleter
41372+ {
41373+ // throw from procblock
41374+ if(!stack[base + 24])
41375+ {
41376+ label = 3428LLU; // skip, variable already deleted/unscoped
41377+ break;
41378+ }
41379+ label = 3428LLU; // continue unrolling stack, delete next variable
41380+ break;
41381+ }
41382+ case 3477LLU: // skipped deleter
41383+ {
4136841384 // call equ from procblock
41369- stack[base + 24LLU] = 3476LLU/*throw to this address*/;
41370- stack[base + 25LLU] = base;
41371- stack[base + 26LLU] = 3477LLU;
41385+ stack[base + 25LLU] = 3478LLU/*throw to this address*/;
41386+ stack[base + 26LLU] = base;
41387+ stack[base + 27LLU] = 3479LLU;
4137241388 // arguments for call to equ
41373- stack[base + 28LLU] = stack[base + 16]/*content*/;
41374- stack[base + 29LLU] = 786630200929550336LLU;
41389+ stack[base + 29LLU] = stack[base + 16]/*content*/;
41390+ stack[base + 30LLU] = 747825068330975232LLU;
4137541391 // set stack-base & callee-address
41376- base += 27LLU;
41392+ base += 28LLU;
4137741393 label = 18446744073709551600LLU; // equ
4137841394 break;
4137941395 }
41380- case 3476LLU: // copy-back deleter (equ to procblock)
41396+ case 3478LLU: // copy-back deleter (equ to procblock)
4138141397 {
4138241398 // copy mutable arguments back from call to equ
4138341399 label = 3428LLU; // continue to roll stack
4138441400 break;
4138541401 }
41386- case 3477LLU: // return from equ to procblock
41402+ case 3479LLU: // return from equ to procblock
4138741403 {
4138841404 // copy mutable arguments back from call to equ
4138941405 // copy back results provided by call to equ
41390- stack[base + 20] = stack[base + 27LLU];
41406+ stack[base + 20] = stack[base + 28LLU];
4139141407 if(!stack[base + 20]/*isequal*/)
4139241408 {
41393- label = 3478LLU; // jump to alternative
41409+ label = 3480LLU; // jump to alternative
4139441410 break;
4139541411 }
4139641412
4139741413 // consequent
41414+ label = 3483LLU; // skip deleter
41415+ break;
41416+ }
41417+ case 3482LLU: // deleter
41418+ {
41419+ // throw from procblock
41420+ if(!stack[base + 24])
41421+ {
41422+ label = 3428LLU; // skip, variable already deleted/unscoped
41423+ break;
41424+ }
41425+ label = 3428LLU; // continue unrolling stack, delete next variable
41426+ break;
41427+ }
41428+ case 3483LLU: // skipped deleter
41429+ {
41430+ stack[base + 24] = 0;
41431+ label = 3481LLU; // consequent complete
41432+ break;
41433+ }
41434+ case 3480LLU: // alternative
41435+ {
41436+ // call equ from procblock
41437+ stack[base + 25LLU] = 3484LLU/*throw to this address*/;
41438+ stack[base + 26LLU] = base;
41439+ stack[base + 27LLU] = 3485LLU;
41440+ // arguments for call to equ
41441+ stack[base + 29LLU] = stack[base + 16]/*content*/;
41442+ stack[base + 30LLU] = 786630200929550336LLU;
41443+ // set stack-base & callee-address
41444+ base += 28LLU;
41445+ label = 18446744073709551600LLU; // equ
41446+ break;
41447+ }
41448+ case 3484LLU: // copy-back deleter (equ to procblock)
41449+ {
41450+ // copy mutable arguments back from call to equ
41451+ label = 3428LLU; // continue to roll stack
41452+ break;
41453+ }
41454+ case 3485LLU: // return from equ to procblock
41455+ {
41456+ // copy mutable arguments back from call to equ
41457+ // copy back results provided by call to equ
41458+ stack[base + 20] = stack[base + 28LLU];
41459+ if(!stack[base + 20]/*isequal*/)
41460+ {
41461+ label = 3486LLU; // jump to alternative
41462+ break;
41463+ }
41464+
41465+ // consequent
41466+ label = 3489LLU; // skip deleter
41467+ break;
41468+ }
41469+ case 3488LLU: // deleter
41470+ {
41471+ // throw from procblock
41472+ if(!stack[base + 24])
41473+ {
41474+ label = 3428LLU; // skip, variable already deleted/unscoped
41475+ break;
41476+ }
41477+ label = 3428LLU; // continue unrolling stack, delete next variable
41478+ break;
41479+ }
41480+ case 3489LLU: // skipped deleter
41481+ {
41482+ stack[base + 24] = 1;
41483+ label = 3487LLU; // consequent complete
41484+ break;
41485+ }
41486+ case 3486LLU: // alternative
41487+ {
41488+ fprintf(stderr, "%s", "expected '(' but found token ");
41489+ // call reporttok from procblock
41490+ stack[base + 25LLU] = 3490LLU/*throw to this address*/;
41491+ stack[base + 26LLU] = base;
41492+ stack[base + 27LLU] = 3491LLU;
41493+ // arguments for call to reporttok
41494+ stack[base + 28LLU] = stack[base + 15]/*variant*/;
41495+ stack[base + 29LLU] = stack[base + 16]/*content*/;
41496+ // set stack-base & callee-address
41497+ base += 28LLU;
41498+ label = 18446744073709551582LLU; // reporttok
41499+ break;
41500+ }
41501+ case 3490LLU: // copy-back deleter (reporttok to procblock)
41502+ {
41503+ // copy mutable arguments back from call to reporttok
41504+ label = 3428LLU; // continue to roll stack
41505+ break;
41506+ }
41507+ case 3491LLU: // return from reporttok to procblock
41508+ {
41509+ // copy mutable arguments back from call to reporttok
41510+ fprintf(stderr, "%s", "\n");
41511+ {
41512+ label = 3428LLU; // throw: begin to unroll stack
41513+ break;
41514+ }
41515+
41516+ label = 3487LLU; // alternative complete
41517+ break;
41518+ }
41519+ case 3487LLU: // completed if-then-else
41520+ {
41521+ label = 3481LLU; // alternative complete
41522+ break;
41523+ }
41524+ case 3481LLU: // completed if-then-else
41525+ {
4139841526 // call matchsym from procblock
41399- stack[base + 24LLU] = 3480LLU/*throw to this address*/;
41400- stack[base + 25LLU] = base;
41401- stack[base + 26LLU] = 3481LLU;
41527+ stack[base + 25LLU] = 3492LLU/*throw to this address*/;
41528+ stack[base + 26LLU] = base;
41529+ stack[base + 27LLU] = 3493LLU;
4140241530 // arguments for call to matchsym
41403- stack[base + 27LLU] = stack[base + 8]/*fnid*/;
41404- stack[base + 28LLU] = 40LLU;
41405- stack[base + 29LLU] = stack[base + 19]/*lookahead*/;
41531+ stack[base + 28LLU] = stack[base + 8]/*fnid*/;
41532+ stack[base + 29LLU] = 40LLU;
41533+ stack[base + 30LLU] = stack[base + 19]/*lookahead*/;
4140641534 // set stack-base & callee-address
41407- base += 27LLU;
41535+ base += 28LLU;
4140841536 label = 222LLU; // matchsym
4140941537 break;
4141041538 }
41411- case 3480LLU: // copy-back deleter (matchsym to procblock)
41539+ case 3492LLU: // copy-back deleter (matchsym to procblock)
4141241540 {
4141341541 // copy mutable arguments back from call to matchsym
41414- stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
41415- label = 3428LLU; // continue to roll stack
41542+ stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
41543+ label = 3476LLU; // continue to roll stack
4141641544 break;
4141741545 }
41418- case 3481LLU: // return from matchsym to procblock
41546+ case 3493LLU: // return from matchsym to procblock
4141941547 {
4142041548 // copy mutable arguments back from call to matchsym
41421- stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
41549+ stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
4142241550 // call ParseToken from procblock
41423- stack[base + 24LLU] = 3482LLU/*throw to this address*/;
41424- stack[base + 25LLU] = base;
41425- stack[base + 26LLU] = 3483LLU;
41551+ stack[base + 25LLU] = 3494LLU/*throw to this address*/;
41552+ stack[base + 26LLU] = base;
41553+ stack[base + 27LLU] = 3495LLU;
4142641554 // arguments for call to ParseToken
41427- stack[base + 29LLU] = stack[base + 19]/*lookahead*/;
41555+ stack[base + 30LLU] = stack[base + 19]/*lookahead*/;
4142841556 // set stack-base & callee-address
41429- base += 27LLU;
41557+ base += 28LLU;
4143041558 label = 3LLU; // ParseToken
4143141559 break;
4143241560 }
41433- case 3482LLU: // copy-back deleter (ParseToken to procblock)
41561+ case 3494LLU: // copy-back deleter (ParseToken to procblock)
4143441562 {
4143541563 // copy mutable arguments back from call to ParseToken
41436- stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
41437- label = 3428LLU; // continue to roll stack
41564+ stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
41565+ label = 3476LLU; // continue to roll stack
4143841566 break;
4143941567 }
41440- case 3483LLU: // return from ParseToken to procblock
41568+ case 3495LLU: // return from ParseToken to procblock
4144141569 {
4144241570 // copy mutable arguments back from call to ParseToken
41443- stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
41571+ stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
4144441572 // copy back results provided by call to ParseToken
41445- stack[base + 15] = stack[base + 27LLU];
41446- stack[base + 16] = stack[base + 28LLU];
41573+ stack[base + 15] = stack[base + 28LLU];
41574+ stack[base + 16] = stack[base + 29LLU];
4144741575 // call equ from procblock
41448- stack[base + 24LLU] = 3484LLU/*throw to this address*/;
41449- stack[base + 25LLU] = base;
41450- stack[base + 26LLU] = 3485LLU;
41576+ stack[base + 25LLU] = 3496LLU/*throw to this address*/;
41577+ stack[base + 26LLU] = base;
41578+ stack[base + 27LLU] = 3497LLU;
4145141579 // arguments for call to equ
41452- stack[base + 28LLU] = stack[base + 15]/*variant*/;
41453- stack[base + 29LLU] = 4LLU;
41580+ stack[base + 29LLU] = stack[base + 15]/*variant*/;
41581+ stack[base + 30LLU] = 4LLU;
4145441582 // set stack-base & callee-address
41455- base += 27LLU;
41583+ base += 28LLU;
4145641584 label = 18446744073709551600LLU; // equ
4145741585 break;
4145841586 }
41459- case 3484LLU: // copy-back deleter (equ to procblock)
41587+ case 3496LLU: // copy-back deleter (equ to procblock)
4146041588 {
4146141589 // copy mutable arguments back from call to equ
41462- label = 3428LLU; // continue to roll stack
41590+ label = 3476LLU; // continue to roll stack
4146341591 break;
4146441592 }
41465- case 3485LLU: // return from equ to procblock
41593+ case 3497LLU: // return from equ to procblock
4146641594 {
4146741595 // copy mutable arguments back from call to equ
4146841596 // copy back results provided by call to equ
41469- stack[base + 20] = stack[base + 27LLU];
41597+ stack[base + 20] = stack[base + 28LLU];
4147041598 if(!stack[base + 20]/*isequal*/)
4147141599 {
41472- label = 3486LLU; // jump to alternative
41600+ label = 3498LLU; // jump to alternative
4147341601 break;
4147441602 }
4147541603
4147641604 // consequent
41477- label = 3489LLU; // skip deleter
41605+ label = 3501LLU; // skip deleter
4147841606 break;
4147941607 }
41480- case 3488LLU: // deleter
41608+ case 3500LLU: // deleter
4148141609 {
4148241610 // throw from procblock
41483- if(!stack[base + 24])
41611+ if(!stack[base + 25])
4148441612 {
41485- label = 3428LLU; // skip, variable already deleted/unscoped
41613+ label = 3476LLU; // skip, variable already deleted/unscoped
4148641614 break;
4148741615 }
4148841616
41489- uint64_t *newstack = (uint64_t *)(stack[base + 24] - sizeof(uint64_t) * 4);
41617+ uint64_t *newstack = (uint64_t *)(stack[base + 25] - sizeof(uint64_t) * 4);
4149041618 // call ~letdef from procblock
4149141619 newstack[0] = (uint64_t)stack; // backup stack location
4149241620 newstack[1] = 1234567890;
4149341621 newstack[2] = base;
41494- newstack[3] = 3490LLU;
41622+ newstack[3] = 3502LLU;
4149541623 stack = newstack;
4149641624 // set stack-base & callee-address
4149741625 base = 4/*deloffset*/;
@@ -41498,293 +41626,312 @@
4149841626 label = 482LLU; // ~letdef
4149941627 break;
4150041628 }
41501- case 3490LLU: // return from ~letdef to procblock
41629+ case 3502LLU: // return from ~letdef to procblock
4150241630 {
4150341631 stack = (uint64_t *)stack[0];
4150441632 // releasing toplevel container
41505- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 24] - sizeof(uint64_t) * 4));
41633+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 25] - sizeof(uint64_t) * 4));
4150641634
41507- label = 3428LLU; // continue unrolling stack, delete next variable
41635+ label = 3476LLU; // continue unrolling stack, delete next variable
4150841636 break;
4150941637 }
41510- case 3489LLU: // skipped deleter
41638+ case 3501LLU: // skipped deleter
4151141639 {
4151241640 // call FindLetNew from procblock
41513- stack[base + 25LLU] = 3491LLU/*throw to this address*/;
41514- stack[base + 26LLU] = base;
41515- stack[base + 27LLU] = 3492LLU;
41641+ stack[base + 26LLU] = 3503LLU/*throw to this address*/;
41642+ stack[base + 27LLU] = base;
41643+ stack[base + 28LLU] = 3504LLU;
4151641644 // arguments for call to FindLetNew
41517- stack[base + 29LLU] = stack[base + 8]/*fnid*/;
41518- stack[base + 30LLU] = stack[base + 16]/*content*/;
41519- stack[base + 31LLU] = stack[base + 2]/*scopes*/;
41520- stack[base + 32LLU] = stack[base + 3]/*scope*/;
41645+ stack[base + 30LLU] = stack[base + 8]/*fnid*/;
41646+ stack[base + 31LLU] = stack[base + 16]/*content*/;
41647+ stack[base + 32LLU] = stack[base + 2]/*scopes*/;
41648+ stack[base + 33LLU] = stack[base + 3]/*scope*/;
4152141649 // set stack-base & callee-address
41522- base += 28LLU;
41650+ base += 29LLU;
4152341651 label = 615LLU; // FindLetNew
4152441652 break;
4152541653 }
41526- case 3491LLU: // copy-back deleter (FindLetNew to procblock)
41654+ case 3503LLU: // copy-back deleter (FindLetNew to procblock)
4152741655 {
4152841656 // copy mutable arguments back from call to FindLetNew
41529- label = 3428LLU; // continue to roll stack
41657+ label = 3476LLU; // continue to roll stack
4153041658 break;
4153141659 }
41532- case 3492LLU: // return from FindLetNew to procblock
41660+ case 3504LLU: // return from FindLetNew to procblock
4153341661 {
4153441662 // copy mutable arguments back from call to FindLetNew
4153541663 // copy back results provided by call to FindLetNew
41536- stack[base + 24] = stack[base + 28LLU];
41537- if(/*letdef*/0 != ((uint64_t *)(stack[base + 24]/*letdef*/))[0])
41664+ stack[base + 25] = stack[base + 29LLU];
41665+ if(/*letdef*/0 != ((uint64_t *)(stack[base + 25]/*letdef*/))[0])
4153841666 {
41539- label = 3494LLU; // jump to alternative
41667+ label = 3506LLU; // jump to alternative
4154041668 break;
4154141669 }
4154241670
41543- /*listtype*/stack[base + 25] = ((uint64_t **)(stack[base + 24]/*letdef*/))[1][0]/*type*/;
41544- /*listname*/stack[base + 26] = ((uint64_t **)(stack[base + 24]/*letdef*/))[1][1]/*id*/;
41545- /*listindex*/stack[base + 27] = ((uint64_t **)(stack[base + 24]/*letdef*/))[1][2]/*index*/;
41546- /*listmut*/stack[base + 28] = ((uint64_t **)(stack[base + 24]/*letdef*/))[1][3]/*mutable*/;
41547- /*substruct*/stack[base + 29] = ((uint64_t **)(stack[base + 24]/*letdef*/))[1][4]/*substruct*/;
41671+ /*listtype*/stack[base + 26] = ((uint64_t **)(stack[base + 25]/*letdef*/))[1][0]/*type*/;
41672+ /*listname*/stack[base + 27] = ((uint64_t **)(stack[base + 25]/*letdef*/))[1][1]/*id*/;
41673+ /*listindex*/stack[base + 28] = ((uint64_t **)(stack[base + 25]/*letdef*/))[1][2]/*index*/;
41674+ /*listmut*/stack[base + 29] = ((uint64_t **)(stack[base + 25]/*letdef*/))[1][3]/*mutable*/;
41675+ /*substruct*/stack[base + 30] = ((uint64_t **)(stack[base + 25]/*letdef*/))[1][4]/*substruct*/;
4154841676
4154941677 // case
41550- printf("%s", "\n { // if pop");
41678+ printf("%s", "\n { // if ");
41679+ if(!stack[base + 24]/*consume*/)
41680+ {
41681+ label = 3508LLU; // jump to alternative
41682+ break;
41683+ }
41684+
41685+ // consequent
41686+ printf("%s", "pop");
41687+ label = 3509LLU; // consequent complete
41688+ break;
41689+ }
41690+ case 3508LLU: // alternative
41691+ {
41692+ printf("%s", "next");
41693+ label = 3509LLU; // alternative complete
41694+ break;
41695+ }
41696+ case 3509LLU: // completed if-then-else
41697+ {
4155141698 printf("%s", "\n struct listnode *list = (struct listnode *)");
4155241699 // call emitvaridx from procblock
41553- stack[base + 30LLU] = 3496LLU/*throw to this address*/;
41554- stack[base + 31LLU] = base;
41555- stack[base + 32LLU] = 3497LLU;
41700+ stack[base + 31LLU] = 3510LLU/*throw to this address*/;
41701+ stack[base + 32LLU] = base;
41702+ stack[base + 33LLU] = 3511LLU;
4155641703 // arguments for call to emitvaridx
41557- stack[base + 33LLU] = stack[base + 27]/*listindex*/;
41704+ stack[base + 34LLU] = stack[base + 28]/*listindex*/;
4155841705 // set stack-base & callee-address
41559- base += 33LLU;
41706+ base += 34LLU;
4156041707 label = 741LLU; // emitvaridx
4156141708 break;
4156241709 }
41563- case 3496LLU: // copy-back deleter (emitvaridx to procblock)
41710+ case 3510LLU: // copy-back deleter (emitvaridx to procblock)
4156441711 {
4156541712 // copy mutable arguments back from call to emitvaridx
41566- label = 3495LLU; // continue to roll stack
41713+ label = 3507LLU; // continue to roll stack
4156741714 break;
4156841715 }
41569- case 3497LLU: // return from emitvaridx to procblock
41716+ case 3511LLU: // return from emitvaridx to procblock
4157041717 {
4157141718 // copy mutable arguments back from call to emitvaridx
4157241719 printf("%s", "/*");
4157341720 // call printid from procblock
41574- stack[base + 30LLU] = 3498LLU/*throw to this address*/;
41575- stack[base + 31LLU] = base;
41576- stack[base + 32LLU] = 3499LLU;
41721+ stack[base + 31LLU] = 3512LLU/*throw to this address*/;
41722+ stack[base + 32LLU] = base;
41723+ stack[base + 33LLU] = 3513LLU;
4157741724 // arguments for call to printid
41578- stack[base + 33LLU] = stack[base + 26]/*listname*/;
41725+ stack[base + 34LLU] = stack[base + 27]/*listname*/;
4157941726 // set stack-base & callee-address
41580- base += 33LLU;
41727+ base += 34LLU;
4158141728 label = 18446744073709551587LLU; // printid
4158241729 break;
4158341730 }
41584- case 3498LLU: // copy-back deleter (printid to procblock)
41731+ case 3512LLU: // copy-back deleter (printid to procblock)
4158541732 {
4158641733 // copy mutable arguments back from call to printid
41587- label = 3495LLU; // continue to roll stack
41734+ label = 3507LLU; // continue to roll stack
4158841735 break;
4158941736 }
41590- case 3499LLU: // return from printid to procblock
41737+ case 3513LLU: // return from printid to procblock
4159141738 {
4159241739 // copy mutable arguments back from call to printid
4159341740 printf("%s", "*/;");
4159441741 printf("%s", "\n if(!list)");
4159541742 // call matchsym from procblock
41596- stack[base + 30LLU] = 3500LLU/*throw to this address*/;
41597- stack[base + 31LLU] = base;
41598- stack[base + 32LLU] = 3501LLU;
41743+ stack[base + 31LLU] = 3514LLU/*throw to this address*/;
41744+ stack[base + 32LLU] = base;
41745+ stack[base + 33LLU] = 3515LLU;
4159941746 // arguments for call to matchsym
41600- stack[base + 33LLU] = stack[base + 8]/*fnid*/;
41601- stack[base + 34LLU] = 41LLU;
41602- stack[base + 35LLU] = stack[base + 19]/*lookahead*/;
41747+ stack[base + 34LLU] = stack[base + 8]/*fnid*/;
41748+ stack[base + 35LLU] = 41LLU;
41749+ stack[base + 36LLU] = stack[base + 19]/*lookahead*/;
4160341750 // set stack-base & callee-address
41604- base += 33LLU;
41751+ base += 34LLU;
4160541752 label = 222LLU; // matchsym
4160641753 break;
4160741754 }
41608- case 3500LLU: // copy-back deleter (matchsym to procblock)
41755+ case 3514LLU: // copy-back deleter (matchsym to procblock)
4160941756 {
4161041757 // copy mutable arguments back from call to matchsym
41611- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41612- label = 3495LLU; // continue to roll stack
41758+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
41759+ label = 3507LLU; // continue to roll stack
4161341760 break;
4161441761 }
41615- case 3501LLU: // return from matchsym to procblock
41762+ case 3515LLU: // return from matchsym to procblock
4161641763 {
4161741764 // copy mutable arguments back from call to matchsym
41618- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41765+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
4161941766 // call matchsym from procblock
41620- stack[base + 30LLU] = 3502LLU/*throw to this address*/;
41621- stack[base + 31LLU] = base;
41622- stack[base + 32LLU] = 3503LLU;
41767+ stack[base + 31LLU] = 3516LLU/*throw to this address*/;
41768+ stack[base + 32LLU] = base;
41769+ stack[base + 33LLU] = 3517LLU;
4162341770 // arguments for call to matchsym
41624- stack[base + 33LLU] = stack[base + 8]/*fnid*/;
41625- stack[base + 34LLU] = 45LLU;
41626- stack[base + 35LLU] = stack[base + 19]/*lookahead*/;
41771+ stack[base + 34LLU] = stack[base + 8]/*fnid*/;
41772+ stack[base + 35LLU] = 45LLU;
41773+ stack[base + 36LLU] = stack[base + 19]/*lookahead*/;
4162741774 // set stack-base & callee-address
41628- base += 33LLU;
41775+ base += 34LLU;
4162941776 label = 222LLU; // matchsym
4163041777 break;
4163141778 }
41632- case 3502LLU: // copy-back deleter (matchsym to procblock)
41779+ case 3516LLU: // copy-back deleter (matchsym to procblock)
4163341780 {
4163441781 // copy mutable arguments back from call to matchsym
41635- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41636- label = 3495LLU; // continue to roll stack
41782+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
41783+ label = 3507LLU; // continue to roll stack
4163741784 break;
4163841785 }
41639- case 3503LLU: // return from matchsym to procblock
41786+ case 3517LLU: // return from matchsym to procblock
4164041787 {
4164141788 // copy mutable arguments back from call to matchsym
41642- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41789+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
4164341790 // call matchsym from procblock
41644- stack[base + 30LLU] = 3504LLU/*throw to this address*/;
41645- stack[base + 31LLU] = base;
41646- stack[base + 32LLU] = 3505LLU;
41791+ stack[base + 31LLU] = 3518LLU/*throw to this address*/;
41792+ stack[base + 32LLU] = base;
41793+ stack[base + 33LLU] = 3519LLU;
4164741794 // arguments for call to matchsym
41648- stack[base + 33LLU] = stack[base + 8]/*fnid*/;
41649- stack[base + 34LLU] = 62LLU;
41650- stack[base + 35LLU] = stack[base + 19]/*lookahead*/;
41795+ stack[base + 34LLU] = stack[base + 8]/*fnid*/;
41796+ stack[base + 35LLU] = 62LLU;
41797+ stack[base + 36LLU] = stack[base + 19]/*lookahead*/;
4165141798 // set stack-base & callee-address
41652- base += 33LLU;
41799+ base += 34LLU;
4165341800 label = 222LLU; // matchsym
4165441801 break;
4165541802 }
41656- case 3504LLU: // copy-back deleter (matchsym to procblock)
41803+ case 3518LLU: // copy-back deleter (matchsym to procblock)
4165741804 {
4165841805 // copy mutable arguments back from call to matchsym
41659- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41660- label = 3495LLU; // continue to roll stack
41806+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
41807+ label = 3507LLU; // continue to roll stack
4166141808 break;
4166241809 }
41663- case 3505LLU: // return from matchsym to procblock
41810+ case 3519LLU: // return from matchsym to procblock
4166441811 {
4166541812 // copy mutable arguments back from call to matchsym
41666- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41813+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
4166741814 // call matchsym from procblock
41668- stack[base + 30LLU] = 3506LLU/*throw to this address*/;
41669- stack[base + 31LLU] = base;
41670- stack[base + 32LLU] = 3507LLU;
41815+ stack[base + 31LLU] = 3520LLU/*throw to this address*/;
41816+ stack[base + 32LLU] = base;
41817+ stack[base + 33LLU] = 3521LLU;
4167141818 // arguments for call to matchsym
41672- stack[base + 33LLU] = stack[base + 8]/*fnid*/;
41673- stack[base + 34LLU] = 40LLU;
41674- stack[base + 35LLU] = stack[base + 19]/*lookahead*/;
41819+ stack[base + 34LLU] = stack[base + 8]/*fnid*/;
41820+ stack[base + 35LLU] = 40LLU;
41821+ stack[base + 36LLU] = stack[base + 19]/*lookahead*/;
4167541822 // set stack-base & callee-address
41676- base += 33LLU;
41823+ base += 34LLU;
4167741824 label = 222LLU; // matchsym
4167841825 break;
4167941826 }
41680- case 3506LLU: // copy-back deleter (matchsym to procblock)
41827+ case 3520LLU: // copy-back deleter (matchsym to procblock)
4168141828 {
4168241829 // copy mutable arguments back from call to matchsym
41683- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41684- label = 3495LLU; // continue to roll stack
41830+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
41831+ label = 3507LLU; // continue to roll stack
4168541832 break;
4168641833 }
41687- case 3507LLU: // return from matchsym to procblock
41834+ case 3521LLU: // return from matchsym to procblock
4168841835 {
4168941836 // copy mutable arguments back from call to matchsym
41690- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41837+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
4169141838 // call ParseToken from procblock
41692- stack[base + 30LLU] = 3508LLU/*throw to this address*/;
41693- stack[base + 31LLU] = base;
41694- stack[base + 32LLU] = 3509LLU;
41839+ stack[base + 31LLU] = 3522LLU/*throw to this address*/;
41840+ stack[base + 32LLU] = base;
41841+ stack[base + 33LLU] = 3523LLU;
4169541842 // arguments for call to ParseToken
41696- stack[base + 35LLU] = stack[base + 19]/*lookahead*/;
41843+ stack[base + 36LLU] = stack[base + 19]/*lookahead*/;
4169741844 // set stack-base & callee-address
41698- base += 33LLU;
41845+ base += 34LLU;
4169941846 label = 3LLU; // ParseToken
4170041847 break;
4170141848 }
41702- case 3508LLU: // copy-back deleter (ParseToken to procblock)
41849+ case 3522LLU: // copy-back deleter (ParseToken to procblock)
4170341850 {
4170441851 // copy mutable arguments back from call to ParseToken
41705- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41706- label = 3495LLU; // continue to roll stack
41852+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
41853+ label = 3507LLU; // continue to roll stack
4170741854 break;
4170841855 }
41709- case 3509LLU: // return from ParseToken to procblock
41856+ case 3523LLU: // return from ParseToken to procblock
4171041857 {
4171141858 // copy mutable arguments back from call to ParseToken
41712- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41859+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
4171341860 // copy back results provided by call to ParseToken
41714- stack[base + 15] = stack[base + 33LLU];
41715- stack[base + 16] = stack[base + 34LLU];
41861+ stack[base + 15] = stack[base + 34LLU];
41862+ stack[base + 16] = stack[base + 35LLU];
4171641863 // call equ from procblock
41717- stack[base + 30LLU] = 3510LLU/*throw to this address*/;
41718- stack[base + 31LLU] = base;
41719- stack[base + 32LLU] = 3511LLU;
41864+ stack[base + 31LLU] = 3524LLU/*throw to this address*/;
41865+ stack[base + 32LLU] = base;
41866+ stack[base + 33LLU] = 3525LLU;
4172041867 // arguments for call to equ
41721- stack[base + 34LLU] = stack[base + 15]/*variant*/;
41722- stack[base + 35LLU] = 4LLU;
41868+ stack[base + 35LLU] = stack[base + 15]/*variant*/;
41869+ stack[base + 36LLU] = 4LLU;
4172341870 // set stack-base & callee-address
41724- base += 33LLU;
41871+ base += 34LLU;
4172541872 label = 18446744073709551600LLU; // equ
4172641873 break;
4172741874 }
41728- case 3510LLU: // copy-back deleter (equ to procblock)
41875+ case 3524LLU: // copy-back deleter (equ to procblock)
4172941876 {
4173041877 // copy mutable arguments back from call to equ
41731- label = 3495LLU; // continue to roll stack
41878+ label = 3507LLU; // continue to roll stack
4173241879 break;
4173341880 }
41734- case 3511LLU: // return from equ to procblock
41881+ case 3525LLU: // return from equ to procblock
4173541882 {
4173641883 // copy mutable arguments back from call to equ
4173741884 // copy back results provided by call to equ
41738- stack[base + 20] = stack[base + 33LLU];
41885+ stack[base + 20] = stack[base + 34LLU];
4173941886 if(!stack[base + 20]/*isequal*/)
4174041887 {
41741- label = 3512LLU; // jump to alternative
41888+ label = 3526LLU; // jump to alternative
4174241889 break;
4174341890 }
4174441891
4174541892 // consequent
4174641893 // call matchsym from procblock
41747- stack[base + 30LLU] = 3514LLU/*throw to this address*/;
41748- stack[base + 31LLU] = base;
41749- stack[base + 32LLU] = 3515LLU;
41894+ stack[base + 31LLU] = 3528LLU/*throw to this address*/;
41895+ stack[base + 32LLU] = base;
41896+ stack[base + 33LLU] = 3529LLU;
4175041897 // arguments for call to matchsym
41751- stack[base + 33LLU] = stack[base + 8]/*fnid*/;
41752- stack[base + 34LLU] = 41LLU;
41753- stack[base + 35LLU] = stack[base + 19]/*lookahead*/;
41898+ stack[base + 34LLU] = stack[base + 8]/*fnid*/;
41899+ stack[base + 35LLU] = 41LLU;
41900+ stack[base + 36LLU] = stack[base + 19]/*lookahead*/;
4175441901 // set stack-base & callee-address
41755- base += 33LLU;
41902+ base += 34LLU;
4175641903 label = 222LLU; // matchsym
4175741904 break;
4175841905 }
41759- case 3514LLU: // copy-back deleter (matchsym to procblock)
41906+ case 3528LLU: // copy-back deleter (matchsym to procblock)
4176041907 {
4176141908 // copy mutable arguments back from call to matchsym
41762- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41763- label = 3495LLU; // continue to roll stack
41909+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
41910+ label = 3507LLU; // continue to roll stack
4176441911 break;
4176541912 }
41766- case 3515LLU: // return from matchsym to procblock
41913+ case 3529LLU: // return from matchsym to procblock
4176741914 {
4176841915 // copy mutable arguments back from call to matchsym
41769- stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
41770- label = 3517LLU; // skip deleter
41916+ stack[base + 19]/*lookahead*/ = stack[base + 36LLU];
41917+ label = 3531LLU; // skip deleter
4177141918 break;
4177241919 }
41773- case 3516LLU: // deleter
41920+ case 3530LLU: // deleter
4177441921 {
4177541922 // throw from procblock
41776- if(!stack[base + 30])
41923+ if(!stack[base + 31])
4177741924 {
41778- label = 3495LLU; // skip, variable already deleted/unscoped
41925+ label = 3507LLU; // skip, variable already deleted/unscoped
4177941926 break;
4178041927 }
4178141928
41782- uint64_t *newstack = (uint64_t *)(stack[base + 30] - sizeof(uint64_t) * 4);
41929+ uint64_t *newstack = (uint64_t *)(stack[base + 31] - sizeof(uint64_t) * 4);
4178341930 // call ~scope from procblock
4178441931 newstack[0] = (uint64_t)stack; // backup stack location
4178541932 newstack[1] = 1234567890;
4178641933 newstack[2] = base;
41787- newstack[3] = 3518LLU;
41934+ newstack[3] = 3532LLU;
4178841935 stack = newstack;
4178941936 // set stack-base & callee-address
4179041937 base = 4/*deloffset*/;
@@ -41791,40 +41938,40 @@
4179141938 label = 558LLU; // ~scope
4179241939 break;
4179341940 }
41794- case 3518LLU: // return from ~scope to procblock
41941+ case 3532LLU: // return from ~scope to procblock
4179541942 {
4179641943 stack = (uint64_t *)stack[0];
4179741944 // releasing toplevel container
41798- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 30] - sizeof(uint64_t) * 4));
41945+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 31] - sizeof(uint64_t) * 4));
4179941946
41800- label = 3495LLU; // continue unrolling stack, delete next variable
41947+ label = 3507LLU; // continue unrolling stack, delete next variable
4180141948 break;
4180241949 }
41803- case 3517LLU: // skipped deleter
41950+ case 3531LLU: // skipped deleter
4180441951 {
4180541952 // call linkscope from procblock
41806- stack[base + 31LLU] = 3519LLU/*throw to this address*/;
41807- stack[base + 32LLU] = base;
41808- stack[base + 33LLU] = 3520LLU;
41953+ stack[base + 32LLU] = 3533LLU/*throw to this address*/;
41954+ stack[base + 33LLU] = base;
41955+ stack[base + 34LLU] = 3534LLU;
4180941956 // arguments for call to linkscope
41810- stack[base + 35LLU] = stack[base + 3]/*scope*/;
41957+ stack[base + 36LLU] = stack[base + 3]/*scope*/;
4181141958 // set stack-base & callee-address
41812- base += 34LLU;
41959+ base += 35LLU;
4181341960 label = 585LLU; // linkscope
4181441961 break;
4181541962 }
41816- case 3519LLU: // copy-back deleter (linkscope to procblock)
41963+ case 3533LLU: // copy-back deleter (linkscope to procblock)
4181741964 {
4181841965 // copy mutable arguments back from call to linkscope
41819- label = 3495LLU; // continue to roll stack
41966+ label = 3507LLU; // continue to roll stack
4182041967 break;
4182141968 }
41822- case 3520LLU: // return from linkscope to procblock
41969+ case 3534LLU: // return from linkscope to procblock
4182341970 {
4182441971 // copy mutable arguments back from call to linkscope
4182541972 // copy back results provided by call to linkscope
41826- stack[base + 30] = stack[base + 34LLU];
41827- swap(&stack[base + 3], &stack[base + 30]);
41973+ stack[base + 31] = stack[base + 35LLU];
41974+ swap(&stack[base + 3], &stack[base + 31]);
4182841975 {
4182941976 struct listnode *list = (struct listnode *)Calloc(1, sizeof(struct listnode));
4183041977 if(!list)
@@ -41836,594 +41983,530 @@
4183641983 }
4183741984 list->next = (struct listnode *)stack[base + 2]/*scopes*/;
4183841985 stack[base + 2]/*scopes*/ = (uint64_t)list;
41839- MOVE(&list->data, &stack[base + 30]/*newscope*/);
41986+ MOVE(&list->data, &stack[base + 31]/*newscope*/);
4184041987 }
41841- if(/*scope*/0 != ((uint64_t *)(stack[base + 3]/*scope*/))[0])
41842- {
41843- label = 3522LLU; // jump to alternative
41844- break;
41845- }
41846-
41847- /*deleteaddr*/stack[base + 30] = ((uint64_t **)(stack[base + 3]/*scope*/))[1][0]/*deleteaddr*/;
41848- /*letdefs*/stack[base + 31] = ((uint64_t **)(stack[base + 3]/*scope*/))[1][1]/*letdefs*/;
41849-
41850- // case
41851- label = 3525LLU; // skip deleter
41988+ label = 3536LLU; // skip deleter
4185241989 break;
4185341990 }
41854- case 3524LLU: // deleter
41991+ case 3535LLU: // deleter
4185541992 {
4185641993 // throw from procblock
41857- if(!stack[base + 32])
41994+ if(!stack[base + 31])
4185841995 {
41859- label = 3523LLU; // skip, variable already deleted/unscoped
41996+ label = 3507LLU; // skip, variable already deleted/unscoped
4186041997 break;
4186141998 }
41862-
41863- uint64_t *newstack = (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4);
41864- // call ~type from procblock
41865- newstack[0] = (uint64_t)stack; // backup stack location
41866- newstack[1] = 1234567890;
41867- newstack[2] = base;
41868- newstack[3] = 3526LLU;
41869- stack = newstack;
41870- // set stack-base & callee-address
41871- base = 4/*deloffset*/;
41872- label = 306LLU; // ~type
41999+ label = 3507LLU; // continue unrolling stack, delete next variable
4187342000 break;
4187442001 }
41875- case 3526LLU: // return from ~type to procblock
42002+ case 3536LLU: // skipped deleter
4187642003 {
41877- stack = (uint64_t *)stack[0];
41878- // releasing toplevel container
41879- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4));
41880-
41881- label = 3523LLU; // continue unrolling stack, delete next variable
41882- break;
41883- }
41884- case 3525LLU: // skipped deleter
41885- {
41886- uint64_t *newstack = (uint64_t *)Calloc(15LLU + 1, sizeof(uint64_t));
41887- if(!newstack)
41888- {
41889- label = 3523LLU; // throw: begin to unroll stack
41890- break;
41891- }
41892-
41893- newstack[15LLU] = 9876543210LLU; // overflow-marker
41894- // call copytype from procblock
41895- newstack[0] = (uint64_t)stack; // backup stack location
41896- newstack[1] = 3527LLU;
41897- newstack[2] = base;
41898- newstack[3] = 3528LLU;
41899- // arguments for call to copytype
41900- newstack[5LLU] = stack[base + 25]/*listtype*/;
41901- stack = newstack;
42004+ // call getdeladdr from procblock
42005+ stack[base + 32LLU] = 3537LLU/*throw to this address*/;
42006+ stack[base + 33LLU] = base;
42007+ stack[base + 34LLU] = 3538LLU;
42008+ // arguments for call to getdeladdr
42009+ stack[base + 36LLU] = stack[base + 3]/*scope*/;
4190242010 // set stack-base & callee-address
41903- base = 4/*deloffset*/;
41904- label = 337LLU; // copytype
42011+ base += 35LLU;
42012+ label = 592LLU; // getdeladdr
4190542013 break;
4190642014 }
41907- case 3527LLU: // copy-back deleter (copytype to procblock)
42015+ case 3537LLU: // copy-back deleter (getdeladdr to procblock)
4190842016 {
41909- uint64_t *oldstack = (uint64_t *)stack[0];
41910- // copy mutable arguments back from call to copytype
41911- if(stack[15LLU] != 9876543210LLU)
41912- {
41913- fprintf(stderr, "INTERNAL ERROR - OVERFLOW (in recursive call to copytype)!\n");
41914- exit(-1);
41915- }
41916- Free(15LLU + 1, sizeof(uint64_t), stack);
41917- stack = oldstack;
41918- label = 3523LLU; // continue to unroll stack
42017+ // copy mutable arguments back from call to getdeladdr
42018+ label = 3507LLU; // continue to roll stack
4191942019 break;
4192042020 }
41921- case 3528LLU: // return from copytype to procblock
42021+ case 3538LLU: // return from getdeladdr to procblock
4192242022 {
41923- uint64_t *oldstack = (uint64_t *)stack[0];
41924- // copy mutable arguments back from call to copytype
41925- // copy back results provided by call to copytype
41926- oldstack[base + 32] = stack[4LLU];
41927- if(stack[15LLU] != 9876543210LLU)
41928- {
41929- fprintf(stderr, "INTERNAL ERROR - OVERFLOW (in recursive call to copytype)!\n");
41930- exit(-1);
41931- }
41932- Free(15LLU + 1, sizeof(uint64_t), stack);
41933- stack = oldstack;
41934- label = 3530LLU; // skip deleter
41935- break;
41936- }
41937- case 3529LLU: // deleter
41938- {
41939- // throw from procblock
41940- if(!stack[base + 33])
41941- {
41942- label = 3524LLU; // skip, variable already deleted/unscoped
41943- break;
41944- }
41945- label = 3524LLU; // continue unrolling stack, delete next variable
41946- break;
41947- }
41948- case 3530LLU: // skipped deleter
41949- {
41950- // call isparam from procblock
41951- stack[base + 34LLU] = 3531LLU/*throw to this address*/;
41952- stack[base + 35LLU] = base;
41953- stack[base + 36LLU] = 3532LLU;
41954- // arguments for call to isparam
41955- stack[base + 38LLU] = stack[base + 10]/*fnrescount*/;
41956- stack[base + 39LLU] = stack[base + 11]/*fnargcount*/;
41957- stack[base + 40LLU] = stack[base + 27]/*listindex*/;
42023+ // copy mutable arguments back from call to getdeladdr
42024+ // copy back results provided by call to getdeladdr
42025+ stack[base + 31] = stack[base + 35LLU];
42026+ // call add from procblock
42027+ stack[base + 32LLU] = 3539LLU/*throw to this address*/;
42028+ stack[base + 33LLU] = base;
42029+ stack[base + 34LLU] = 3540LLU;
42030+ // arguments for call to add
42031+ stack[base + 36LLU] = 1LLU;
42032+ stack[base + 37LLU] = stack[base + 17]/*label*/;
4195842033 // set stack-base & callee-address
41959- base += 37LLU;
41960- label = 1621LLU; // isparam
42034+ base += 35LLU;
42035+ label = 18446744073709551605LLU; // add
4196142036 break;
4196242037 }
41963- case 3531LLU: // copy-back deleter (isparam to procblock)
42038+ case 3539LLU: // copy-back deleter (add to procblock)
4196442039 {
41965- // copy mutable arguments back from call to isparam
41966- label = 3524LLU; // continue to roll stack
42040+ // copy mutable arguments back from call to add
42041+ label = 3535LLU; // continue to roll stack
4196742042 break;
4196842043 }
41969- case 3532LLU: // return from isparam to procblock
42044+ case 3540LLU: // return from add to procblock
4197042045 {
41971- // copy mutable arguments back from call to isparam
41972- // copy back results provided by call to isparam
41973- stack[base + 33] = stack[base + 37LLU];
41974- label = 3534LLU; // skip deleter
42046+ // copy mutable arguments back from call to add
42047+ // copy back results provided by call to add
42048+ stack[base + 17] = stack[base + 35LLU];
42049+ label = 3542LLU; // skip deleter
4197542050 break;
4197642051 }
41977- case 3533LLU: // deleter
42052+ case 3541LLU: // deleter
4197842053 {
4197942054 // throw from procblock
41980- if(!stack[base + 34])
42055+ if(!stack[base + 32])
4198142056 {
41982- label = 3529LLU; // skip, variable already deleted/unscoped
42057+ label = 3535LLU; // skip, variable already deleted/unscoped
4198342058 break;
4198442059 }
41985- label = 3529LLU; // continue unrolling stack, delete next variable
42060+ label = 3535LLU; // continue unrolling stack, delete next variable
4198642061 break;
4198742062 }
41988- case 3534LLU: // skipped deleter
42063+ case 3542LLU: // skipped deleter
4198942064 {
41990- // call or from procblock
41991- stack[base + 35LLU] = 3535LLU/*throw to this address*/;
41992- stack[base + 36LLU] = base;
41993- stack[base + 37LLU] = 3536LLU;
41994- // arguments for call to or
41995- stack[base + 39LLU] = stack[base + 29]/*substruct*/;
41996- stack[base + 40LLU] = stack[base + 33]/*listparam*/;
41997- // set stack-base & callee-address
41998- base += 38LLU;
41999- label = 18446744073709551611LLU; // or
42065+ stack[base + 32] = stack[base + 17]/*label*/;
42066+ label = 3544LLU; // skip deleter
4200042067 break;
4200142068 }
42002- case 3535LLU: // copy-back deleter (or to procblock)
42069+ case 3543LLU: // deleter
4200342070 {
42004- // copy mutable arguments back from call to or
42005- label = 3529LLU; // continue to roll stack
42006- break;
42007- }
42008- case 3536LLU: // return from or to procblock
42009- {
42010- // copy mutable arguments back from call to or
42011- // copy back results provided by call to or
42012- stack[base + 34] = stack[base + 38LLU];
42013- label = 3538LLU; // skip deleter
42014- break;
42015- }
42016- case 3537LLU: // deleter
42017- {
4201842071 // throw from procblock
42019- if(!stack[base + 35])
42072+ if(!stack[base + 33])
4202042073 {
42021- label = 3533LLU; // skip, variable already deleted/unscoped
42074+ label = 3541LLU; // skip, variable already deleted/unscoped
4202242075 break;
4202342076 }
4202442077
42025- uint64_t *newstack = (uint64_t *)(stack[base + 35] - sizeof(uint64_t) * 4);
42026- // call ~letdef from procblock
42078+ uint64_t *newstack = (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4);
42079+ // call ~scope from procblock
4202742080 newstack[0] = (uint64_t)stack; // backup stack location
4202842081 newstack[1] = 1234567890;
4202942082 newstack[2] = base;
42030- newstack[3] = 3539LLU;
42083+ newstack[3] = 3545LLU;
4203142084 stack = newstack;
4203242085 // set stack-base & callee-address
4203342086 base = 4/*deloffset*/;
42034- label = 482LLU; // ~letdef
42087+ label = 558LLU; // ~scope
4203542088 break;
4203642089 }
42037- case 3539LLU: // return from ~letdef to procblock
42090+ case 3545LLU: // return from ~scope to procblock
4203842091 {
4203942092 stack = (uint64_t *)stack[0];
4204042093 // releasing toplevel container
42041- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 35] - sizeof(uint64_t) * 4));
42094+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4));
4204242095
42043- label = 3533LLU; // continue unrolling stack, delete next variable
42096+ label = 3541LLU; // continue unrolling stack, delete next variable
4204442097 break;
4204542098 }
42046- case 3538LLU: // skipped deleter
42099+ case 3544LLU: // skipped deleter
4204742100 {
42048- // construct letdef.letdef
42049- if(!(stack[base + 35] = construct(5)))
42101+ // call chainscope from procblock
42102+ stack[base + 34LLU] = 3546LLU/*throw to this address*/;
42103+ stack[base + 35LLU] = base;
42104+ stack[base + 36LLU] = 3547LLU;
42105+ // arguments for call to chainscope
42106+ stack[base + 38LLU] = stack[base + 32]/*labelfail*/;
42107+ // set stack-base & callee-address
42108+ base += 37LLU;
42109+ label = 575LLU; // chainscope
42110+ break;
42111+ }
42112+ case 3546LLU: // copy-back deleter (chainscope to procblock)
42113+ {
42114+ // copy mutable arguments back from call to chainscope
42115+ label = 3541LLU; // continue to roll stack
42116+ break;
42117+ }
42118+ case 3547LLU: // return from chainscope to procblock
42119+ {
42120+ // copy mutable arguments back from call to chainscope
42121+ // copy back results provided by call to chainscope
42122+ stack[base + 33] = stack[base + 37LLU];
42123+ swap(&stack[base + 3], &stack[base + 33]);
4205042124 {
42051- label = 3533LLU; // throw: begin to unroll stack
42052- break;
42053- }
42054-
42055- // consequent
42056- ((uint64_t *)stack[base + 35])[0] = 0;
42057- INIT(&(((uint64_t **)(stack[base + 35]))[1][0]), &stack[base + 32]/*cptype*/);
42058- (((uint64_t **)(stack[base + 35]))[1][1]) = stack[base + 26]/*listname*/;
42059- (((uint64_t **)(stack[base + 35]))[1][2]) = stack[base + 27]/*listindex*/;
42060- (((uint64_t **)(stack[base + 35]))[1][3]) = stack[base + 28]/*listmut*/;
42061- (((uint64_t **)(stack[base + 35]))[1][4]) = stack[base + 34]/*substruct*/;
42062- {
4206342125 struct listnode *list = (struct listnode *)Calloc(1, sizeof(struct listnode));
4206442126 if(!list)
4206542127 {
42066- fprintf(stderr, "in function procblock push to [letdef]: OUT OF MEMORY!\n");
42128+ fprintf(stderr, "in function procblock push to [scope]: OUT OF MEMORY!\n");
4206742129 label = stack[base - 3];
4206842130 base = stack[base - 2];
4206942131 break;
4207042132 }
42071- list->next = (struct listnode *)stack[base + 31]/*letdefs*/;
42072- stack[base + 31]/*letdefs*/ = (uint64_t)list;
42073- MOVE(&list->data, &stack[base + 35]/*lock*/);
42133+ list->next = (struct listnode *)stack[base + 2]/*scopes*/;
42134+ stack[base + 2]/*scopes*/ = (uint64_t)list;
42135+ MOVE(&list->data, &stack[base + 33]/*newscope*/);
4207442136 }
42075- ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 31];
42076- ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 30];
42077- label = 3521LLU; // case complete
42137+ if(/*typelist*/1 != ((uint64_t *)(stack[base + 26]/*listtype*/))[0])
42138+ {
42139+ label = 3549LLU; // jump to alternative
42140+ break;
42141+ }
42142+
42143+ /*subtype*/stack[base + 33] = ((uint64_t **)(stack[base + 26]/*listtype*/))[1][0]/*subtype*/;
42144+
42145+ // case
42146+ label = 3552LLU; // skip deleter
4207842147 break;
4207942148 }
42080- case 3523LLU: // copy-back deleter (switch)
42149+ case 3551LLU: // deleter
4208142150 {
42082- ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 31];
42083- ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 30];
42084- label = 3495LLU; // continue to unroll stack
42151+ // throw from procblock
42152+ if(!stack[base + 34])
42153+ {
42154+ label = 3550LLU; // skip, variable already deleted/unscoped
42155+ break;
42156+ }
42157+ label = 3550LLU; // continue unrolling stack, delete next variable
4208542158 break;
4208642159 }
42087- case 3522LLU: // try next case
42160+ case 3552LLU: // skipped deleter
4208842161 {
42089- fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
42090- exit(-1);
42091- }
42092- case 3521LLU: // completed switch
42093- {
42094- label = 3541LLU; // skip deleter
42162+ label = 3554LLU; // skip deleter
4209542163 break;
4209642164 }
42097- case 3540LLU: // deleter
42165+ case 3553LLU: // deleter
4209842166 {
4209942167 // throw from procblock
42100- if(!stack[base + 30])
42168+ if(!stack[base + 35])
4210142169 {
42102- label = 3495LLU; // skip, variable already deleted/unscoped
42170+ label = 3550LLU; // skip, variable already deleted/unscoped
4210342171 break;
4210442172 }
42105- label = 3495LLU; // continue unrolling stack, delete next variable
42173+ label = 3550LLU; // continue unrolling stack, delete next variable
4210642174 break;
4210742175 }
42108- case 3541LLU: // skipped deleter
42176+ case 3554LLU: // skipped deleter
4210942177 {
42110- // call getdeladdr from procblock
42111- stack[base + 31LLU] = 3542LLU/*throw to this address*/;
42112- stack[base + 32LLU] = base;
42113- stack[base + 33LLU] = 3543LLU;
42114- // arguments for call to getdeladdr
42115- stack[base + 35LLU] = stack[base + 3]/*scope*/;
42178+ // call isparam from procblock
42179+ stack[base + 36LLU] = 3555LLU/*throw to this address*/;
42180+ stack[base + 37LLU] = base;
42181+ stack[base + 38LLU] = 3556LLU;
42182+ // arguments for call to isparam
42183+ stack[base + 40LLU] = stack[base + 10]/*fnrescount*/;
42184+ stack[base + 41LLU] = stack[base + 11]/*fnargcount*/;
42185+ stack[base + 42LLU] = stack[base + 28]/*listindex*/;
4211642186 // set stack-base & callee-address
42117- base += 34LLU;
42118- label = 592LLU; // getdeladdr
42187+ base += 39LLU;
42188+ label = 1621LLU; // isparam
4211942189 break;
4212042190 }
42121- case 3542LLU: // copy-back deleter (getdeladdr to procblock)
42191+ case 3555LLU: // copy-back deleter (isparam to procblock)
4212242192 {
42123- // copy mutable arguments back from call to getdeladdr
42124- label = 3495LLU; // continue to roll stack
42193+ // copy mutable arguments back from call to isparam
42194+ label = 3550LLU; // continue to roll stack
4212542195 break;
4212642196 }
42127- case 3543LLU: // return from getdeladdr to procblock
42197+ case 3556LLU: // return from isparam to procblock
4212842198 {
42129- // copy mutable arguments back from call to getdeladdr
42130- // copy back results provided by call to getdeladdr
42131- stack[base + 30] = stack[base + 34LLU];
42132- // call add from procblock
42133- stack[base + 31LLU] = 3544LLU/*throw to this address*/;
42134- stack[base + 32LLU] = base;
42135- stack[base + 33LLU] = 3545LLU;
42136- // arguments for call to add
42137- stack[base + 35LLU] = 1LLU;
42138- stack[base + 36LLU] = stack[base + 17]/*label*/;
42139- // set stack-base & callee-address
42140- base += 34LLU;
42141- label = 18446744073709551605LLU; // add
42199+ // copy mutable arguments back from call to isparam
42200+ // copy back results provided by call to isparam
42201+ stack[base + 35] = stack[base + 39LLU];
42202+ if(!stack[base + 29]/*listmut*/)
42203+ {
42204+ label = 3557LLU; // jump to alternative
42205+ break;
42206+ }
42207+
42208+ // consequent
42209+ label = 3560LLU; // skip deleter
4214242210 break;
4214342211 }
42144- case 3544LLU: // copy-back deleter (add to procblock)
42212+ case 3559LLU: // deleter
4214542213 {
42146- // copy mutable arguments back from call to add
42147- label = 3540LLU; // continue to roll stack
42148- break;
42149- }
42150- case 3545LLU: // return from add to procblock
42151- {
42152- // copy mutable arguments back from call to add
42153- // copy back results provided by call to add
42154- stack[base + 17] = stack[base + 34LLU];
42155- label = 3547LLU; // skip deleter
42156- break;
42157- }
42158- case 3546LLU: // deleter
42159- {
4216042214 // throw from procblock
42161- if(!stack[base + 31])
42215+ if(!stack[base + 34])
4216242216 {
42163- label = 3540LLU; // skip, variable already deleted/unscoped
42217+ label = 3553LLU; // skip, variable already deleted/unscoped
4216442218 break;
4216542219 }
42166- label = 3540LLU; // continue unrolling stack, delete next variable
42220+ label = 3553LLU; // continue unrolling stack, delete next variable
4216742221 break;
4216842222 }
42169- case 3547LLU: // skipped deleter
42223+ case 3560LLU: // skipped deleter
4217042224 {
42171- stack[base + 31] = stack[base + 17]/*label*/;
42172- label = 3549LLU; // skip deleter
42225+ stack[base + 34] = 0;
42226+ label = 3558LLU; // consequent complete
4217342227 break;
4217442228 }
42175- case 3548LLU: // deleter
42229+ case 3557LLU: // alternative
4217642230 {
42177- // throw from procblock
42178- if(!stack[base + 32])
42179- {
42180- label = 3546LLU; // skip, variable already deleted/unscoped
42181- break;
42182- }
42183-
42184- uint64_t *newstack = (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4);
42185- // call ~scope from procblock
42186- newstack[0] = (uint64_t)stack; // backup stack location
42187- newstack[1] = 1234567890;
42188- newstack[2] = base;
42189- newstack[3] = 3550LLU;
42190- stack = newstack;
42231+ // call or from procblock
42232+ stack[base + 36LLU] = 3561LLU/*throw to this address*/;
42233+ stack[base + 37LLU] = base;
42234+ stack[base + 38LLU] = 3562LLU;
42235+ // arguments for call to or
42236+ stack[base + 40LLU] = stack[base + 30]/*substruct*/;
42237+ stack[base + 41LLU] = stack[base + 35]/*listparam*/;
4219142238 // set stack-base & callee-address
42192- base = 4/*deloffset*/;
42193- label = 558LLU; // ~scope
42239+ base += 39LLU;
42240+ label = 18446744073709551611LLU; // or
4219442241 break;
4219542242 }
42196- case 3550LLU: // return from ~scope to procblock
42243+ case 3561LLU: // copy-back deleter (or to procblock)
4219742244 {
42198- stack = (uint64_t *)stack[0];
42199- // releasing toplevel container
42200- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4));
42201-
42202- label = 3546LLU; // continue unrolling stack, delete next variable
42245+ // copy mutable arguments back from call to or
42246+ label = 3553LLU; // continue to roll stack
4220342247 break;
4220442248 }
42205- case 3549LLU: // skipped deleter
42249+ case 3562LLU: // return from or to procblock
4220642250 {
42207- // call chainscope from procblock
42208- stack[base + 33LLU] = 3551LLU/*throw to this address*/;
42209- stack[base + 34LLU] = base;
42210- stack[base + 35LLU] = 3552LLU;
42211- // arguments for call to chainscope
42212- stack[base + 37LLU] = stack[base + 31]/*labelfail*/;
42213- // set stack-base & callee-address
42214- base += 36LLU;
42215- label = 575LLU; // chainscope
42251+ // copy mutable arguments back from call to or
42252+ // copy back results provided by call to or
42253+ stack[base + 34] = stack[base + 39LLU];
42254+ label = 3558LLU; // alternative complete
4221642255 break;
4221742256 }
42218- case 3551LLU: // copy-back deleter (chainscope to procblock)
42257+ case 3558LLU: // completed if-then-else
4221942258 {
42220- // copy mutable arguments back from call to chainscope
42221- label = 3546LLU; // continue to roll stack
42259+ label = 3564LLU; // skip deleter
4222242260 break;
4222342261 }
42224- case 3552LLU: // return from chainscope to procblock
42262+ case 3563LLU: // deleter
4222542263 {
42226- // copy mutable arguments back from call to chainscope
42227- // copy back results provided by call to chainscope
42228- stack[base + 32] = stack[base + 36LLU];
42229- swap(&stack[base + 3], &stack[base + 32]);
42230- {
42231- struct listnode *list = (struct listnode *)Calloc(1, sizeof(struct listnode));
42232- if(!list)
42233- {
42234- fprintf(stderr, "in function procblock push to [scope]: OUT OF MEMORY!\n");
42235- label = stack[base - 3];
42236- base = stack[base - 2];
42237- break;
42238- }
42239- list->next = (struct listnode *)stack[base + 2]/*scopes*/;
42240- stack[base + 2]/*scopes*/ = (uint64_t)list;
42241- MOVE(&list->data, &stack[base + 32]/*newscope*/);
42242- }
42243- if(/*typelist*/1 != ((uint64_t *)(stack[base + 25]/*listtype*/))[0])
42244- {
42245- label = 3554LLU; // jump to alternative
42246- break;
42247- }
42248-
42249- /*subtype*/stack[base + 32] = ((uint64_t **)(stack[base + 25]/*listtype*/))[1][0]/*subtype*/;
42250-
42251- // case
42252- label = 3557LLU; // skip deleter
42253- break;
42254- }
42255- case 3556LLU: // deleter
42256- {
4225742264 // throw from procblock
42258- if(!stack[base + 33])
42265+ if(!stack[base + 35])
4225942266 {
42260- label = 3555LLU; // skip, variable already deleted/unscoped
42267+ label = 3551LLU; // skip, variable already deleted/unscoped
4226142268 break;
4226242269 }
42263- label = 3555LLU; // continue unrolling stack, delete next variable
42270+ label = 3551LLU; // continue unrolling stack, delete next variable
4226442271 break;
4226542272 }
42266- case 3557LLU: // skipped deleter
42273+ case 3564LLU: // skipped deleter
4226742274 {
4226842275 // call newvarraw from procblock
42269- stack[base + 34LLU] = 3558LLU/*throw to this address*/;
42270- stack[base + 35LLU] = base;
42271- stack[base + 36LLU] = 3559LLU;
42276+ stack[base + 36LLU] = 3565LLU/*throw to this address*/;
42277+ stack[base + 37LLU] = base;
42278+ stack[base + 38LLU] = 3566LLU;
4227242279 // arguments for call to newvarraw
42273- stack[base + 38LLU] = stack[base + 32]/*subtype*/;
42274- stack[base + 39LLU] = stack[base + 16]/*content*/;
42275- stack[base + 40LLU] = 1LLU;
42276- stack[base + 41LLU] = stack[base + 10]/*fnrescount*/;
42277- stack[base + 42LLU] = stack[base + 11]/*fnargcount*/;
42278- stack[base + 43LLU] = stack[base + 12]/*fnmaxcount*/;
42279- stack[base + 44LLU] = stack[base + 18]/*varcount*/;
42280- stack[base + 45LLU] = stack[base + 3]/*scope*/;
42281- stack[base + 46LLU] = 1LLU;
42280+ stack[base + 40LLU] = stack[base + 33]/*subtype*/;
42281+ stack[base + 41LLU] = stack[base + 16]/*content*/;
42282+ stack[base + 42LLU] = stack[base + 29]/*listmut*/;
42283+ stack[base + 43LLU] = stack[base + 10]/*fnrescount*/;
42284+ stack[base + 44LLU] = stack[base + 11]/*fnargcount*/;
42285+ stack[base + 45LLU] = stack[base + 12]/*fnmaxcount*/;
42286+ stack[base + 46LLU] = stack[base + 18]/*varcount*/;
42287+ stack[base + 47LLU] = stack[base + 3]/*scope*/;
42288+ stack[base + 48LLU] = stack[base + 34]/*substruct*/;
4228242289 // set stack-base & callee-address
42283- base += 37LLU;
42290+ base += 39LLU;
4228442291 label = 755LLU; // newvarraw
4228542292 break;
4228642293 }
42287- case 3558LLU: // copy-back deleter (newvarraw to procblock)
42294+ case 3565LLU: // copy-back deleter (newvarraw to procblock)
4228842295 {
4228942296 // copy mutable arguments back from call to newvarraw
42290- stack[base + 3]/*scope*/ = stack[base + 45LLU];
42291- stack[base + 18]/*varcount*/ = stack[base + 44LLU];
42292- stack[base + 12]/*fnmaxcount*/ = stack[base + 43LLU];
42293- label = 3555LLU; // continue to roll stack
42297+ stack[base + 3]/*scope*/ = stack[base + 47LLU];
42298+ stack[base + 18]/*varcount*/ = stack[base + 46LLU];
42299+ stack[base + 12]/*fnmaxcount*/ = stack[base + 45LLU];
42300+ label = 3551LLU; // continue to roll stack
4229442301 break;
4229542302 }
42296- case 3559LLU: // return from newvarraw to procblock
42303+ case 3566LLU: // return from newvarraw to procblock
4229742304 {
4229842305 // copy mutable arguments back from call to newvarraw
42299- stack[base + 3]/*scope*/ = stack[base + 45LLU];
42300- stack[base + 18]/*varcount*/ = stack[base + 44LLU];
42301- stack[base + 12]/*fnmaxcount*/ = stack[base + 43LLU];
42306+ stack[base + 3]/*scope*/ = stack[base + 47LLU];
42307+ stack[base + 18]/*varcount*/ = stack[base + 46LLU];
42308+ stack[base + 12]/*fnmaxcount*/ = stack[base + 45LLU];
4230242309 // copy back results provided by call to newvarraw
42303- stack[base + 33] = stack[base + 37LLU];
42304- ((uint64_t **)(stack[base + 25]))[1][0] = stack[base + 32];
42305- label = 3553LLU; // case complete
42310+ stack[base + 35] = stack[base + 39LLU];
42311+ printf("%s", "\n {");
42312+ printf("%s", "\n label = ");
42313+ // call printnr from procblock
42314+ stack[base + 36LLU] = 3567LLU/*throw to this address*/;
42315+ stack[base + 37LLU] = base;
42316+ stack[base + 38LLU] = 3568LLU;
42317+ // arguments for call to printnr
42318+ stack[base + 39LLU] = stack[base + 22]/*labelalt*/;
42319+ // set stack-base & callee-address
42320+ base += 39LLU;
42321+ label = 18446744073709551590LLU; // printnr
4230642322 break;
4230742323 }
42308- case 3555LLU: // copy-back deleter (switch)
42324+ case 3567LLU: // copy-back deleter (printnr to procblock)
4230942325 {
42310- ((uint64_t **)(stack[base + 25]))[1][0] = stack[base + 32];
42311- label = 3546LLU; // continue to unroll stack
42326+ // copy mutable arguments back from call to printnr
42327+ label = 3563LLU; // continue to roll stack
4231242328 break;
4231342329 }
42314- case 3554LLU: // try next case
42330+ case 3568LLU: // return from printnr to procblock
4231542331 {
42316- // default
42317- fprintf(stderr, "%s", "can only pop from list but type of ");
42318- // call reportid from procblock
42319- stack[base + 32LLU] = 3560LLU/*throw to this address*/;
42320- stack[base + 33LLU] = base;
42321- stack[base + 34LLU] = 3561LLU;
42322- // arguments for call to reportid
42323- stack[base + 35LLU] = stack[base + 26]/*listname*/;
42332+ // copy mutable arguments back from call to printnr
42333+ printf("%s", "LLU; // jump to alternative");
42334+ printf("%s", "\n break;");
42335+ printf("%s", "\n }");
42336+ printf("%s", "\n");
42337+ printf("%s", "\n // consequent");
42338+ // call matchsym from procblock
42339+ stack[base + 36LLU] = 3569LLU/*throw to this address*/;
42340+ stack[base + 37LLU] = base;
42341+ stack[base + 38LLU] = 3570LLU;
42342+ // arguments for call to matchsym
42343+ stack[base + 39LLU] = stack[base + 8]/*fnid*/;
42344+ stack[base + 40LLU] = 123LLU;
42345+ stack[base + 41LLU] = stack[base + 19]/*lookahead*/;
4232442346 // set stack-base & callee-address
42325- base += 35LLU;
42326- label = 18446744073709551586LLU; // reportid
42347+ base += 39LLU;
42348+ label = 222LLU; // matchsym
4232742349 break;
4232842350 }
42329- case 3560LLU: // copy-back deleter (reportid to procblock)
42351+ case 3569LLU: // copy-back deleter (matchsym to procblock)
4233042352 {
42331- // copy mutable arguments back from call to reportid
42332- label = 3546LLU; // continue to roll stack
42353+ // copy mutable arguments back from call to matchsym
42354+ stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
42355+ label = 3563LLU; // continue to roll stack
4233342356 break;
4233442357 }
42335- case 3561LLU: // return from reportid to procblock
42358+ case 3570LLU: // return from matchsym to procblock
4233642359 {
42337- // copy mutable arguments back from call to reportid
42338- fprintf(stderr, "%s", " is ");
42339- uint64_t *newstack = (uint64_t *)Calloc(10LLU + 1, sizeof(uint64_t));
42340- if(!newstack)
42341- {
42342- label = 3546LLU; // throw: begin to unroll stack
42343- break;
42344- }
42345-
42346- newstack[10LLU] = 9876543210LLU; // overflow-marker
42347- // call reporttype from procblock
42348- newstack[0] = (uint64_t)stack; // backup stack location
42349- newstack[1] = 3562LLU;
42350- newstack[2] = base;
42351- newstack[3] = 3563LLU;
42352- // arguments for call to reporttype
42353- newstack[4LLU] = stack[base + 25]/*listtype*/;
42354- stack = newstack;
42360+ // copy mutable arguments back from call to matchsym
42361+ stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
42362+ printf("%s", "\n struct listnode *next = list->next;");
42363+ printf("%s", "\n /*");
42364+ // call printid from procblock
42365+ stack[base + 36LLU] = 3571LLU/*throw to this address*/;
42366+ stack[base + 37LLU] = base;
42367+ stack[base + 38LLU] = 3572LLU;
42368+ // arguments for call to printid
42369+ stack[base + 39LLU] = stack[base + 16]/*content*/;
4235542370 // set stack-base & callee-address
42356- base = 4/*deloffset*/;
42357- label = 326LLU; // reporttype
42371+ base += 39LLU;
42372+ label = 18446744073709551587LLU; // printid
4235842373 break;
4235942374 }
42360- case 3562LLU: // copy-back deleter (reporttype to procblock)
42375+ case 3571LLU: // copy-back deleter (printid to procblock)
4236142376 {
42362- uint64_t *oldstack = (uint64_t *)stack[0];
42363- // copy mutable arguments back from call to reporttype
42364- if(stack[10LLU] != 9876543210LLU)
42365- {
42366- fprintf(stderr, "INTERNAL ERROR - OVERFLOW (in recursive call to reporttype)!\n");
42367- exit(-1);
42368- }
42369- Free(10LLU + 1, sizeof(uint64_t), stack);
42370- stack = oldstack;
42371- label = 3546LLU; // continue to unroll stack
42377+ // copy mutable arguments back from call to printid
42378+ label = 3563LLU; // continue to roll stack
4237242379 break;
4237342380 }
42374- case 3563LLU: // return from reporttype to procblock
42381+ case 3572LLU: // return from printid to procblock
4237542382 {
42376- uint64_t *oldstack = (uint64_t *)stack[0];
42377- // copy mutable arguments back from call to reporttype
42378- if(stack[10LLU] != 9876543210LLU)
42383+ // copy mutable arguments back from call to printid
42384+ printf("%s", "*/");
42385+ // call emitvaridx from procblock
42386+ stack[base + 36LLU] = 3573LLU/*throw to this address*/;
42387+ stack[base + 37LLU] = base;
42388+ stack[base + 38LLU] = 3574LLU;
42389+ // arguments for call to emitvaridx
42390+ stack[base + 39LLU] = stack[base + 35]/*elemindex*/;
42391+ // set stack-base & callee-address
42392+ base += 39LLU;
42393+ label = 741LLU; // emitvaridx
42394+ break;
42395+ }
42396+ case 3573LLU: // copy-back deleter (emitvaridx to procblock)
42397+ {
42398+ // copy mutable arguments back from call to emitvaridx
42399+ label = 3563LLU; // continue to roll stack
42400+ break;
42401+ }
42402+ case 3574LLU: // return from emitvaridx to procblock
42403+ {
42404+ // copy mutable arguments back from call to emitvaridx
42405+ printf("%s", " = list->data;");
42406+ if(!stack[base + 24]/*consume*/)
4237942407 {
42380- fprintf(stderr, "INTERNAL ERROR - OVERFLOW (in recursive call to reporttype)!\n");
42381- exit(-1);
42382- }
42383- Free(10LLU + 1, sizeof(uint64_t), stack);
42384- stack = oldstack;
42385- fprintf(stderr, "%s", "\n");
42386- {
42387- label = 3546LLU; // throw: begin to unroll stack
42408+ label = 3575LLU; // jump to alternative
4238842409 break;
4238942410 }
4239042411
42391- label = 3553LLU; // default complete
42412+ // consequent
42413+ printf("%s", "\n Free(1, sizeof(struct listnode), list);");
42414+ printf("%s", "\n /*");
42415+ // call printid from procblock
42416+ stack[base + 36LLU] = 3577LLU/*throw to this address*/;
42417+ stack[base + 37LLU] = base;
42418+ stack[base + 38LLU] = 3578LLU;
42419+ // arguments for call to printid
42420+ stack[base + 39LLU] = stack[base + 27]/*listname*/;
42421+ // set stack-base & callee-address
42422+ base += 39LLU;
42423+ label = 18446744073709551587LLU; // printid
4239242424 break;
4239342425 }
42394- case 3553LLU: // completed switch
42426+ case 3577LLU: // copy-back deleter (printid to procblock)
4239542427 {
42396- if(!stack[base + 28]/*listmut*/)
42428+ // copy mutable arguments back from call to printid
42429+ label = 3563LLU; // continue to roll stack
42430+ break;
42431+ }
42432+ case 3578LLU: // return from printid to procblock
42433+ {
42434+ // copy mutable arguments back from call to printid
42435+ printf("%s", "*/");
42436+ // call emitvaridx from procblock
42437+ stack[base + 36LLU] = 3579LLU/*throw to this address*/;
42438+ stack[base + 37LLU] = base;
42439+ stack[base + 38LLU] = 3580LLU;
42440+ // arguments for call to emitvaridx
42441+ stack[base + 39LLU] = stack[base + 28]/*listindex*/;
42442+ // set stack-base & callee-address
42443+ base += 39LLU;
42444+ label = 741LLU; // emitvaridx
42445+ break;
42446+ }
42447+ case 3579LLU: // copy-back deleter (emitvaridx to procblock)
42448+ {
42449+ // copy mutable arguments back from call to emitvaridx
42450+ label = 3563LLU; // continue to roll stack
42451+ break;
42452+ }
42453+ case 3580LLU: // return from emitvaridx to procblock
42454+ {
42455+ // copy mutable arguments back from call to emitvaridx
42456+ printf("%s", " = (uint64_t)next;");
42457+ if(!stack[base + 29]/*listmut*/)
4239742458 {
42398- label = 3564LLU; // jump to alternative
42459+ label = 3581LLU; // jump to alternative
4239942460 break;
4240042461 }
4240142462
4240242463 // consequent
42403- label = 3565LLU; // consequent complete
42464+ label = 3582LLU; // consequent complete
4240442465 break;
4240542466 }
42406- case 3564LLU: // alternative
42467+ case 3581LLU: // alternative
4240742468 {
42469+ fprintf(stderr, "%s", "in function ");
42470+ // call reportid from procblock
42471+ stack[base + 36LLU] = 3583LLU/*throw to this address*/;
42472+ stack[base + 37LLU] = base;
42473+ stack[base + 38LLU] = 3584LLU;
42474+ // arguments for call to reportid
42475+ stack[base + 39LLU] = stack[base + 8]/*fnid*/;
42476+ // set stack-base & callee-address
42477+ base += 39LLU;
42478+ label = 18446744073709551586LLU; // reportid
42479+ break;
42480+ }
42481+ case 3583LLU: // copy-back deleter (reportid to procblock)
42482+ {
42483+ // copy mutable arguments back from call to reportid
42484+ label = 3563LLU; // continue to roll stack
42485+ break;
42486+ }
42487+ case 3584LLU: // return from reportid to procblock
42488+ {
42489+ // copy mutable arguments back from call to reportid
42490+ fprintf(stderr, "%s", ": ");
4240842491 fprintf(stderr, "%s", "can't pop from CONSTANT list ");
4240942492 // call reportid from procblock
42410- stack[base + 32LLU] = 3566LLU/*throw to this address*/;
42411- stack[base + 33LLU] = base;
42412- stack[base + 34LLU] = 3567LLU;
42493+ stack[base + 36LLU] = 3585LLU/*throw to this address*/;
42494+ stack[base + 37LLU] = base;
42495+ stack[base + 38LLU] = 3586LLU;
4241342496 // arguments for call to reportid
42414- stack[base + 35LLU] = stack[base + 26]/*listname*/;
42497+ stack[base + 39LLU] = stack[base + 27]/*listname*/;
4241542498 // set stack-base & callee-address
42416- base += 35LLU;
42499+ base += 39LLU;
4241742500 label = 18446744073709551586LLU; // reportid
4241842501 break;
4241942502 }
42420- case 3566LLU: // copy-back deleter (reportid to procblock)
42503+ case 3585LLU: // copy-back deleter (reportid to procblock)
4242142504 {
4242242505 // copy mutable arguments back from call to reportid
42423- label = 3546LLU; // continue to roll stack
42506+ label = 3563LLU; // continue to roll stack
4242442507 break;
4242542508 }
42426- case 3567LLU: // return from reportid to procblock
42509+ case 3586LLU: // return from reportid to procblock
4242742510 {
4242842511 // copy mutable arguments back from call to reportid
4242942512 fprintf(stderr, "%s", " of type ");
@@ -42430,7 +42513,7 @@
4243042513 uint64_t *newstack = (uint64_t *)Calloc(10LLU + 1, sizeof(uint64_t));
4243142514 if(!newstack)
4243242515 {
42433- label = 3546LLU; // throw: begin to unroll stack
42516+ label = 3563LLU; // throw: begin to unroll stack
4243442517 break;
4243542518 }
4243642519
@@ -42437,11 +42520,11 @@
4243742520 newstack[10LLU] = 9876543210LLU; // overflow-marker
4243842521 // call reporttype from procblock
4243942522 newstack[0] = (uint64_t)stack; // backup stack location
42440- newstack[1] = 3568LLU;
42523+ newstack[1] = 3587LLU;
4244142524 newstack[2] = base;
42442- newstack[3] = 3569LLU;
42525+ newstack[3] = 3588LLU;
4244342526 // arguments for call to reporttype
42444- newstack[4LLU] = stack[base + 25]/*listtype*/;
42527+ newstack[4LLU] = stack[base + 26]/*listtype*/;
4244542528 stack = newstack;
4244642529 // set stack-base & callee-address
4244742530 base = 4/*deloffset*/;
@@ -42448,7 +42531,7 @@
4244842531 label = 326LLU; // reporttype
4244942532 break;
4245042533 }
42451- case 3568LLU: // copy-back deleter (reporttype to procblock)
42534+ case 3587LLU: // copy-back deleter (reporttype to procblock)
4245242535 {
4245342536 uint64_t *oldstack = (uint64_t *)stack[0];
4245442537 // copy mutable arguments back from call to reporttype
@@ -42459,10 +42542,10 @@
4245942542 }
4246042543 Free(10LLU + 1, sizeof(uint64_t), stack);
4246142544 stack = oldstack;
42462- label = 3546LLU; // continue to unroll stack
42545+ label = 3563LLU; // continue to unroll stack
4246342546 break;
4246442547 }
42465- case 3569LLU: // return from reporttype to procblock
42548+ case 3588LLU: // return from reporttype to procblock
4246642549 {
4246742550 uint64_t *oldstack = (uint64_t *)stack[0];
4246842551 // copy mutable arguments back from call to reporttype
@@ -42475,122 +42558,124 @@
4247542558 stack = oldstack;
4247642559 fprintf(stderr, "%s", "\n");
4247742560 {
42478- label = 3546LLU; // throw: begin to unroll stack
42561+ label = 3563LLU; // throw: begin to unroll stack
4247942562 break;
4248042563 }
4248142564
42482- label = 3565LLU; // alternative complete
42565+ label = 3582LLU; // alternative complete
4248342566 break;
4248442567 }
42485- case 3565LLU: // completed if-then-else
42568+ case 3582LLU: // completed if-then-else
4248642569 {
42487- printf("%s", "\n {");
42488- printf("%s", "\n label = ");
42489- // call printnr from procblock
42490- stack[base + 32LLU] = 3570LLU/*throw to this address*/;
42491- stack[base + 33LLU] = base;
42492- stack[base + 34LLU] = 3571LLU;
42493- // arguments for call to printnr
42494- stack[base + 35LLU] = stack[base + 22]/*labelalt*/;
42495- // set stack-base & callee-address
42496- base += 35LLU;
42497- label = 18446744073709551590LLU; // printnr
42570+ label = 3576LLU; // consequent complete
4249842571 break;
4249942572 }
42500- case 3570LLU: // copy-back deleter (printnr to procblock)
42573+ case 3575LLU: // alternative
4250142574 {
42502- // copy mutable arguments back from call to printnr
42503- label = 3546LLU; // continue to roll stack
42575+ label = 3590LLU; // skip deleter
4250442576 break;
4250542577 }
42506- case 3571LLU: // return from printnr to procblock
42578+ case 3589LLU: // deleter
4250742579 {
42508- // copy mutable arguments back from call to printnr
42509- printf("%s", "LLU; // jump to alternative");
42510- printf("%s", "\n break;");
42511- printf("%s", "\n }");
42512- printf("%s", "\n");
42513- printf("%s", "\n // consequent");
42514- // call matchsym from procblock
42515- stack[base + 32LLU] = 3572LLU/*throw to this address*/;
42516- stack[base + 33LLU] = base;
42517- stack[base + 34LLU] = 3573LLU;
42518- // arguments for call to matchsym
42519- stack[base + 35LLU] = stack[base + 8]/*fnid*/;
42520- stack[base + 36LLU] = 123LLU;
42521- stack[base + 37LLU] = stack[base + 19]/*lookahead*/;
42580+ // throw from procblock
42581+ if(!stack[base + 36])
42582+ {
42583+ label = 3563LLU; // skip, variable already deleted/unscoped
42584+ break;
42585+ }
42586+ label = 3563LLU; // continue unrolling stack, delete next variable
42587+ break;
42588+ }
42589+ case 3590LLU: // skipped deleter
42590+ {
42591+ // call newvarraw from procblock
42592+ stack[base + 37LLU] = 3591LLU/*throw to this address*/;
42593+ stack[base + 38LLU] = base;
42594+ stack[base + 39LLU] = 3592LLU;
42595+ // arguments for call to newvarraw
42596+ stack[base + 41LLU] = stack[base + 26]/*listtype*/;
42597+ stack[base + 42LLU] = stack[base + 27]/*listname*/;
42598+ stack[base + 43LLU] = stack[base + 29]/*listmut*/;
42599+ stack[base + 44LLU] = stack[base + 10]/*fnrescount*/;
42600+ stack[base + 45LLU] = stack[base + 11]/*fnargcount*/;
42601+ stack[base + 46LLU] = stack[base + 12]/*fnmaxcount*/;
42602+ stack[base + 47LLU] = stack[base + 18]/*varcount*/;
42603+ stack[base + 48LLU] = stack[base + 3]/*scope*/;
42604+ stack[base + 49LLU] = stack[base + 34]/*substruct*/;
4252242605 // set stack-base & callee-address
42523- base += 35LLU;
42524- label = 222LLU; // matchsym
42606+ base += 40LLU;
42607+ label = 755LLU; // newvarraw
4252542608 break;
4252642609 }
42527- case 3572LLU: // copy-back deleter (matchsym to procblock)
42610+ case 3591LLU: // copy-back deleter (newvarraw to procblock)
4252842611 {
42529- // copy mutable arguments back from call to matchsym
42530- stack[base + 19]/*lookahead*/ = stack[base + 37LLU];
42531- label = 3546LLU; // continue to roll stack
42612+ // copy mutable arguments back from call to newvarraw
42613+ stack[base + 3]/*scope*/ = stack[base + 48LLU];
42614+ stack[base + 18]/*varcount*/ = stack[base + 47LLU];
42615+ stack[base + 12]/*fnmaxcount*/ = stack[base + 46LLU];
42616+ label = 3563LLU; // continue to roll stack
4253242617 break;
4253342618 }
42534- case 3573LLU: // return from matchsym to procblock
42619+ case 3592LLU: // return from newvarraw to procblock
4253542620 {
42536- // copy mutable arguments back from call to matchsym
42537- stack[base + 19]/*lookahead*/ = stack[base + 37LLU];
42538- printf("%s", "\n struct listnode *next = list->next;");
42539- printf("%s", "\n ");
42540- // call emitvar from procblock
42541- stack[base + 32LLU] = 3574LLU/*throw to this address*/;
42542- stack[base + 33LLU] = base;
42543- stack[base + 34LLU] = 3575LLU;
42544- // arguments for call to emitvar
42545- stack[base + 35LLU] = stack[base + 8]/*fnid*/;
42546- stack[base + 36LLU] = stack[base + 16]/*content*/;
42547- stack[base + 37LLU] = stack[base + 2]/*scopes*/;
42548- stack[base + 38LLU] = stack[base + 3]/*scope*/;
42621+ // copy mutable arguments back from call to newvarraw
42622+ stack[base + 3]/*scope*/ = stack[base + 48LLU];
42623+ stack[base + 18]/*varcount*/ = stack[base + 47LLU];
42624+ stack[base + 12]/*fnmaxcount*/ = stack[base + 46LLU];
42625+ // copy back results provided by call to newvarraw
42626+ stack[base + 36] = stack[base + 40LLU];
42627+ printf("%s", "\n /*");
42628+ // call printid from procblock
42629+ stack[base + 37LLU] = 3593LLU/*throw to this address*/;
42630+ stack[base + 38LLU] = base;
42631+ stack[base + 39LLU] = 3594LLU;
42632+ // arguments for call to printid
42633+ stack[base + 40LLU] = stack[base + 27]/*listname*/;
4254942634 // set stack-base & callee-address
42550- base += 35LLU;
42551- label = 745LLU; // emitvar
42635+ base += 40LLU;
42636+ label = 18446744073709551587LLU; // printid
4255242637 break;
4255342638 }
42554- case 3574LLU: // copy-back deleter (emitvar to procblock)
42639+ case 3593LLU: // copy-back deleter (printid to procblock)
4255542640 {
42556- // copy mutable arguments back from call to emitvar
42557- label = 3546LLU; // continue to roll stack
42641+ // copy mutable arguments back from call to printid
42642+ label = 3589LLU; // continue to roll stack
4255842643 break;
4255942644 }
42560- case 3575LLU: // return from emitvar to procblock
42645+ case 3594LLU: // return from printid to procblock
4256142646 {
42562- // copy mutable arguments back from call to emitvar
42563- printf("%s", " = list->data;");
42564- printf("%s", "\n Free(1, sizeof(struct listnode), list);");
42565- printf("%s", "\n ");
42566- // call emitvar from procblock
42567- stack[base + 32LLU] = 3576LLU/*throw to this address*/;
42568- stack[base + 33LLU] = base;
42569- stack[base + 34LLU] = 3577LLU;
42570- // arguments for call to emitvar
42571- stack[base + 35LLU] = stack[base + 8]/*fnid*/;
42572- stack[base + 36LLU] = stack[base + 26]/*listname*/;
42573- stack[base + 37LLU] = stack[base + 2]/*scopes*/;
42574- stack[base + 38LLU] = stack[base + 3]/*scope*/;
42647+ // copy mutable arguments back from call to printid
42648+ printf("%s", "*/");
42649+ // call emitvaridx from procblock
42650+ stack[base + 37LLU] = 3595LLU/*throw to this address*/;
42651+ stack[base + 38LLU] = base;
42652+ stack[base + 39LLU] = 3596LLU;
42653+ // arguments for call to emitvaridx
42654+ stack[base + 40LLU] = stack[base + 36]/*restindex*/;
4257542655 // set stack-base & callee-address
42576- base += 35LLU;
42577- label = 745LLU; // emitvar
42656+ base += 40LLU;
42657+ label = 741LLU; // emitvaridx
4257842658 break;
4257942659 }
42580- case 3576LLU: // copy-back deleter (emitvar to procblock)
42660+ case 3595LLU: // copy-back deleter (emitvaridx to procblock)
4258142661 {
42582- // copy mutable arguments back from call to emitvar
42583- label = 3546LLU; // continue to roll stack
42662+ // copy mutable arguments back from call to emitvaridx
42663+ label = 3589LLU; // continue to roll stack
4258442664 break;
4258542665 }
42586- case 3577LLU: // return from emitvar to procblock
42666+ case 3596LLU: // return from emitvaridx to procblock
4258742667 {
42588- // copy mutable arguments back from call to emitvar
42668+ // copy mutable arguments back from call to emitvaridx
4258942669 printf("%s", " = (uint64_t)next;");
42670+ label = 3576LLU; // alternative complete
42671+ break;
42672+ }
42673+ case 3576LLU: // completed if-then-else
42674+ {
4259042675 printf("%s", "\n }");
4259142676 if(!stack[base + 21]/*returnflag*/)
4259242677 {
42593- label = 3578LLU; // jump to alternative
42678+ label = 3597LLU; // jump to alternative
4259442679 break;
4259542680 }
4259642681
@@ -42598,7 +42683,7 @@
4259842683 uint64_t *newstack = (uint64_t *)Calloc(160LLU + 1, sizeof(uint64_t));
4259942684 if(!newstack)
4260042685 {
42601- label = 3546LLU; // throw: begin to unroll stack
42686+ label = 3563LLU; // throw: begin to unroll stack
4260242687 break;
4260342688 }
4260442689
@@ -42605,9 +42690,9 @@
4260542690 newstack[160LLU] = 9876543210LLU; // overflow-marker
4260642691 // call procblock from procblock
4260742692 newstack[0] = (uint64_t)stack; // backup stack location
42608- newstack[1] = 3580LLU;
42693+ newstack[1] = 3599LLU;
4260942694 newstack[2] = base;
42610- newstack[3] = 3581LLU;
42695+ newstack[3] = 3600LLU;
4261142696 // arguments for call to procblock
4261242697 newstack[4LLU] = stack[base + 0]/*fndefs*/;
4261342698 newstack[5LLU] = stack[base + 1]/*typedefs*/;
@@ -42633,7 +42718,7 @@
4263342718 label = 3319LLU; // procblock
4263442719 break;
4263542720 }
42636- case 3580LLU: // copy-back deleter (procblock to procblock)
42721+ case 3599LLU: // copy-back deleter (procblock to procblock)
4263742722 {
4263842723 uint64_t *oldstack = (uint64_t *)stack[0];
4263942724 // copy mutable arguments back from call to procblock
@@ -42650,10 +42735,10 @@
4265042735 }
4265142736 Free(160LLU + 1, sizeof(uint64_t), stack);
4265242737 stack = oldstack;
42653- label = 3546LLU; // continue to unroll stack
42738+ label = 3563LLU; // continue to unroll stack
4265442739 break;
4265542740 }
42656- case 3581LLU: // return from procblock to procblock
42741+ case 3600LLU: // return from procblock to procblock
4265742742 {
4265842743 uint64_t *oldstack = (uint64_t *)stack[0];
4265942744 // copy mutable arguments back from call to procblock
@@ -42670,42 +42755,42 @@
4267042755 }
4267142756 Free(160LLU + 1, sizeof(uint64_t), stack);
4267242757 stack = oldstack;
42673- label = 3579LLU; // consequent complete
42758+ label = 3598LLU; // consequent complete
4267442759 break;
4267542760 }
42676- case 3578LLU: // alternative
42761+ case 3597LLU: // alternative
4267742762 {
42678- label = 3583LLU; // skip deleter
42763+ label = 3602LLU; // skip deleter
4267942764 break;
4268042765 }
42681- case 3582LLU: // deleter
42766+ case 3601LLU: // deleter
4268242767 {
4268342768 // throw from procblock
42684- if(!stack[base + 32])
42769+ if(!stack[base + 36])
4268542770 {
42686- label = 3546LLU; // skip, variable already deleted/unscoped
42771+ label = 3563LLU; // skip, variable already deleted/unscoped
4268742772 break;
4268842773 }
4268942774 // delete list
42690- label = 3584LLU; // start to repeat
42775+ label = 3603LLU; // start to repeat
4269142776 break;
4269242777 }
42693- case 3584LLU: // repeat from here
42778+ case 3603LLU: // repeat from here
4269442779 {
42695- if(!stack[base + 32])
42780+ if(!stack[base + 36])
4269642781 {
42697- label = 3585LLU; // break loop
42782+ label = 3604LLU; // break loop
4269842783 break;
4269942784 }
4270042785
4270142786 // delete list loop body
4270242787
42703- uint64_t *newstack = (uint64_t *)(((struct listnode *)stack[base + 32])->data - sizeof(uint64_t) * 4);
42788+ uint64_t *newstack = (uint64_t *)(((struct listnode *)stack[base + 36])->data - sizeof(uint64_t) * 4);
4270442789 // call ~typeidx from procblock
4270542790 newstack[0] = (uint64_t)stack; // backup stack location
4270642791 newstack[1] = 1234567890;
4270742792 newstack[2] = base;
42708- newstack[3] = 3586LLU;
42793+ newstack[3] = 3605LLU;
4270942794 stack = newstack;
4271042795 // set stack-base & callee-address
4271142796 base = 4/*deloffset*/;
@@ -42712,32 +42797,32 @@
4271242797 label = 395LLU; // ~typeidx
4271342798 break;
4271442799 }
42715- case 3586LLU: // return from ~typeidx to procblock
42800+ case 3605LLU: // return from ~typeidx to procblock
4271642801 {
4271742802 stack = (uint64_t *)stack[0];
4271842803 // releasing toplevel container
42719- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(((struct listnode *)stack[base + 32])->data - sizeof(uint64_t) * 4));
42804+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(((struct listnode *)stack[base + 36])->data - sizeof(uint64_t) * 4));
4272042805
4272142806 {
42722- struct listnode *list = (struct listnode *)stack[base + 32];
42723- stack[base + 32] = (uint64_t)list->next;
42807+ struct listnode *list = (struct listnode *)stack[base + 36];
42808+ stack[base + 36] = (uint64_t)list->next;
4272442809 Free(1, sizeof(struct listnode), list);
4272542810 }
42726- label = 3584LLU; // repeat
42811+ label = 3603LLU; // repeat
4272742812 break;
4272842813 }
42729- case 3585LLU: // loop finished
42814+ case 3604LLU: // loop finished
4273042815 {
42731- label = 3546LLU; // continue unrolling stack, delete next variable
42816+ label = 3563LLU; // continue unrolling stack, delete next variable
4273242817 break;
4273342818 }
42734- case 3583LLU: // skipped deleter
42819+ case 3602LLU: // skipped deleter
4273542820 {
42736- stack[base + 32] = 0;
42821+ stack[base + 36] = 0;
4273742822 uint64_t *newstack = (uint64_t *)Calloc(160LLU + 1, sizeof(uint64_t));
4273842823 if(!newstack)
4273942824 {
42740- label = 3582LLU; // throw: begin to unroll stack
42825+ label = 3601LLU; // throw: begin to unroll stack
4274142826 break;
4274242827 }
4274342828
@@ -42744,15 +42829,15 @@
4274442829 newstack[160LLU] = 9876543210LLU; // overflow-marker
4274542830 // call procblock from procblock
4274642831 newstack[0] = (uint64_t)stack; // backup stack location
42747- newstack[1] = 3587LLU;
42832+ newstack[1] = 3606LLU;
4274842833 newstack[2] = base;
42749- newstack[3] = 3588LLU;
42834+ newstack[3] = 3607LLU;
4275042835 // arguments for call to procblock
4275142836 newstack[4LLU] = stack[base + 0]/*fndefs*/;
4275242837 newstack[5LLU] = stack[base + 1]/*typedefs*/;
4275342838 newstack[6LLU] = stack[base + 2]/*scopes*/;
4275442839 newstack[7LLU] = stack[base + 3]/*scope*/;
42755- newstack[8LLU] = stack[base + 32]/*blkresults*/;
42840+ newstack[8LLU] = stack[base + 36]/*blkresults*/;
4275642841 newstack[9LLU] = stack[base + 5]/*fnrec*/;
4275742842 newstack[10LLU] = stack[base + 6]/*fncanthrow*/;
4275842843 newstack[11LLU] = stack[base + 7]/*fnIO*/;
@@ -42772,7 +42857,7 @@
4277242857 label = 3319LLU; // procblock
4277342858 break;
4277442859 }
42775- case 3587LLU: // copy-back deleter (procblock to procblock)
42860+ case 3606LLU: // copy-back deleter (procblock to procblock)
4277642861 {
4277742862 uint64_t *oldstack = (uint64_t *)stack[0];
4277842863 // copy mutable arguments back from call to procblock
@@ -42789,10 +42874,10 @@
4278942874 }
4279042875 Free(160LLU + 1, sizeof(uint64_t), stack);
4279142876 stack = oldstack;
42792- label = 3582LLU; // continue to unroll stack
42877+ label = 3601LLU; // continue to unroll stack
4279342878 break;
4279442879 }
42795- case 3588LLU: // return from procblock to procblock
42880+ case 3607LLU: // return from procblock to procblock
4279642881 {
4279742882 uint64_t *oldstack = (uint64_t *)stack[0];
4279842883 // copy mutable arguments back from call to procblock
@@ -42810,25 +42895,25 @@
4281042895 Free(160LLU + 1, sizeof(uint64_t), stack);
4281142896 stack = oldstack;
4281242897 // delete list
42813- label = 3589LLU; // start to repeat
42898+ label = 3608LLU; // start to repeat
4281442899 break;
4281542900 }
42816- case 3589LLU: // repeat from here
42901+ case 3608LLU: // repeat from here
4281742902 {
42818- if(!stack[base + 32])
42903+ if(!stack[base + 36])
4281942904 {
42820- label = 3590LLU; // break loop
42905+ label = 3609LLU; // break loop
4282142906 break;
4282242907 }
4282342908
4282442909 // delete list loop body
4282542910
42826- uint64_t *newstack = (uint64_t *)(((struct listnode *)stack[base + 32])->data - sizeof(uint64_t) * 4);
42911+ uint64_t *newstack = (uint64_t *)(((struct listnode *)stack[base + 36])->data - sizeof(uint64_t) * 4);
4282742912 // call ~typeidx from procblock
4282842913 newstack[0] = (uint64_t)stack; // backup stack location
4282942914 newstack[1] = 1234567890;
4283042915 newstack[2] = base;
42831- newstack[3] = 3591LLU;
42916+ newstack[3] = 3610LLU;
4283242917 stack = newstack;
4283342918 // set stack-base & callee-address
4283442919 base = 4/*deloffset*/;
@@ -42835,71 +42920,78 @@
4283542920 label = 395LLU; // ~typeidx
4283642921 break;
4283742922 }
42838- case 3591LLU: // return from ~typeidx to procblock
42923+ case 3610LLU: // return from ~typeidx to procblock
4283942924 {
4284042925 stack = (uint64_t *)stack[0];
4284142926 // releasing toplevel container
42842- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(((struct listnode *)stack[base + 32])->data - sizeof(uint64_t) * 4));
42927+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(((struct listnode *)stack[base + 36])->data - sizeof(uint64_t) * 4));
4284342928
4284442929 {
42845- struct listnode *list = (struct listnode *)stack[base + 32];
42846- stack[base + 32] = (uint64_t)list->next;
42930+ struct listnode *list = (struct listnode *)stack[base + 36];
42931+ stack[base + 36] = (uint64_t)list->next;
4284742932 Free(1, sizeof(struct listnode), list);
4284842933 }
42849- label = 3589LLU; // repeat
42934+ label = 3608LLU; // repeat
4285042935 break;
4285142936 }
42852- case 3590LLU: // loop finished
42937+ case 3609LLU: // loop finished
4285342938 {
42854- label = 3579LLU; // alternative complete
42939+ label = 3598LLU; // alternative complete
4285542940 break;
4285642941 }
42857- case 3579LLU: // completed if-then-else
42942+ case 3598LLU: // completed if-then-else
4285842943 {
42944+ if(!stack[base + 24]/*consume*/)
42945+ {
42946+ label = 3611LLU; // jump to alternative
42947+ break;
42948+ }
42949+
42950+ // consequent
4285942951 // call closescope from procblock
42860- stack[base + 32LLU] = 3592LLU/*throw to this address*/;
42861- stack[base + 33LLU] = base;
42862- stack[base + 34LLU] = 3593LLU;
42952+ stack[base + 36LLU] = 3613LLU/*throw to this address*/;
42953+ stack[base + 37LLU] = base;
42954+ stack[base + 38LLU] = 3614LLU;
4286342955 // arguments for call to closescope
42864- stack[base + 35LLU] = stack[base + 8]/*fnid*/;
42865- stack[base + 36LLU] = stack[base + 1]/*typedefs*/;
42866- stack[base + 37LLU] = stack[base + 3]/*scope*/;
42867- stack[base + 38LLU] = stack[base + 17]/*label*/;
42956+ stack[base + 39LLU] = stack[base + 8]/*fnid*/;
42957+ stack[base + 40LLU] = stack[base + 1]/*typedefs*/;
42958+ stack[base + 41LLU] = stack[base + 3]/*scope*/;
42959+ stack[base + 42LLU] = stack[base + 17]/*label*/;
4286842960 // set stack-base & callee-address
42869- base += 35LLU;
42961+ base += 39LLU;
4287042962 label = 3246LLU; // closescope
4287142963 break;
4287242964 }
42873- case 3592LLU: // copy-back deleter (closescope to procblock)
42965+ case 3613LLU: // copy-back deleter (closescope to procblock)
4287442966 {
4287542967 // copy mutable arguments back from call to closescope
42876- stack[base + 17]/*label*/ = stack[base + 38LLU];
42877- label = 3546LLU; // continue to roll stack
42968+ stack[base + 17]/*label*/ = stack[base + 42LLU];
42969+ label = 3563LLU; // continue to roll stack
4287842970 break;
4287942971 }
42880- case 3593LLU: // return from closescope to procblock
42972+ case 3614LLU: // return from closescope to procblock
4288142973 {
4288242974 // copy mutable arguments back from call to closescope
42883- stack[base + 17]/*label*/ = stack[base + 38LLU];
42975+ stack[base + 17]/*label*/ = stack[base + 42LLU];
4288442976 printf("%s", "\n label = ");
4288542977 // call printnr from procblock
42886- stack[base + 32LLU] = 3594LLU/*throw to this address*/;
42887- stack[base + 33LLU] = base;
42888- stack[base + 34LLU] = 3595LLU;
42978+ stack[base + 36LLU] = 3615LLU/*throw to this address*/;
42979+ stack[base + 37LLU] = base;
42980+ stack[base + 38LLU] = 3616LLU;
4288942981 // arguments for call to printnr
42890- stack[base + 35LLU] = stack[base + 23]/*labelskip*/;
42982+ stack[base + 39LLU] = stack[base + 23]/*labelskip*/;
4289142983 // set stack-base & callee-address
42892- base += 35LLU;
42984+ base += 39LLU;
4289342985 label = 18446744073709551590LLU; // printnr
4289442986 break;
4289542987 }
42896- case 3594LLU: // copy-back deleter (printnr to procblock)
42988+ case 3615LLU: // copy-back deleter (printnr to procblock)
4289742989 {
4289842990 // copy mutable arguments back from call to printnr
42899- label = 3546LLU; // continue to roll stack
42991+ label = 3563LLU; // continue to roll stack
4290042992 break;
4290142993 }
42902- case 3595LLU: // return from printnr to procblock
42994+ case 3616LLU: // return from printnr to procblock
4290342995 {
4290442996 // copy mutable arguments back from call to printnr
4290542997 printf("%s", "LLU; // consequent complete");
@@ -42907,71 +42999,71 @@
4290742999 printf("%s", "\n }");
4290843000 printf("%s", "\n case ");
4290943001 // call printnr from procblock
42910- stack[base + 32LLU] = 3596LLU/*throw to this address*/;
42911- stack[base + 33LLU] = base;
42912- stack[base + 34LLU] = 3597LLU;
43002+ stack[base + 36LLU] = 3617LLU/*throw to this address*/;
43003+ stack[base + 37LLU] = base;
43004+ stack[base + 38LLU] = 3618LLU;
4291343005 // arguments for call to printnr
42914- stack[base + 35LLU] = stack[base + 31]/*labelfail*/;
43006+ stack[base + 39LLU] = stack[base + 32]/*labelfail*/;
4291543007 // set stack-base & callee-address
42916- base += 35LLU;
43008+ base += 39LLU;
4291743009 label = 18446744073709551590LLU; // printnr
4291843010 break;
4291943011 }
42920- case 3596LLU: // copy-back deleter (printnr to procblock)
43012+ case 3617LLU: // copy-back deleter (printnr to procblock)
4292143013 {
4292243014 // copy mutable arguments back from call to printnr
42923- label = 3546LLU; // continue to roll stack
43015+ label = 3563LLU; // continue to roll stack
4292443016 break;
4292543017 }
42926- case 3597LLU: // return from printnr to procblock
43018+ case 3618LLU: // return from printnr to procblock
4292743019 {
4292843020 // copy mutable arguments back from call to printnr
4292943021 printf("%s", "LLU: // copy-back deleter (if pop)");
4293043022 printf("%s", "\n {");
4293143023 // call closescope from procblock
42932- stack[base + 32LLU] = 3598LLU/*throw to this address*/;
42933- stack[base + 33LLU] = base;
42934- stack[base + 34LLU] = 3599LLU;
43024+ stack[base + 36LLU] = 3619LLU/*throw to this address*/;
43025+ stack[base + 37LLU] = base;
43026+ stack[base + 38LLU] = 3620LLU;
4293543027 // arguments for call to closescope
42936- stack[base + 35LLU] = stack[base + 8]/*fnid*/;
42937- stack[base + 36LLU] = stack[base + 1]/*typedefs*/;
42938- stack[base + 37LLU] = stack[base + 3]/*scope*/;
42939- stack[base + 38LLU] = stack[base + 17]/*label*/;
43028+ stack[base + 39LLU] = stack[base + 8]/*fnid*/;
43029+ stack[base + 40LLU] = stack[base + 1]/*typedefs*/;
43030+ stack[base + 41LLU] = stack[base + 3]/*scope*/;
43031+ stack[base + 42LLU] = stack[base + 17]/*label*/;
4294043032 // set stack-base & callee-address
42941- base += 35LLU;
43033+ base += 39LLU;
4294243034 label = 3246LLU; // closescope
4294343035 break;
4294443036 }
42945- case 3598LLU: // copy-back deleter (closescope to procblock)
43037+ case 3619LLU: // copy-back deleter (closescope to procblock)
4294643038 {
4294743039 // copy mutable arguments back from call to closescope
42948- stack[base + 17]/*label*/ = stack[base + 38LLU];
42949- label = 3546LLU; // continue to roll stack
43040+ stack[base + 17]/*label*/ = stack[base + 42LLU];
43041+ label = 3563LLU; // continue to roll stack
4295043042 break;
4295143043 }
42952- case 3599LLU: // return from closescope to procblock
43044+ case 3620LLU: // return from closescope to procblock
4295343045 {
4295443046 // copy mutable arguments back from call to closescope
42955- stack[base + 17]/*label*/ = stack[base + 38LLU];
43047+ stack[base + 17]/*label*/ = stack[base + 42LLU];
4295643048 printf("%s", "\n label = ");
4295743049 // call printnr from procblock
42958- stack[base + 32LLU] = 3600LLU/*throw to this address*/;
42959- stack[base + 33LLU] = base;
42960- stack[base + 34LLU] = 3601LLU;
43050+ stack[base + 36LLU] = 3621LLU/*throw to this address*/;
43051+ stack[base + 37LLU] = base;
43052+ stack[base + 38LLU] = 3622LLU;
4296143053 // arguments for call to printnr
42962- stack[base + 35LLU] = stack[base + 30]/*labelthrow*/;
43054+ stack[base + 39LLU] = stack[base + 31]/*labelthrow*/;
4296343055 // set stack-base & callee-address
42964- base += 35LLU;
43056+ base += 39LLU;
4296543057 label = 18446744073709551590LLU; // printnr
4296643058 break;
4296743059 }
42968- case 3600LLU: // copy-back deleter (printnr to procblock)
43060+ case 3621LLU: // copy-back deleter (printnr to procblock)
4296943061 {
4297043062 // copy mutable arguments back from call to printnr
42971- label = 3546LLU; // continue to roll stack
43063+ label = 3563LLU; // continue to roll stack
4297243064 break;
4297343065 }
42974- case 3601LLU: // return from printnr to procblock
43066+ case 3622LLU: // return from printnr to procblock
4297543067 {
4297643068 // copy mutable arguments back from call to printnr
4297743069 printf("%s", "LLU; // consequent complete");
@@ -42979,49 +43071,332 @@
4297943071 printf("%s", "\n }");
4298043072 printf("%s", "\n case ");
4298143073 // call printnr from procblock
42982- stack[base + 32LLU] = 3602LLU/*throw to this address*/;
42983- stack[base + 33LLU] = base;
42984- stack[base + 34LLU] = 3603LLU;
43074+ stack[base + 36LLU] = 3623LLU/*throw to this address*/;
43075+ stack[base + 37LLU] = base;
43076+ stack[base + 38LLU] = 3624LLU;
4298543077 // arguments for call to printnr
42986- stack[base + 35LLU] = stack[base + 22]/*labelalt*/;
43078+ stack[base + 39LLU] = stack[base + 22]/*labelalt*/;
4298743079 // set stack-base & callee-address
42988- base += 35LLU;
43080+ base += 39LLU;
4298943081 label = 18446744073709551590LLU; // printnr
4299043082 break;
4299143083 }
42992- case 3602LLU: // copy-back deleter (printnr to procblock)
43084+ case 3623LLU: // copy-back deleter (printnr to procblock)
4299343085 {
4299443086 // copy mutable arguments back from call to printnr
42995- label = 3546LLU; // continue to roll stack
43087+ label = 3563LLU; // continue to roll stack
4299643088 break;
4299743089 }
42998- case 3603LLU: // return from printnr to procblock
43090+ case 3624LLU: // return from printnr to procblock
4299943091 {
4300043092 // copy mutable arguments back from call to printnr
4300143093 printf("%s", "LLU: // alternative");
4300243094 printf("%s", "\n {");
43095+ label = 3612LLU; // consequent complete
43096+ break;
43097+ }
43098+ case 3611LLU: // alternative
43099+ {
43100+ printf("%s", "\n { // copyback");
43101+ printf("%s", "\n struct listnode *list = (struct listnode *)");
43102+ // call emitvaridx from procblock
43103+ stack[base + 36LLU] = 3625LLU/*throw to this address*/;
43104+ stack[base + 37LLU] = base;
43105+ stack[base + 38LLU] = 3626LLU;
43106+ // arguments for call to emitvaridx
43107+ stack[base + 39LLU] = stack[base + 28]/*listindex*/;
43108+ // set stack-base & callee-address
43109+ base += 39LLU;
43110+ label = 741LLU; // emitvaridx
43111+ break;
43112+ }
43113+ case 3625LLU: // copy-back deleter (emitvaridx to procblock)
43114+ {
43115+ // copy mutable arguments back from call to emitvaridx
43116+ label = 3563LLU; // continue to roll stack
43117+ break;
43118+ }
43119+ case 3626LLU: // return from emitvaridx to procblock
43120+ {
43121+ // copy mutable arguments back from call to emitvaridx
43122+ printf("%s", "/*");
43123+ // call printid from procblock
43124+ stack[base + 36LLU] = 3627LLU/*throw to this address*/;
43125+ stack[base + 37LLU] = base;
43126+ stack[base + 38LLU] = 3628LLU;
43127+ // arguments for call to printid
43128+ stack[base + 39LLU] = stack[base + 27]/*listname*/;
43129+ // set stack-base & callee-address
43130+ base += 39LLU;
43131+ label = 18446744073709551587LLU; // printid
43132+ break;
43133+ }
43134+ case 3627LLU: // copy-back deleter (printid to procblock)
43135+ {
43136+ // copy mutable arguments back from call to printid
43137+ label = 3563LLU; // continue to roll stack
43138+ break;
43139+ }
43140+ case 3628LLU: // return from printid to procblock
43141+ {
43142+ // copy mutable arguments back from call to printid
43143+ printf("%s", "*/;");
43144+ printf("%s", "\n list->data = ");
43145+ // call emitvaridx from procblock
43146+ stack[base + 36LLU] = 3629LLU/*throw to this address*/;
43147+ stack[base + 37LLU] = base;
43148+ stack[base + 38LLU] = 3630LLU;
43149+ // arguments for call to emitvaridx
43150+ stack[base + 39LLU] = stack[base + 35]/*elemindex*/;
43151+ // set stack-base & callee-address
43152+ base += 39LLU;
43153+ label = 741LLU; // emitvaridx
43154+ break;
43155+ }
43156+ case 3629LLU: // copy-back deleter (emitvaridx to procblock)
43157+ {
43158+ // copy mutable arguments back from call to emitvaridx
43159+ label = 3563LLU; // continue to roll stack
43160+ break;
43161+ }
43162+ case 3630LLU: // return from emitvaridx to procblock
43163+ {
43164+ // copy mutable arguments back from call to emitvaridx
43165+ printf("%s", ";");
43166+ printf("%s", "\n list->next = (struct listnode *)");
43167+ // call emitvar from procblock
43168+ stack[base + 36LLU] = 3631LLU/*throw to this address*/;
43169+ stack[base + 37LLU] = base;
43170+ stack[base + 38LLU] = 3632LLU;
43171+ // arguments for call to emitvar
43172+ stack[base + 39LLU] = stack[base + 8]/*fnid*/;
43173+ stack[base + 40LLU] = stack[base + 27]/*listname*/;
43174+ stack[base + 41LLU] = stack[base + 2]/*scopes*/;
43175+ stack[base + 42LLU] = stack[base + 3]/*scope*/;
43176+ // set stack-base & callee-address
43177+ base += 39LLU;
43178+ label = 745LLU; // emitvar
43179+ break;
43180+ }
43181+ case 3631LLU: // copy-back deleter (emitvar to procblock)
43182+ {
43183+ // copy mutable arguments back from call to emitvar
43184+ label = 3563LLU; // continue to roll stack
43185+ break;
43186+ }
43187+ case 3632LLU: // return from emitvar to procblock
43188+ {
43189+ // copy mutable arguments back from call to emitvar
43190+ printf("%s", ";");
43191+ printf("%s", "\n }");
43192+ printf("%s", "\n label = ");
43193+ // call printnr from procblock
43194+ stack[base + 36LLU] = 3633LLU/*throw to this address*/;
43195+ stack[base + 37LLU] = base;
43196+ stack[base + 38LLU] = 3634LLU;
43197+ // arguments for call to printnr
43198+ stack[base + 39LLU] = stack[base + 23]/*labelskip*/;
43199+ // set stack-base & callee-address
43200+ base += 39LLU;
43201+ label = 18446744073709551590LLU; // printnr
43202+ break;
43203+ }
43204+ case 3633LLU: // copy-back deleter (printnr to procblock)
43205+ {
43206+ // copy mutable arguments back from call to printnr
43207+ label = 3563LLU; // continue to roll stack
43208+ break;
43209+ }
43210+ case 3634LLU: // return from printnr to procblock
43211+ {
43212+ // copy mutable arguments back from call to printnr
43213+ printf("%s", "LLU; // consequent complete");
43214+ printf("%s", "\n break;");
43215+ printf("%s", "\n }");
43216+ printf("%s", "\n case ");
43217+ // call printnr from procblock
43218+ stack[base + 36LLU] = 3635LLU/*throw to this address*/;
43219+ stack[base + 37LLU] = base;
43220+ stack[base + 38LLU] = 3636LLU;
43221+ // arguments for call to printnr
43222+ stack[base + 39LLU] = stack[base + 22]/*labelalt*/;
43223+ // set stack-base & callee-address
43224+ base += 39LLU;
43225+ label = 18446744073709551590LLU; // printnr
43226+ break;
43227+ }
43228+ case 3635LLU: // copy-back deleter (printnr to procblock)
43229+ {
43230+ // copy mutable arguments back from call to printnr
43231+ label = 3563LLU; // continue to roll stack
43232+ break;
43233+ }
43234+ case 3636LLU: // return from printnr to procblock
43235+ {
43236+ // copy mutable arguments back from call to printnr
43237+ printf("%s", "LLU: // alternative");
43238+ printf("%s", "\n {");
43239+ label = 3612LLU; // alternative complete
43240+ break;
43241+ }
43242+ case 3612LLU: // completed if-then-else
43243+ {
43244+ ((uint64_t **)(stack[base + 26]))[1][0] = stack[base + 33];
43245+ label = 3548LLU; // case complete
43246+ break;
43247+ }
43248+ case 3550LLU: // copy-back deleter (switch)
43249+ {
43250+ ((uint64_t **)(stack[base + 26]))[1][0] = stack[base + 33];
43251+ label = 3541LLU; // continue to unroll stack
43252+ break;
43253+ }
43254+ case 3549LLU: // try next case
43255+ {
43256+ // default
43257+ fprintf(stderr, "%s", "in function ");
43258+ // call reportid from procblock
43259+ stack[base + 33LLU] = 3637LLU/*throw to this address*/;
43260+ stack[base + 34LLU] = base;
43261+ stack[base + 35LLU] = 3638LLU;
43262+ // arguments for call to reportid
43263+ stack[base + 36LLU] = stack[base + 8]/*fnid*/;
43264+ // set stack-base & callee-address
43265+ base += 36LLU;
43266+ label = 18446744073709551586LLU; // reportid
43267+ break;
43268+ }
43269+ case 3637LLU: // copy-back deleter (reportid to procblock)
43270+ {
43271+ // copy mutable arguments back from call to reportid
43272+ label = 3541LLU; // continue to roll stack
43273+ break;
43274+ }
43275+ case 3638LLU: // return from reportid to procblock
43276+ {
43277+ // copy mutable arguments back from call to reportid
43278+ fprintf(stderr, "%s", ": ");
43279+ fprintf(stderr, "%s", "can only ");
43280+ if(!stack[base + 24]/*consume*/)
43281+ {
43282+ label = 3639LLU; // jump to alternative
43283+ break;
43284+ }
43285+
43286+ // consequent
43287+ printf("%s", "pop");
43288+ label = 3640LLU; // consequent complete
43289+ break;
43290+ }
43291+ case 3639LLU: // alternative
43292+ {
43293+ printf("%s", "next");
43294+ label = 3640LLU; // alternative complete
43295+ break;
43296+ }
43297+ case 3640LLU: // completed if-then-else
43298+ {
43299+ printf("%s", " from list but type of ");
43300+ // call reportid from procblock
43301+ stack[base + 33LLU] = 3641LLU/*throw to this address*/;
43302+ stack[base + 34LLU] = base;
43303+ stack[base + 35LLU] = 3642LLU;
43304+ // arguments for call to reportid
43305+ stack[base + 36LLU] = stack[base + 27]/*listname*/;
43306+ // set stack-base & callee-address
43307+ base += 36LLU;
43308+ label = 18446744073709551586LLU; // reportid
43309+ break;
43310+ }
43311+ case 3641LLU: // copy-back deleter (reportid to procblock)
43312+ {
43313+ // copy mutable arguments back from call to reportid
43314+ label = 3541LLU; // continue to roll stack
43315+ break;
43316+ }
43317+ case 3642LLU: // return from reportid to procblock
43318+ {
43319+ // copy mutable arguments back from call to reportid
43320+ fprintf(stderr, "%s", " is ");
43321+ uint64_t *newstack = (uint64_t *)Calloc(10LLU + 1, sizeof(uint64_t));
43322+ if(!newstack)
43323+ {
43324+ label = 3541LLU; // throw: begin to unroll stack
43325+ break;
43326+ }
43327+
43328+ newstack[10LLU] = 9876543210LLU; // overflow-marker
43329+ // call reporttype from procblock
43330+ newstack[0] = (uint64_t)stack; // backup stack location
43331+ newstack[1] = 3643LLU;
43332+ newstack[2] = base;
43333+ newstack[3] = 3644LLU;
43334+ // arguments for call to reporttype
43335+ newstack[4LLU] = stack[base + 26]/*listtype*/;
43336+ stack = newstack;
43337+ // set stack-base & callee-address
43338+ base = 4/*deloffset*/;
43339+ label = 326LLU; // reporttype
43340+ break;
43341+ }
43342+ case 3643LLU: // copy-back deleter (reporttype to procblock)
43343+ {
43344+ uint64_t *oldstack = (uint64_t *)stack[0];
43345+ // copy mutable arguments back from call to reporttype
43346+ if(stack[10LLU] != 9876543210LLU)
43347+ {
43348+ fprintf(stderr, "INTERNAL ERROR - OVERFLOW (in recursive call to reporttype)!\n");
43349+ exit(-1);
43350+ }
43351+ Free(10LLU + 1, sizeof(uint64_t), stack);
43352+ stack = oldstack;
43353+ label = 3541LLU; // continue to unroll stack
43354+ break;
43355+ }
43356+ case 3644LLU: // return from reporttype to procblock
43357+ {
43358+ uint64_t *oldstack = (uint64_t *)stack[0];
43359+ // copy mutable arguments back from call to reporttype
43360+ if(stack[10LLU] != 9876543210LLU)
43361+ {
43362+ fprintf(stderr, "INTERNAL ERROR - OVERFLOW (in recursive call to reporttype)!\n");
43363+ exit(-1);
43364+ }
43365+ Free(10LLU + 1, sizeof(uint64_t), stack);
43366+ stack = oldstack;
43367+ fprintf(stderr, "%s", "\n");
43368+ {
43369+ label = 3541LLU; // throw: begin to unroll stack
43370+ break;
43371+ }
43372+
43373+ label = 3548LLU; // default complete
43374+ break;
43375+ }
43376+ case 3548LLU: // completed switch
43377+ {
4300343378 { // if pop
4300443379 struct listnode *list = (struct listnode *)stack[base + 2]/*scopes*/;
4300543380 if(!list)
4300643381 {
43007- label = 3604LLU; // jump to alternative
43382+ label = 3645LLU; // jump to alternative
4300843383 break;
4300943384 }
4301043385
4301143386 // consequent
4301243387 struct listnode *next = list->next;
43013- stack[base + 32]/*tmp*/ = list->data;
43388+ /*tmp*/stack[base + 33] = list->data;
4301443389 Free(1, sizeof(struct listnode), list);
43015- stack[base + 2]/*scopes*/ = (uint64_t)next;
43390+ /*scopes*/stack[base + 2] = (uint64_t)next;
4301643391 }
43017- swap(&stack[base + 32], &stack[base + 3]);
43392+ swap(&stack[base + 33], &stack[base + 3]);
4301843393
43019- uint64_t *newstack = (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4);
43394+ uint64_t *newstack = (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4);
4302043395 // call ~scope from procblock
4302143396 newstack[0] = (uint64_t)stack; // backup stack location
4302243397 newstack[1] = 1234567890;
4302343398 newstack[2] = base;
43024- newstack[3] = 3607LLU;
43399+ newstack[3] = 3648LLU;
4302543400 stack = newstack;
4302643401 // set stack-base & callee-address
4302743402 base = 4/*deloffset*/;
@@ -43028,24 +43403,24 @@
4302843403 label = 558LLU; // ~scope
4302943404 break;
4303043405 }
43031- case 3607LLU: // return from ~scope to procblock
43406+ case 3648LLU: // return from ~scope to procblock
4303243407 {
4303343408 stack = (uint64_t *)stack[0];
4303443409 // releasing toplevel container
43035- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4));
43410+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4));
4303643411
43037- label = 3605LLU; // consequent complete
43412+ label = 3646LLU; // consequent complete
4303843413 break;
4303943414 }
43040- case 3606LLU: // copy-back deleter (if pop)
43415+ case 3647LLU: // copy-back deleter (if pop)
4304143416 {
4304243417
43043- uint64_t *newstack = (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4);
43418+ uint64_t *newstack = (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4);
4304443419 // call ~scope from procblock
4304543420 newstack[0] = (uint64_t)stack; // backup stack location
4304643421 newstack[1] = 1234567890;
4304743422 newstack[2] = base;
43048- newstack[3] = 3608LLU;
43423+ newstack[3] = 3649LLU;
4304943424 stack = newstack;
4305043425 // set stack-base & callee-address
4305143426 base = 4/*deloffset*/;
@@ -43052,50 +43427,50 @@
4305243427 label = 558LLU; // ~scope
4305343428 break;
4305443429 }
43055- case 3608LLU: // return from ~scope to procblock
43430+ case 3649LLU: // return from ~scope to procblock
4305643431 {
4305743432 stack = (uint64_t *)stack[0];
4305843433 // releasing toplevel container
43059- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4));
43434+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4));
4306043435
43061- label = 3546LLU; // consequent complete
43436+ label = 3541LLU; // consequent complete
4306243437 break;
4306343438 }
43064- case 3604LLU: // alternative
43439+ case 3645LLU: // alternative
4306543440 {
4306643441 fprintf(stderr, "%s", "INTERNAL ERROR popping scope\n");
4306743442 {
43068- label = 3546LLU; // throw: begin to unroll stack
43443+ label = 3541LLU; // throw: begin to unroll stack
4306943444 break;
4307043445 }
4307143446
43072- label = 3605LLU; // alternative complete
43447+ label = 3646LLU; // alternative complete
4307343448 break;
4307443449 }
43075- case 3605LLU: // completed if-then-else
43450+ case 3646LLU: // completed if-then-else
4307643451 {
4307743452 { // if pop
4307843453 struct listnode *list = (struct listnode *)stack[base + 2]/*scopes*/;
4307943454 if(!list)
4308043455 {
43081- label = 3609LLU; // jump to alternative
43456+ label = 3650LLU; // jump to alternative
4308243457 break;
4308343458 }
4308443459
4308543460 // consequent
4308643461 struct listnode *next = list->next;
43087- stack[base + 32]/*tmp*/ = list->data;
43462+ /*tmp*/stack[base + 33] = list->data;
4308843463 Free(1, sizeof(struct listnode), list);
43089- stack[base + 2]/*scopes*/ = (uint64_t)next;
43464+ /*scopes*/stack[base + 2] = (uint64_t)next;
4309043465 }
43091- swap(&stack[base + 32], &stack[base + 3]);
43466+ swap(&stack[base + 33], &stack[base + 3]);
4309243467
43093- uint64_t *newstack = (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4);
43468+ uint64_t *newstack = (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4);
4309443469 // call ~scope from procblock
4309543470 newstack[0] = (uint64_t)stack; // backup stack location
4309643471 newstack[1] = 1234567890;
4309743472 newstack[2] = base;
43098- newstack[3] = 3612LLU;
43473+ newstack[3] = 3653LLU;
4309943474 stack = newstack;
4310043475 // set stack-base & callee-address
4310143476 base = 4/*deloffset*/;
@@ -43102,24 +43477,24 @@
4310243477 label = 558LLU; // ~scope
4310343478 break;
4310443479 }
43105- case 3612LLU: // return from ~scope to procblock
43480+ case 3653LLU: // return from ~scope to procblock
4310643481 {
4310743482 stack = (uint64_t *)stack[0];
4310843483 // releasing toplevel container
43109- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4));
43484+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4));
4311043485
43111- label = 3610LLU; // consequent complete
43486+ label = 3651LLU; // consequent complete
4311243487 break;
4311343488 }
43114- case 3611LLU: // copy-back deleter (if pop)
43489+ case 3652LLU: // copy-back deleter (if pop)
4311543490 {
4311643491
43117- uint64_t *newstack = (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4);
43492+ uint64_t *newstack = (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4);
4311843493 // call ~scope from procblock
4311943494 newstack[0] = (uint64_t)stack; // backup stack location
4312043495 newstack[1] = 1234567890;
4312143496 newstack[2] = base;
43122- newstack[3] = 3613LLU;
43497+ newstack[3] = 3654LLU;
4312343498 stack = newstack;
4312443499 // set stack-base & callee-address
4312543500 base = 4/*deloffset*/;
@@ -43126,98 +43501,98 @@
4312643501 label = 558LLU; // ~scope
4312743502 break;
4312843503 }
43129- case 3613LLU: // return from ~scope to procblock
43504+ case 3654LLU: // return from ~scope to procblock
4313043505 {
4313143506 stack = (uint64_t *)stack[0];
4313243507 // releasing toplevel container
43133- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4));
43508+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 33] - sizeof(uint64_t) * 4));
4313443509
43135- label = 3546LLU; // consequent complete
43510+ label = 3541LLU; // consequent complete
4313643511 break;
4313743512 }
43138- case 3609LLU: // alternative
43513+ case 3650LLU: // alternative
4313943514 {
4314043515 fprintf(stderr, "%s", "INTERNAL ERROR popping scope\n");
4314143516 {
43142- label = 3546LLU; // throw: begin to unroll stack
43517+ label = 3541LLU; // throw: begin to unroll stack
4314343518 break;
4314443519 }
4314543520
43146- label = 3610LLU; // alternative complete
43521+ label = 3651LLU; // alternative complete
4314743522 break;
4314843523 }
43149- case 3610LLU: // completed if-then-else
43524+ case 3651LLU: // completed if-then-else
4315043525 {
43151- label = 3513LLU; // consequent complete
43526+ label = 3527LLU; // consequent complete
4315243527 break;
4315343528 }
43154- case 3512LLU: // alternative
43529+ case 3526LLU: // alternative
4315543530 {
4315643531 fprintf(stderr, "%s", "expected identifier in pop but found ");
4315743532 // call reporttok from procblock
43158- stack[base + 30LLU] = 3614LLU/*throw to this address*/;
43159- stack[base + 31LLU] = base;
43160- stack[base + 32LLU] = 3615LLU;
43533+ stack[base + 31LLU] = 3655LLU/*throw to this address*/;
43534+ stack[base + 32LLU] = base;
43535+ stack[base + 33LLU] = 3656LLU;
4316143536 // arguments for call to reporttok
43162- stack[base + 33LLU] = stack[base + 15]/*variant*/;
43163- stack[base + 34LLU] = stack[base + 16]/*content*/;
43537+ stack[base + 34LLU] = stack[base + 15]/*variant*/;
43538+ stack[base + 35LLU] = stack[base + 16]/*content*/;
4316443539 // set stack-base & callee-address
43165- base += 33LLU;
43540+ base += 34LLU;
4316643541 label = 18446744073709551582LLU; // reporttok
4316743542 break;
4316843543 }
43169- case 3614LLU: // copy-back deleter (reporttok to procblock)
43544+ case 3655LLU: // copy-back deleter (reporttok to procblock)
4317043545 {
4317143546 // copy mutable arguments back from call to reporttok
43172- label = 3495LLU; // continue to roll stack
43547+ label = 3507LLU; // continue to roll stack
4317343548 break;
4317443549 }
43175- case 3615LLU: // return from reporttok to procblock
43550+ case 3656LLU: // return from reporttok to procblock
4317643551 {
4317743552 // copy mutable arguments back from call to reporttok
4317843553 fprintf(stderr, "%s", "\n");
4317943554 {
43180- label = 3495LLU; // throw: begin to unroll stack
43555+ label = 3507LLU; // throw: begin to unroll stack
4318143556 break;
4318243557 }
4318343558
43184- label = 3513LLU; // alternative complete
43559+ label = 3527LLU; // alternative complete
4318543560 break;
4318643561 }
43187- case 3513LLU: // completed if-then-else
43562+ case 3527LLU: // completed if-then-else
4318843563 {
43189- ((uint64_t **)(stack[base + 24]))[1][4] = stack[base + 29];
43190- ((uint64_t **)(stack[base + 24]))[1][3] = stack[base + 28];
43191- ((uint64_t **)(stack[base + 24]))[1][2] = stack[base + 27];
43192- ((uint64_t **)(stack[base + 24]))[1][1] = stack[base + 26];
43193- ((uint64_t **)(stack[base + 24]))[1][0] = stack[base + 25];
43194- label = 3493LLU; // case complete
43564+ ((uint64_t **)(stack[base + 25]))[1][4] = stack[base + 30];
43565+ ((uint64_t **)(stack[base + 25]))[1][3] = stack[base + 29];
43566+ ((uint64_t **)(stack[base + 25]))[1][2] = stack[base + 28];
43567+ ((uint64_t **)(stack[base + 25]))[1][1] = stack[base + 27];
43568+ ((uint64_t **)(stack[base + 25]))[1][0] = stack[base + 26];
43569+ label = 3505LLU; // case complete
4319543570 break;
4319643571 }
43197- case 3495LLU: // copy-back deleter (switch)
43572+ case 3507LLU: // copy-back deleter (switch)
4319843573 {
43199- ((uint64_t **)(stack[base + 24]))[1][4] = stack[base + 29];
43200- ((uint64_t **)(stack[base + 24]))[1][3] = stack[base + 28];
43201- ((uint64_t **)(stack[base + 24]))[1][2] = stack[base + 27];
43202- ((uint64_t **)(stack[base + 24]))[1][1] = stack[base + 26];
43203- ((uint64_t **)(stack[base + 24]))[1][0] = stack[base + 25];
43204- label = 3488LLU; // continue to unroll stack
43574+ ((uint64_t **)(stack[base + 25]))[1][4] = stack[base + 30];
43575+ ((uint64_t **)(stack[base + 25]))[1][3] = stack[base + 29];
43576+ ((uint64_t **)(stack[base + 25]))[1][2] = stack[base + 28];
43577+ ((uint64_t **)(stack[base + 25]))[1][1] = stack[base + 27];
43578+ ((uint64_t **)(stack[base + 25]))[1][0] = stack[base + 26];
43579+ label = 3500LLU; // continue to unroll stack
4320543580 break;
4320643581 }
43207- case 3494LLU: // try next case
43582+ case 3506LLU: // try next case
4320843583 {
4320943584 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
4321043585 exit(-1);
4321143586 }
43212- case 3493LLU: // completed switch
43587+ case 3505LLU: // completed switch
4321343588 {
4321443589
43215- uint64_t *newstack = (uint64_t *)(stack[base + 24] - sizeof(uint64_t) * 4);
43590+ uint64_t *newstack = (uint64_t *)(stack[base + 25] - sizeof(uint64_t) * 4);
4321643591 // call ~letdef from procblock
4321743592 newstack[0] = (uint64_t)stack; // backup stack location
4321843593 newstack[1] = 1234567890;
4321943594 newstack[2] = base;
43220- newstack[3] = 3616LLU;
43595+ newstack[3] = 3657LLU;
4322143596 stack = newstack;
4322243597 // set stack-base & callee-address
4322343598 base = 4/*deloffset*/;
@@ -43224,88 +43599,50 @@
4322443599 label = 482LLU; // ~letdef
4322543600 break;
4322643601 }
43227- case 3616LLU: // return from ~letdef to procblock
43602+ case 3657LLU: // return from ~letdef to procblock
4322843603 {
4322943604 stack = (uint64_t *)stack[0];
4323043605 // releasing toplevel container
43231- Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 24] - sizeof(uint64_t) * 4));
43606+ Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 25] - sizeof(uint64_t) * 4));
4323243607
43233- label = 3487LLU; // consequent complete
43608+ label = 3499LLU; // consequent complete
4323443609 break;
4323543610 }
43236- case 3486LLU: // alternative
43611+ case 3498LLU: // alternative
4323743612 {
4323843613 fprintf(stderr, "%s", "expected identifier in pop but found ");
4323943614 // call reporttok from procblock
43240- stack[base + 24LLU] = 3617LLU/*throw to this address*/;
43241- stack[base + 25LLU] = base;
43242- stack[base + 26LLU] = 3618LLU;
43615+ stack[base + 25LLU] = 3658LLU/*throw to this address*/;
43616+ stack[base + 26LLU] = base;
43617+ stack[base + 27LLU] = 3659LLU;
4324343618 // arguments for call to reporttok
43244- stack[base + 27LLU] = stack[base + 15]/*variant*/;
43245- stack[base + 28LLU] = stack[base + 16]/*content*/;
43619+ stack[base + 28LLU] = stack[base + 15]/*variant*/;
43620+ stack[base + 29LLU] = stack[base + 16]/*content*/;
4324643621 // set stack-base & callee-address
43247- base += 27LLU;
43622+ base += 28LLU;
4324843623 label = 18446744073709551582LLU; // reporttok
4324943624 break;
4325043625 }
43251- case 3617LLU: // copy-back deleter (reporttok to procblock)
43626+ case 3658LLU: // copy-back deleter (reporttok to procblock)
4325243627 {
4325343628 // copy mutable arguments back from call to reporttok
43254- label = 3428LLU; // continue to roll stack
43629+ label = 3476LLU; // continue to roll stack
4325543630 break;
4325643631 }
43257- case 3618LLU: // return from reporttok to procblock
43632+ case 3659LLU: // return from reporttok to procblock
4325843633 {
4325943634 // copy mutable arguments back from call to reporttok
4326043635 fprintf(stderr, "%s", "\n");
4326143636 {
43262- label = 3428LLU; // throw: begin to unroll stack
43637+ label = 3476LLU; // throw: begin to unroll stack
4326343638 break;
4326443639 }
4326543640
43266- label = 3487LLU; // alternative complete
43641+ label = 3499LLU; // alternative complete
4326743642 break;
4326843643 }
43269- case 3487LLU: // completed if-then-else
43644+ case 3499LLU: // completed if-then-else
4327043645 {
43271- label = 3479LLU; // consequent complete
43272- break;
43273- }
43274- case 3478LLU: // alternative
43275- {
43276- fprintf(stderr, "%s", "expected '(' but found token ");
43277- // call reporttok from procblock
43278- stack[base + 24LLU] = 3619LLU/*throw to this address*/;
43279- stack[base + 25LLU] = base;
43280- stack[base + 26LLU] = 3620LLU;
43281- // arguments for call to reporttok
43282- stack[base + 27LLU] = stack[base + 15]/*variant*/;
43283- stack[base + 28LLU] = stack[base + 16]/*content*/;
43284- // set stack-base & callee-address
43285- base += 27LLU;
43286- label = 18446744073709551582LLU; // reporttok
43287- break;
43288- }
43289- case 3619LLU: // copy-back deleter (reporttok to procblock)
43290- {
43291- // copy mutable arguments back from call to reporttok
43292- label = 3428LLU; // continue to roll stack
43293- break;
43294- }
43295- case 3620LLU: // return from reporttok to procblock
43296- {
43297- // copy mutable arguments back from call to reporttok
43298- fprintf(stderr, "%s", "\n");
43299- {
43300- label = 3428LLU; // throw: begin to unroll stack
43301- break;
43302- }
43303-
43304- label = 3479LLU; // alternative complete
43305- break;
43306- }
43307- case 3479LLU: // completed if-then-else
43308- {
4330943646 label = 3435LLU; // alternative complete
4331043647 break;
4331143648 }
@@ -43312,9 +43649,9 @@
4331243649 case 3435LLU: // completed if-then-else
4331343650 {
4331443651 // call matchid from procblock
43315- stack[base + 24LLU] = 3621LLU/*throw to this address*/;
43652+ stack[base + 24LLU] = 3660LLU/*throw to this address*/;
4331643653 stack[base + 25LLU] = base;
43317- stack[base + 26LLU] = 3622LLU;
43654+ stack[base + 26LLU] = 3661LLU;
4331843655 // arguments for call to matchid
4331943656 stack[base + 27LLU] = stack[base + 8]/*fnid*/;
4332043657 stack[base + 28LLU] = 587642785557905408LLU;
@@ -43324,7 +43661,7 @@
4332443661 label = 252LLU; // matchid
4332543662 break;
4332643663 }
43327- case 3621LLU: // copy-back deleter (matchid to procblock)
43664+ case 3660LLU: // copy-back deleter (matchid to procblock)
4332843665 {
4332943666 // copy mutable arguments back from call to matchid
4333043667 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
@@ -43331,14 +43668,14 @@
4333143668 label = 3428LLU; // continue to roll stack
4333243669 break;
4333343670 }
43334- case 3622LLU: // return from matchid to procblock
43671+ case 3661LLU: // return from matchid to procblock
4333543672 {
4333643673 // copy mutable arguments back from call to matchid
4333743674 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
4333843675 // call matchsym from procblock
43339- stack[base + 24LLU] = 3623LLU/*throw to this address*/;
43676+ stack[base + 24LLU] = 3662LLU/*throw to this address*/;
4334043677 stack[base + 25LLU] = base;
43341- stack[base + 26LLU] = 3624LLU;
43678+ stack[base + 26LLU] = 3663LLU;
4334243679 // arguments for call to matchsym
4334343680 stack[base + 27LLU] = stack[base + 8]/*fnid*/;
4334443681 stack[base + 28LLU] = 123LLU;
@@ -43348,7 +43685,7 @@
4334843685 label = 222LLU; // matchsym
4334943686 break;
4335043687 }
43351- case 3623LLU: // copy-back deleter (matchsym to procblock)
43688+ case 3662LLU: // copy-back deleter (matchsym to procblock)
4335243689 {
4335343690 // copy mutable arguments back from call to matchsym
4335443691 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
@@ -43355,13 +43692,13 @@
4335543692 label = 3428LLU; // continue to roll stack
4335643693 break;
4335743694 }
43358- case 3624LLU: // return from matchsym to procblock
43695+ case 3663LLU: // return from matchsym to procblock
4335943696 {
4336043697 // copy mutable arguments back from call to matchsym
4336143698 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
4336243699 if(!stack[base + 21]/*returnflag*/)
4336343700 {
43364- label = 3625LLU; // jump to alternative
43701+ label = 3664LLU; // jump to alternative
4336543702 break;
4336643703 }
4336743704
@@ -43376,9 +43713,9 @@
4337643713 newstack[160LLU] = 9876543210LLU; // overflow-marker
4337743714 // call procblock from procblock
4337843715 newstack[0] = (uint64_t)stack; // backup stack location
43379- newstack[1] = 3627LLU;
43716+ newstack[1] = 3666LLU;
4338043717 newstack[2] = base;
43381- newstack[3] = 3628LLU;
43718+ newstack[3] = 3667LLU;
4338243719 // arguments for call to procblock
4338343720 newstack[4LLU] = stack[base + 0]/*fndefs*/;
4338443721 newstack[5LLU] = stack[base + 1]/*typedefs*/;
@@ -43404,7 +43741,7 @@
4340443741 label = 3319LLU; // procblock
4340543742 break;
4340643743 }
43407- case 3627LLU: // copy-back deleter (procblock to procblock)
43744+ case 3666LLU: // copy-back deleter (procblock to procblock)
4340843745 {
4340943746 uint64_t *oldstack = (uint64_t *)stack[0];
4341043747 // copy mutable arguments back from call to procblock
@@ -43424,7 +43761,7 @@
4342443761 label = 3428LLU; // continue to unroll stack
4342543762 break;
4342643763 }
43427- case 3628LLU: // return from procblock to procblock
43764+ case 3667LLU: // return from procblock to procblock
4342843765 {
4342943766 uint64_t *oldstack = (uint64_t *)stack[0];
4343043767 // copy mutable arguments back from call to procblock
@@ -43441,15 +43778,15 @@
4344143778 }
4344243779 Free(160LLU + 1, sizeof(uint64_t), stack);
4344343780 stack = oldstack;
43444- label = 3626LLU; // consequent complete
43781+ label = 3665LLU; // consequent complete
4344543782 break;
4344643783 }
43447- case 3625LLU: // alternative
43784+ case 3664LLU: // alternative
4344843785 {
43449- label = 3630LLU; // skip deleter
43786+ label = 3669LLU; // skip deleter
4345043787 break;
4345143788 }
43452- case 3629LLU: // deleter
43789+ case 3668LLU: // deleter
4345343790 {
4345443791 // throw from procblock
4345543792 if(!stack[base + 24])
@@ -43458,14 +43795,14 @@
4345843795 break;
4345943796 }
4346043797 // delete list
43461- label = 3631LLU; // start to repeat
43798+ label = 3670LLU; // start to repeat
4346243799 break;
4346343800 }
43464- case 3631LLU: // repeat from here
43801+ case 3670LLU: // repeat from here
4346543802 {
4346643803 if(!stack[base + 24])
4346743804 {
43468- label = 3632LLU; // break loop
43805+ label = 3671LLU; // break loop
4346943806 break;
4347043807 }
4347143808
@@ -43476,7 +43813,7 @@
4347643813 newstack[0] = (uint64_t)stack; // backup stack location
4347743814 newstack[1] = 1234567890;
4347843815 newstack[2] = base;
43479- newstack[3] = 3633LLU;
43816+ newstack[3] = 3672LLU;
4348043817 stack = newstack;
4348143818 // set stack-base & callee-address
4348243819 base = 4/*deloffset*/;
@@ -43483,7 +43820,7 @@
4348343820 label = 395LLU; // ~typeidx
4348443821 break;
4348543822 }
43486- case 3633LLU: // return from ~typeidx to procblock
43823+ case 3672LLU: // return from ~typeidx to procblock
4348743824 {
4348843825 stack = (uint64_t *)stack[0];
4348943826 // releasing toplevel container
@@ -43494,21 +43831,21 @@
4349443831 stack[base + 24] = (uint64_t)list->next;
4349543832 Free(1, sizeof(struct listnode), list);
4349643833 }
43497- label = 3631LLU; // repeat
43834+ label = 3670LLU; // repeat
4349843835 break;
4349943836 }
43500- case 3632LLU: // loop finished
43837+ case 3671LLU: // loop finished
4350143838 {
4350243839 label = 3428LLU; // continue unrolling stack, delete next variable
4350343840 break;
4350443841 }
43505- case 3630LLU: // skipped deleter
43842+ case 3669LLU: // skipped deleter
4350643843 {
4350743844 stack[base + 24] = 0;
4350843845 uint64_t *newstack = (uint64_t *)Calloc(160LLU + 1, sizeof(uint64_t));
4350943846 if(!newstack)
4351043847 {
43511- label = 3629LLU; // throw: begin to unroll stack
43848+ label = 3668LLU; // throw: begin to unroll stack
4351243849 break;
4351343850 }
4351443851
@@ -43515,9 +43852,9 @@
4351543852 newstack[160LLU] = 9876543210LLU; // overflow-marker
4351643853 // call procblock from procblock
4351743854 newstack[0] = (uint64_t)stack; // backup stack location
43518- newstack[1] = 3634LLU;
43855+ newstack[1] = 3673LLU;
4351943856 newstack[2] = base;
43520- newstack[3] = 3635LLU;
43857+ newstack[3] = 3674LLU;
4352143858 // arguments for call to procblock
4352243859 newstack[4LLU] = stack[base + 0]/*fndefs*/;
4352343860 newstack[5LLU] = stack[base + 1]/*typedefs*/;
@@ -43543,7 +43880,7 @@
4354343880 label = 3319LLU; // procblock
4354443881 break;
4354543882 }
43546- case 3634LLU: // copy-back deleter (procblock to procblock)
43883+ case 3673LLU: // copy-back deleter (procblock to procblock)
4354743884 {
4354843885 uint64_t *oldstack = (uint64_t *)stack[0];
4354943886 // copy mutable arguments back from call to procblock
@@ -43560,10 +43897,10 @@
4356043897 }
4356143898 Free(160LLU + 1, sizeof(uint64_t), stack);
4356243899 stack = oldstack;
43563- label = 3629LLU; // continue to unroll stack
43900+ label = 3668LLU; // continue to unroll stack
4356443901 break;
4356543902 }
43566- case 3635LLU: // return from procblock to procblock
43903+ case 3674LLU: // return from procblock to procblock
4356743904 {
4356843905 uint64_t *oldstack = (uint64_t *)stack[0];
4356943906 // copy mutable arguments back from call to procblock
@@ -43581,14 +43918,14 @@
4358143918 Free(160LLU + 1, sizeof(uint64_t), stack);
4358243919 stack = oldstack;
4358343920 // delete list
43584- label = 3636LLU; // start to repeat
43921+ label = 3675LLU; // start to repeat
4358543922 break;
4358643923 }
43587- case 3636LLU: // repeat from here
43924+ case 3675LLU: // repeat from here
4358843925 {
4358943926 if(!stack[base + 24])
4359043927 {
43591- label = 3637LLU; // break loop
43928+ label = 3676LLU; // break loop
4359243929 break;
4359343930 }
4359443931
@@ -43599,7 +43936,7 @@
4359943936 newstack[0] = (uint64_t)stack; // backup stack location
4360043937 newstack[1] = 1234567890;
4360143938 newstack[2] = base;
43602- newstack[3] = 3638LLU;
43939+ newstack[3] = 3677LLU;
4360343940 stack = newstack;
4360443941 // set stack-base & callee-address
4360543942 base = 4/*deloffset*/;
@@ -43606,7 +43943,7 @@
4360643943 label = 395LLU; // ~typeidx
4360743944 break;
4360843945 }
43609- case 3638LLU: // return from ~typeidx to procblock
43946+ case 3677LLU: // return from ~typeidx to procblock
4361043947 {
4361143948 stack = (uint64_t *)stack[0];
4361243949 // releasing toplevel container
@@ -43617,21 +43954,21 @@
4361743954 stack[base + 24] = (uint64_t)list->next;
4361843955 Free(1, sizeof(struct listnode), list);
4361943956 }
43620- label = 3636LLU; // repeat
43957+ label = 3675LLU; // repeat
4362143958 break;
4362243959 }
43623- case 3637LLU: // loop finished
43960+ case 3676LLU: // loop finished
4362443961 {
43625- label = 3626LLU; // alternative complete
43962+ label = 3665LLU; // alternative complete
4362643963 break;
4362743964 }
43628- case 3626LLU: // completed if-then-else
43965+ case 3665LLU: // completed if-then-else
4362943966 {
4363043967 printf("%s", "\n label = ");
4363143968 // call printnr from procblock
43632- stack[base + 24LLU] = 3639LLU/*throw to this address*/;
43969+ stack[base + 24LLU] = 3678LLU/*throw to this address*/;
4363343970 stack[base + 25LLU] = base;
43634- stack[base + 26LLU] = 3640LLU;
43971+ stack[base + 26LLU] = 3679LLU;
4363543972 // arguments for call to printnr
4363643973 stack[base + 27LLU] = stack[base + 23]/*labelskip*/;
4363743974 // set stack-base & callee-address
@@ -43639,13 +43976,13 @@
4363943976 label = 18446744073709551590LLU; // printnr
4364043977 break;
4364143978 }
43642- case 3639LLU: // copy-back deleter (printnr to procblock)
43979+ case 3678LLU: // copy-back deleter (printnr to procblock)
4364343980 {
4364443981 // copy mutable arguments back from call to printnr
4364543982 label = 3428LLU; // continue to roll stack
4364643983 break;
4364743984 }
43648- case 3640LLU: // return from printnr to procblock
43985+ case 3679LLU: // return from printnr to procblock
4364943986 {
4365043987 // copy mutable arguments back from call to printnr
4365143988 printf("%s", "LLU; // alternative complete");
@@ -43653,9 +43990,9 @@
4365343990 printf("%s", "\n }");
4365443991 printf("%s", "\n case ");
4365543992 // call printnr from procblock
43656- stack[base + 24LLU] = 3641LLU/*throw to this address*/;
43993+ stack[base + 24LLU] = 3680LLU/*throw to this address*/;
4365743994 stack[base + 25LLU] = base;
43658- stack[base + 26LLU] = 3642LLU;
43995+ stack[base + 26LLU] = 3681LLU;
4365943996 // arguments for call to printnr
4366043997 stack[base + 27LLU] = stack[base + 23]/*labelskip*/;
4366143998 // set stack-base & callee-address
@@ -43663,13 +44000,13 @@
4366344000 label = 18446744073709551590LLU; // printnr
4366444001 break;
4366544002 }
43666- case 3641LLU: // copy-back deleter (printnr to procblock)
44003+ case 3680LLU: // copy-back deleter (printnr to procblock)
4366744004 {
4366844005 // copy mutable arguments back from call to printnr
4366944006 label = 3428LLU; // continue to roll stack
4367044007 break;
4367144008 }
43672- case 3642LLU: // return from printnr to procblock
44009+ case 3681LLU: // return from printnr to procblock
4367344010 {
4367444011 // copy mutable arguments back from call to printnr
4367544012 printf("%s", "LLU: // completed if-then-else");
@@ -43676,15 +44013,15 @@
4367644013 printf("%s", "\n {");
4367744014 if(!stack[base + 21]/*returnflag*/)
4367844015 {
43679- label = 3643LLU; // jump to alternative
44016+ label = 3682LLU; // jump to alternative
4368044017 break;
4368144018 }
4368244019
4368344020 // consequent
4368444021 // call MATCHPEEK from procblock
43685- stack[base + 24LLU] = 3645LLU/*throw to this address*/;
44022+ stack[base + 24LLU] = 3684LLU/*throw to this address*/;
4368644023 stack[base + 25LLU] = base;
43687- stack[base + 26LLU] = 3646LLU;
44024+ stack[base + 26LLU] = 3685LLU;
4368844025 // arguments for call to MATCHPEEK
4368944026 stack[base + 27LLU] = stack[base + 8]/*fnid*/;
4369044027 stack[base + 28LLU] = 125LLU;
@@ -43694,7 +44031,7 @@
4369444031 label = 206LLU; // MATCHPEEK
4369544032 break;
4369644033 }
43697- case 3645LLU: // copy-back deleter (MATCHPEEK to procblock)
44034+ case 3684LLU: // copy-back deleter (MATCHPEEK to procblock)
4369844035 {
4369944036 // copy mutable arguments back from call to MATCHPEEK
4370044037 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
@@ -43701,14 +44038,14 @@
4370144038 label = 3428LLU; // continue to roll stack
4370244039 break;
4370344040 }
43704- case 3646LLU: // return from MATCHPEEK to procblock
44041+ case 3685LLU: // return from MATCHPEEK to procblock
4370544042 {
4370644043 // copy mutable arguments back from call to MATCHPEEK
4370744044 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
4370844045 // call EOSbyte from procblock
43709- stack[base + 24LLU] = 3647LLU/*throw to this address*/;
44046+ stack[base + 24LLU] = 3686LLU/*throw to this address*/;
4371044047 stack[base + 25LLU] = base;
43711- stack[base + 26LLU] = 3648LLU;
44048+ stack[base + 26LLU] = 3687LLU;
4371244049 // arguments for call to EOSbyte
4371344050 // set stack-base & callee-address
4371444051 base += 27LLU;
@@ -43715,26 +44052,26 @@
4371544052 label = 77LLU; // EOSbyte
4371644053 break;
4371744054 }
43718- case 3647LLU: // copy-back deleter (EOSbyte to procblock)
44055+ case 3686LLU: // copy-back deleter (EOSbyte to procblock)
4371944056 {
4372044057 // copy mutable arguments back from call to EOSbyte
4372144058 label = 3428LLU; // continue to roll stack
4372244059 break;
4372344060 }
43724- case 3648LLU: // return from EOSbyte to procblock
44061+ case 3687LLU: // return from EOSbyte to procblock
4372544062 {
4372644063 // copy mutable arguments back from call to EOSbyte
4372744064 // copy back results provided by call to EOSbyte
4372844065 stack[base + 19] = stack[base + 27LLU];
43729- label = 3644LLU; // consequent complete
44066+ label = 3683LLU; // consequent complete
4373044067 break;
4373144068 }
43732- case 3643LLU: // alternative
44069+ case 3682LLU: // alternative
4373344070 {
43734- label = 3644LLU; // alternative complete
44071+ label = 3683LLU; // alternative complete
4373544072 break;
4373644073 }
43737- case 3644LLU: // completed if-then-else
44074+ case 3683LLU: // completed if-then-else
4373844075 {
4373944076 label = 3421LLU; // consequent complete
4374044077 break;
@@ -43742,9 +44079,9 @@
4374244079 case 3420LLU: // alternative
4374344080 {
4374444081 // call equ from procblock
43745- stack[base + 22LLU] = 3649LLU/*throw to this address*/;
44082+ stack[base + 22LLU] = 3688LLU/*throw to this address*/;
4374644083 stack[base + 23LLU] = base;
43747- stack[base + 24LLU] = 3650LLU;
44084+ stack[base + 24LLU] = 3689LLU;
4374844085 // arguments for call to equ
4374944086 stack[base + 26LLU] = stack[base + 16]/*content*/;
4375044087 stack[base + 27LLU] = 910732593752702976LLU;
@@ -43753,13 +44090,13 @@
4375344090 label = 18446744073709551600LLU; // equ
4375444091 break;
4375544092 }
43756- case 3649LLU: // copy-back deleter (equ to procblock)
44093+ case 3688LLU: // copy-back deleter (equ to procblock)
4375744094 {
4375844095 // copy mutable arguments back from call to equ
4375944096 label = 3386LLU; // continue to roll stack
4376044097 break;
4376144098 }
43762- case 3650LLU: // return from equ to procblock
44099+ case 3689LLU: // return from equ to procblock
4376344100 {
4376444101 // copy mutable arguments back from call to equ
4376544102 // copy back results provided by call to equ
@@ -43766,15 +44103,15 @@
4376644103 stack[base + 20] = stack[base + 25LLU];
4376744104 if(!stack[base + 20]/*isequal*/)
4376844105 {
43769- label = 3651LLU; // jump to alternative
44106+ label = 3690LLU; // jump to alternative
4377044107 break;
4377144108 }
4377244109
4377344110 // consequent
43774- label = 3654LLU; // skip deleter
44111+ label = 3693LLU; // skip deleter
4377544112 break;
4377644113 }
43777- case 3653LLU: // deleter
44114+ case 3692LLU: // deleter
4377844115 {
4377944116 // throw from procblock
4378044117 if(!stack[base + 22])
@@ -43788,7 +44125,7 @@
4378844125 newstack[0] = (uint64_t)stack; // backup stack location
4378944126 newstack[1] = 1234567890;
4379044127 newstack[2] = base;
43791- newstack[3] = 3655LLU;
44128+ newstack[3] = 3694LLU;
4379244129 stack = newstack;
4379344130 // set stack-base & callee-address
4379444131 base = 4/*deloffset*/;
@@ -43795,7 +44132,7 @@
4379544132 label = 558LLU; // ~scope
4379644133 break;
4379744134 }
43798- case 3655LLU: // return from ~scope to procblock
44135+ case 3694LLU: // return from ~scope to procblock
4379944136 {
4380044137 stack = (uint64_t *)stack[0];
4380144138 // releasing toplevel container
@@ -43804,12 +44141,12 @@
4380444141 label = 3386LLU; // continue unrolling stack, delete next variable
4380544142 break;
4380644143 }
43807- case 3654LLU: // skipped deleter
44144+ case 3693LLU: // skipped deleter
4380844145 {
4380944146 // call linkscope from procblock
43810- stack[base + 23LLU] = 3656LLU/*throw to this address*/;
44147+ stack[base + 23LLU] = 3695LLU/*throw to this address*/;
4381144148 stack[base + 24LLU] = base;
43812- stack[base + 25LLU] = 3657LLU;
44149+ stack[base + 25LLU] = 3696LLU;
4381344150 // arguments for call to linkscope
4381444151 stack[base + 27LLU] = stack[base + 3]/*scope*/;
4381544152 // set stack-base & callee-address
@@ -43817,13 +44154,13 @@
4381744154 label = 585LLU; // linkscope
4381844155 break;
4381944156 }
43820- case 3656LLU: // copy-back deleter (linkscope to procblock)
44157+ case 3695LLU: // copy-back deleter (linkscope to procblock)
4382144158 {
4382244159 // copy mutable arguments back from call to linkscope
4382344160 label = 3386LLU; // continue to roll stack
4382444161 break;
4382544162 }
43826- case 3657LLU: // return from linkscope to procblock
44163+ case 3696LLU: // return from linkscope to procblock
4382744164 {
4382844165 // copy mutable arguments back from call to linkscope
4382944166 // copy back results provided by call to linkscope
@@ -43843,9 +44180,9 @@
4384344180 MOVE(&list->data, &stack[base + 22]/*newscope*/);
4384444181 }
4384544182 // call add from procblock
43846- stack[base + 22LLU] = 3658LLU/*throw to this address*/;
44183+ stack[base + 22LLU] = 3697LLU/*throw to this address*/;
4384744184 stack[base + 23LLU] = base;
43848- stack[base + 24LLU] = 3659LLU;
44185+ stack[base + 24LLU] = 3698LLU;
4384944186 // arguments for call to add
4385044187 stack[base + 26LLU] = 1LLU;
4385144188 stack[base + 27LLU] = stack[base + 17]/*label*/;
@@ -43854,21 +44191,21 @@
4385444191 label = 18446744073709551605LLU; // add
4385544192 break;
4385644193 }
43857- case 3658LLU: // copy-back deleter (add to procblock)
44194+ case 3697LLU: // copy-back deleter (add to procblock)
4385844195 {
4385944196 // copy mutable arguments back from call to add
4386044197 label = 3386LLU; // continue to roll stack
4386144198 break;
4386244199 }
43863- case 3659LLU: // return from add to procblock
44200+ case 3698LLU: // return from add to procblock
4386444201 {
4386544202 // copy mutable arguments back from call to add
4386644203 // copy back results provided by call to add
4386744204 stack[base + 17] = stack[base + 25LLU];
43868- label = 3661LLU; // skip deleter
44205+ label = 3700LLU; // skip deleter
4386944206 break;
4387044207 }
43871- case 3660LLU: // deleter
44208+ case 3699LLU: // deleter
4387244209 {
4387344210 // throw from procblock
4387444211 if(!stack[base + 22])
@@ -43879,13 +44216,13 @@
4387944216 label = 3386LLU; // continue unrolling stack, delete next variable
4388044217 break;
4388144218 }
43882- case 3661LLU: // skipped deleter
44219+ case 3700LLU: // skipped deleter
4388344220 {
4388444221 stack[base + 22] = stack[base + 17]/*label*/;
4388544222 // call add from procblock
43886- stack[base + 23LLU] = 3662LLU/*throw to this address*/;
44223+ stack[base + 23LLU] = 3701LLU/*throw to this address*/;
4388744224 stack[base + 24LLU] = base;
43888- stack[base + 25LLU] = 3663LLU;
44225+ stack[base + 25LLU] = 3702LLU;
4388944226 // arguments for call to add
4389044227 stack[base + 27LLU] = 1LLU;
4389144228 stack[base + 28LLU] = stack[base + 17]/*label*/;
@@ -43894,38 +44231,38 @@
4389444231 label = 18446744073709551605LLU; // add
4389544232 break;
4389644233 }
43897- case 3662LLU: // copy-back deleter (add to procblock)
44234+ case 3701LLU: // copy-back deleter (add to procblock)
4389844235 {
4389944236 // copy mutable arguments back from call to add
43900- label = 3660LLU; // continue to roll stack
44237+ label = 3699LLU; // continue to roll stack
4390144238 break;
4390244239 }
43903- case 3663LLU: // return from add to procblock
44240+ case 3702LLU: // return from add to procblock
4390444241 {
4390544242 // copy mutable arguments back from call to add
4390644243 // copy back results provided by call to add
4390744244 stack[base + 17] = stack[base + 26LLU];
43908- label = 3665LLU; // skip deleter
44245+ label = 3704LLU; // skip deleter
4390944246 break;
4391044247 }
43911- case 3664LLU: // deleter
44248+ case 3703LLU: // deleter
4391244249 {
4391344250 // throw from procblock
4391444251 if(!stack[base + 23])
4391544252 {
43916- label = 3660LLU; // skip, variable already deleted/unscoped
44253+ label = 3699LLU; // skip, variable already deleted/unscoped
4391744254 break;
4391844255 }
43919- label = 3660LLU; // continue unrolling stack, delete next variable
44256+ label = 3699LLU; // continue unrolling stack, delete next variable
4392044257 break;
4392144258 }
43922- case 3665LLU: // skipped deleter
44259+ case 3704LLU: // skipped deleter
4392344260 {
4392444261 stack[base + 23] = stack[base + 17]/*label*/;
4392544262 // call ParseToken from procblock
43926- stack[base + 24LLU] = 3666LLU/*throw to this address*/;
44263+ stack[base + 24LLU] = 3705LLU/*throw to this address*/;
4392744264 stack[base + 25LLU] = base;
43928- stack[base + 26LLU] = 3667LLU;
44265+ stack[base + 26LLU] = 3706LLU;
4392944266 // arguments for call to ParseToken
4393044267 stack[base + 29LLU] = stack[base + 19]/*lookahead*/;
4393144268 // set stack-base & callee-address
@@ -43933,14 +44270,14 @@
4393344270 label = 3LLU; // ParseToken
4393444271 break;
4393544272 }
43936- case 3666LLU: // copy-back deleter (ParseToken to procblock)
44273+ case 3705LLU: // copy-back deleter (ParseToken to procblock)
4393744274 {
4393844275 // copy mutable arguments back from call to ParseToken
4393944276 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
43940- label = 3664LLU; // continue to roll stack
44277+ label = 3703LLU; // continue to roll stack
4394144278 break;
4394244279 }
43943- case 3667LLU: // return from ParseToken to procblock
44280+ case 3706LLU: // return from ParseToken to procblock
4394444281 {
4394544282 // copy mutable arguments back from call to ParseToken
4394644283 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
@@ -43947,42 +44284,42 @@
4394744284 // copy back results provided by call to ParseToken
4394844285 stack[base + 15] = stack[base + 27LLU];
4394944286 stack[base + 16] = stack[base + 28LLU];
43950- label = 3669LLU; // skip deleter
44287+ label = 3708LLU; // skip deleter
4395144288 break;
4395244289 }
43953- case 3668LLU: // deleter
44290+ case 3707LLU: // deleter
4395444291 {
4395544292 // throw from procblock
4395644293 if(!stack[base + 24])
4395744294 {
43958- label = 3664LLU; // skip, variable already deleted/unscoped
44295+ label = 3703LLU; // skip, variable already deleted/unscoped
4395944296 break;
4396044297 }
43961- label = 3664LLU; // continue unrolling stack, delete next variable
44298+ label = 3703LLU; // continue unrolling stack, delete next variable
4396244299 break;
4396344300 }
43964- case 3669LLU: // skipped deleter
44301+ case 3708LLU: // skipped deleter
4396544302 {
43966- label = 3671LLU; // skip deleter
44303+ label = 3710LLU; // skip deleter
4396744304 break;
4396844305 }
43969- case 3670LLU: // deleter
44306+ case 3709LLU: // deleter
4397044307 {
4397144308 // throw from procblock
4397244309 if(!stack[base + 25])
4397344310 {
43974- label = 3668LLU; // skip, variable already deleted/unscoped
44311+ label = 3707LLU; // skip, variable already deleted/unscoped
4397544312 break;
4397644313 }
43977- label = 3668LLU; // continue unrolling stack, delete next variable
44314+ label = 3707LLU; // continue unrolling stack, delete next variable
4397844315 break;
4397944316 }
43980- case 3671LLU: // skipped deleter
44317+ case 3710LLU: // skipped deleter
4398144318 {
4398244319 // call isident from procblock
43983- stack[base + 26LLU] = 3672LLU/*throw to this address*/;
44320+ stack[base + 26LLU] = 3711LLU/*throw to this address*/;
4398444321 stack[base + 27LLU] = base;
43985- stack[base + 28LLU] = 3673LLU;
44322+ stack[base + 28LLU] = 3712LLU;
4398644323 // arguments for call to isident
4398744324 stack[base + 30LLU] = stack[base + 15]/*variant*/;
4398844325 stack[base + 31LLU] = stack[base + 16]/*content*/;
@@ -43992,13 +44329,13 @@
4399244329 label = 184LLU; // isident
4399344330 break;
4399444331 }
43995- case 3672LLU: // copy-back deleter (isident to procblock)
44332+ case 3711LLU: // copy-back deleter (isident to procblock)
4399644333 {
4399744334 // copy mutable arguments back from call to isident
43998- label = 3664LLU; // continue to roll stack
44335+ label = 3703LLU; // continue to roll stack
4399944336 break;
4400044337 }
44001- case 3673LLU: // return from isident to procblock
44338+ case 3712LLU: // return from isident to procblock
4400244339 {
4400344340 // copy mutable arguments back from call to isident
4400444341 // copy back results provided by call to isident
@@ -44005,15 +44342,15 @@
4400544342 stack[base + 20] = stack[base + 29LLU];
4400644343 if(!stack[base + 20]/*isequal*/)
4400744344 {
44008- label = 3674LLU; // jump to alternative
44345+ label = 3713LLU; // jump to alternative
4400944346 break;
4401044347 }
4401144348
4401244349 // consequent
4401344350 // call ParseToken from procblock
44014- stack[base + 26LLU] = 3676LLU/*throw to this address*/;
44351+ stack[base + 26LLU] = 3715LLU/*throw to this address*/;
4401544352 stack[base + 27LLU] = base;
44016- stack[base + 28LLU] = 3677LLU;
44353+ stack[base + 28LLU] = 3716LLU;
4401744354 // arguments for call to ParseToken
4401844355 stack[base + 31LLU] = stack[base + 19]/*lookahead*/;
4401944356 // set stack-base & callee-address
@@ -44021,14 +44358,14 @@
4402144358 label = 3LLU; // ParseToken
4402244359 break;
4402344360 }
44024- case 3676LLU: // copy-back deleter (ParseToken to procblock)
44361+ case 3715LLU: // copy-back deleter (ParseToken to procblock)
4402544362 {
4402644363 // copy mutable arguments back from call to ParseToken
4402744364 stack[base + 19]/*lookahead*/ = stack[base + 31LLU];
44028- label = 3664LLU; // continue to roll stack
44365+ label = 3703LLU; // continue to roll stack
4402944366 break;
4403044367 }
44031- case 3677LLU: // return from ParseToken to procblock
44368+ case 3716LLU: // return from ParseToken to procblock
4403244369 {
4403344370 // copy mutable arguments back from call to ParseToken
4403444371 stack[base + 19]/*lookahead*/ = stack[base + 31LLU];
@@ -44035,49 +44372,49 @@
4403544372 // copy back results provided by call to ParseToken
4403644373 stack[base + 15] = stack[base + 29LLU];
4403744374 stack[base + 16] = stack[base + 30LLU];
44038- label = 3679LLU; // skip deleter
44375+ label = 3718LLU; // skip deleter
4403944376 break;
4404044377 }
44041- case 3678LLU: // deleter
44378+ case 3717LLU: // deleter
4404244379 {
4404344380 // throw from procblock
4404444381 if(!stack[base + 24])
4404544382 {
44046- label = 3664LLU; // skip, variable already deleted/unscoped
44383+ label = 3703LLU; // skip, variable already deleted/unscoped
4404744384 break;
4404844385 }
44049- label = 3664LLU; // continue unrolling stack, delete next variable
44386+ label = 3703LLU; // continue unrolling stack, delete next variable
4405044387 break;
4405144388 }
44052- case 3679LLU: // skipped deleter
44389+ case 3718LLU: // skipped deleter
4405344390 {
4405444391 stack[base + 24] = 1;
44055- label = 3681LLU; // skip deleter
44392+ label = 3720LLU; // skip deleter
4405644393 break;
4405744394 }
44058- case 3680LLU: // deleter
44395+ case 3719LLU: // deleter
4405944396 {
4406044397 // throw from procblock
4406144398 if(!stack[base + 25])
4406244399 {
44063- label = 3678LLU; // skip, variable already deleted/unscoped
44400+ label = 3717LLU; // skip, variable already deleted/unscoped
4406444401 break;
4406544402 }
44066- label = 3678LLU; // continue unrolling stack, delete next variable
44403+ label = 3717LLU; // continue unrolling stack, delete next variable
4406744404 break;
4406844405 }
44069- case 3681LLU: // skipped deleter
44406+ case 3720LLU: // skipped deleter
4407044407 {
4407144408 stack[base + 25] = 0;
44072- label = 3675LLU; // consequent complete
44409+ label = 3714LLU; // consequent complete
4407344410 break;
4407444411 }
44075- case 3674LLU: // alternative
44412+ case 3713LLU: // alternative
4407644413 {
4407744414 // call isident from procblock
44078- stack[base + 26LLU] = 3682LLU/*throw to this address*/;
44415+ stack[base + 26LLU] = 3721LLU/*throw to this address*/;
4407944416 stack[base + 27LLU] = base;
44080- stack[base + 28LLU] = 3683LLU;
44417+ stack[base + 28LLU] = 3722LLU;
4408144418 // arguments for call to isident
4408244419 stack[base + 30LLU] = stack[base + 15]/*variant*/;
4408344420 stack[base + 31LLU] = stack[base + 16]/*content*/;
@@ -44087,13 +44424,13 @@
4408744424 label = 184LLU; // isident
4408844425 break;
4408944426 }
44090- case 3682LLU: // copy-back deleter (isident to procblock)
44427+ case 3721LLU: // copy-back deleter (isident to procblock)
4409144428 {
4409244429 // copy mutable arguments back from call to isident
44093- label = 3664LLU; // continue to roll stack
44430+ label = 3703LLU; // continue to roll stack
4409444431 break;
4409544432 }
44096- case 3683LLU: // return from isident to procblock
44433+ case 3722LLU: // return from isident to procblock
4409744434 {
4409844435 // copy mutable arguments back from call to isident
4409944436 // copy back results provided by call to isident
@@ -44100,7 +44437,7 @@
4410044437 stack[base + 20] = stack[base + 29LLU];
4410144438 if(!stack[base + 20]/*isequal*/)
4410244439 {
44103- label = 3684LLU; // jump to alternative
44440+ label = 3723LLU; // jump to alternative
4410444441 break;
4410544442 }
4410644443
@@ -44107,21 +44444,21 @@
4410744444 // consequent
4410844445 if(!stack[base + 7]/*fnIO*/)
4410944446 {
44110- label = 3686LLU; // jump to alternative
44447+ label = 3725LLU; // jump to alternative
4411144448 break;
4411244449 }
4411344450
4411444451 // consequent
44115- label = 3687LLU; // consequent complete
44452+ label = 3726LLU; // consequent complete
4411644453 break;
4411744454 }
44118- case 3686LLU: // alternative
44455+ case 3725LLU: // alternative
4411944456 {
4412044457 fprintf(stderr, "%s", "in function ");
4412144458 // call reportid from procblock
44122- stack[base + 26LLU] = 3688LLU/*throw to this address*/;
44459+ stack[base + 26LLU] = 3727LLU/*throw to this address*/;
4412344460 stack[base + 27LLU] = base;
44124- stack[base + 28LLU] = 3689LLU;
44461+ stack[base + 28LLU] = 3728LLU;
4412544462 // arguments for call to reportid
4412644463 stack[base + 29LLU] = stack[base + 8]/*fnid*/;
4412744464 // set stack-base & callee-address
@@ -44129,31 +44466,31 @@
4412944466 label = 18446744073709551586LLU; // reportid
4413044467 break;
4413144468 }
44132- case 3688LLU: // copy-back deleter (reportid to procblock)
44469+ case 3727LLU: // copy-back deleter (reportid to procblock)
4413344470 {
4413444471 // copy mutable arguments back from call to reportid
44135- label = 3664LLU; // continue to roll stack
44472+ label = 3703LLU; // continue to roll stack
4413644473 break;
4413744474 }
44138- case 3689LLU: // return from reportid to procblock
44475+ case 3728LLU: // return from reportid to procblock
4413944476 {
4414044477 // copy mutable arguments back from call to reportid
4414144478 fprintf(stderr, "%s", ": ");
4414244479 fprintf(stderr, "%s", "while input used in non-IO environment\n");
4414344480 {
44144- label = 3664LLU; // throw: begin to unroll stack
44481+ label = 3703LLU; // throw: begin to unroll stack
4414544482 break;
4414644483 }
4414744484
44148- label = 3687LLU; // alternative complete
44485+ label = 3726LLU; // alternative complete
4414944486 break;
4415044487 }
44151- case 3687LLU: // completed if-then-else
44488+ case 3726LLU: // completed if-then-else
4415244489 {
4415344490 // call ParseToken from procblock
44154- stack[base + 26LLU] = 3690LLU/*throw to this address*/;
44491+ stack[base + 26LLU] = 3729LLU/*throw to this address*/;
4415544492 stack[base + 27LLU] = base;
44156- stack[base + 28LLU] = 3691LLU;
44493+ stack[base + 28LLU] = 3730LLU;
4415744494 // arguments for call to ParseToken
4415844495 stack[base + 31LLU] = stack[base + 19]/*lookahead*/;
4415944496 // set stack-base & callee-address
@@ -44161,14 +44498,14 @@
4416144498 label = 3LLU; // ParseToken
4416244499 break;
4416344500 }
44164- case 3690LLU: // copy-back deleter (ParseToken to procblock)
44501+ case 3729LLU: // copy-back deleter (ParseToken to procblock)
4416544502 {
4416644503 // copy mutable arguments back from call to ParseToken
4416744504 stack[base + 19]/*lookahead*/ = stack[base + 31LLU];
44168- label = 3664LLU; // continue to roll stack
44505+ label = 3703LLU; // continue to roll stack
4416944506 break;
4417044507 }
44171- case 3691LLU: // return from ParseToken to procblock
44508+ case 3730LLU: // return from ParseToken to procblock
4417244509 {
4417344510 // copy mutable arguments back from call to ParseToken
4417444511 stack[base + 19]/*lookahead*/ = stack[base + 31LLU];
@@ -44175,93 +44512,93 @@
4417544512 // copy back results provided by call to ParseToken
4417644513 stack[base + 15] = stack[base + 29LLU];
4417744514 stack[base + 16] = stack[base + 30LLU];
44178- label = 3693LLU; // skip deleter
44515+ label = 3732LLU; // skip deleter
4417944516 break;
4418044517 }
44181- case 3692LLU: // deleter
44518+ case 3731LLU: // deleter
4418244519 {
4418344520 // throw from procblock
4418444521 if(!stack[base + 24])
4418544522 {
44186- label = 3664LLU; // skip, variable already deleted/unscoped
44523+ label = 3703LLU; // skip, variable already deleted/unscoped
4418744524 break;
4418844525 }
44189- label = 3664LLU; // continue unrolling stack, delete next variable
44526+ label = 3703LLU; // continue unrolling stack, delete next variable
4419044527 break;
4419144528 }
44192- case 3693LLU: // skipped deleter
44529+ case 3732LLU: // skipped deleter
4419344530 {
4419444531 stack[base + 24] = 0;
44195- label = 3695LLU; // skip deleter
44532+ label = 3734LLU; // skip deleter
4419644533 break;
4419744534 }
44198- case 3694LLU: // deleter
44535+ case 3733LLU: // deleter
4419944536 {
4420044537 // throw from procblock
4420144538 if(!stack[base + 25])
4420244539 {
44203- label = 3692LLU; // skip, variable already deleted/unscoped
44540+ label = 3731LLU; // skip, variable already deleted/unscoped
4420444541 break;
4420544542 }
44206- label = 3692LLU; // continue unrolling stack, delete next variable
44543+ label = 3731LLU; // continue unrolling stack, delete next variable
4420744544 break;
4420844545 }
44209- case 3695LLU: // skipped deleter
44546+ case 3734LLU: // skipped deleter
4421044547 {
4421144548 stack[base + 25] = 1;
44212- label = 3685LLU; // consequent complete
44549+ label = 3724LLU; // consequent complete
4421344550 break;
4421444551 }
44215- case 3684LLU: // alternative
44552+ case 3723LLU: // alternative
4421644553 {
44217- label = 3697LLU; // skip deleter
44554+ label = 3736LLU; // skip deleter
4421844555 break;
4421944556 }
44220- case 3696LLU: // deleter
44557+ case 3735LLU: // deleter
4422144558 {
4422244559 // throw from procblock
4422344560 if(!stack[base + 24])
4422444561 {
44225- label = 3664LLU; // skip, variable already deleted/unscoped
44562+ label = 3703LLU; // skip, variable already deleted/unscoped
4422644563 break;
4422744564 }
44228- label = 3664LLU; // continue unrolling stack, delete next variable
44565+ label = 3703LLU; // continue unrolling stack, delete next variable
4422944566 break;
4423044567 }
44231- case 3697LLU: // skipped deleter
44568+ case 3736LLU: // skipped deleter
4423244569 {
4423344570 stack[base + 24] = 0;
44234- label = 3699LLU; // skip deleter
44571+ label = 3738LLU; // skip deleter
4423544572 break;
4423644573 }
44237- case 3698LLU: // deleter
44574+ case 3737LLU: // deleter
4423844575 {
4423944576 // throw from procblock
4424044577 if(!stack[base + 25])
4424144578 {
44242- label = 3696LLU; // skip, variable already deleted/unscoped
44579+ label = 3735LLU; // skip, variable already deleted/unscoped
4424344580 break;
4424444581 }
44245- label = 3696LLU; // continue unrolling stack, delete next variable
44582+ label = 3735LLU; // continue unrolling stack, delete next variable
4424644583 break;
4424744584 }
44248- case 3699LLU: // skipped deleter
44585+ case 3738LLU: // skipped deleter
4424944586 {
4425044587 stack[base + 25] = 0;
44251- label = 3685LLU; // alternative complete
44588+ label = 3724LLU; // alternative complete
4425244589 break;
4425344590 }
44254- case 3685LLU: // completed if-then-else
44591+ case 3724LLU: // completed if-then-else
4425544592 {
44256- label = 3675LLU; // alternative complete
44593+ label = 3714LLU; // alternative complete
4425744594 break;
4425844595 }
44259- case 3675LLU: // completed if-then-else
44596+ case 3714LLU: // completed if-then-else
4426044597 {
4426144598 // call equ from procblock
44262- stack[base + 26LLU] = 3700LLU/*throw to this address*/;
44599+ stack[base + 26LLU] = 3739LLU/*throw to this address*/;
4426344600 stack[base + 27LLU] = base;
44264- stack[base + 28LLU] = 3701LLU;
44601+ stack[base + 28LLU] = 3740LLU;
4426544602 // arguments for call to equ
4426644603 stack[base + 30LLU] = stack[base + 15]/*variant*/;
4426744604 stack[base + 31LLU] = 0LLU;
@@ -44270,13 +44607,13 @@
4427044607 label = 18446744073709551600LLU; // equ
4427144608 break;
4427244609 }
44273- case 3700LLU: // copy-back deleter (equ to procblock)
44610+ case 3739LLU: // copy-back deleter (equ to procblock)
4427444611 {
4427544612 // copy mutable arguments back from call to equ
44276- label = 3670LLU; // continue to roll stack
44613+ label = 3709LLU; // continue to roll stack
4427744614 break;
4427844615 }
44279- case 3701LLU: // return from equ to procblock
44616+ case 3740LLU: // return from equ to procblock
4428044617 {
4428144618 // copy mutable arguments back from call to equ
4428244619 // copy back results provided by call to equ
@@ -44283,15 +44620,15 @@
4428344620 stack[base + 20] = stack[base + 29LLU];
4428444621 if(!stack[base + 20]/*isequal*/)
4428544622 {
44286- label = 3702LLU; // jump to alternative
44623+ label = 3741LLU; // jump to alternative
4428744624 break;
4428844625 }
4428944626
4429044627 // consequent
4429144628 // call equ from procblock
44292- stack[base + 26LLU] = 3704LLU/*throw to this address*/;
44629+ stack[base + 26LLU] = 3743LLU/*throw to this address*/;
4429344630 stack[base + 27LLU] = base;
44294- stack[base + 28LLU] = 3705LLU;
44631+ stack[base + 28LLU] = 3744LLU;
4429544632 // arguments for call to equ
4429644633 stack[base + 30LLU] = stack[base + 16]/*content*/;
4429744634 stack[base + 31LLU] = 40LLU;
@@ -44300,13 +44637,13 @@
4430044637 label = 18446744073709551600LLU; // equ
4430144638 break;
4430244639 }
44303- case 3704LLU: // copy-back deleter (equ to procblock)
44640+ case 3743LLU: // copy-back deleter (equ to procblock)
4430444641 {
4430544642 // copy mutable arguments back from call to equ
44306- label = 3670LLU; // continue to roll stack
44643+ label = 3709LLU; // continue to roll stack
4430744644 break;
4430844645 }
44309- case 3705LLU: // return from equ to procblock
44646+ case 3744LLU: // return from equ to procblock
4431044647 {
4431144648 // copy mutable arguments back from call to equ
4431244649 // copy back results provided by call to equ
@@ -44313,21 +44650,21 @@
4431344650 stack[base + 20] = stack[base + 29LLU];
4431444651 if(!stack[base + 20]/*isequal*/)
4431544652 {
44316- label = 3706LLU; // jump to alternative
44653+ label = 3745LLU; // jump to alternative
4431744654 break;
4431844655 }
4431944656
4432044657 // consequent
44321- label = 3707LLU; // consequent complete
44658+ label = 3746LLU; // consequent complete
4432244659 break;
4432344660 }
44324- case 3706LLU: // alternative
44661+ case 3745LLU: // alternative
4432544662 {
4432644663 fprintf(stderr, "%s", "expected '(' but found token ");
4432744664 // call reporttok from procblock
44328- stack[base + 26LLU] = 3708LLU/*throw to this address*/;
44665+ stack[base + 26LLU] = 3747LLU/*throw to this address*/;
4432944666 stack[base + 27LLU] = base;
44330- stack[base + 28LLU] = 3709LLU;
44667+ stack[base + 28LLU] = 3748LLU;
4433144668 // arguments for call to reporttok
4433244669 stack[base + 29LLU] = stack[base + 15]/*variant*/;
4433344670 stack[base + 30LLU] = stack[base + 16]/*content*/;
@@ -44336,47 +44673,47 @@
4433644673 label = 18446744073709551582LLU; // reporttok
4433744674 break;
4433844675 }
44339- case 3708LLU: // copy-back deleter (reporttok to procblock)
44676+ case 3747LLU: // copy-back deleter (reporttok to procblock)
4434044677 {
4434144678 // copy mutable arguments back from call to reporttok
44342- label = 3670LLU; // continue to roll stack
44679+ label = 3709LLU; // continue to roll stack
4434344680 break;
4434444681 }
44345- case 3709LLU: // return from reporttok to procblock
44682+ case 3748LLU: // return from reporttok to procblock
4434644683 {
4434744684 // copy mutable arguments back from call to reporttok
4434844685 fprintf(stderr, "%s", "\n");
4434944686 {
44350- label = 3670LLU; // throw: begin to unroll stack
44687+ label = 3709LLU; // throw: begin to unroll stack
4435144688 break;
4435244689 }
4435344690
44354- label = 3707LLU; // alternative complete
44691+ label = 3746LLU; // alternative complete
4435544692 break;
4435644693 }
44357- case 3707LLU: // completed if-then-else
44694+ case 3746LLU: // completed if-then-else
4435844695 {
44359- label = 3711LLU; // skip deleter
44696+ label = 3750LLU; // skip deleter
4436044697 break;
4436144698 }
44362- case 3710LLU: // deleter
44699+ case 3749LLU: // deleter
4436344700 {
4436444701 // throw from procblock
4436544702 if(!stack[base + 26])
4436644703 {
44367- label = 3670LLU; // skip, variable already deleted/unscoped
44704+ label = 3709LLU; // skip, variable already deleted/unscoped
4436844705 break;
4436944706 }
44370- label = 3670LLU; // continue unrolling stack, delete next variable
44707+ label = 3709LLU; // continue unrolling stack, delete next variable
4437144708 break;
4437244709 }
44373- case 3711LLU: // skipped deleter
44710+ case 3750LLU: // skipped deleter
4437444711 {
4437544712 stack[base + 26] = 0;
4437644713 // call ParseToken from procblock
44377- stack[base + 27LLU] = 3712LLU/*throw to this address*/;
44714+ stack[base + 27LLU] = 3751LLU/*throw to this address*/;
4437844715 stack[base + 28LLU] = base;
44379- stack[base + 29LLU] = 3713LLU;
44716+ stack[base + 29LLU] = 3752LLU;
4438044717 // arguments for call to ParseToken
4438144718 stack[base + 32LLU] = stack[base + 19]/*lookahead*/;
4438244719 // set stack-base & callee-address
@@ -44384,14 +44721,14 @@
4438444721 label = 3LLU; // ParseToken
4438544722 break;
4438644723 }
44387- case 3712LLU: // copy-back deleter (ParseToken to procblock)
44724+ case 3751LLU: // copy-back deleter (ParseToken to procblock)
4438844725 {
4438944726 // copy mutable arguments back from call to ParseToken
4439044727 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
44391- label = 3710LLU; // continue to roll stack
44728+ label = 3749LLU; // continue to roll stack
4439244729 break;
4439344730 }
44394- case 3713LLU: // return from ParseToken to procblock
44731+ case 3752LLU: // return from ParseToken to procblock
4439544732 {
4439644733 // copy mutable arguments back from call to ParseToken
4439744734 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
@@ -44399,9 +44736,9 @@
4439944736 stack[base + 15] = stack[base + 30LLU];
4440044737 stack[base + 26] = stack[base + 31LLU];
4440144738 // call equ from procblock
44402- stack[base + 27LLU] = 3714LLU/*throw to this address*/;
44739+ stack[base + 27LLU] = 3753LLU/*throw to this address*/;
4440344740 stack[base + 28LLU] = base;
44404- stack[base + 29LLU] = 3715LLU;
44741+ stack[base + 29LLU] = 3754LLU;
4440544742 // arguments for call to equ
4440644743 stack[base + 31LLU] = stack[base + 15]/*variant*/;
4440744744 stack[base + 32LLU] = 4LLU;
@@ -44410,13 +44747,13 @@
4441044747 label = 18446744073709551600LLU; // equ
4441144748 break;
4441244749 }
44413- case 3714LLU: // copy-back deleter (equ to procblock)
44750+ case 3753LLU: // copy-back deleter (equ to procblock)
4441444751 {
4441544752 // copy mutable arguments back from call to equ
44416- label = 3710LLU; // continue to roll stack
44753+ label = 3749LLU; // continue to roll stack
4441744754 break;
4441844755 }
44419- case 3715LLU: // return from equ to procblock
44756+ case 3754LLU: // return from equ to procblock
4442044757 {
4442144758 // copy mutable arguments back from call to equ
4442244759 // copy back results provided by call to equ
@@ -44423,15 +44760,15 @@
4442344760 stack[base + 20] = stack[base + 30LLU];
4442444761 if(!stack[base + 20]/*isequal*/)
4442544762 {
44426- label = 3716LLU; // jump to alternative
44763+ label = 3755LLU; // jump to alternative
4442744764 break;
4442844765 }
4442944766
4443044767 // consequent
4443144768 // call assertu64 from procblock
44432- stack[base + 27LLU] = 3718LLU/*throw to this address*/;
44769+ stack[base + 27LLU] = 3757LLU/*throw to this address*/;
4443344770 stack[base + 28LLU] = base;
44434- stack[base + 29LLU] = 3719LLU;
44771+ stack[base + 29LLU] = 3758LLU;
4443544772 // arguments for call to assertu64
4443644773 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4443744774 stack[base + 31LLU] = 910732593752702976LLU;
@@ -44443,25 +44780,25 @@
4444344780 label = 3085LLU; // assertu64
4444444781 break;
4444544782 }
44446- case 3718LLU: // copy-back deleter (assertu64 to procblock)
44783+ case 3757LLU: // copy-back deleter (assertu64 to procblock)
4444744784 {
4444844785 // copy mutable arguments back from call to assertu64
44449- label = 3710LLU; // continue to roll stack
44786+ label = 3749LLU; // continue to roll stack
4445044787 break;
4445144788 }
44452- case 3719LLU: // return from assertu64 to procblock
44789+ case 3758LLU: // return from assertu64 to procblock
4445344790 {
4445444791 // copy mutable arguments back from call to assertu64
44455- label = 3717LLU; // consequent complete
44792+ label = 3756LLU; // consequent complete
4445644793 break;
4445744794 }
44458- case 3716LLU: // alternative
44795+ case 3755LLU: // alternative
4445944796 {
4446044797 fprintf(stderr, "%s", "expected identifier in while but found ");
4446144798 // call reporttok from procblock
44462- stack[base + 27LLU] = 3720LLU/*throw to this address*/;
44799+ stack[base + 27LLU] = 3759LLU/*throw to this address*/;
4446344800 stack[base + 28LLU] = base;
44464- stack[base + 29LLU] = 3721LLU;
44801+ stack[base + 29LLU] = 3760LLU;
4446544802 // arguments for call to reporttok
4446644803 stack[base + 30LLU] = stack[base + 15]/*variant*/;
4446744804 stack[base + 31LLU] = stack[base + 26]/*loopid*/;
@@ -44470,30 +44807,30 @@
4447044807 label = 18446744073709551582LLU; // reporttok
4447144808 break;
4447244809 }
44473- case 3720LLU: // copy-back deleter (reporttok to procblock)
44810+ case 3759LLU: // copy-back deleter (reporttok to procblock)
4447444811 {
4447544812 // copy mutable arguments back from call to reporttok
44476- label = 3710LLU; // continue to roll stack
44813+ label = 3749LLU; // continue to roll stack
4447744814 break;
4447844815 }
44479- case 3721LLU: // return from reporttok to procblock
44816+ case 3760LLU: // return from reporttok to procblock
4448044817 {
4448144818 // copy mutable arguments back from call to reporttok
4448244819 fprintf(stderr, "%s", "\n");
4448344820 {
44484- label = 3710LLU; // throw: begin to unroll stack
44821+ label = 3749LLU; // throw: begin to unroll stack
4448544822 break;
4448644823 }
4448744824
44488- label = 3717LLU; // alternative complete
44825+ label = 3756LLU; // alternative complete
4448944826 break;
4449044827 }
44491- case 3717LLU: // completed if-then-else
44828+ case 3756LLU: // completed if-then-else
4449244829 {
4449344830 // call matchsym from procblock
44494- stack[base + 27LLU] = 3722LLU/*throw to this address*/;
44831+ stack[base + 27LLU] = 3761LLU/*throw to this address*/;
4449544832 stack[base + 28LLU] = base;
44496- stack[base + 29LLU] = 3723LLU;
44833+ stack[base + 29LLU] = 3762LLU;
4449744834 // arguments for call to matchsym
4449844835 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4449944836 stack[base + 31LLU] = 41LLU;
@@ -44503,28 +44840,28 @@
4450344840 label = 222LLU; // matchsym
4450444841 break;
4450544842 }
44506- case 3722LLU: // copy-back deleter (matchsym to procblock)
44843+ case 3761LLU: // copy-back deleter (matchsym to procblock)
4450744844 {
4450844845 // copy mutable arguments back from call to matchsym
4450944846 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
44510- label = 3710LLU; // continue to roll stack
44847+ label = 3749LLU; // continue to roll stack
4451144848 break;
4451244849 }
44513- case 3723LLU: // return from matchsym to procblock
44850+ case 3762LLU: // return from matchsym to procblock
4451444851 {
4451544852 // copy mutable arguments back from call to matchsym
4451644853 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
4451744854 if(!stack[base + 24]/*decflag*/)
4451844855 {
44519- label = 3724LLU; // jump to alternative
44856+ label = 3763LLU; // jump to alternative
4452044857 break;
4452144858 }
4452244859
4452344860 // consequent
4452444861 // call matchsym from procblock
44525- stack[base + 27LLU] = 3726LLU/*throw to this address*/;
44862+ stack[base + 27LLU] = 3765LLU/*throw to this address*/;
4452644863 stack[base + 28LLU] = base;
44527- stack[base + 29LLU] = 3727LLU;
44864+ stack[base + 29LLU] = 3766LLU;
4452844865 // arguments for call to matchsym
4452944866 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4453044867 stack[base + 31LLU] = 45LLU;
@@ -44534,21 +44871,21 @@
4453444871 label = 222LLU; // matchsym
4453544872 break;
4453644873 }
44537- case 3726LLU: // copy-back deleter (matchsym to procblock)
44874+ case 3765LLU: // copy-back deleter (matchsym to procblock)
4453844875 {
4453944876 // copy mutable arguments back from call to matchsym
4454044877 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
44541- label = 3710LLU; // continue to roll stack
44878+ label = 3749LLU; // continue to roll stack
4454244879 break;
4454344880 }
44544- case 3727LLU: // return from matchsym to procblock
44881+ case 3766LLU: // return from matchsym to procblock
4454544882 {
4454644883 // copy mutable arguments back from call to matchsym
4454744884 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
4454844885 // call matchsym from procblock
44549- stack[base + 27LLU] = 3728LLU/*throw to this address*/;
44886+ stack[base + 27LLU] = 3767LLU/*throw to this address*/;
4455044887 stack[base + 28LLU] = base;
44551- stack[base + 29LLU] = 3729LLU;
44888+ stack[base + 29LLU] = 3768LLU;
4455244889 // arguments for call to matchsym
4455344890 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4455444891 stack[base + 31LLU] = 62LLU;
@@ -44558,21 +44895,21 @@
4455844895 label = 222LLU; // matchsym
4455944896 break;
4456044897 }
44561- case 3728LLU: // copy-back deleter (matchsym to procblock)
44898+ case 3767LLU: // copy-back deleter (matchsym to procblock)
4456244899 {
4456344900 // copy mutable arguments back from call to matchsym
4456444901 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
44565- label = 3710LLU; // continue to roll stack
44902+ label = 3749LLU; // continue to roll stack
4456644903 break;
4456744904 }
44568- case 3729LLU: // return from matchsym to procblock
44905+ case 3768LLU: // return from matchsym to procblock
4456944906 {
4457044907 // copy mutable arguments back from call to matchsym
4457144908 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
4457244909 // call matchsym from procblock
44573- stack[base + 27LLU] = 3730LLU/*throw to this address*/;
44910+ stack[base + 27LLU] = 3769LLU/*throw to this address*/;
4457444911 stack[base + 28LLU] = base;
44575- stack[base + 29LLU] = 3731LLU;
44912+ stack[base + 29LLU] = 3770LLU;
4457644913 // arguments for call to matchsym
4457744914 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4457844915 stack[base + 31LLU] = 40LLU;
@@ -44582,38 +44919,38 @@
4458244919 label = 222LLU; // matchsym
4458344920 break;
4458444921 }
44585- case 3730LLU: // copy-back deleter (matchsym to procblock)
44922+ case 3769LLU: // copy-back deleter (matchsym to procblock)
4458644923 {
4458744924 // copy mutable arguments back from call to matchsym
4458844925 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
44589- label = 3710LLU; // continue to roll stack
44926+ label = 3749LLU; // continue to roll stack
4459044927 break;
4459144928 }
44592- case 3731LLU: // return from matchsym to procblock
44929+ case 3770LLU: // return from matchsym to procblock
4459344930 {
4459444931 // copy mutable arguments back from call to matchsym
4459544932 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
44596- label = 3733LLU; // skip deleter
44933+ label = 3772LLU; // skip deleter
4459744934 break;
4459844935 }
44599- case 3732LLU: // deleter
44936+ case 3771LLU: // deleter
4460044937 {
4460144938 // throw from procblock
4460244939 if(!stack[base + 27])
4460344940 {
44604- label = 3710LLU; // skip, variable already deleted/unscoped
44941+ label = 3749LLU; // skip, variable already deleted/unscoped
4460544942 break;
4460644943 }
44607- label = 3710LLU; // continue unrolling stack, delete next variable
44944+ label = 3749LLU; // continue unrolling stack, delete next variable
4460844945 break;
4460944946 }
44610- case 3733LLU: // skipped deleter
44947+ case 3772LLU: // skipped deleter
4461144948 {
4461244949 stack[base + 27] = 0;
4461344950 // call ParseToken from procblock
44614- stack[base + 28LLU] = 3734LLU/*throw to this address*/;
44951+ stack[base + 28LLU] = 3773LLU/*throw to this address*/;
4461544952 stack[base + 29LLU] = base;
44616- stack[base + 30LLU] = 3735LLU;
44953+ stack[base + 30LLU] = 3774LLU;
4461744954 // arguments for call to ParseToken
4461844955 stack[base + 33LLU] = stack[base + 19]/*lookahead*/;
4461944956 // set stack-base & callee-address
@@ -44621,14 +44958,14 @@
4462144958 label = 3LLU; // ParseToken
4462244959 break;
4462344960 }
44624- case 3734LLU: // copy-back deleter (ParseToken to procblock)
44961+ case 3773LLU: // copy-back deleter (ParseToken to procblock)
4462544962 {
4462644963 // copy mutable arguments back from call to ParseToken
4462744964 stack[base + 19]/*lookahead*/ = stack[base + 33LLU];
44628- label = 3732LLU; // continue to roll stack
44965+ label = 3771LLU; // continue to roll stack
4462944966 break;
4463044967 }
44631- case 3735LLU: // return from ParseToken to procblock
44968+ case 3774LLU: // return from ParseToken to procblock
4463244969 {
4463344970 // copy mutable arguments back from call to ParseToken
4463444971 stack[base + 19]/*lookahead*/ = stack[base + 33LLU];
@@ -44636,9 +44973,9 @@
4463644973 stack[base + 15] = stack[base + 31LLU];
4463744974 stack[base + 27] = stack[base + 32LLU];
4463844975 // call equ from procblock
44639- stack[base + 28LLU] = 3736LLU/*throw to this address*/;
44976+ stack[base + 28LLU] = 3775LLU/*throw to this address*/;
4464044977 stack[base + 29LLU] = base;
44641- stack[base + 30LLU] = 3737LLU;
44978+ stack[base + 30LLU] = 3776LLU;
4464244979 // arguments for call to equ
4464344980 stack[base + 32LLU] = stack[base + 15]/*variant*/;
4464444981 stack[base + 33LLU] = 4LLU;
@@ -44647,13 +44984,13 @@
4464744984 label = 18446744073709551600LLU; // equ
4464844985 break;
4464944986 }
44650- case 3736LLU: // copy-back deleter (equ to procblock)
44987+ case 3775LLU: // copy-back deleter (equ to procblock)
4465144988 {
4465244989 // copy mutable arguments back from call to equ
44653- label = 3732LLU; // continue to roll stack
44990+ label = 3771LLU; // continue to roll stack
4465444991 break;
4465544992 }
44656- case 3737LLU: // return from equ to procblock
44993+ case 3776LLU: // return from equ to procblock
4465744994 {
4465844995 // copy mutable arguments back from call to equ
4465944996 // copy back results provided by call to equ
@@ -44660,15 +44997,15 @@
4466044997 stack[base + 20] = stack[base + 31LLU];
4466144998 if(!stack[base + 20]/*isequal*/)
4466244999 {
44663- label = 3738LLU; // jump to alternative
45000+ label = 3777LLU; // jump to alternative
4466445001 break;
4466545002 }
4466645003
4466745004 // consequent
4466845005 // call assertu64 from procblock
44669- stack[base + 28LLU] = 3740LLU/*throw to this address*/;
45006+ stack[base + 28LLU] = 3779LLU/*throw to this address*/;
4467045007 stack[base + 29LLU] = base;
44671- stack[base + 30LLU] = 3741LLU;
45008+ stack[base + 30LLU] = 3780LLU;
4467245009 // arguments for call to assertu64
4467345010 stack[base + 31LLU] = stack[base + 8]/*fnid*/;
4467445011 stack[base + 32LLU] = 910732593752702976LLU;
@@ -44680,25 +45017,25 @@
4468045017 label = 3085LLU; // assertu64
4468145018 break;
4468245019 }
44683- case 3740LLU: // copy-back deleter (assertu64 to procblock)
45020+ case 3779LLU: // copy-back deleter (assertu64 to procblock)
4468445021 {
4468545022 // copy mutable arguments back from call to assertu64
44686- label = 3732LLU; // continue to roll stack
45023+ label = 3771LLU; // continue to roll stack
4468745024 break;
4468845025 }
44689- case 3741LLU: // return from assertu64 to procblock
45026+ case 3780LLU: // return from assertu64 to procblock
4469045027 {
4469145028 // copy mutable arguments back from call to assertu64
44692- label = 3739LLU; // consequent complete
45029+ label = 3778LLU; // consequent complete
4469345030 break;
4469445031 }
44695- case 3738LLU: // alternative
45032+ case 3777LLU: // alternative
4469645033 {
4469745034 fprintf(stderr, "%s", "expected identifier in while but found ");
4469845035 // call reporttok from procblock
44699- stack[base + 28LLU] = 3742LLU/*throw to this address*/;
45036+ stack[base + 28LLU] = 3781LLU/*throw to this address*/;
4470045037 stack[base + 29LLU] = base;
44701- stack[base + 30LLU] = 3743LLU;
45038+ stack[base + 30LLU] = 3782LLU;
4470245039 // arguments for call to reporttok
4470345040 stack[base + 31LLU] = stack[base + 15]/*variant*/;
4470445041 stack[base + 32LLU] = stack[base + 27]/*counterid*/;
@@ -44707,30 +45044,30 @@
4470745044 label = 18446744073709551582LLU; // reporttok
4470845045 break;
4470945046 }
44710- case 3742LLU: // copy-back deleter (reporttok to procblock)
45047+ case 3781LLU: // copy-back deleter (reporttok to procblock)
4471145048 {
4471245049 // copy mutable arguments back from call to reporttok
44713- label = 3732LLU; // continue to roll stack
45050+ label = 3771LLU; // continue to roll stack
4471445051 break;
4471545052 }
44716- case 3743LLU: // return from reporttok to procblock
45053+ case 3782LLU: // return from reporttok to procblock
4471745054 {
4471845055 // copy mutable arguments back from call to reporttok
4471945056 fprintf(stderr, "%s", "\n");
4472045057 {
44721- label = 3732LLU; // throw: begin to unroll stack
45058+ label = 3771LLU; // throw: begin to unroll stack
4472245059 break;
4472345060 }
4472445061
44725- label = 3739LLU; // alternative complete
45062+ label = 3778LLU; // alternative complete
4472645063 break;
4472745064 }
44728- case 3739LLU: // completed if-then-else
45065+ case 3778LLU: // completed if-then-else
4472945066 {
4473045067 // call matchsym from procblock
44731- stack[base + 28LLU] = 3744LLU/*throw to this address*/;
45068+ stack[base + 28LLU] = 3783LLU/*throw to this address*/;
4473245069 stack[base + 29LLU] = base;
44733- stack[base + 30LLU] = 3745LLU;
45070+ stack[base + 30LLU] = 3784LLU;
4473445071 // arguments for call to matchsym
4473545072 stack[base + 31LLU] = stack[base + 8]/*fnid*/;
4473645073 stack[base + 32LLU] = 41LLU;
@@ -44740,26 +45077,26 @@
4474045077 label = 222LLU; // matchsym
4474145078 break;
4474245079 }
44743- case 3744LLU: // copy-back deleter (matchsym to procblock)
45080+ case 3783LLU: // copy-back deleter (matchsym to procblock)
4474445081 {
4474545082 // copy mutable arguments back from call to matchsym
4474645083 stack[base + 19]/*lookahead*/ = stack[base + 33LLU];
44747- label = 3732LLU; // continue to roll stack
45084+ label = 3771LLU; // continue to roll stack
4474845085 break;
4474945086 }
44750- case 3745LLU: // return from matchsym to procblock
45087+ case 3784LLU: // return from matchsym to procblock
4475145088 {
4475245089 // copy mutable arguments back from call to matchsym
4475345090 stack[base + 19]/*lookahead*/ = stack[base + 33LLU];
44754- label = 3747LLU; // skip deleter
45091+ label = 3786LLU; // skip deleter
4475545092 break;
4475645093 }
44757- case 3746LLU: // deleter
45094+ case 3785LLU: // deleter
4475845095 {
4475945096 // throw from procblock
4476045097 if(!stack[base + 28])
4476145098 {
44762- label = 3732LLU; // skip, variable already deleted/unscoped
45099+ label = 3771LLU; // skip, variable already deleted/unscoped
4476345100 break;
4476445101 }
4476545102
@@ -44768,7 +45105,7 @@
4476845105 newstack[0] = (uint64_t)stack; // backup stack location
4476945106 newstack[1] = 1234567890;
4477045107 newstack[2] = base;
44771- newstack[3] = 3748LLU;
45108+ newstack[3] = 3787LLU;
4477245109 stack = newstack;
4477345110 // set stack-base & callee-address
4477445111 base = 4/*deloffset*/;
@@ -44775,21 +45112,21 @@
4477545112 label = 306LLU; // ~type
4477645113 break;
4477745114 }
44778- case 3748LLU: // return from ~type to procblock
45115+ case 3787LLU: // return from ~type to procblock
4477945116 {
4478045117 stack = (uint64_t *)stack[0];
4478145118 // releasing toplevel container
4478245119 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 28] - sizeof(uint64_t) * 4));
4478345120
44784- label = 3732LLU; // continue unrolling stack, delete next variable
45121+ label = 3771LLU; // continue unrolling stack, delete next variable
4478545122 break;
4478645123 }
44787- case 3747LLU: // skipped deleter
45124+ case 3786LLU: // skipped deleter
4478845125 {
4478945126 // call mktypename from procblock
44790- stack[base + 29LLU] = 3749LLU/*throw to this address*/;
45127+ stack[base + 29LLU] = 3788LLU/*throw to this address*/;
4479145128 stack[base + 30LLU] = base;
44792- stack[base + 31LLU] = 3750LLU;
45129+ stack[base + 31LLU] = 3789LLU;
4479345130 // arguments for call to mktypename
4479445131 stack[base + 33LLU] = 881834713755418624LLU;
4479545132 // set stack-base & callee-address
@@ -44797,37 +45134,37 @@
4479745134 label = 310LLU; // mktypename
4479845135 break;
4479945136 }
44800- case 3749LLU: // copy-back deleter (mktypename to procblock)
45137+ case 3788LLU: // copy-back deleter (mktypename to procblock)
4480145138 {
4480245139 // copy mutable arguments back from call to mktypename
44803- label = 3732LLU; // continue to roll stack
45140+ label = 3771LLU; // continue to roll stack
4480445141 break;
4480545142 }
44806- case 3750LLU: // return from mktypename to procblock
45143+ case 3789LLU: // return from mktypename to procblock
4480745144 {
4480845145 // copy mutable arguments back from call to mktypename
4480945146 // copy back results provided by call to mktypename
4481045147 stack[base + 28] = stack[base + 32LLU];
44811- label = 3752LLU; // skip deleter
45148+ label = 3791LLU; // skip deleter
4481245149 break;
4481345150 }
44814- case 3751LLU: // deleter
45151+ case 3790LLU: // deleter
4481545152 {
4481645153 // throw from procblock
4481745154 if(!stack[base + 29])
4481845155 {
44819- label = 3746LLU; // skip, variable already deleted/unscoped
45156+ label = 3785LLU; // skip, variable already deleted/unscoped
4482045157 break;
4482145158 }
44822- label = 3746LLU; // continue unrolling stack, delete next variable
45159+ label = 3785LLU; // continue unrolling stack, delete next variable
4482345160 break;
4482445161 }
44825- case 3752LLU: // skipped deleter
45162+ case 3791LLU: // skipped deleter
4482645163 {
4482745164 // call newvarraw from procblock
44828- stack[base + 30LLU] = 3753LLU/*throw to this address*/;
45165+ stack[base + 30LLU] = 3792LLU/*throw to this address*/;
4482945166 stack[base + 31LLU] = base;
44830- stack[base + 32LLU] = 3754LLU;
45167+ stack[base + 32LLU] = 3793LLU;
4483145168 // arguments for call to newvarraw
4483245169 stack[base + 34LLU] = stack[base + 28]/*counttype*/;
4483345170 stack[base + 35LLU] = stack[base + 27]/*counterid*/;
@@ -44843,16 +45180,16 @@
4484345180 label = 755LLU; // newvarraw
4484445181 break;
4484545182 }
44846- case 3753LLU: // copy-back deleter (newvarraw to procblock)
45183+ case 3792LLU: // copy-back deleter (newvarraw to procblock)
4484745184 {
4484845185 // copy mutable arguments back from call to newvarraw
4484945186 stack[base + 3]/*scope*/ = stack[base + 41LLU];
4485045187 stack[base + 18]/*varcount*/ = stack[base + 40LLU];
4485145188 stack[base + 12]/*fnmaxcount*/ = stack[base + 39LLU];
44852- label = 3746LLU; // continue to roll stack
45189+ label = 3785LLU; // continue to roll stack
4485345190 break;
4485445191 }
44855- case 3754LLU: // return from newvarraw to procblock
45192+ case 3793LLU: // return from newvarraw to procblock
4485645193 {
4485745194 // copy mutable arguments back from call to newvarraw
4485845195 stack[base + 3]/*scope*/ = stack[base + 41LLU];
@@ -44862,9 +45199,9 @@
4486245199 stack[base + 29] = stack[base + 33LLU];
4486345200 printf("%s", "\n ");
4486445201 // call emitvaridx from procblock
44865- stack[base + 30LLU] = 3755LLU/*throw to this address*/;
45202+ stack[base + 30LLU] = 3794LLU/*throw to this address*/;
4486645203 stack[base + 31LLU] = base;
44867- stack[base + 32LLU] = 3756LLU;
45204+ stack[base + 32LLU] = 3795LLU;
4486845205 // arguments for call to emitvaridx
4486945206 stack[base + 33LLU] = stack[base + 29]/*counteridx*/;
4487045207 // set stack-base & callee-address
@@ -44872,20 +45209,20 @@
4487245209 label = 741LLU; // emitvaridx
4487345210 break;
4487445211 }
44875- case 3755LLU: // copy-back deleter (emitvaridx to procblock)
45212+ case 3794LLU: // copy-back deleter (emitvaridx to procblock)
4487645213 {
4487745214 // copy mutable arguments back from call to emitvaridx
44878- label = 3751LLU; // continue to roll stack
45215+ label = 3790LLU; // continue to roll stack
4487945216 break;
4488045217 }
44881- case 3756LLU: // return from emitvaridx to procblock
45218+ case 3795LLU: // return from emitvaridx to procblock
4488245219 {
4488345220 // copy mutable arguments back from call to emitvaridx
4488445221 printf("%s", " = ");
4488545222 // call emitvar from procblock
44886- stack[base + 30LLU] = 3757LLU/*throw to this address*/;
45223+ stack[base + 30LLU] = 3796LLU/*throw to this address*/;
4488745224 stack[base + 31LLU] = base;
44888- stack[base + 32LLU] = 3758LLU;
45225+ stack[base + 32LLU] = 3797LLU;
4488945226 // arguments for call to emitvar
4489045227 stack[base + 33LLU] = stack[base + 8]/*fnid*/;
4489145228 stack[base + 34LLU] = stack[base + 26]/*loopid*/;
@@ -44896,21 +45233,21 @@
4489645233 label = 745LLU; // emitvar
4489745234 break;
4489845235 }
44899- case 3757LLU: // copy-back deleter (emitvar to procblock)
45236+ case 3796LLU: // copy-back deleter (emitvar to procblock)
4490045237 {
4490145238 // copy mutable arguments back from call to emitvar
44902- label = 3751LLU; // continue to roll stack
45239+ label = 3790LLU; // continue to roll stack
4490345240 break;
4490445241 }
44905- case 3758LLU: // return from emitvar to procblock
45242+ case 3797LLU: // return from emitvar to procblock
4490645243 {
4490745244 // copy mutable arguments back from call to emitvar
4490845245 printf("%s", ";\n");
4490945246 printf("%s", "\n label = ");
4491045247 // call printnr from procblock
44911- stack[base + 30LLU] = 3759LLU/*throw to this address*/;
45248+ stack[base + 30LLU] = 3798LLU/*throw to this address*/;
4491245249 stack[base + 31LLU] = base;
44913- stack[base + 32LLU] = 3760LLU;
45250+ stack[base + 32LLU] = 3799LLU;
4491445251 // arguments for call to printnr
4491545252 stack[base + 33LLU] = stack[base + 22]/*labelloop*/;
4491645253 // set stack-base & callee-address
@@ -44918,13 +45255,13 @@
4491845255 label = 18446744073709551590LLU; // printnr
4491945256 break;
4492045257 }
44921- case 3759LLU: // copy-back deleter (printnr to procblock)
45258+ case 3798LLU: // copy-back deleter (printnr to procblock)
4492245259 {
4492345260 // copy mutable arguments back from call to printnr
44924- label = 3751LLU; // continue to roll stack
45261+ label = 3790LLU; // continue to roll stack
4492545262 break;
4492645263 }
44927- case 3760LLU: // return from printnr to procblock
45264+ case 3799LLU: // return from printnr to procblock
4492845265 {
4492945266 // copy mutable arguments back from call to printnr
4493045267 printf("%s", "LLU; // start to repeat");
@@ -44932,9 +45269,9 @@
4493245269 printf("%s", "\n }");
4493345270 printf("%s", "\n case ");
4493445271 // call printnr from procblock
44935- stack[base + 30LLU] = 3761LLU/*throw to this address*/;
45272+ stack[base + 30LLU] = 3800LLU/*throw to this address*/;
4493645273 stack[base + 31LLU] = base;
44937- stack[base + 32LLU] = 3762LLU;
45274+ stack[base + 32LLU] = 3801LLU;
4493845275 // arguments for call to printnr
4493945276 stack[base + 33LLU] = stack[base + 22]/*labelloop*/;
4494045277 // set stack-base & callee-address
@@ -44942,13 +45279,13 @@
4494245279 label = 18446744073709551590LLU; // printnr
4494345280 break;
4494445281 }
44945- case 3761LLU: // copy-back deleter (printnr to procblock)
45282+ case 3800LLU: // copy-back deleter (printnr to procblock)
4494645283 {
4494745284 // copy mutable arguments back from call to printnr
44948- label = 3751LLU; // continue to roll stack
45285+ label = 3790LLU; // continue to roll stack
4494945286 break;
4495045287 }
44951- case 3762LLU: // return from printnr to procblock
45288+ case 3801LLU: // return from printnr to procblock
4495245289 {
4495345290 // copy mutable arguments back from call to printnr
4495445291 printf("%s", "LLU: // repeat from here");
@@ -44955,9 +45292,9 @@
4495545292 printf("%s", "\n {");
4495645293 printf("%s", "\n if(!");
4495745294 // call emitvaridx from procblock
44958- stack[base + 30LLU] = 3763LLU/*throw to this address*/;
45295+ stack[base + 30LLU] = 3802LLU/*throw to this address*/;
4495945296 stack[base + 31LLU] = base;
44960- stack[base + 32LLU] = 3764LLU;
45297+ stack[base + 32LLU] = 3803LLU;
4496145298 // arguments for call to emitvaridx
4496245299 stack[base + 33LLU] = stack[base + 29]/*counteridx*/;
4496345300 // set stack-base & callee-address
@@ -44965,13 +45302,13 @@
4496545302 label = 741LLU; // emitvaridx
4496645303 break;
4496745304 }
44968- case 3763LLU: // copy-back deleter (emitvaridx to procblock)
45305+ case 3802LLU: // copy-back deleter (emitvaridx to procblock)
4496945306 {
4497045307 // copy mutable arguments back from call to emitvaridx
44971- label = 3751LLU; // continue to roll stack
45308+ label = 3790LLU; // continue to roll stack
4497245309 break;
4497345310 }
44974- case 3764LLU: // return from emitvaridx to procblock
45311+ case 3803LLU: // return from emitvaridx to procblock
4497545312 {
4497645313 // copy mutable arguments back from call to emitvaridx
4497745314 printf("%s", "--)");
@@ -44981,7 +45318,7 @@
4498145318 newstack[0] = (uint64_t)stack; // backup stack location
4498245319 newstack[1] = 1234567890;
4498345320 newstack[2] = base;
44984- newstack[3] = 3765LLU;
45321+ newstack[3] = 3804LLU;
4498545322 stack = newstack;
4498645323 // set stack-base & callee-address
4498745324 base = 4/*deloffset*/;
@@ -44988,22 +45325,22 @@
4498845325 label = 306LLU; // ~type
4498945326 break;
4499045327 }
44991- case 3765LLU: // return from ~type to procblock
45328+ case 3804LLU: // return from ~type to procblock
4499245329 {
4499345330 stack = (uint64_t *)stack[0];
4499445331 // releasing toplevel container
4499545332 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 28] - sizeof(uint64_t) * 4));
4499645333
44997- label = 3725LLU; // consequent complete
45334+ label = 3764LLU; // consequent complete
4499845335 break;
4499945336 }
45000- case 3724LLU: // alternative
45337+ case 3763LLU: // alternative
4500145338 {
4500245339 printf("%s", "\n label = ");
4500345340 // call printnr from procblock
45004- stack[base + 27LLU] = 3766LLU/*throw to this address*/;
45341+ stack[base + 27LLU] = 3805LLU/*throw to this address*/;
4500545342 stack[base + 28LLU] = base;
45006- stack[base + 29LLU] = 3767LLU;
45343+ stack[base + 29LLU] = 3806LLU;
4500745344 // arguments for call to printnr
4500845345 stack[base + 30LLU] = stack[base + 22]/*labelloop*/;
4500945346 // set stack-base & callee-address
@@ -45011,13 +45348,13 @@
4501145348 label = 18446744073709551590LLU; // printnr
4501245349 break;
4501345350 }
45014- case 3766LLU: // copy-back deleter (printnr to procblock)
45351+ case 3805LLU: // copy-back deleter (printnr to procblock)
4501545352 {
4501645353 // copy mutable arguments back from call to printnr
45017- label = 3710LLU; // continue to roll stack
45354+ label = 3749LLU; // continue to roll stack
4501845355 break;
4501945356 }
45020- case 3767LLU: // return from printnr to procblock
45357+ case 3806LLU: // return from printnr to procblock
4502145358 {
4502245359 // copy mutable arguments back from call to printnr
4502345360 printf("%s", "LLU; // start to repeat");
@@ -45025,9 +45362,9 @@
4502545362 printf("%s", "\n }");
4502645363 printf("%s", "\n case ");
4502745364 // call printnr from procblock
45028- stack[base + 27LLU] = 3768LLU/*throw to this address*/;
45365+ stack[base + 27LLU] = 3807LLU/*throw to this address*/;
4502945366 stack[base + 28LLU] = base;
45030- stack[base + 29LLU] = 3769LLU;
45367+ stack[base + 29LLU] = 3808LLU;
4503145368 // arguments for call to printnr
4503245369 stack[base + 30LLU] = stack[base + 22]/*labelloop*/;
4503345370 // set stack-base & callee-address
@@ -45035,13 +45372,13 @@
4503545372 label = 18446744073709551590LLU; // printnr
4503645373 break;
4503745374 }
45038- case 3768LLU: // copy-back deleter (printnr to procblock)
45375+ case 3807LLU: // copy-back deleter (printnr to procblock)
4503945376 {
4504045377 // copy mutable arguments back from call to printnr
45041- label = 3710LLU; // continue to roll stack
45378+ label = 3749LLU; // continue to roll stack
4504245379 break;
4504345380 }
45044- case 3769LLU: // return from printnr to procblock
45381+ case 3808LLU: // return from printnr to procblock
4504545382 {
4504645383 // copy mutable arguments back from call to printnr
4504745384 printf("%s", "LLU: // repeat from here");
@@ -45048,31 +45385,31 @@
4504845385 printf("%s", "\n {");
4504945386 if(!stack[base + 25]/*inputflag*/)
4505045387 {
45051- label = 3770LLU; // jump to alternative
45388+ label = 3809LLU; // jump to alternative
4505245389 break;
4505345390 }
4505445391
4505545392 // consequent
45056- label = 3773LLU; // skip deleter
45393+ label = 3812LLU; // skip deleter
4505745394 break;
4505845395 }
45059- case 3772LLU: // deleter
45396+ case 3811LLU: // deleter
4506045397 {
4506145398 // throw from procblock
4506245399 if(!stack[base + 27])
4506345400 {
45064- label = 3710LLU; // skip, variable already deleted/unscoped
45401+ label = 3749LLU; // skip, variable already deleted/unscoped
4506545402 break;
4506645403 }
45067- label = 3710LLU; // continue unrolling stack, delete next variable
45404+ label = 3749LLU; // continue unrolling stack, delete next variable
4506845405 break;
4506945406 }
45070- case 3773LLU: // skipped deleter
45407+ case 3812LLU: // skipped deleter
4507145408 {
4507245409 // call findletmut from procblock
45073- stack[base + 28LLU] = 3774LLU/*throw to this address*/;
45410+ stack[base + 28LLU] = 3813LLU/*throw to this address*/;
4507445411 stack[base + 29LLU] = base;
45075- stack[base + 30LLU] = 3775LLU;
45412+ stack[base + 30LLU] = 3814LLU;
4507645413 // arguments for call to findletmut
4507745414 stack[base + 32LLU] = stack[base + 8]/*fnid*/;
4507845415 stack[base + 33LLU] = stack[base + 26]/*loopid*/;
@@ -45083,13 +45420,13 @@
4508345420 label = 714LLU; // findletmut
4508445421 break;
4508545422 }
45086- case 3774LLU: // copy-back deleter (findletmut to procblock)
45423+ case 3813LLU: // copy-back deleter (findletmut to procblock)
4508745424 {
4508845425 // copy mutable arguments back from call to findletmut
45089- label = 3710LLU; // continue to roll stack
45426+ label = 3749LLU; // continue to roll stack
4509045427 break;
4509145428 }
45092- case 3775LLU: // return from findletmut to procblock
45429+ case 3814LLU: // return from findletmut to procblock
4509345430 {
4509445431 // copy mutable arguments back from call to findletmut
4509545432 // copy back results provided by call to findletmut
@@ -45096,21 +45433,21 @@
4509645433 stack[base + 27] = stack[base + 31LLU];
4509745434 if(!stack[base + 27]/*mutable*/)
4509845435 {
45099- label = 3776LLU; // jump to alternative
45436+ label = 3815LLU; // jump to alternative
4510045437 break;
4510145438 }
4510245439
4510345440 // consequent
45104- label = 3777LLU; // consequent complete
45441+ label = 3816LLU; // consequent complete
4510545442 break;
4510645443 }
45107- case 3776LLU: // alternative
45444+ case 3815LLU: // alternative
4510845445 {
4510945446 fprintf(stderr, "%s", "in function ");
4511045447 // call reportid from procblock
45111- stack[base + 28LLU] = 3778LLU/*throw to this address*/;
45448+ stack[base + 28LLU] = 3817LLU/*throw to this address*/;
4511245449 stack[base + 29LLU] = base;
45113- stack[base + 30LLU] = 3779LLU;
45450+ stack[base + 30LLU] = 3818LLU;
4511445451 // arguments for call to reportid
4511545452 stack[base + 31LLU] = stack[base + 8]/*fnid*/;
4511645453 // set stack-base & callee-address
@@ -45118,21 +45455,21 @@
4511845455 label = 18446744073709551586LLU; // reportid
4511945456 break;
4512045457 }
45121- case 3778LLU: // copy-back deleter (reportid to procblock)
45458+ case 3817LLU: // copy-back deleter (reportid to procblock)
4512245459 {
4512345460 // copy mutable arguments back from call to reportid
45124- label = 3772LLU; // continue to roll stack
45461+ label = 3811LLU; // continue to roll stack
4512545462 break;
4512645463 }
45127- case 3779LLU: // return from reportid to procblock
45464+ case 3818LLU: // return from reportid to procblock
4512845465 {
4512945466 // copy mutable arguments back from call to reportid
4513045467 fprintf(stderr, "%s", ": ");
4513145468 fprintf(stderr, "%s", "while input requires mutable variable but found constant ");
4513245469 // call reportid from procblock
45133- stack[base + 28LLU] = 3780LLU/*throw to this address*/;
45470+ stack[base + 28LLU] = 3819LLU/*throw to this address*/;
4513445471 stack[base + 29LLU] = base;
45135- stack[base + 30LLU] = 3781LLU;
45472+ stack[base + 30LLU] = 3820LLU;
4513645473 // arguments for call to reportid
4513745474 stack[base + 31LLU] = stack[base + 26]/*loopid*/;
4513845475 // set stack-base & callee-address
@@ -45140,31 +45477,31 @@
4514045477 label = 18446744073709551586LLU; // reportid
4514145478 break;
4514245479 }
45143- case 3780LLU: // copy-back deleter (reportid to procblock)
45480+ case 3819LLU: // copy-back deleter (reportid to procblock)
4514445481 {
4514545482 // copy mutable arguments back from call to reportid
45146- label = 3772LLU; // continue to roll stack
45483+ label = 3811LLU; // continue to roll stack
4514745484 break;
4514845485 }
45149- case 3781LLU: // return from reportid to procblock
45486+ case 3820LLU: // return from reportid to procblock
4515045487 {
4515145488 // copy mutable arguments back from call to reportid
4515245489 fprintf(stderr, "%s", "\n");
4515345490 {
45154- label = 3772LLU; // throw: begin to unroll stack
45491+ label = 3811LLU; // throw: begin to unroll stack
4515545492 break;
4515645493 }
4515745494
45158- label = 3777LLU; // alternative complete
45495+ label = 3816LLU; // alternative complete
4515945496 break;
4516045497 }
45161- case 3777LLU: // completed if-then-else
45498+ case 3816LLU: // completed if-then-else
4516245499 {
4516345500 printf("%s", "\n if(");
4516445501 // call emitvar from procblock
45165- stack[base + 28LLU] = 3782LLU/*throw to this address*/;
45502+ stack[base + 28LLU] = 3821LLU/*throw to this address*/;
4516645503 stack[base + 29LLU] = base;
45167- stack[base + 30LLU] = 3783LLU;
45504+ stack[base + 30LLU] = 3822LLU;
4516845505 // arguments for call to emitvar
4516945506 stack[base + 31LLU] = stack[base + 8]/*fnid*/;
4517045507 stack[base + 32LLU] = stack[base + 26]/*loopid*/;
@@ -45175,26 +45512,26 @@
4517545512 label = 745LLU; // emitvar
4517645513 break;
4517745514 }
45178- case 3782LLU: // copy-back deleter (emitvar to procblock)
45515+ case 3821LLU: // copy-back deleter (emitvar to procblock)
4517945516 {
4518045517 // copy mutable arguments back from call to emitvar
45181- label = 3772LLU; // continue to roll stack
45518+ label = 3811LLU; // continue to roll stack
4518245519 break;
4518345520 }
45184- case 3783LLU: // return from emitvar to procblock
45521+ case 3822LLU: // return from emitvar to procblock
4518545522 {
4518645523 // copy mutable arguments back from call to emitvar
4518745524 printf("%s", " > 0xFF)");
45188- label = 3771LLU; // consequent complete
45525+ label = 3810LLU; // consequent complete
4518945526 break;
4519045527 }
45191- case 3770LLU: // alternative
45528+ case 3809LLU: // alternative
4519245529 {
4519345530 printf("%s", "\n if(!");
4519445531 // call emitvar from procblock
45195- stack[base + 27LLU] = 3784LLU/*throw to this address*/;
45532+ stack[base + 27LLU] = 3823LLU/*throw to this address*/;
4519645533 stack[base + 28LLU] = base;
45197- stack[base + 29LLU] = 3785LLU;
45534+ stack[base + 29LLU] = 3824LLU;
4519845535 // arguments for call to emitvar
4519945536 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4520045537 stack[base + 31LLU] = stack[base + 26]/*loopid*/;
@@ -45205,21 +45542,21 @@
4520545542 label = 745LLU; // emitvar
4520645543 break;
4520745544 }
45208- case 3784LLU: // copy-back deleter (emitvar to procblock)
45545+ case 3823LLU: // copy-back deleter (emitvar to procblock)
4520945546 {
4521045547 // copy mutable arguments back from call to emitvar
45211- label = 3710LLU; // continue to roll stack
45548+ label = 3749LLU; // continue to roll stack
4521245549 break;
4521345550 }
45214- case 3785LLU: // return from emitvar to procblock
45551+ case 3824LLU: // return from emitvar to procblock
4521545552 {
4521645553 // copy mutable arguments back from call to emitvar
4521745554 printf("%s", ")");
4521845555 fprintf(stderr, "%s", "in function ");
4521945556 // call reportid from procblock
45220- stack[base + 27LLU] = 3786LLU/*throw to this address*/;
45557+ stack[base + 27LLU] = 3825LLU/*throw to this address*/;
4522145558 stack[base + 28LLU] = base;
45222- stack[base + 29LLU] = 3787LLU;
45559+ stack[base + 29LLU] = 3826LLU;
4522345560 // arguments for call to reportid
4522445561 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4522545562 // set stack-base & callee-address
@@ -45227,35 +45564,35 @@
4522745564 label = 18446744073709551586LLU; // reportid
4522845565 break;
4522945566 }
45230- case 3786LLU: // copy-back deleter (reportid to procblock)
45567+ case 3825LLU: // copy-back deleter (reportid to procblock)
4523145568 {
4523245569 // copy mutable arguments back from call to reportid
45233- label = 3710LLU; // continue to roll stack
45570+ label = 3749LLU; // continue to roll stack
4523445571 break;
4523545572 }
45236- case 3787LLU: // return from reportid to procblock
45573+ case 3826LLU: // return from reportid to procblock
4523745574 {
4523845575 // copy mutable arguments back from call to reportid
4523945576 fprintf(stderr, "%s", ": plain while loop deactivated\n");
4524045577 {
45241- label = 3710LLU; // throw: begin to unroll stack
45578+ label = 3749LLU; // throw: begin to unroll stack
4524245579 break;
4524345580 }
4524445581
45245- label = 3771LLU; // alternative complete
45582+ label = 3810LLU; // alternative complete
4524645583 break;
4524745584 }
45248- case 3771LLU: // completed if-then-else
45585+ case 3810LLU: // completed if-then-else
4524945586 {
45250- label = 3725LLU; // alternative complete
45587+ label = 3764LLU; // alternative complete
4525145588 break;
4525245589 }
45253- case 3725LLU: // completed if-then-else
45590+ case 3764LLU: // completed if-then-else
4525445591 {
4525545592 // call matchsym from procblock
45256- stack[base + 27LLU] = 3788LLU/*throw to this address*/;
45593+ stack[base + 27LLU] = 3827LLU/*throw to this address*/;
4525745594 stack[base + 28LLU] = base;
45258- stack[base + 29LLU] = 3789LLU;
45595+ stack[base + 29LLU] = 3828LLU;
4525945596 // arguments for call to matchsym
4526045597 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4526145598 stack[base + 31LLU] = 123LLU;
@@ -45265,14 +45602,14 @@
4526545602 label = 222LLU; // matchsym
4526645603 break;
4526745604 }
45268- case 3788LLU: // copy-back deleter (matchsym to procblock)
45605+ case 3827LLU: // copy-back deleter (matchsym to procblock)
4526945606 {
4527045607 // copy mutable arguments back from call to matchsym
4527145608 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
45272- label = 3710LLU; // continue to roll stack
45609+ label = 3749LLU; // continue to roll stack
4527345610 break;
4527445611 }
45275- case 3789LLU: // return from matchsym to procblock
45612+ case 3828LLU: // return from matchsym to procblock
4527645613 {
4527745614 // copy mutable arguments back from call to matchsym
4527845615 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
@@ -45279,9 +45616,9 @@
4527945616 printf("%s", "\n {");
4528045617 printf("%s", "\n label = ");
4528145618 // call printnr from procblock
45282- stack[base + 27LLU] = 3790LLU/*throw to this address*/;
45619+ stack[base + 27LLU] = 3829LLU/*throw to this address*/;
4528345620 stack[base + 28LLU] = base;
45284- stack[base + 29LLU] = 3791LLU;
45621+ stack[base + 29LLU] = 3830LLU;
4528545622 // arguments for call to printnr
4528645623 stack[base + 30LLU] = stack[base + 23]/*labelskip*/;
4528745624 // set stack-base & callee-address
@@ -45289,13 +45626,13 @@
4528945626 label = 18446744073709551590LLU; // printnr
4529045627 break;
4529145628 }
45292- case 3790LLU: // copy-back deleter (printnr to procblock)
45629+ case 3829LLU: // copy-back deleter (printnr to procblock)
4529345630 {
4529445631 // copy mutable arguments back from call to printnr
45295- label = 3710LLU; // continue to roll stack
45632+ label = 3749LLU; // continue to roll stack
4529645633 break;
4529745634 }
45298- case 3791LLU: // return from printnr to procblock
45635+ case 3830LLU: // return from printnr to procblock
4529945636 {
4530045637 // copy mutable arguments back from call to printnr
4530145638 printf("%s", "LLU; // break loop");
@@ -45303,26 +45640,26 @@
4530345640 printf("%s", "\n }");
4530445641 printf("%s", "\n");
4530545642 printf("%s", "\n // loop body");
45306- label = 3793LLU; // skip deleter
45643+ label = 3832LLU; // skip deleter
4530745644 break;
4530845645 }
45309- case 3792LLU: // deleter
45646+ case 3831LLU: // deleter
4531045647 {
4531145648 // throw from procblock
4531245649 if(!stack[base + 27])
4531345650 {
45314- label = 3710LLU; // skip, variable already deleted/unscoped
45651+ label = 3749LLU; // skip, variable already deleted/unscoped
4531545652 break;
4531645653 }
4531745654 // delete list
45318- label = 3794LLU; // start to repeat
45655+ label = 3833LLU; // start to repeat
4531945656 break;
4532045657 }
45321- case 3794LLU: // repeat from here
45658+ case 3833LLU: // repeat from here
4532245659 {
4532345660 if(!stack[base + 27])
4532445661 {
45325- label = 3795LLU; // break loop
45662+ label = 3834LLU; // break loop
4532645663 break;
4532745664 }
4532845665
@@ -45333,7 +45670,7 @@
4533345670 newstack[0] = (uint64_t)stack; // backup stack location
4533445671 newstack[1] = 1234567890;
4533545672 newstack[2] = base;
45336- newstack[3] = 3796LLU;
45673+ newstack[3] = 3835LLU;
4533745674 stack = newstack;
4533845675 // set stack-base & callee-address
4533945676 base = 4/*deloffset*/;
@@ -45340,7 +45677,7 @@
4534045677 label = 395LLU; // ~typeidx
4534145678 break;
4534245679 }
45343- case 3796LLU: // return from ~typeidx to procblock
45680+ case 3835LLU: // return from ~typeidx to procblock
4534445681 {
4534545682 stack = (uint64_t *)stack[0];
4534645683 // releasing toplevel container
@@ -45351,21 +45688,21 @@
4535145688 stack[base + 27] = (uint64_t)list->next;
4535245689 Free(1, sizeof(struct listnode), list);
4535345690 }
45354- label = 3794LLU; // repeat
45691+ label = 3833LLU; // repeat
4535545692 break;
4535645693 }
45357- case 3795LLU: // loop finished
45694+ case 3834LLU: // loop finished
4535845695 {
45359- label = 3710LLU; // continue unrolling stack, delete next variable
45696+ label = 3749LLU; // continue unrolling stack, delete next variable
4536045697 break;
4536145698 }
45362- case 3793LLU: // skipped deleter
45699+ case 3832LLU: // skipped deleter
4536345700 {
4536445701 stack[base + 27] = 0;
4536545702 uint64_t *newstack = (uint64_t *)Calloc(160LLU + 1, sizeof(uint64_t));
4536645703 if(!newstack)
4536745704 {
45368- label = 3792LLU; // throw: begin to unroll stack
45705+ label = 3831LLU; // throw: begin to unroll stack
4536945706 break;
4537045707 }
4537145708
@@ -45372,9 +45709,9 @@
4537245709 newstack[160LLU] = 9876543210LLU; // overflow-marker
4537345710 // call procblock from procblock
4537445711 newstack[0] = (uint64_t)stack; // backup stack location
45375- newstack[1] = 3797LLU;
45712+ newstack[1] = 3836LLU;
4537645713 newstack[2] = base;
45377- newstack[3] = 3798LLU;
45714+ newstack[3] = 3837LLU;
4537845715 // arguments for call to procblock
4537945716 newstack[4LLU] = stack[base + 0]/*fndefs*/;
4538045717 newstack[5LLU] = stack[base + 1]/*typedefs*/;
@@ -45400,7 +45737,7 @@
4540045737 label = 3319LLU; // procblock
4540145738 break;
4540245739 }
45403- case 3797LLU: // copy-back deleter (procblock to procblock)
45740+ case 3836LLU: // copy-back deleter (procblock to procblock)
4540445741 {
4540545742 uint64_t *oldstack = (uint64_t *)stack[0];
4540645743 // copy mutable arguments back from call to procblock
@@ -45417,10 +45754,10 @@
4541745754 }
4541845755 Free(160LLU + 1, sizeof(uint64_t), stack);
4541945756 stack = oldstack;
45420- label = 3792LLU; // continue to unroll stack
45757+ label = 3831LLU; // continue to unroll stack
4542145758 break;
4542245759 }
45423- case 3798LLU: // return from procblock to procblock
45760+ case 3837LLU: // return from procblock to procblock
4542445761 {
4542545762 uint64_t *oldstack = (uint64_t *)stack[0];
4542645763 // copy mutable arguments back from call to procblock
@@ -45438,14 +45775,14 @@
4543845775 Free(160LLU + 1, sizeof(uint64_t), stack);
4543945776 stack = oldstack;
4544045777 // delete list
45441- label = 3799LLU; // start to repeat
45778+ label = 3838LLU; // start to repeat
4544245779 break;
4544345780 }
45444- case 3799LLU: // repeat from here
45781+ case 3838LLU: // repeat from here
4544545782 {
4544645783 if(!stack[base + 27])
4544745784 {
45448- label = 3800LLU; // break loop
45785+ label = 3839LLU; // break loop
4544945786 break;
4545045787 }
4545145788
@@ -45456,7 +45793,7 @@
4545645793 newstack[0] = (uint64_t)stack; // backup stack location
4545745794 newstack[1] = 1234567890;
4545845795 newstack[2] = base;
45459- newstack[3] = 3801LLU;
45796+ newstack[3] = 3840LLU;
4546045797 stack = newstack;
4546145798 // set stack-base & callee-address
4546245799 base = 4/*deloffset*/;
@@ -45463,7 +45800,7 @@
4546345800 label = 395LLU; // ~typeidx
4546445801 break;
4546545802 }
45466- case 3801LLU: // return from ~typeidx to procblock
45803+ case 3840LLU: // return from ~typeidx to procblock
4546745804 {
4546845805 stack = (uint64_t *)stack[0];
4546945806 // releasing toplevel container
@@ -45474,14 +45811,14 @@
4547445811 stack[base + 27] = (uint64_t)list->next;
4547545812 Free(1, sizeof(struct listnode), list);
4547645813 }
45477- label = 3799LLU; // repeat
45814+ label = 3838LLU; // repeat
4547845815 break;
4547945816 }
45480- case 3800LLU: // loop finished
45817+ case 3839LLU: // loop finished
4548145818 {
4548245819 if(!stack[base + 25]/*inputflag*/)
4548345820 {
45484- label = 3802LLU; // jump to alternative
45821+ label = 3841LLU; // jump to alternative
4548545822 break;
4548645823 }
4548745824
@@ -45488,9 +45825,9 @@
4548845825 // consequent
4548945826 printf("%s", "\n if(");
4549045827 // call emitvar from procblock
45491- stack[base + 27LLU] = 3804LLU/*throw to this address*/;
45828+ stack[base + 27LLU] = 3843LLU/*throw to this address*/;
4549245829 stack[base + 28LLU] = base;
45493- stack[base + 29LLU] = 3805LLU;
45830+ stack[base + 29LLU] = 3844LLU;
4549445831 // arguments for call to emitvar
4549545832 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4549645833 stack[base + 31LLU] = stack[base + 26]/*loopid*/;
@@ -45501,20 +45838,20 @@
4550145838 label = 745LLU; // emitvar
4550245839 break;
4550345840 }
45504- case 3804LLU: // copy-back deleter (emitvar to procblock)
45841+ case 3843LLU: // copy-back deleter (emitvar to procblock)
4550545842 {
4550645843 // copy mutable arguments back from call to emitvar
45507- label = 3710LLU; // continue to roll stack
45844+ label = 3749LLU; // continue to roll stack
4550845845 break;
4550945846 }
45510- case 3805LLU: // return from emitvar to procblock
45847+ case 3844LLU: // return from emitvar to procblock
4551145848 {
4551245849 // copy mutable arguments back from call to emitvar
4551345850 printf("%s", " <= 0xFF) ");
4551445851 // call emitvar from procblock
45515- stack[base + 27LLU] = 3806LLU/*throw to this address*/;
45852+ stack[base + 27LLU] = 3845LLU/*throw to this address*/;
4551645853 stack[base + 28LLU] = base;
45517- stack[base + 29LLU] = 3807LLU;
45854+ stack[base + 29LLU] = 3846LLU;
4551845855 // arguments for call to emitvar
4551945856 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4552045857 stack[base + 31LLU] = stack[base + 26]/*loopid*/;
@@ -45525,31 +45862,31 @@
4552545862 label = 745LLU; // emitvar
4552645863 break;
4552745864 }
45528- case 3806LLU: // copy-back deleter (emitvar to procblock)
45865+ case 3845LLU: // copy-back deleter (emitvar to procblock)
4552945866 {
4553045867 // copy mutable arguments back from call to emitvar
45531- label = 3710LLU; // continue to roll stack
45868+ label = 3749LLU; // continue to roll stack
4553245869 break;
4553345870 }
45534- case 3807LLU: // return from emitvar to procblock
45871+ case 3846LLU: // return from emitvar to procblock
4553545872 {
4553645873 // copy mutable arguments back from call to emitvar
4553745874 printf("%s", " = getchar();");
45538- label = 3803LLU; // consequent complete
45875+ label = 3842LLU; // consequent complete
4553945876 break;
4554045877 }
45541- case 3802LLU: // alternative
45878+ case 3841LLU: // alternative
4554245879 {
45543- label = 3803LLU; // alternative complete
45880+ label = 3842LLU; // alternative complete
4554445881 break;
4554545882 }
45546- case 3803LLU: // completed if-then-else
45883+ case 3842LLU: // completed if-then-else
4554745884 {
4554845885 printf("%s", "\n label = ");
4554945886 // call printnr from procblock
45550- stack[base + 27LLU] = 3808LLU/*throw to this address*/;
45887+ stack[base + 27LLU] = 3847LLU/*throw to this address*/;
4555145888 stack[base + 28LLU] = base;
45552- stack[base + 29LLU] = 3809LLU;
45889+ stack[base + 29LLU] = 3848LLU;
4555345890 // arguments for call to printnr
4555445891 stack[base + 30LLU] = stack[base + 22]/*labelloop*/;
4555545892 // set stack-base & callee-address
@@ -45557,13 +45894,13 @@
4555745894 label = 18446744073709551590LLU; // printnr
4555845895 break;
4555945896 }
45560- case 3808LLU: // copy-back deleter (printnr to procblock)
45897+ case 3847LLU: // copy-back deleter (printnr to procblock)
4556145898 {
4556245899 // copy mutable arguments back from call to printnr
45563- label = 3710LLU; // continue to roll stack
45900+ label = 3749LLU; // continue to roll stack
4556445901 break;
4556545902 }
45566- case 3809LLU: // return from printnr to procblock
45903+ case 3848LLU: // return from printnr to procblock
4556745904 {
4556845905 // copy mutable arguments back from call to printnr
4556945906 printf("%s", "LLU; // repeat");
@@ -45571,9 +45908,9 @@
4557145908 printf("%s", "\n }");
4557245909 printf("%s", "\n case ");
4557345910 // call printnr from procblock
45574- stack[base + 27LLU] = 3810LLU/*throw to this address*/;
45911+ stack[base + 27LLU] = 3849LLU/*throw to this address*/;
4557545912 stack[base + 28LLU] = base;
45576- stack[base + 29LLU] = 3811LLU;
45913+ stack[base + 29LLU] = 3850LLU;
4557745914 // arguments for call to printnr
4557845915 stack[base + 30LLU] = stack[base + 23]/*labelskip*/;
4557945916 // set stack-base & callee-address
@@ -45581,25 +45918,25 @@
4558145918 label = 18446744073709551590LLU; // printnr
4558245919 break;
4558345920 }
45584- case 3810LLU: // copy-back deleter (printnr to procblock)
45921+ case 3849LLU: // copy-back deleter (printnr to procblock)
4558545922 {
4558645923 // copy mutable arguments back from call to printnr
45587- label = 3710LLU; // continue to roll stack
45924+ label = 3749LLU; // continue to roll stack
4558845925 break;
4558945926 }
45590- case 3811LLU: // return from printnr to procblock
45927+ case 3850LLU: // return from printnr to procblock
4559145928 {
4559245929 // copy mutable arguments back from call to printnr
4559345930 printf("%s", "LLU: // loop finished");
4559445931 printf("%s", "\n {");
45595- label = 3703LLU; // consequent complete
45932+ label = 3742LLU; // consequent complete
4559645933 break;
4559745934 }
45598- case 3702LLU: // alternative
45935+ case 3741LLU: // alternative
4559945936 {
4560045937 if(!stack[base + 24]/*decflag*/)
4560145938 {
45602- label = 3812LLU; // jump to alternative
45939+ label = 3851LLU; // jump to alternative
4560345940 break;
4560445941 }
4560545942
@@ -45606,9 +45943,9 @@
4560645943 // consequent
4560745944 fprintf(stderr, "%s", "in function ");
4560845945 // call reportid from procblock
45609- stack[base + 26LLU] = 3814LLU/*throw to this address*/;
45946+ stack[base + 26LLU] = 3853LLU/*throw to this address*/;
4561045947 stack[base + 27LLU] = base;
45611- stack[base + 28LLU] = 3815LLU;
45948+ stack[base + 28LLU] = 3854LLU;
4561245949 // arguments for call to reportid
4561345950 stack[base + 29LLU] = stack[base + 8]/*fnid*/;
4561445951 // set stack-base & callee-address
@@ -45616,20 +45953,20 @@
4561645953 label = 18446744073709551586LLU; // reportid
4561745954 break;
4561845955 }
45619- case 3814LLU: // copy-back deleter (reportid to procblock)
45956+ case 3853LLU: // copy-back deleter (reportid to procblock)
4562045957 {
4562145958 // copy mutable arguments back from call to reportid
45622- label = 3670LLU; // continue to roll stack
45959+ label = 3709LLU; // continue to roll stack
4562345960 break;
4562445961 }
45625- case 3815LLU: // return from reportid to procblock
45962+ case 3854LLU: // return from reportid to procblock
4562645963 {
4562745964 // copy mutable arguments back from call to reportid
4562845965 fprintf(stderr, "%s", ": while dec expected '(' but found ");
4562945966 // call reporttok from procblock
45630- stack[base + 26LLU] = 3816LLU/*throw to this address*/;
45967+ stack[base + 26LLU] = 3855LLU/*throw to this address*/;
4563145968 stack[base + 27LLU] = base;
45632- stack[base + 28LLU] = 3817LLU;
45969+ stack[base + 28LLU] = 3856LLU;
4563345970 // arguments for call to reporttok
4563445971 stack[base + 29LLU] = stack[base + 15]/*variant*/;
4563545972 stack[base + 30LLU] = stack[base + 16]/*content*/;
@@ -45638,34 +45975,34 @@
4563845975 label = 18446744073709551582LLU; // reporttok
4563945976 break;
4564045977 }
45641- case 3816LLU: // copy-back deleter (reporttok to procblock)
45978+ case 3855LLU: // copy-back deleter (reporttok to procblock)
4564245979 {
4564345980 // copy mutable arguments back from call to reporttok
45644- label = 3670LLU; // continue to roll stack
45981+ label = 3709LLU; // continue to roll stack
4564545982 break;
4564645983 }
45647- case 3817LLU: // return from reporttok to procblock
45984+ case 3856LLU: // return from reporttok to procblock
4564845985 {
4564945986 // copy mutable arguments back from call to reporttok
4565045987 fprintf(stderr, "%s", "\n");
4565145988 {
45652- label = 3670LLU; // throw: begin to unroll stack
45989+ label = 3709LLU; // throw: begin to unroll stack
4565345990 break;
4565445991 }
4565545992
45656- label = 3813LLU; // consequent complete
45993+ label = 3852LLU; // consequent complete
4565745994 break;
4565845995 }
45659- case 3812LLU: // alternative
45996+ case 3851LLU: // alternative
4566045997 {
45661- label = 3813LLU; // alternative complete
45998+ label = 3852LLU; // alternative complete
4566245999 break;
4566346000 }
45664- case 3813LLU: // completed if-then-else
46001+ case 3852LLU: // completed if-then-else
4566546002 {
4566646003 if(!stack[base + 25]/*inputflag*/)
4566746004 {
45668- label = 3818LLU; // jump to alternative
46005+ label = 3857LLU; // jump to alternative
4566946006 break;
4567046007 }
4567146008
@@ -45672,9 +46009,9 @@
4567246009 // consequent
4567346010 fprintf(stderr, "%s", "in function ");
4567446011 // call reportid from procblock
45675- stack[base + 26LLU] = 3820LLU/*throw to this address*/;
46012+ stack[base + 26LLU] = 3859LLU/*throw to this address*/;
4567646013 stack[base + 27LLU] = base;
45677- stack[base + 28LLU] = 3821LLU;
46014+ stack[base + 28LLU] = 3860LLU;
4567846015 // arguments for call to reportid
4567946016 stack[base + 29LLU] = stack[base + 8]/*fnid*/;
4568046017 // set stack-base & callee-address
@@ -45682,20 +46019,20 @@
4568246019 label = 18446744073709551586LLU; // reportid
4568346020 break;
4568446021 }
45685- case 3820LLU: // copy-back deleter (reportid to procblock)
46022+ case 3859LLU: // copy-back deleter (reportid to procblock)
4568646023 {
4568746024 // copy mutable arguments back from call to reportid
45688- label = 3670LLU; // continue to roll stack
46025+ label = 3709LLU; // continue to roll stack
4568946026 break;
4569046027 }
45691- case 3821LLU: // return from reportid to procblock
46028+ case 3860LLU: // return from reportid to procblock
4569246029 {
4569346030 // copy mutable arguments back from call to reportid
4569446031 fprintf(stderr, "%s", ": while input expected '(' but found ");
4569546032 // call reporttok from procblock
45696- stack[base + 26LLU] = 3822LLU/*throw to this address*/;
46033+ stack[base + 26LLU] = 3861LLU/*throw to this address*/;
4569746034 stack[base + 27LLU] = base;
45698- stack[base + 28LLU] = 3823LLU;
46035+ stack[base + 28LLU] = 3862LLU;
4569946036 // arguments for call to reporttok
4570046037 stack[base + 29LLU] = stack[base + 15]/*variant*/;
4570146038 stack[base + 30LLU] = stack[base + 16]/*content*/;
@@ -45704,35 +46041,35 @@
4570446041 label = 18446744073709551582LLU; // reporttok
4570546042 break;
4570646043 }
45707- case 3822LLU: // copy-back deleter (reporttok to procblock)
46044+ case 3861LLU: // copy-back deleter (reporttok to procblock)
4570846045 {
4570946046 // copy mutable arguments back from call to reporttok
45710- label = 3670LLU; // continue to roll stack
46047+ label = 3709LLU; // continue to roll stack
4571146048 break;
4571246049 }
45713- case 3823LLU: // return from reporttok to procblock
46050+ case 3862LLU: // return from reporttok to procblock
4571446051 {
4571546052 // copy mutable arguments back from call to reporttok
4571646053 fprintf(stderr, "%s", "\n");
4571746054 {
45718- label = 3670LLU; // throw: begin to unroll stack
46055+ label = 3709LLU; // throw: begin to unroll stack
4571946056 break;
4572046057 }
4572146058
45722- label = 3819LLU; // consequent complete
46059+ label = 3858LLU; // consequent complete
4572346060 break;
4572446061 }
45725- case 3818LLU: // alternative
46062+ case 3857LLU: // alternative
4572646063 {
45727- label = 3819LLU; // alternative complete
46064+ label = 3858LLU; // alternative complete
4572846065 break;
4572946066 }
45730- case 3819LLU: // completed if-then-else
46067+ case 3858LLU: // completed if-then-else
4573146068 {
4573246069 // call equ from procblock
45733- stack[base + 26LLU] = 3824LLU/*throw to this address*/;
46070+ stack[base + 26LLU] = 3863LLU/*throw to this address*/;
4573446071 stack[base + 27LLU] = base;
45735- stack[base + 28LLU] = 3825LLU;
46072+ stack[base + 28LLU] = 3864LLU;
4573646073 // arguments for call to equ
4573746074 stack[base + 30LLU] = stack[base + 16]/*content*/;
4573846075 stack[base + 31LLU] = 747825068330975232LLU;
@@ -45741,66 +46078,66 @@
4574146078 label = 18446744073709551600LLU; // equ
4574246079 break;
4574346080 }
45744- case 3824LLU: // copy-back deleter (equ to procblock)
46081+ case 3863LLU: // copy-back deleter (equ to procblock)
4574546082 {
4574646083 // copy mutable arguments back from call to equ
45747- label = 3670LLU; // continue to roll stack
46084+ label = 3709LLU; // continue to roll stack
4574846085 break;
4574946086 }
45750- case 3825LLU: // return from equ to procblock
46087+ case 3864LLU: // return from equ to procblock
4575146088 {
4575246089 // copy mutable arguments back from call to equ
4575346090 // copy back results provided by call to equ
4575446091 stack[base + 20] = stack[base + 29LLU];
45755- label = 3827LLU; // skip deleter
46092+ label = 3866LLU; // skip deleter
4575646093 break;
4575746094 }
45758- case 3826LLU: // deleter
46095+ case 3865LLU: // deleter
4575946096 {
4576046097 // throw from procblock
4576146098 if(!stack[base + 26])
4576246099 {
45763- label = 3670LLU; // skip, variable already deleted/unscoped
46100+ label = 3709LLU; // skip, variable already deleted/unscoped
4576446101 break;
4576546102 }
45766- label = 3670LLU; // continue unrolling stack, delete next variable
46103+ label = 3709LLU; // continue unrolling stack, delete next variable
4576746104 break;
4576846105 }
45769- case 3827LLU: // skipped deleter
46106+ case 3866LLU: // skipped deleter
4577046107 {
4577146108 if(!stack[base + 20]/*isequal*/)
4577246109 {
45773- label = 3828LLU; // jump to alternative
46110+ label = 3867LLU; // jump to alternative
4577446111 break;
4577546112 }
4577646113
4577746114 // consequent
45778- label = 3831LLU; // skip deleter
46115+ label = 3870LLU; // skip deleter
4577946116 break;
4578046117 }
45781- case 3830LLU: // deleter
46118+ case 3869LLU: // deleter
4578246119 {
4578346120 // throw from procblock
4578446121 if(!stack[base + 26])
4578546122 {
45786- label = 3670LLU; // skip, variable already deleted/unscoped
46123+ label = 3709LLU; // skip, variable already deleted/unscoped
4578746124 break;
4578846125 }
45789- label = 3670LLU; // continue unrolling stack, delete next variable
46126+ label = 3709LLU; // continue unrolling stack, delete next variable
4579046127 break;
4579146128 }
45792- case 3831LLU: // skipped deleter
46129+ case 3870LLU: // skipped deleter
4579346130 {
4579446131 stack[base + 26] = 0;
45795- label = 3829LLU; // consequent complete
46132+ label = 3868LLU; // consequent complete
4579646133 break;
4579746134 }
45798- case 3828LLU: // alternative
46135+ case 3867LLU: // alternative
4579946136 {
4580046137 // call equ from procblock
45801- stack[base + 27LLU] = 3832LLU/*throw to this address*/;
46138+ stack[base + 27LLU] = 3871LLU/*throw to this address*/;
4580246139 stack[base + 28LLU] = base;
45803- stack[base + 29LLU] = 3833LLU;
46140+ stack[base + 29LLU] = 3872LLU;
4580446141 // arguments for call to equ
4580546142 stack[base + 31LLU] = stack[base + 16]/*content*/;
4580646143 stack[base + 32LLU] = 786630200929550336LLU;
@@ -45809,13 +46146,13 @@
4580946146 label = 18446744073709551600LLU; // equ
4581046147 break;
4581146148 }
45812- case 3832LLU: // copy-back deleter (equ to procblock)
46149+ case 3871LLU: // copy-back deleter (equ to procblock)
4581346150 {
4581446151 // copy mutable arguments back from call to equ
45815- label = 3670LLU; // continue to roll stack
46152+ label = 3709LLU; // continue to roll stack
4581646153 break;
4581746154 }
45818- case 3833LLU: // return from equ to procblock
46155+ case 3872LLU: // return from equ to procblock
4581946156 {
4582046157 // copy mutable arguments back from call to equ
4582146158 // copy back results provided by call to equ
@@ -45822,38 +46159,38 @@
4582246159 stack[base + 20] = stack[base + 30LLU];
4582346160 if(!stack[base + 20]/*isequal*/)
4582446161 {
45825- label = 3834LLU; // jump to alternative
46162+ label = 3873LLU; // jump to alternative
4582646163 break;
4582746164 }
4582846165
4582946166 // consequent
45830- label = 3837LLU; // skip deleter
46167+ label = 3876LLU; // skip deleter
4583146168 break;
4583246169 }
45833- case 3836LLU: // deleter
46170+ case 3875LLU: // deleter
4583446171 {
4583546172 // throw from procblock
4583646173 if(!stack[base + 26])
4583746174 {
45838- label = 3670LLU; // skip, variable already deleted/unscoped
46175+ label = 3709LLU; // skip, variable already deleted/unscoped
4583946176 break;
4584046177 }
45841- label = 3670LLU; // continue unrolling stack, delete next variable
46178+ label = 3709LLU; // continue unrolling stack, delete next variable
4584246179 break;
4584346180 }
45844- case 3837LLU: // skipped deleter
46181+ case 3876LLU: // skipped deleter
4584546182 {
4584646183 stack[base + 26] = 1;
45847- label = 3835LLU; // consequent complete
46184+ label = 3874LLU; // consequent complete
4584846185 break;
4584946186 }
45850- case 3834LLU: // alternative
46187+ case 3873LLU: // alternative
4585146188 {
4585246189 fprintf(stderr, "%s", "expected next but found token ");
4585346190 // call reporttok from procblock
45854- stack[base + 27LLU] = 3838LLU/*throw to this address*/;
46191+ stack[base + 27LLU] = 3877LLU/*throw to this address*/;
4585546192 stack[base + 28LLU] = base;
45856- stack[base + 29LLU] = 3839LLU;
46193+ stack[base + 29LLU] = 3878LLU;
4585746194 // arguments for call to reporttok
4585846195 stack[base + 30LLU] = stack[base + 15]/*variant*/;
4585946196 stack[base + 31LLU] = stack[base + 16]/*content*/;
@@ -45862,35 +46199,35 @@
4586246199 label = 18446744073709551582LLU; // reporttok
4586346200 break;
4586446201 }
45865- case 3838LLU: // copy-back deleter (reporttok to procblock)
46202+ case 3877LLU: // copy-back deleter (reporttok to procblock)
4586646203 {
4586746204 // copy mutable arguments back from call to reporttok
45868- label = 3670LLU; // continue to roll stack
46205+ label = 3709LLU; // continue to roll stack
4586946206 break;
4587046207 }
45871- case 3839LLU: // return from reporttok to procblock
46208+ case 3878LLU: // return from reporttok to procblock
4587246209 {
4587346210 // copy mutable arguments back from call to reporttok
4587446211 fprintf(stderr, "%s", "\n");
4587546212 {
45876- label = 3670LLU; // throw: begin to unroll stack
46213+ label = 3709LLU; // throw: begin to unroll stack
4587746214 break;
4587846215 }
4587946216
45880- label = 3835LLU; // alternative complete
46217+ label = 3874LLU; // alternative complete
4588146218 break;
4588246219 }
45883- case 3835LLU: // completed if-then-else
46220+ case 3874LLU: // completed if-then-else
4588446221 {
45885- label = 3829LLU; // alternative complete
46222+ label = 3868LLU; // alternative complete
4588646223 break;
4588746224 }
45888- case 3829LLU: // completed if-then-else
46225+ case 3868LLU: // completed if-then-else
4588946226 {
4589046227 // call matchsym from procblock
45891- stack[base + 27LLU] = 3840LLU/*throw to this address*/;
46228+ stack[base + 27LLU] = 3879LLU/*throw to this address*/;
4589246229 stack[base + 28LLU] = base;
45893- stack[base + 29LLU] = 3841LLU;
46230+ stack[base + 29LLU] = 3880LLU;
4589446231 // arguments for call to matchsym
4589546232 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4589646233 stack[base + 31LLU] = 40LLU;
@@ -45900,38 +46237,38 @@
4590046237 label = 222LLU; // matchsym
4590146238 break;
4590246239 }
45903- case 3840LLU: // copy-back deleter (matchsym to procblock)
46240+ case 3879LLU: // copy-back deleter (matchsym to procblock)
4590446241 {
4590546242 // copy mutable arguments back from call to matchsym
4590646243 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
45907- label = 3826LLU; // continue to roll stack
46244+ label = 3865LLU; // continue to roll stack
4590846245 break;
4590946246 }
45910- case 3841LLU: // return from matchsym to procblock
46247+ case 3880LLU: // return from matchsym to procblock
4591146248 {
4591246249 // copy mutable arguments back from call to matchsym
4591346250 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
45914- label = 3843LLU; // skip deleter
46251+ label = 3882LLU; // skip deleter
4591546252 break;
4591646253 }
45917- case 3842LLU: // deleter
46254+ case 3881LLU: // deleter
4591846255 {
4591946256 // throw from procblock
4592046257 if(!stack[base + 27])
4592146258 {
45922- label = 3826LLU; // skip, variable already deleted/unscoped
46259+ label = 3865LLU; // skip, variable already deleted/unscoped
4592346260 break;
4592446261 }
45925- label = 3826LLU; // continue unrolling stack, delete next variable
46262+ label = 3865LLU; // continue unrolling stack, delete next variable
4592646263 break;
4592746264 }
45928- case 3843LLU: // skipped deleter
46265+ case 3882LLU: // skipped deleter
4592946266 {
4593046267 stack[base + 27] = 0;
4593146268 // call ParseToken from procblock
45932- stack[base + 28LLU] = 3844LLU/*throw to this address*/;
46269+ stack[base + 28LLU] = 3883LLU/*throw to this address*/;
4593346270 stack[base + 29LLU] = base;
45934- stack[base + 30LLU] = 3845LLU;
46271+ stack[base + 30LLU] = 3884LLU;
4593546272 // arguments for call to ParseToken
4593646273 stack[base + 33LLU] = stack[base + 19]/*lookahead*/;
4593746274 // set stack-base & callee-address
@@ -45939,14 +46276,14 @@
4593946276 label = 3LLU; // ParseToken
4594046277 break;
4594146278 }
45942- case 3844LLU: // copy-back deleter (ParseToken to procblock)
46279+ case 3883LLU: // copy-back deleter (ParseToken to procblock)
4594346280 {
4594446281 // copy mutable arguments back from call to ParseToken
4594546282 stack[base + 19]/*lookahead*/ = stack[base + 33LLU];
45946- label = 3842LLU; // continue to roll stack
46283+ label = 3881LLU; // continue to roll stack
4594746284 break;
4594846285 }
45949- case 3845LLU: // return from ParseToken to procblock
46286+ case 3884LLU: // return from ParseToken to procblock
4595046287 {
4595146288 // copy mutable arguments back from call to ParseToken
4595246289 stack[base + 19]/*lookahead*/ = stack[base + 33LLU];
@@ -45954,9 +46291,9 @@
4595446291 stack[base + 15] = stack[base + 31LLU];
4595546292 stack[base + 27] = stack[base + 32LLU];
4595646293 // call equ from procblock
45957- stack[base + 28LLU] = 3846LLU/*throw to this address*/;
46294+ stack[base + 28LLU] = 3885LLU/*throw to this address*/;
4595846295 stack[base + 29LLU] = base;
45959- stack[base + 30LLU] = 3847LLU;
46296+ stack[base + 30LLU] = 3886LLU;
4596046297 // arguments for call to equ
4596146298 stack[base + 32LLU] = stack[base + 15]/*variant*/;
4596246299 stack[base + 33LLU] = 4LLU;
@@ -45965,13 +46302,13 @@
4596546302 label = 18446744073709551600LLU; // equ
4596646303 break;
4596746304 }
45968- case 3846LLU: // copy-back deleter (equ to procblock)
46305+ case 3885LLU: // copy-back deleter (equ to procblock)
4596946306 {
4597046307 // copy mutable arguments back from call to equ
45971- label = 3842LLU; // continue to roll stack
46308+ label = 3881LLU; // continue to roll stack
4597246309 break;
4597346310 }
45974- case 3847LLU: // return from equ to procblock
46311+ case 3886LLU: // return from equ to procblock
4597546312 {
4597646313 // copy mutable arguments back from call to equ
4597746314 // copy back results provided by call to equ
@@ -45978,21 +46315,21 @@
4597846315 stack[base + 20] = stack[base + 31LLU];
4597946316 if(!stack[base + 20]/*isequal*/)
4598046317 {
45981- label = 3848LLU; // jump to alternative
46318+ label = 3887LLU; // jump to alternative
4598246319 break;
4598346320 }
4598446321
4598546322 // consequent
45986- label = 3849LLU; // consequent complete
46323+ label = 3888LLU; // consequent complete
4598746324 break;
4598846325 }
45989- case 3848LLU: // alternative
46326+ case 3887LLU: // alternative
4599046327 {
4599146328 fprintf(stderr, "%s", "expected identifier in while next but found ");
4599246329 // call reporttok from procblock
45993- stack[base + 28LLU] = 3850LLU/*throw to this address*/;
46330+ stack[base + 28LLU] = 3889LLU/*throw to this address*/;
4599446331 stack[base + 29LLU] = base;
45995- stack[base + 30LLU] = 3851LLU;
46332+ stack[base + 30LLU] = 3890LLU;
4599646333 // arguments for call to reporttok
4599746334 stack[base + 31LLU] = stack[base + 15]/*variant*/;
4599846335 stack[base + 32LLU] = stack[base + 27]/*listid*/;
@@ -46001,35 +46338,35 @@
4600146338 label = 18446744073709551582LLU; // reporttok
4600246339 break;
4600346340 }
46004- case 3850LLU: // copy-back deleter (reporttok to procblock)
46341+ case 3889LLU: // copy-back deleter (reporttok to procblock)
4600546342 {
4600646343 // copy mutable arguments back from call to reporttok
46007- label = 3842LLU; // continue to roll stack
46344+ label = 3881LLU; // continue to roll stack
4600846345 break;
4600946346 }
46010- case 3851LLU: // return from reporttok to procblock
46347+ case 3890LLU: // return from reporttok to procblock
4601146348 {
4601246349 // copy mutable arguments back from call to reporttok
4601346350 fprintf(stderr, "%s", "\n");
4601446351 {
46015- label = 3842LLU; // throw: begin to unroll stack
46352+ label = 3881LLU; // throw: begin to unroll stack
4601646353 break;
4601746354 }
4601846355
46019- label = 3849LLU; // alternative complete
46356+ label = 3888LLU; // alternative complete
4602046357 break;
4602146358 }
46022- case 3849LLU: // completed if-then-else
46359+ case 3888LLU: // completed if-then-else
4602346360 {
46024- label = 3853LLU; // skip deleter
46361+ label = 3892LLU; // skip deleter
4602546362 break;
4602646363 }
46027- case 3852LLU: // deleter
46364+ case 3891LLU: // deleter
4602846365 {
4602946366 // throw from procblock
4603046367 if(!stack[base + 28])
4603146368 {
46032- label = 3842LLU; // skip, variable already deleted/unscoped
46369+ label = 3881LLU; // skip, variable already deleted/unscoped
4603346370 break;
4603446371 }
4603546372
@@ -46038,7 +46375,7 @@
4603846375 newstack[0] = (uint64_t)stack; // backup stack location
4603946376 newstack[1] = 1234567890;
4604046377 newstack[2] = base;
46041- newstack[3] = 3854LLU;
46378+ newstack[3] = 3893LLU;
4604246379 stack = newstack;
4604346380 // set stack-base & callee-address
4604446381 base = 4/*deloffset*/;
@@ -46045,21 +46382,21 @@
4604546382 label = 482LLU; // ~letdef
4604646383 break;
4604746384 }
46048- case 3854LLU: // return from ~letdef to procblock
46385+ case 3893LLU: // return from ~letdef to procblock
4604946386 {
4605046387 stack = (uint64_t *)stack[0];
4605146388 // releasing toplevel container
4605246389 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 28] - sizeof(uint64_t) * 4));
4605346390
46054- label = 3842LLU; // continue unrolling stack, delete next variable
46391+ label = 3881LLU; // continue unrolling stack, delete next variable
4605546392 break;
4605646393 }
46057- case 3853LLU: // skipped deleter
46394+ case 3892LLU: // skipped deleter
4605846395 {
4605946396 // call FindLetNew from procblock
46060- stack[base + 29LLU] = 3855LLU/*throw to this address*/;
46397+ stack[base + 29LLU] = 3894LLU/*throw to this address*/;
4606146398 stack[base + 30LLU] = base;
46062- stack[base + 31LLU] = 3856LLU;
46399+ stack[base + 31LLU] = 3895LLU;
4606346400 // arguments for call to FindLetNew
4606446401 stack[base + 33LLU] = stack[base + 8]/*fnid*/;
4606546402 stack[base + 34LLU] = stack[base + 27]/*listid*/;
@@ -46070,13 +46407,13 @@
4607046407 label = 615LLU; // FindLetNew
4607146408 break;
4607246409 }
46073- case 3855LLU: // copy-back deleter (FindLetNew to procblock)
46410+ case 3894LLU: // copy-back deleter (FindLetNew to procblock)
4607446411 {
4607546412 // copy mutable arguments back from call to FindLetNew
46076- label = 3842LLU; // continue to roll stack
46413+ label = 3881LLU; // continue to roll stack
4607746414 break;
4607846415 }
46079- case 3856LLU: // return from FindLetNew to procblock
46416+ case 3895LLU: // return from FindLetNew to procblock
4608046417 {
4608146418 // copy mutable arguments back from call to FindLetNew
4608246419 // copy back results provided by call to FindLetNew
@@ -46083,7 +46420,7 @@
4608346420 stack[base + 28] = stack[base + 32LLU];
4608446421 if(/*letdef*/0 != ((uint64_t *)(stack[base + 28]/*letdef*/))[0])
4608546422 {
46086- label = 3858LLU; // jump to alternative
46423+ label = 3897LLU; // jump to alternative
4608746424 break;
4608846425 }
4608946426
@@ -46094,71 +46431,71 @@
4609446431 /*substruct*/stack[base + 33] = ((uint64_t **)(stack[base + 28]/*letdef*/))[1][4]/*substruct*/;
4609546432
4609646433 // case
46097- label = 3861LLU; // skip deleter
46434+ label = 3900LLU; // skip deleter
4609846435 break;
4609946436 }
46100- case 3860LLU: // deleter
46437+ case 3899LLU: // deleter
4610146438 {
4610246439 // throw from procblock
4610346440 if(!stack[base + 34])
4610446441 {
46105- label = 3859LLU; // skip, variable already deleted/unscoped
46442+ label = 3898LLU; // skip, variable already deleted/unscoped
4610646443 break;
4610746444 }
46108- label = 3859LLU; // continue unrolling stack, delete next variable
46445+ label = 3898LLU; // continue unrolling stack, delete next variable
4610946446 break;
4611046447 }
46111- case 3861LLU: // skipped deleter
46448+ case 3900LLU: // skipped deleter
4611246449 {
4611346450 if(!stack[base + 32]/*mutable*/)
4611446451 {
46115- label = 3862LLU; // jump to alternative
46452+ label = 3901LLU; // jump to alternative
4611646453 break;
4611746454 }
4611846455
4611946456 // consequent
46120- label = 3865LLU; // skip deleter
46457+ label = 3904LLU; // skip deleter
4612146458 break;
4612246459 }
46123- case 3864LLU: // deleter
46460+ case 3903LLU: // deleter
4612446461 {
4612546462 // throw from procblock
4612646463 if(!stack[base + 34])
4612746464 {
46128- label = 3859LLU; // skip, variable already deleted/unscoped
46465+ label = 3898LLU; // skip, variable already deleted/unscoped
4612946466 break;
4613046467 }
46131- label = 3859LLU; // continue unrolling stack, delete next variable
46468+ label = 3898LLU; // continue unrolling stack, delete next variable
4613246469 break;
4613346470 }
46134- case 3865LLU: // skipped deleter
46471+ case 3904LLU: // skipped deleter
4613546472 {
4613646473 stack[base + 34] = 0;
46137- label = 3863LLU; // consequent complete
46474+ label = 3902LLU; // consequent complete
4613846475 break;
4613946476 }
46140- case 3862LLU: // alternative
46477+ case 3901LLU: // alternative
4614146478 {
46142- label = 3867LLU; // skip deleter
46479+ label = 3906LLU; // skip deleter
4614346480 break;
4614446481 }
46145- case 3866LLU: // deleter
46482+ case 3905LLU: // deleter
4614646483 {
4614746484 // throw from procblock
4614846485 if(!stack[base + 35])
4614946486 {
46150- label = 3859LLU; // skip, variable already deleted/unscoped
46487+ label = 3898LLU; // skip, variable already deleted/unscoped
4615146488 break;
4615246489 }
46153- label = 3859LLU; // continue unrolling stack, delete next variable
46490+ label = 3898LLU; // continue unrolling stack, delete next variable
4615446491 break;
4615546492 }
46156- case 3867LLU: // skipped deleter
46493+ case 3906LLU: // skipped deleter
4615746494 {
4615846495 // call isparam from procblock
46159- stack[base + 36LLU] = 3868LLU/*throw to this address*/;
46496+ stack[base + 36LLU] = 3907LLU/*throw to this address*/;
4616046497 stack[base + 37LLU] = base;
46161- stack[base + 38LLU] = 3869LLU;
46498+ stack[base + 38LLU] = 3908LLU;
4616246499 // arguments for call to isparam
4616346500 stack[base + 40LLU] = stack[base + 10]/*fnrescount*/;
4616446501 stack[base + 41LLU] = stack[base + 11]/*fnargcount*/;
@@ -46168,21 +46505,21 @@
4616846505 label = 1621LLU; // isparam
4616946506 break;
4617046507 }
46171- case 3868LLU: // copy-back deleter (isparam to procblock)
46508+ case 3907LLU: // copy-back deleter (isparam to procblock)
4617246509 {
4617346510 // copy mutable arguments back from call to isparam
46174- label = 3859LLU; // continue to roll stack
46511+ label = 3898LLU; // continue to roll stack
4617546512 break;
4617646513 }
46177- case 3869LLU: // return from isparam to procblock
46514+ case 3908LLU: // return from isparam to procblock
4617846515 {
4617946516 // copy mutable arguments back from call to isparam
4618046517 // copy back results provided by call to isparam
4618146518 stack[base + 35] = stack[base + 39LLU];
4618246519 // call or from procblock
46183- stack[base + 36LLU] = 3870LLU/*throw to this address*/;
46520+ stack[base + 36LLU] = 3909LLU/*throw to this address*/;
4618446521 stack[base + 37LLU] = base;
46185- stack[base + 38LLU] = 3871LLU;
46522+ stack[base + 38LLU] = 3910LLU;
4618646523 // arguments for call to or
4618746524 stack[base + 40LLU] = stack[base + 33]/*substruct*/;
4618846525 stack[base + 41LLU] = stack[base + 35]/*param*/;
@@ -46191,41 +46528,41 @@
4619146528 label = 18446744073709551611LLU; // or
4619246529 break;
4619346530 }
46194- case 3870LLU: // copy-back deleter (or to procblock)
46531+ case 3909LLU: // copy-back deleter (or to procblock)
4619546532 {
4619646533 // copy mutable arguments back from call to or
46197- label = 3866LLU; // continue to roll stack
46534+ label = 3905LLU; // continue to roll stack
4619846535 break;
4619946536 }
46200- case 3871LLU: // return from or to procblock
46537+ case 3910LLU: // return from or to procblock
4620146538 {
4620246539 // copy mutable arguments back from call to or
4620346540 // copy back results provided by call to or
4620446541 stack[base + 34] = stack[base + 39LLU];
46205- label = 3863LLU; // alternative complete
46542+ label = 3902LLU; // alternative complete
4620646543 break;
4620746544 }
46208- case 3863LLU: // completed if-then-else
46545+ case 3902LLU: // completed if-then-else
4620946546 {
46210- label = 3873LLU; // skip deleter
46547+ label = 3912LLU; // skip deleter
4621146548 break;
4621246549 }
46213- case 3872LLU: // deleter
46550+ case 3911LLU: // deleter
4621446551 {
4621546552 // throw from procblock
4621646553 if(!stack[base + 35])
4621746554 {
46218- label = 3860LLU; // skip, variable already deleted/unscoped
46555+ label = 3899LLU; // skip, variable already deleted/unscoped
4621946556 break;
4622046557 }
46221- label = 3860LLU; // continue unrolling stack, delete next variable
46558+ label = 3899LLU; // continue unrolling stack, delete next variable
4622246559 break;
4622346560 }
46224- case 3873LLU: // skipped deleter
46561+ case 3912LLU: // skipped deleter
4622546562 {
4622646563 if(!stack[base + 26]/*consume*/)
4622746564 {
46228- label = 3874LLU; // jump to alternative
46565+ label = 3913LLU; // jump to alternative
4622946566 break;
4623046567 }
4623146568
@@ -46232,21 +46569,21 @@
4623246569 // consequent
4623346570 if(!stack[base + 32]/*mutable*/)
4623446571 {
46235- label = 3876LLU; // jump to alternative
46572+ label = 3915LLU; // jump to alternative
4623646573 break;
4623746574 }
4623846575
4623946576 // consequent
46240- label = 3877LLU; // consequent complete
46577+ label = 3916LLU; // consequent complete
4624146578 break;
4624246579 }
46243- case 3876LLU: // alternative
46580+ case 3915LLU: // alternative
4624446581 {
4624546582 fprintf(stderr, "%s", "in function ");
4624646583 // call reportid from procblock
46247- stack[base + 36LLU] = 3878LLU/*throw to this address*/;
46584+ stack[base + 36LLU] = 3917LLU/*throw to this address*/;
4624846585 stack[base + 37LLU] = base;
46249- stack[base + 38LLU] = 3879LLU;
46586+ stack[base + 38LLU] = 3918LLU;
4625046587 // arguments for call to reportid
4625146588 stack[base + 39LLU] = stack[base + 8]/*fnid*/;
4625246589 // set stack-base & callee-address
@@ -46254,13 +46591,13 @@
4625446591 label = 18446744073709551586LLU; // reportid
4625546592 break;
4625646593 }
46257- case 3878LLU: // copy-back deleter (reportid to procblock)
46594+ case 3917LLU: // copy-back deleter (reportid to procblock)
4625846595 {
4625946596 // copy mutable arguments back from call to reportid
46260- label = 3860LLU; // continue to roll stack
46597+ label = 3899LLU; // continue to roll stack
4626146598 break;
4626246599 }
46263- case 3879LLU: // return from reportid to procblock
46600+ case 3918LLU: // return from reportid to procblock
4626446601 {
4626546602 // copy mutable arguments back from call to reportid
4626646603 fprintf(stderr, "%s", ": ");
@@ -46268,7 +46605,7 @@
4626846605 uint64_t *newstack = (uint64_t *)Calloc(10LLU + 1, sizeof(uint64_t));
4626946606 if(!newstack)
4627046607 {
46271- label = 3860LLU; // throw: begin to unroll stack
46608+ label = 3899LLU; // throw: begin to unroll stack
4627246609 break;
4627346610 }
4627446611
@@ -46275,9 +46612,9 @@
4627546612 newstack[10LLU] = 9876543210LLU; // overflow-marker
4627646613 // call reporttype from procblock
4627746614 newstack[0] = (uint64_t)stack; // backup stack location
46278- newstack[1] = 3880LLU;
46615+ newstack[1] = 3919LLU;
4627946616 newstack[2] = base;
46280- newstack[3] = 3881LLU;
46617+ newstack[3] = 3920LLU;
4628146618 // arguments for call to reporttype
4628246619 newstack[4LLU] = stack[base + 29]/*listtype*/;
4628346620 stack = newstack;
@@ -46286,7 +46623,7 @@
4628646623 label = 326LLU; // reporttype
4628746624 break;
4628846625 }
46289- case 3880LLU: // copy-back deleter (reporttype to procblock)
46626+ case 3919LLU: // copy-back deleter (reporttype to procblock)
4629046627 {
4629146628 uint64_t *oldstack = (uint64_t *)stack[0];
4629246629 // copy mutable arguments back from call to reporttype
@@ -46297,10 +46634,10 @@
4629746634 }
4629846635 Free(10LLU + 1, sizeof(uint64_t), stack);
4629946636 stack = oldstack;
46300- label = 3860LLU; // continue to unroll stack
46637+ label = 3899LLU; // continue to unroll stack
4630146638 break;
4630246639 }
46303- case 3881LLU: // return from reporttype to procblock
46640+ case 3920LLU: // return from reporttype to procblock
4630446641 {
4630546642 uint64_t *oldstack = (uint64_t *)stack[0];
4630646643 // copy mutable arguments back from call to reporttype
@@ -46313,18 +46650,18 @@
4631346650 stack = oldstack;
4631446651 fprintf(stderr, "%s", "\n");
4631546652 {
46316- label = 3860LLU; // throw: begin to unroll stack
46653+ label = 3899LLU; // throw: begin to unroll stack
4631746654 break;
4631846655 }
4631946656
46320- label = 3877LLU; // alternative complete
46657+ label = 3916LLU; // alternative complete
4632146658 break;
4632246659 }
46323- case 3877LLU: // completed if-then-else
46660+ case 3916LLU: // completed if-then-else
4632446661 {
4632546662 if(/*scope*/0 != ((uint64_t *)(stack[base + 3]/*scope*/))[0])
4632646663 {
46327- label = 3883LLU; // jump to alternative
46664+ label = 3922LLU; // jump to alternative
4632846665 break;
4632946666 }
4633046667
@@ -46332,15 +46669,15 @@
4633246669 /*letdefs*/stack[base + 37] = ((uint64_t **)(stack[base + 3]/*scope*/))[1][1]/*letdefs*/;
4633346670
4633446671 // case
46335- label = 3886LLU; // skip deleter
46672+ label = 3925LLU; // skip deleter
4633646673 break;
4633746674 }
46338- case 3885LLU: // deleter
46675+ case 3924LLU: // deleter
4633946676 {
4634046677 // throw from procblock
4634146678 if(!stack[base + 38])
4634246679 {
46343- label = 3884LLU; // skip, variable already deleted/unscoped
46680+ label = 3923LLU; // skip, variable already deleted/unscoped
4634446681 break;
4634546682 }
4634646683
@@ -46349,7 +46686,7 @@
4634946686 newstack[0] = (uint64_t)stack; // backup stack location
4635046687 newstack[1] = 1234567890;
4635146688 newstack[2] = base;
46352- newstack[3] = 3887LLU;
46689+ newstack[3] = 3926LLU;
4635346690 stack = newstack;
4635446691 // set stack-base & callee-address
4635546692 base = 4/*deloffset*/;
@@ -46356,21 +46693,21 @@
4635646693 label = 306LLU; // ~type
4635746694 break;
4635846695 }
46359- case 3887LLU: // return from ~type to procblock
46696+ case 3926LLU: // return from ~type to procblock
4636046697 {
4636146698 stack = (uint64_t *)stack[0];
4636246699 // releasing toplevel container
4636346700 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 38] - sizeof(uint64_t) * 4));
4636446701
46365- label = 3884LLU; // continue unrolling stack, delete next variable
46702+ label = 3923LLU; // continue unrolling stack, delete next variable
4636646703 break;
4636746704 }
46368- case 3886LLU: // skipped deleter
46705+ case 3925LLU: // skipped deleter
4636946706 {
4637046707 uint64_t *newstack = (uint64_t *)Calloc(15LLU + 1, sizeof(uint64_t));
4637146708 if(!newstack)
4637246709 {
46373- label = 3884LLU; // throw: begin to unroll stack
46710+ label = 3923LLU; // throw: begin to unroll stack
4637446711 break;
4637546712 }
4637646713
@@ -46377,9 +46714,9 @@
4637746714 newstack[15LLU] = 9876543210LLU; // overflow-marker
4637846715 // call copytype from procblock
4637946716 newstack[0] = (uint64_t)stack; // backup stack location
46380- newstack[1] = 3888LLU;
46717+ newstack[1] = 3927LLU;
4638146718 newstack[2] = base;
46382- newstack[3] = 3889LLU;
46719+ newstack[3] = 3928LLU;
4638346720 // arguments for call to copytype
4638446721 newstack[5LLU] = stack[base + 29]/*listtype*/;
4638546722 stack = newstack;
@@ -46388,7 +46725,7 @@
4638846725 label = 337LLU; // copytype
4638946726 break;
4639046727 }
46391- case 3888LLU: // copy-back deleter (copytype to procblock)
46728+ case 3927LLU: // copy-back deleter (copytype to procblock)
4639246729 {
4639346730 uint64_t *oldstack = (uint64_t *)stack[0];
4639446731 // copy mutable arguments back from call to copytype
@@ -46399,10 +46736,10 @@
4639946736 }
4640046737 Free(15LLU + 1, sizeof(uint64_t), stack);
4640146738 stack = oldstack;
46402- label = 3884LLU; // continue to unroll stack
46739+ label = 3923LLU; // continue to unroll stack
4640346740 break;
4640446741 }
46405- case 3889LLU: // return from copytype to procblock
46742+ case 3928LLU: // return from copytype to procblock
4640646743 {
4640746744 uint64_t *oldstack = (uint64_t *)stack[0];
4640846745 // copy mutable arguments back from call to copytype
@@ -46415,49 +46752,49 @@
4641546752 }
4641646753 Free(15LLU + 1, sizeof(uint64_t), stack);
4641746754 stack = oldstack;
46418- label = 3891LLU; // skip deleter
46755+ label = 3930LLU; // skip deleter
4641946756 break;
4642046757 }
46421- case 3890LLU: // deleter
46758+ case 3929LLU: // deleter
4642246759 {
4642346760 // throw from procblock
4642446761 if(!stack[base + 39])
4642546762 {
46426- label = 3885LLU; // skip, variable already deleted/unscoped
46763+ label = 3924LLU; // skip, variable already deleted/unscoped
4642746764 break;
4642846765 }
46429- label = 3885LLU; // continue unrolling stack, delete next variable
46766+ label = 3924LLU; // continue unrolling stack, delete next variable
4643046767 break;
4643146768 }
46432- case 3891LLU: // skipped deleter
46769+ case 3930LLU: // skipped deleter
4643346770 {
4643446771 stack[base + 39] = 0;
46435- label = 3893LLU; // skip deleter
46772+ label = 3932LLU; // skip deleter
4643646773 break;
4643746774 }
46438- case 3892LLU: // deleter
46775+ case 3931LLU: // deleter
4643946776 {
4644046777 // throw from procblock
4644146778 if(!stack[base + 40])
4644246779 {
46443- label = 3890LLU; // skip, variable already deleted/unscoped
46780+ label = 3929LLU; // skip, variable already deleted/unscoped
4644446781 break;
4644546782 }
46446- label = 3890LLU; // continue unrolling stack, delete next variable
46783+ label = 3929LLU; // continue unrolling stack, delete next variable
4644746784 break;
4644846785 }
46449- case 3893LLU: // skipped deleter
46786+ case 3932LLU: // skipped deleter
4645046787 {
4645146788 stack[base + 40] = 0;
46452- label = 3895LLU; // skip deleter
46789+ label = 3934LLU; // skip deleter
4645346790 break;
4645446791 }
46455- case 3894LLU: // deleter
46792+ case 3933LLU: // deleter
4645646793 {
4645746794 // throw from procblock
4645846795 if(!stack[base + 41])
4645946796 {
46460- label = 3892LLU; // skip, variable already deleted/unscoped
46797+ label = 3931LLU; // skip, variable already deleted/unscoped
4646146798 break;
4646246799 }
4646346800
@@ -46466,7 +46803,7 @@
4646646803 newstack[0] = (uint64_t)stack; // backup stack location
4646746804 newstack[1] = 1234567890;
4646846805 newstack[2] = base;
46469- newstack[3] = 3896LLU;
46806+ newstack[3] = 3935LLU;
4647046807 stack = newstack;
4647146808 // set stack-base & callee-address
4647246809 base = 4/*deloffset*/;
@@ -46473,21 +46810,21 @@
4647346810 label = 482LLU; // ~letdef
4647446811 break;
4647546812 }
46476- case 3896LLU: // return from ~letdef to procblock
46813+ case 3935LLU: // return from ~letdef to procblock
4647746814 {
4647846815 stack = (uint64_t *)stack[0];
4647946816 // releasing toplevel container
4648046817 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 41] - sizeof(uint64_t) * 4));
4648146818
46482- label = 3892LLU; // continue unrolling stack, delete next variable
46819+ label = 3931LLU; // continue unrolling stack, delete next variable
4648346820 break;
4648446821 }
46485- case 3895LLU: // skipped deleter
46822+ case 3934LLU: // skipped deleter
4648646823 {
4648746824 // construct letdef.letdef
4648846825 if(!(stack[base + 41] = construct(5)))
4648946826 {
46490- label = 3892LLU; // throw: begin to unroll stack
46827+ label = 3931LLU; // throw: begin to unroll stack
4649146828 break;
4649246829 }
4649346830
@@ -46513,50 +46850,50 @@
4651346850 }
4651446851 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 37];
4651546852 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 36];
46516- label = 3882LLU; // case complete
46853+ label = 3921LLU; // case complete
4651746854 break;
4651846855 }
46519- case 3884LLU: // copy-back deleter (switch)
46856+ case 3923LLU: // copy-back deleter (switch)
4652046857 {
4652146858 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 37];
4652246859 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 36];
46523- label = 3860LLU; // continue to unroll stack
46860+ label = 3899LLU; // continue to unroll stack
4652446861 break;
4652546862 }
46526- case 3883LLU: // try next case
46863+ case 3922LLU: // try next case
4652746864 {
4652846865 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
4652946866 exit(-1);
4653046867 }
46531- case 3882LLU: // completed switch
46868+ case 3921LLU: // completed switch
4653246869 {
46533- label = 3898LLU; // skip deleter
46870+ label = 3937LLU; // skip deleter
4653446871 break;
4653546872 }
46536- case 3897LLU: // deleter
46873+ case 3936LLU: // deleter
4653746874 {
4653846875 // throw from procblock
4653946876 if(!stack[base + 35])
4654046877 {
46541- label = 3860LLU; // skip, variable already deleted/unscoped
46878+ label = 3899LLU; // skip, variable already deleted/unscoped
4654246879 break;
4654346880 }
46544- label = 3860LLU; // continue unrolling stack, delete next variable
46881+ label = 3899LLU; // continue unrolling stack, delete next variable
4654546882 break;
4654646883 }
46547- case 3898LLU: // skipped deleter
46884+ case 3937LLU: // skipped deleter
4654846885 {
4654946886 stack[base + 35] = stack[base + 31]/*listindex*/;
46550- label = 3875LLU; // consequent complete
46887+ label = 3914LLU; // consequent complete
4655146888 break;
4655246889 }
46553- case 3874LLU: // alternative
46890+ case 3913LLU: // alternative
4655446891 {
4655546892 printf("%s", "\n flippedassign(");
4655646893 // call emitvar from procblock
46557- stack[base + 36LLU] = 3899LLU/*throw to this address*/;
46894+ stack[base + 36LLU] = 3938LLU/*throw to this address*/;
4655846895 stack[base + 37LLU] = base;
46559- stack[base + 38LLU] = 3900LLU;
46896+ stack[base + 38LLU] = 3939LLU;
4656046897 // arguments for call to emitvar
4656146898 stack[base + 39LLU] = stack[base + 8]/*fnid*/;
4656246899 stack[base + 40LLU] = stack[base + 30]/*listid*/;
@@ -46567,36 +46904,36 @@
4656746904 label = 745LLU; // emitvar
4656846905 break;
4656946906 }
46570- case 3899LLU: // copy-back deleter (emitvar to procblock)
46907+ case 3938LLU: // copy-back deleter (emitvar to procblock)
4657146908 {
4657246909 // copy mutable arguments back from call to emitvar
46573- label = 3860LLU; // continue to roll stack
46910+ label = 3899LLU; // continue to roll stack
4657446911 break;
4657546912 }
46576- case 3900LLU: // return from emitvar to procblock
46913+ case 3939LLU: // return from emitvar to procblock
4657746914 {
4657846915 // copy mutable arguments back from call to emitvar
4657946916 printf("%s", ", &");
46580- label = 3902LLU; // skip deleter
46917+ label = 3941LLU; // skip deleter
4658146918 break;
4658246919 }
46583- case 3901LLU: // deleter
46920+ case 3940LLU: // deleter
4658446921 {
4658546922 // throw from procblock
4658646923 if(!stack[base + 36])
4658746924 {
46588- label = 3860LLU; // skip, variable already deleted/unscoped
46925+ label = 3899LLU; // skip, variable already deleted/unscoped
4658946926 break;
4659046927 }
46591- label = 3860LLU; // continue unrolling stack, delete next variable
46928+ label = 3899LLU; // continue unrolling stack, delete next variable
4659246929 break;
4659346930 }
46594- case 3902LLU: // skipped deleter
46931+ case 3941LLU: // skipped deleter
4659546932 {
4659646933 // call newvarraw from procblock
46597- stack[base + 37LLU] = 3903LLU/*throw to this address*/;
46934+ stack[base + 37LLU] = 3942LLU/*throw to this address*/;
4659846935 stack[base + 38LLU] = base;
46599- stack[base + 39LLU] = 3904LLU;
46936+ stack[base + 39LLU] = 3943LLU;
4660046937 // arguments for call to newvarraw
4660146938 stack[base + 41LLU] = stack[base + 29]/*listtype*/;
4660246939 stack[base + 42LLU] = stack[base + 30]/*listid*/;
@@ -46612,16 +46949,16 @@
4661246949 label = 755LLU; // newvarraw
4661346950 break;
4661446951 }
46615- case 3903LLU: // copy-back deleter (newvarraw to procblock)
46952+ case 3942LLU: // copy-back deleter (newvarraw to procblock)
4661646953 {
4661746954 // copy mutable arguments back from call to newvarraw
4661846955 stack[base + 3]/*scope*/ = stack[base + 48LLU];
4661946956 stack[base + 18]/*varcount*/ = stack[base + 47LLU];
4662046957 stack[base + 12]/*fnmaxcount*/ = stack[base + 46LLU];
46621- label = 3860LLU; // continue to roll stack
46958+ label = 3899LLU; // continue to roll stack
4662246959 break;
4662346960 }
46624- case 3904LLU: // return from newvarraw to procblock
46961+ case 3943LLU: // return from newvarraw to procblock
4662546962 {
4662646963 // copy mutable arguments back from call to newvarraw
4662746964 stack[base + 3]/*scope*/ = stack[base + 48LLU];
@@ -46630,9 +46967,9 @@
4663046967 // copy back results provided by call to newvarraw
4663146968 stack[base + 36] = stack[base + 40LLU];
4663246969 // call emitvaridx from procblock
46633- stack[base + 37LLU] = 3905LLU/*throw to this address*/;
46970+ stack[base + 37LLU] = 3944LLU/*throw to this address*/;
4663446971 stack[base + 38LLU] = base;
46635- stack[base + 39LLU] = 3906LLU;
46972+ stack[base + 39LLU] = 3945LLU;
4663646973 // arguments for call to emitvaridx
4663746974 stack[base + 40LLU] = stack[base + 36]/*shadowidx*/;
4663846975 // set stack-base & callee-address
@@ -46640,43 +46977,43 @@
4664046977 label = 741LLU; // emitvaridx
4664146978 break;
4664246979 }
46643- case 3905LLU: // copy-back deleter (emitvaridx to procblock)
46980+ case 3944LLU: // copy-back deleter (emitvaridx to procblock)
4664446981 {
4664546982 // copy mutable arguments back from call to emitvaridx
46646- label = 3901LLU; // continue to roll stack
46983+ label = 3940LLU; // continue to roll stack
4664746984 break;
4664846985 }
46649- case 3906LLU: // return from emitvaridx to procblock
46986+ case 3945LLU: // return from emitvaridx to procblock
4665046987 {
4665146988 // copy mutable arguments back from call to emitvaridx
4665246989 printf("%s", ");");
46653- label = 3908LLU; // skip deleter
46990+ label = 3947LLU; // skip deleter
4665446991 break;
4665546992 }
46656- case 3907LLU: // deleter
46993+ case 3946LLU: // deleter
4665746994 {
4665846995 // throw from procblock
4665946996 if(!stack[base + 35])
4666046997 {
46661- label = 3901LLU; // skip, variable already deleted/unscoped
46998+ label = 3940LLU; // skip, variable already deleted/unscoped
4666246999 break;
4666347000 }
46664- label = 3901LLU; // continue unrolling stack, delete next variable
47001+ label = 3940LLU; // continue unrolling stack, delete next variable
4666547002 break;
4666647003 }
46667- case 3908LLU: // skipped deleter
47004+ case 3947LLU: // skipped deleter
4666847005 {
4666947006 stack[base + 35] = stack[base + 36]/*shadowidx*/;
46670- label = 3875LLU; // alternative complete
47007+ label = 3914LLU; // alternative complete
4667147008 break;
4667247009 }
46673- case 3875LLU: // completed if-then-else
47010+ case 3914LLU: // completed if-then-else
4667447011 {
4667547012 printf("%s", "\n label = ");
4667647013 // call printnr from procblock
46677- stack[base + 36LLU] = 3909LLU/*throw to this address*/;
47014+ stack[base + 36LLU] = 3948LLU/*throw to this address*/;
4667847015 stack[base + 37LLU] = base;
46679- stack[base + 38LLU] = 3910LLU;
47016+ stack[base + 38LLU] = 3949LLU;
4668047017 // arguments for call to printnr
4668147018 stack[base + 39LLU] = stack[base + 22]/*labelloop*/;
4668247019 // set stack-base & callee-address
@@ -46684,13 +47021,13 @@
4668447021 label = 18446744073709551590LLU; // printnr
4668547022 break;
4668647023 }
46687- case 3909LLU: // copy-back deleter (printnr to procblock)
47024+ case 3948LLU: // copy-back deleter (printnr to procblock)
4668847025 {
4668947026 // copy mutable arguments back from call to printnr
46690- label = 3872LLU; // continue to roll stack
47027+ label = 3911LLU; // continue to roll stack
4669147028 break;
4669247029 }
46693- case 3910LLU: // return from printnr to procblock
47030+ case 3949LLU: // return from printnr to procblock
4669447031 {
4669547032 // copy mutable arguments back from call to printnr
4669647033 printf("%s", "LLU; // start to repeat");
@@ -46698,9 +47035,9 @@
4669847035 printf("%s", "\n }");
4669947036 printf("%s", "\n case ");
4670047037 // call printnr from procblock
46701- stack[base + 36LLU] = 3911LLU/*throw to this address*/;
47038+ stack[base + 36LLU] = 3950LLU/*throw to this address*/;
4670247039 stack[base + 37LLU] = base;
46703- stack[base + 38LLU] = 3912LLU;
47040+ stack[base + 38LLU] = 3951LLU;
4670447041 // arguments for call to printnr
4670547042 stack[base + 39LLU] = stack[base + 22]/*labelloop*/;
4670647043 // set stack-base & callee-address
@@ -46708,13 +47045,13 @@
4670847045 label = 18446744073709551590LLU; // printnr
4670947046 break;
4671047047 }
46711- case 3911LLU: // copy-back deleter (printnr to procblock)
47048+ case 3950LLU: // copy-back deleter (printnr to procblock)
4671247049 {
4671347050 // copy mutable arguments back from call to printnr
46714- label = 3872LLU; // continue to roll stack
47051+ label = 3911LLU; // continue to roll stack
4671547052 break;
4671647053 }
46717- case 3912LLU: // return from printnr to procblock
47054+ case 3951LLU: // return from printnr to procblock
4671847055 {
4671947056 // copy mutable arguments back from call to printnr
4672047057 printf("%s", "LLU: // repeat from here");
@@ -46721,9 +47058,9 @@
4672147058 printf("%s", "\n {");
4672247059 printf("%s", "\n if(!");
4672347060 // call emitvaridx from procblock
46724- stack[base + 36LLU] = 3913LLU/*throw to this address*/;
47061+ stack[base + 36LLU] = 3952LLU/*throw to this address*/;
4672547062 stack[base + 37LLU] = base;
46726- stack[base + 38LLU] = 3914LLU;
47063+ stack[base + 38LLU] = 3953LLU;
4672747064 // arguments for call to emitvaridx
4672847065 stack[base + 39LLU] = stack[base + 35]/*listindex*/;
4672947066 // set stack-base & callee-address
@@ -46731,19 +47068,19 @@
4673147068 label = 741LLU; // emitvaridx
4673247069 break;
4673347070 }
46734- case 3913LLU: // copy-back deleter (emitvaridx to procblock)
47071+ case 3952LLU: // copy-back deleter (emitvaridx to procblock)
4673547072 {
4673647073 // copy mutable arguments back from call to emitvaridx
46737- label = 3872LLU; // continue to roll stack
47074+ label = 3911LLU; // continue to roll stack
4673847075 break;
4673947076 }
46740- case 3914LLU: // return from emitvaridx to procblock
47077+ case 3953LLU: // return from emitvaridx to procblock
4674147078 {
4674247079 // copy mutable arguments back from call to emitvaridx
4674347080 // call matchsym from procblock
46744- stack[base + 36LLU] = 3915LLU/*throw to this address*/;
47081+ stack[base + 36LLU] = 3954LLU/*throw to this address*/;
4674547082 stack[base + 37LLU] = base;
46746- stack[base + 38LLU] = 3916LLU;
47083+ stack[base + 38LLU] = 3955LLU;
4674747084 // arguments for call to matchsym
4674847085 stack[base + 39LLU] = stack[base + 8]/*fnid*/;
4674947086 stack[base + 40LLU] = 41LLU;
@@ -46753,21 +47090,21 @@
4675347090 label = 222LLU; // matchsym
4675447091 break;
4675547092 }
46756- case 3915LLU: // copy-back deleter (matchsym to procblock)
47093+ case 3954LLU: // copy-back deleter (matchsym to procblock)
4675747094 {
4675847095 // copy mutable arguments back from call to matchsym
4675947096 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
46760- label = 3872LLU; // continue to roll stack
47097+ label = 3911LLU; // continue to roll stack
4676147098 break;
4676247099 }
46763- case 3916LLU: // return from matchsym to procblock
47100+ case 3955LLU: // return from matchsym to procblock
4676447101 {
4676547102 // copy mutable arguments back from call to matchsym
4676647103 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
4676747104 // call matchsym from procblock
46768- stack[base + 36LLU] = 3917LLU/*throw to this address*/;
47105+ stack[base + 36LLU] = 3956LLU/*throw to this address*/;
4676947106 stack[base + 37LLU] = base;
46770- stack[base + 38LLU] = 3918LLU;
47107+ stack[base + 38LLU] = 3957LLU;
4677147108 // arguments for call to matchsym
4677247109 stack[base + 39LLU] = stack[base + 8]/*fnid*/;
4677347110 stack[base + 40LLU] = 45LLU;
@@ -46777,21 +47114,21 @@
4677747114 label = 222LLU; // matchsym
4677847115 break;
4677947116 }
46780- case 3917LLU: // copy-back deleter (matchsym to procblock)
47117+ case 3956LLU: // copy-back deleter (matchsym to procblock)
4678147118 {
4678247119 // copy mutable arguments back from call to matchsym
4678347120 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
46784- label = 3872LLU; // continue to roll stack
47121+ label = 3911LLU; // continue to roll stack
4678547122 break;
4678647123 }
46787- case 3918LLU: // return from matchsym to procblock
47124+ case 3957LLU: // return from matchsym to procblock
4678847125 {
4678947126 // copy mutable arguments back from call to matchsym
4679047127 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
4679147128 // call matchsym from procblock
46792- stack[base + 36LLU] = 3919LLU/*throw to this address*/;
47129+ stack[base + 36LLU] = 3958LLU/*throw to this address*/;
4679347130 stack[base + 37LLU] = base;
46794- stack[base + 38LLU] = 3920LLU;
47131+ stack[base + 38LLU] = 3959LLU;
4679547132 // arguments for call to matchsym
4679647133 stack[base + 39LLU] = stack[base + 8]/*fnid*/;
4679747134 stack[base + 40LLU] = 62LLU;
@@ -46801,21 +47138,21 @@
4680147138 label = 222LLU; // matchsym
4680247139 break;
4680347140 }
46804- case 3919LLU: // copy-back deleter (matchsym to procblock)
47141+ case 3958LLU: // copy-back deleter (matchsym to procblock)
4680547142 {
4680647143 // copy mutable arguments back from call to matchsym
4680747144 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
46808- label = 3872LLU; // continue to roll stack
47145+ label = 3911LLU; // continue to roll stack
4680947146 break;
4681047147 }
46811- case 3920LLU: // return from matchsym to procblock
47148+ case 3959LLU: // return from matchsym to procblock
4681247149 {
4681347150 // copy mutable arguments back from call to matchsym
4681447151 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
4681547152 // call matchsym from procblock
46816- stack[base + 36LLU] = 3921LLU/*throw to this address*/;
47153+ stack[base + 36LLU] = 3960LLU/*throw to this address*/;
4681747154 stack[base + 37LLU] = base;
46818- stack[base + 38LLU] = 3922LLU;
47155+ stack[base + 38LLU] = 3961LLU;
4681947156 // arguments for call to matchsym
4682047157 stack[base + 39LLU] = stack[base + 8]/*fnid*/;
4682147158 stack[base + 40LLU] = 40LLU;
@@ -46825,38 +47162,38 @@
4682547162 label = 222LLU; // matchsym
4682647163 break;
4682747164 }
46828- case 3921LLU: // copy-back deleter (matchsym to procblock)
47165+ case 3960LLU: // copy-back deleter (matchsym to procblock)
4682947166 {
4683047167 // copy mutable arguments back from call to matchsym
4683147168 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
46832- label = 3872LLU; // continue to roll stack
47169+ label = 3911LLU; // continue to roll stack
4683347170 break;
4683447171 }
46835- case 3922LLU: // return from matchsym to procblock
47172+ case 3961LLU: // return from matchsym to procblock
4683647173 {
4683747174 // copy mutable arguments back from call to matchsym
4683847175 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
46839- label = 3924LLU; // skip deleter
47176+ label = 3963LLU; // skip deleter
4684047177 break;
4684147178 }
46842- case 3923LLU: // deleter
47179+ case 3962LLU: // deleter
4684347180 {
4684447181 // throw from procblock
4684547182 if(!stack[base + 36])
4684647183 {
46847- label = 3872LLU; // skip, variable already deleted/unscoped
47184+ label = 3911LLU; // skip, variable already deleted/unscoped
4684847185 break;
4684947186 }
46850- label = 3872LLU; // continue unrolling stack, delete next variable
47187+ label = 3911LLU; // continue unrolling stack, delete next variable
4685147188 break;
4685247189 }
46853- case 3924LLU: // skipped deleter
47190+ case 3963LLU: // skipped deleter
4685447191 {
4685547192 stack[base + 36] = 0;
4685647193 // call ParseToken from procblock
46857- stack[base + 37LLU] = 3925LLU/*throw to this address*/;
47194+ stack[base + 37LLU] = 3964LLU/*throw to this address*/;
4685847195 stack[base + 38LLU] = base;
46859- stack[base + 39LLU] = 3926LLU;
47196+ stack[base + 39LLU] = 3965LLU;
4686047197 // arguments for call to ParseToken
4686147198 stack[base + 42LLU] = stack[base + 19]/*lookahead*/;
4686247199 // set stack-base & callee-address
@@ -46864,14 +47201,14 @@
4686447201 label = 3LLU; // ParseToken
4686547202 break;
4686647203 }
46867- case 3925LLU: // copy-back deleter (ParseToken to procblock)
47204+ case 3964LLU: // copy-back deleter (ParseToken to procblock)
4686847205 {
4686947206 // copy mutable arguments back from call to ParseToken
4687047207 stack[base + 19]/*lookahead*/ = stack[base + 42LLU];
46871- label = 3923LLU; // continue to roll stack
47208+ label = 3962LLU; // continue to roll stack
4687247209 break;
4687347210 }
46874- case 3926LLU: // return from ParseToken to procblock
47211+ case 3965LLU: // return from ParseToken to procblock
4687547212 {
4687647213 // copy mutable arguments back from call to ParseToken
4687747214 stack[base + 19]/*lookahead*/ = stack[base + 42LLU];
@@ -46879,9 +47216,9 @@
4687947216 stack[base + 15] = stack[base + 40LLU];
4688047217 stack[base + 36] = stack[base + 41LLU];
4688147218 // call equ from procblock
46882- stack[base + 37LLU] = 3927LLU/*throw to this address*/;
47219+ stack[base + 37LLU] = 3966LLU/*throw to this address*/;
4688347220 stack[base + 38LLU] = base;
46884- stack[base + 39LLU] = 3928LLU;
47221+ stack[base + 39LLU] = 3967LLU;
4688547222 // arguments for call to equ
4688647223 stack[base + 41LLU] = stack[base + 15]/*variant*/;
4688747224 stack[base + 42LLU] = 4LLU;
@@ -46890,13 +47227,13 @@
4689047227 label = 18446744073709551600LLU; // equ
4689147228 break;
4689247229 }
46893- case 3927LLU: // copy-back deleter (equ to procblock)
47230+ case 3966LLU: // copy-back deleter (equ to procblock)
4689447231 {
4689547232 // copy mutable arguments back from call to equ
46896- label = 3923LLU; // continue to roll stack
47233+ label = 3962LLU; // continue to roll stack
4689747234 break;
4689847235 }
46899- case 3928LLU: // return from equ to procblock
47236+ case 3967LLU: // return from equ to procblock
4690047237 {
4690147238 // copy mutable arguments back from call to equ
4690247239 // copy back results provided by call to equ
@@ -46903,21 +47240,21 @@
4690347240 stack[base + 20] = stack[base + 40LLU];
4690447241 if(!stack[base + 20]/*isequal*/)
4690547242 {
46906- label = 3929LLU; // jump to alternative
47243+ label = 3968LLU; // jump to alternative
4690747244 break;
4690847245 }
4690947246
4691047247 // consequent
46911- label = 3930LLU; // consequent complete
47248+ label = 3969LLU; // consequent complete
4691247249 break;
4691347250 }
46914- case 3929LLU: // alternative
47251+ case 3968LLU: // alternative
4691547252 {
4691647253 fprintf(stderr, "%s", "expected identifier in while next but found ");
4691747254 // call reporttok from procblock
46918- stack[base + 37LLU] = 3931LLU/*throw to this address*/;
47255+ stack[base + 37LLU] = 3970LLU/*throw to this address*/;
4691947256 stack[base + 38LLU] = base;
46920- stack[base + 39LLU] = 3932LLU;
47257+ stack[base + 39LLU] = 3971LLU;
4692147258 // arguments for call to reporttok
4692247259 stack[base + 40LLU] = stack[base + 15]/*variant*/;
4692347260 stack[base + 41LLU] = stack[base + 36]/*elemid*/;
@@ -46926,33 +47263,33 @@
4692647263 label = 18446744073709551582LLU; // reporttok
4692747264 break;
4692847265 }
46929- case 3931LLU: // copy-back deleter (reporttok to procblock)
47266+ case 3970LLU: // copy-back deleter (reporttok to procblock)
4693047267 {
4693147268 // copy mutable arguments back from call to reporttok
46932- label = 3923LLU; // continue to roll stack
47269+ label = 3962LLU; // continue to roll stack
4693347270 break;
4693447271 }
46935- case 3932LLU: // return from reporttok to procblock
47272+ case 3971LLU: // return from reporttok to procblock
4693647273 {
4693747274 // copy mutable arguments back from call to reporttok
4693847275 fprintf(stderr, "%s", "\n");
4693947276 {
46940- label = 3923LLU; // throw: begin to unroll stack
47277+ label = 3962LLU; // throw: begin to unroll stack
4694147278 break;
4694247279 }
4694347280
46944- label = 3930LLU; // alternative complete
47281+ label = 3969LLU; // alternative complete
4694547282 break;
4694647283 }
46947- case 3930LLU: // completed if-then-else
47284+ case 3969LLU: // completed if-then-else
4694847285 {
4694947286 printf("%s", ")");
4695047287 printf("%s", "\n {");
4695147288 printf("%s", "\n label = ");
4695247289 // call printnr from procblock
46953- stack[base + 37LLU] = 3933LLU/*throw to this address*/;
47290+ stack[base + 37LLU] = 3972LLU/*throw to this address*/;
4695447291 stack[base + 38LLU] = base;
46955- stack[base + 39LLU] = 3934LLU;
47292+ stack[base + 39LLU] = 3973LLU;
4695647293 // arguments for call to printnr
4695747294 stack[base + 40LLU] = stack[base + 23]/*labelskip*/;
4695847295 // set stack-base & callee-address
@@ -46960,13 +47297,13 @@
4696047297 label = 18446744073709551590LLU; // printnr
4696147298 break;
4696247299 }
46963- case 3933LLU: // copy-back deleter (printnr to procblock)
47300+ case 3972LLU: // copy-back deleter (printnr to procblock)
4696447301 {
4696547302 // copy mutable arguments back from call to printnr
46966- label = 3923LLU; // continue to roll stack
47303+ label = 3962LLU; // continue to roll stack
4696747304 break;
4696847305 }
46969- case 3934LLU: // return from printnr to procblock
47306+ case 3973LLU: // return from printnr to procblock
4697047307 {
4697147308 // copy mutable arguments back from call to printnr
4697247309 printf("%s", "LLU; // break loop");
@@ -46976,7 +47313,7 @@
4697647313 printf("%s", "\n // loop body");
4697747314 if(/*typelist*/1 != ((uint64_t *)(stack[base + 29]/*listtype*/))[0])
4697847315 {
46979- label = 3936LLU; // jump to alternative
47316+ label = 3975LLU; // jump to alternative
4698047317 break;
4698147318 }
4698247319
@@ -46983,26 +47320,26 @@
4698347320 /*elemtype*/stack[base + 37] = ((uint64_t **)(stack[base + 29]/*listtype*/))[1][0]/*subtype*/;
4698447321
4698547322 // case
46986- label = 3939LLU; // skip deleter
47323+ label = 3978LLU; // skip deleter
4698747324 break;
4698847325 }
46989- case 3938LLU: // deleter
47326+ case 3977LLU: // deleter
4699047327 {
4699147328 // throw from procblock
4699247329 if(!stack[base + 38])
4699347330 {
46994- label = 3937LLU; // skip, variable already deleted/unscoped
47331+ label = 3976LLU; // skip, variable already deleted/unscoped
4699547332 break;
4699647333 }
46997- label = 3937LLU; // continue unrolling stack, delete next variable
47334+ label = 3976LLU; // continue unrolling stack, delete next variable
4699847335 break;
4699947336 }
47000- case 3939LLU: // skipped deleter
47337+ case 3978LLU: // skipped deleter
4700147338 {
4700247339 // call newvarraw from procblock
47003- stack[base + 39LLU] = 3940LLU/*throw to this address*/;
47340+ stack[base + 39LLU] = 3979LLU/*throw to this address*/;
4700447341 stack[base + 40LLU] = base;
47005- stack[base + 41LLU] = 3941LLU;
47342+ stack[base + 41LLU] = 3980LLU;
4700647343 // arguments for call to newvarraw
4700747344 stack[base + 43LLU] = stack[base + 37]/*elemtype*/;
4700847345 stack[base + 44LLU] = stack[base + 36]/*elemid*/;
@@ -47018,16 +47355,16 @@
4701847355 label = 755LLU; // newvarraw
4701947356 break;
4702047357 }
47021- case 3940LLU: // copy-back deleter (newvarraw to procblock)
47358+ case 3979LLU: // copy-back deleter (newvarraw to procblock)
4702247359 {
4702347360 // copy mutable arguments back from call to newvarraw
4702447361 stack[base + 3]/*scope*/ = stack[base + 50LLU];
4702547362 stack[base + 18]/*varcount*/ = stack[base + 49LLU];
4702647363 stack[base + 12]/*fnmaxcount*/ = stack[base + 48LLU];
47027- label = 3937LLU; // continue to roll stack
47364+ label = 3976LLU; // continue to roll stack
4702847365 break;
4702947366 }
47030- case 3941LLU: // return from newvarraw to procblock
47367+ case 3980LLU: // return from newvarraw to procblock
4703147368 {
4703247369 // copy mutable arguments back from call to newvarraw
4703347370 stack[base + 3]/*scope*/ = stack[base + 50LLU];
@@ -47037,9 +47374,9 @@
4703747374 stack[base + 38] = stack[base + 42LLU];
4703847375 printf("%s", "\n ");
4703947376 // call emitvaridx from procblock
47040- stack[base + 39LLU] = 3942LLU/*throw to this address*/;
47377+ stack[base + 39LLU] = 3981LLU/*throw to this address*/;
4704147378 stack[base + 40LLU] = base;
47042- stack[base + 41LLU] = 3943LLU;
47379+ stack[base + 41LLU] = 3982LLU;
4704347380 // arguments for call to emitvaridx
4704447381 stack[base + 42LLU] = stack[base + 38]/*elemindex*/;
4704547382 // set stack-base & callee-address
@@ -47047,20 +47384,20 @@
4704747384 label = 741LLU; // emitvaridx
4704847385 break;
4704947386 }
47050- case 3942LLU: // copy-back deleter (emitvaridx to procblock)
47387+ case 3981LLU: // copy-back deleter (emitvaridx to procblock)
4705147388 {
4705247389 // copy mutable arguments back from call to emitvaridx
47053- label = 3938LLU; // continue to roll stack
47390+ label = 3977LLU; // continue to roll stack
4705447391 break;
4705547392 }
47056- case 3943LLU: // return from emitvaridx to procblock
47393+ case 3982LLU: // return from emitvaridx to procblock
4705747394 {
4705847395 // copy mutable arguments back from call to emitvaridx
4705947396 printf("%s", " = (uint64_t)(((const struct listnode *)(");
4706047397 // call emitvaridx from procblock
47061- stack[base + 39LLU] = 3944LLU/*throw to this address*/;
47398+ stack[base + 39LLU] = 3983LLU/*throw to this address*/;
4706247399 stack[base + 40LLU] = base;
47063- stack[base + 41LLU] = 3945LLU;
47400+ stack[base + 41LLU] = 3984LLU;
4706447401 // arguments for call to emitvaridx
4706547402 stack[base + 42LLU] = stack[base + 35]/*listindex*/;
4706647403 // set stack-base & callee-address
@@ -47068,20 +47405,20 @@
4706847405 label = 741LLU; // emitvaridx
4706947406 break;
4707047407 }
47071- case 3944LLU: // copy-back deleter (emitvaridx to procblock)
47408+ case 3983LLU: // copy-back deleter (emitvaridx to procblock)
4707247409 {
4707347410 // copy mutable arguments back from call to emitvaridx
47074- label = 3938LLU; // continue to roll stack
47411+ label = 3977LLU; // continue to roll stack
4707547412 break;
4707647413 }
47077- case 3945LLU: // return from emitvaridx to procblock
47414+ case 3984LLU: // return from emitvaridx to procblock
4707847415 {
4707947416 // copy mutable arguments back from call to emitvaridx
4708047417 printf("%s", "))->data);");
4708147418 // call matchsym from procblock
47082- stack[base + 39LLU] = 3946LLU/*throw to this address*/;
47419+ stack[base + 39LLU] = 3985LLU/*throw to this address*/;
4708347420 stack[base + 40LLU] = base;
47084- stack[base + 41LLU] = 3947LLU;
47421+ stack[base + 41LLU] = 3986LLU;
4708547422 // arguments for call to matchsym
4708647423 stack[base + 42LLU] = stack[base + 8]/*fnid*/;
4708747424 stack[base + 43LLU] = 41LLU;
@@ -47091,21 +47428,21 @@
4709147428 label = 222LLU; // matchsym
4709247429 break;
4709347430 }
47094- case 3946LLU: // copy-back deleter (matchsym to procblock)
47431+ case 3985LLU: // copy-back deleter (matchsym to procblock)
4709547432 {
4709647433 // copy mutable arguments back from call to matchsym
4709747434 stack[base + 19]/*lookahead*/ = stack[base + 44LLU];
47098- label = 3938LLU; // continue to roll stack
47435+ label = 3977LLU; // continue to roll stack
4709947436 break;
4710047437 }
47101- case 3947LLU: // return from matchsym to procblock
47438+ case 3986LLU: // return from matchsym to procblock
4710247439 {
4710347440 // copy mutable arguments back from call to matchsym
4710447441 stack[base + 19]/*lookahead*/ = stack[base + 44LLU];
4710547442 // call matchsym from procblock
47106- stack[base + 39LLU] = 3948LLU/*throw to this address*/;
47443+ stack[base + 39LLU] = 3987LLU/*throw to this address*/;
4710747444 stack[base + 40LLU] = base;
47108- stack[base + 41LLU] = 3949LLU;
47445+ stack[base + 41LLU] = 3988LLU;
4710947446 // arguments for call to matchsym
4711047447 stack[base + 42LLU] = stack[base + 8]/*fnid*/;
4711147448 stack[base + 43LLU] = 123LLU;
@@ -47115,20 +47452,20 @@
4711547452 label = 222LLU; // matchsym
4711647453 break;
4711747454 }
47118- case 3948LLU: // copy-back deleter (matchsym to procblock)
47455+ case 3987LLU: // copy-back deleter (matchsym to procblock)
4711947456 {
4712047457 // copy mutable arguments back from call to matchsym
4712147458 stack[base + 19]/*lookahead*/ = stack[base + 44LLU];
47122- label = 3938LLU; // continue to roll stack
47459+ label = 3977LLU; // continue to roll stack
4712347460 break;
4712447461 }
47125- case 3949LLU: // return from matchsym to procblock
47462+ case 3988LLU: // return from matchsym to procblock
4712647463 {
4712747464 // copy mutable arguments back from call to matchsym
4712847465 stack[base + 19]/*lookahead*/ = stack[base + 44LLU];
4712947466 if(!stack[base + 26]/*consume*/)
4713047467 {
47131- label = 3950LLU; // jump to alternative
47468+ label = 3989LLU; // jump to alternative
4713247469 break;
4713347470 }
4713447471
@@ -47136,9 +47473,9 @@
4713647473 printf("%s", "\n {");
4713747474 printf("%s", "\n struct listnode *list = (struct listnode *)(");
4713847475 // call emitvaridx from procblock
47139- stack[base + 39LLU] = 3952LLU/*throw to this address*/;
47476+ stack[base + 39LLU] = 3991LLU/*throw to this address*/;
4714047477 stack[base + 40LLU] = base;
47141- stack[base + 41LLU] = 3953LLU;
47478+ stack[base + 41LLU] = 3992LLU;
4714247479 // arguments for call to emitvaridx
4714347480 stack[base + 42LLU] = stack[base + 35]/*listindex*/;
4714447481 // set stack-base & callee-address
@@ -47146,21 +47483,21 @@
4714647483 label = 741LLU; // emitvaridx
4714747484 break;
4714847485 }
47149- case 3952LLU: // copy-back deleter (emitvaridx to procblock)
47486+ case 3991LLU: // copy-back deleter (emitvaridx to procblock)
4715047487 {
4715147488 // copy mutable arguments back from call to emitvaridx
47152- label = 3938LLU; // continue to roll stack
47489+ label = 3977LLU; // continue to roll stack
4715347490 break;
4715447491 }
47155- case 3953LLU: // return from emitvaridx to procblock
47492+ case 3992LLU: // return from emitvaridx to procblock
4715647493 {
4715747494 // copy mutable arguments back from call to emitvaridx
4715847495 printf("%s", ");");
4715947496 printf("%s", "\n ");
4716047497 // call emitvaridx from procblock
47161- stack[base + 39LLU] = 3954LLU/*throw to this address*/;
47498+ stack[base + 39LLU] = 3993LLU/*throw to this address*/;
4716247499 stack[base + 40LLU] = base;
47163- stack[base + 41LLU] = 3955LLU;
47500+ stack[base + 41LLU] = 3994LLU;
4716447501 // arguments for call to emitvaridx
4716547502 stack[base + 42LLU] = stack[base + 35]/*listindex*/;
4716647503 // set stack-base & callee-address
@@ -47168,38 +47505,38 @@
4716847505 label = 741LLU; // emitvaridx
4716947506 break;
4717047507 }
47171- case 3954LLU: // copy-back deleter (emitvaridx to procblock)
47508+ case 3993LLU: // copy-back deleter (emitvaridx to procblock)
4717247509 {
4717347510 // copy mutable arguments back from call to emitvaridx
47174- label = 3938LLU; // continue to roll stack
47511+ label = 3977LLU; // continue to roll stack
4717547512 break;
4717647513 }
47177- case 3955LLU: // return from emitvaridx to procblock
47514+ case 3994LLU: // return from emitvaridx to procblock
4717847515 {
4717947516 // copy mutable arguments back from call to emitvaridx
4718047517 printf("%s", " = (uint64_t)list->next;");
4718147518 printf("%s", "\n Free(1, sizeof(struct listnode), list);");
4718247519 printf("%s", "\n }");
47183- label = 3957LLU; // skip deleter
47520+ label = 3996LLU; // skip deleter
4718447521 break;
4718547522 }
47186- case 3956LLU: // deleter
47523+ case 3995LLU: // deleter
4718747524 {
4718847525 // throw from procblock
4718947526 if(!stack[base + 39])
4719047527 {
47191- label = 3938LLU; // skip, variable already deleted/unscoped
47528+ label = 3977LLU; // skip, variable already deleted/unscoped
4719247529 break;
4719347530 }
4719447531 // delete list
47195- label = 3958LLU; // start to repeat
47532+ label = 3997LLU; // start to repeat
4719647533 break;
4719747534 }
47198- case 3958LLU: // repeat from here
47535+ case 3997LLU: // repeat from here
4719947536 {
4720047537 if(!stack[base + 39])
4720147538 {
47202- label = 3959LLU; // break loop
47539+ label = 3998LLU; // break loop
4720347540 break;
4720447541 }
4720547542
@@ -47210,7 +47547,7 @@
4721047547 newstack[0] = (uint64_t)stack; // backup stack location
4721147548 newstack[1] = 1234567890;
4721247549 newstack[2] = base;
47213- newstack[3] = 3960LLU;
47550+ newstack[3] = 3999LLU;
4721447551 stack = newstack;
4721547552 // set stack-base & callee-address
4721647553 base = 4/*deloffset*/;
@@ -47217,7 +47554,7 @@
4721747554 label = 395LLU; // ~typeidx
4721847555 break;
4721947556 }
47220- case 3960LLU: // return from ~typeidx to procblock
47557+ case 3999LLU: // return from ~typeidx to procblock
4722147558 {
4722247559 stack = (uint64_t *)stack[0];
4722347560 // releasing toplevel container
@@ -47228,21 +47565,21 @@
4722847565 stack[base + 39] = (uint64_t)list->next;
4722947566 Free(1, sizeof(struct listnode), list);
4723047567 }
47231- label = 3958LLU; // repeat
47568+ label = 3997LLU; // repeat
4723247569 break;
4723347570 }
47234- case 3959LLU: // loop finished
47571+ case 3998LLU: // loop finished
4723547572 {
47236- label = 3938LLU; // continue unrolling stack, delete next variable
47573+ label = 3977LLU; // continue unrolling stack, delete next variable
4723747574 break;
4723847575 }
47239- case 3957LLU: // skipped deleter
47576+ case 3996LLU: // skipped deleter
4724047577 {
4724147578 stack[base + 39] = 0;
4724247579 uint64_t *newstack = (uint64_t *)Calloc(160LLU + 1, sizeof(uint64_t));
4724347580 if(!newstack)
4724447581 {
47245- label = 3956LLU; // throw: begin to unroll stack
47582+ label = 3995LLU; // throw: begin to unroll stack
4724647583 break;
4724747584 }
4724847585
@@ -47249,9 +47586,9 @@
4724947586 newstack[160LLU] = 9876543210LLU; // overflow-marker
4725047587 // call procblock from procblock
4725147588 newstack[0] = (uint64_t)stack; // backup stack location
47252- newstack[1] = 3961LLU;
47589+ newstack[1] = 4000LLU;
4725347590 newstack[2] = base;
47254- newstack[3] = 3962LLU;
47591+ newstack[3] = 4001LLU;
4725547592 // arguments for call to procblock
4725647593 newstack[4LLU] = stack[base + 0]/*fndefs*/;
4725747594 newstack[5LLU] = stack[base + 1]/*typedefs*/;
@@ -47277,7 +47614,7 @@
4727747614 label = 3319LLU; // procblock
4727847615 break;
4727947616 }
47280- case 3961LLU: // copy-back deleter (procblock to procblock)
47617+ case 4000LLU: // copy-back deleter (procblock to procblock)
4728147618 {
4728247619 uint64_t *oldstack = (uint64_t *)stack[0];
4728347620 // copy mutable arguments back from call to procblock
@@ -47294,10 +47631,10 @@
4729447631 }
4729547632 Free(160LLU + 1, sizeof(uint64_t), stack);
4729647633 stack = oldstack;
47297- label = 3956LLU; // continue to unroll stack
47634+ label = 3995LLU; // continue to unroll stack
4729847635 break;
4729947636 }
47300- case 3962LLU: // return from procblock to procblock
47637+ case 4001LLU: // return from procblock to procblock
4730147638 {
4730247639 uint64_t *oldstack = (uint64_t *)stack[0];
4730347640 // copy mutable arguments back from call to procblock
@@ -47315,14 +47652,14 @@
4731547652 Free(160LLU + 1, sizeof(uint64_t), stack);
4731647653 stack = oldstack;
4731747654 // delete list
47318- label = 3963LLU; // start to repeat
47655+ label = 4002LLU; // start to repeat
4731947656 break;
4732047657 }
47321- case 3963LLU: // repeat from here
47658+ case 4002LLU: // repeat from here
4732247659 {
4732347660 if(!stack[base + 39])
4732447661 {
47325- label = 3964LLU; // break loop
47662+ label = 4003LLU; // break loop
4732647663 break;
4732747664 }
4732847665
@@ -47333,7 +47670,7 @@
4733347670 newstack[0] = (uint64_t)stack; // backup stack location
4733447671 newstack[1] = 1234567890;
4733547672 newstack[2] = base;
47336- newstack[3] = 3965LLU;
47673+ newstack[3] = 4004LLU;
4733747674 stack = newstack;
4733847675 // set stack-base & callee-address
4733947676 base = 4/*deloffset*/;
@@ -47340,7 +47677,7 @@
4734047677 label = 395LLU; // ~typeidx
4734147678 break;
4734247679 }
47343- case 3965LLU: // return from ~typeidx to procblock
47680+ case 4004LLU: // return from ~typeidx to procblock
4734447681 {
4734547682 stack = (uint64_t *)stack[0];
4734647683 // releasing toplevel container
@@ -47351,15 +47688,15 @@
4735147688 stack[base + 39] = (uint64_t)list->next;
4735247689 Free(1, sizeof(struct listnode), list);
4735347690 }
47354- label = 3963LLU; // repeat
47691+ label = 4002LLU; // repeat
4735547692 break;
4735647693 }
47357- case 3964LLU: // loop finished
47694+ case 4003LLU: // loop finished
4735847695 {
4735947696 uint64_t *newstack = (uint64_t *)Calloc(75LLU + 1, sizeof(uint64_t));
4736047697 if(!newstack)
4736147698 {
47362- label = 3938LLU; // throw: begin to unroll stack
47699+ label = 3977LLU; // throw: begin to unroll stack
4736347700 break;
4736447701 }
4736547702
@@ -47366,9 +47703,9 @@
4736647703 newstack[75LLU] = 9876543210LLU; // overflow-marker
4736747704 // call calldestr from procblock
4736847705 newstack[0] = (uint64_t)stack; // backup stack location
47369- newstack[1] = 3966LLU;
47706+ newstack[1] = 4005LLU;
4737047707 newstack[2] = base;
47371- newstack[3] = 3967LLU;
47708+ newstack[3] = 4006LLU;
4737247709 // arguments for call to calldestr
4737347710 newstack[4LLU] = stack[base + 8]/*fnid*/;
4737447711 newstack[5LLU] = stack[base + 1]/*typedefs*/;
@@ -47382,7 +47719,7 @@
4738247719 label = 1179LLU; // calldestr
4738347720 break;
4738447721 }
47385- case 3966LLU: // copy-back deleter (calldestr to procblock)
47722+ case 4005LLU: // copy-back deleter (calldestr to procblock)
4738647723 {
4738747724 uint64_t *oldstack = (uint64_t *)stack[0];
4738847725 // copy mutable arguments back from call to calldestr
@@ -47394,10 +47731,10 @@
4739447731 }
4739547732 Free(75LLU + 1, sizeof(uint64_t), stack);
4739647733 stack = oldstack;
47397- label = 3938LLU; // continue to unroll stack
47734+ label = 3977LLU; // continue to unroll stack
4739847735 break;
4739947736 }
47400- case 3967LLU: // return from calldestr to procblock
47737+ case 4006LLU: // return from calldestr to procblock
4740147738 {
4740247739 uint64_t *oldstack = (uint64_t *)stack[0];
4740347740 // copy mutable arguments back from call to calldestr
@@ -47411,9 +47748,9 @@
4741147748 stack = oldstack;
4741247749 printf("%s", "\n label = ");
4741347750 // call printnr from procblock
47414- stack[base + 39LLU] = 3968LLU/*throw to this address*/;
47751+ stack[base + 39LLU] = 4007LLU/*throw to this address*/;
4741547752 stack[base + 40LLU] = base;
47416- stack[base + 41LLU] = 3969LLU;
47753+ stack[base + 41LLU] = 4008LLU;
4741747754 // arguments for call to printnr
4741847755 stack[base + 42LLU] = stack[base + 22]/*labelloop*/;
4741947756 // set stack-base & callee-address
@@ -47421,13 +47758,13 @@
4742147758 label = 18446744073709551590LLU; // printnr
4742247759 break;
4742347760 }
47424- case 3968LLU: // copy-back deleter (printnr to procblock)
47761+ case 4007LLU: // copy-back deleter (printnr to procblock)
4742547762 {
4742647763 // copy mutable arguments back from call to printnr
47427- label = 3938LLU; // continue to roll stack
47764+ label = 3977LLU; // continue to roll stack
4742847765 break;
4742947766 }
47430- case 3969LLU: // return from printnr to procblock
47767+ case 4008LLU: // return from printnr to procblock
4743147768 {
4743247769 // copy mutable arguments back from call to printnr
4743347770 printf("%s", "LLU; // repeat");
@@ -47435,9 +47772,9 @@
4743547772 printf("%s", "\n }");
4743647773 printf("%s", "\n case ");
4743747774 // call printnr from procblock
47438- stack[base + 39LLU] = 3970LLU/*throw to this address*/;
47775+ stack[base + 39LLU] = 4009LLU/*throw to this address*/;
4743947776 stack[base + 40LLU] = base;
47440- stack[base + 41LLU] = 3971LLU;
47777+ stack[base + 41LLU] = 4010LLU;
4744147778 // arguments for call to printnr
4744247779 stack[base + 42LLU] = stack[base + 23]/*labelskip*/;
4744347780 // set stack-base & callee-address
@@ -47445,42 +47782,42 @@
4744547782 label = 18446744073709551590LLU; // printnr
4744647783 break;
4744747784 }
47448- case 3970LLU: // copy-back deleter (printnr to procblock)
47785+ case 4009LLU: // copy-back deleter (printnr to procblock)
4744947786 {
4745047787 // copy mutable arguments back from call to printnr
47451- label = 3938LLU; // continue to roll stack
47788+ label = 3977LLU; // continue to roll stack
4745247789 break;
4745347790 }
47454- case 3971LLU: // return from printnr to procblock
47791+ case 4010LLU: // return from printnr to procblock
4745547792 {
4745647793 // copy mutable arguments back from call to printnr
4745747794 printf("%s", "LLU: // loop finished");
4745847795 printf("%s", "\n {");
47459- label = 3951LLU; // consequent complete
47796+ label = 3990LLU; // consequent complete
4746047797 break;
4746147798 }
47462- case 3950LLU: // alternative
47799+ case 3989LLU: // alternative
4746347800 {
47464- label = 3973LLU; // skip deleter
47801+ label = 4012LLU; // skip deleter
4746547802 break;
4746647803 }
47467- case 3972LLU: // deleter
47804+ case 4011LLU: // deleter
4746847805 {
4746947806 // throw from procblock
4747047807 if(!stack[base + 39])
4747147808 {
47472- label = 3938LLU; // skip, variable already deleted/unscoped
47809+ label = 3977LLU; // skip, variable already deleted/unscoped
4747347810 break;
4747447811 }
47475- label = 3938LLU; // continue unrolling stack, delete next variable
47812+ label = 3977LLU; // continue unrolling stack, delete next variable
4747647813 break;
4747747814 }
47478- case 3973LLU: // skipped deleter
47815+ case 4012LLU: // skipped deleter
4747947816 {
4748047817 // call newvarraw from procblock
47481- stack[base + 40LLU] = 3974LLU/*throw to this address*/;
47818+ stack[base + 40LLU] = 4013LLU/*throw to this address*/;
4748247819 stack[base + 41LLU] = base;
47483- stack[base + 42LLU] = 3975LLU;
47820+ stack[base + 42LLU] = 4014LLU;
4748447821 // arguments for call to newvarraw
4748547822 stack[base + 44LLU] = stack[base + 29]/*listtype*/;
4748647823 stack[base + 45LLU] = 0LLU;
@@ -47496,16 +47833,16 @@
4749647833 label = 755LLU; // newvarraw
4749747834 break;
4749847835 }
47499- case 3974LLU: // copy-back deleter (newvarraw to procblock)
47836+ case 4013LLU: // copy-back deleter (newvarraw to procblock)
4750047837 {
4750147838 // copy mutable arguments back from call to newvarraw
4750247839 stack[base + 3]/*scope*/ = stack[base + 51LLU];
4750347840 stack[base + 18]/*varcount*/ = stack[base + 50LLU];
4750447841 stack[base + 12]/*fnmaxcount*/ = stack[base + 49LLU];
47505- label = 3938LLU; // continue to roll stack
47842+ label = 3977LLU; // continue to roll stack
4750647843 break;
4750747844 }
47508- case 3975LLU: // return from newvarraw to procblock
47845+ case 4014LLU: // return from newvarraw to procblock
4750947846 {
4751047847 // copy mutable arguments back from call to newvarraw
4751147848 stack[base + 3]/*scope*/ = stack[base + 51LLU];
@@ -47515,9 +47852,9 @@
4751547852 stack[base + 39] = stack[base + 43LLU];
4751647853 printf("%s", "\n ");
4751747854 // call emitvaridx from procblock
47518- stack[base + 40LLU] = 3976LLU/*throw to this address*/;
47855+ stack[base + 40LLU] = 4015LLU/*throw to this address*/;
4751947856 stack[base + 41LLU] = base;
47520- stack[base + 42LLU] = 3977LLU;
47857+ stack[base + 42LLU] = 4016LLU;
4752147858 // arguments for call to emitvaridx
4752247859 stack[base + 43LLU] = stack[base + 39]/*previdx*/;
4752347860 // set stack-base & callee-address
@@ -47525,20 +47862,20 @@
4752547862 label = 741LLU; // emitvaridx
4752647863 break;
4752747864 }
47528- case 3976LLU: // copy-back deleter (emitvaridx to procblock)
47865+ case 4015LLU: // copy-back deleter (emitvaridx to procblock)
4752947866 {
4753047867 // copy mutable arguments back from call to emitvaridx
47531- label = 3972LLU; // continue to roll stack
47868+ label = 4011LLU; // continue to roll stack
4753247869 break;
4753347870 }
47534- case 3977LLU: // return from emitvaridx to procblock
47871+ case 4016LLU: // return from emitvaridx to procblock
4753547872 {
4753647873 // copy mutable arguments back from call to emitvaridx
4753747874 printf("%s", "/*previous*/ = ");
4753847875 // call emitvaridx from procblock
47539- stack[base + 40LLU] = 3978LLU/*throw to this address*/;
47876+ stack[base + 40LLU] = 4017LLU/*throw to this address*/;
4754047877 stack[base + 41LLU] = base;
47541- stack[base + 42LLU] = 3979LLU;
47878+ stack[base + 42LLU] = 4018LLU;
4754247879 // arguments for call to emitvaridx
4754347880 stack[base + 43LLU] = stack[base + 35]/*listindex*/;
4754447881 // set stack-base & callee-address
@@ -47546,21 +47883,21 @@
4754647883 label = 741LLU; // emitvaridx
4754747884 break;
4754847885 }
47549- case 3978LLU: // copy-back deleter (emitvaridx to procblock)
47886+ case 4017LLU: // copy-back deleter (emitvaridx to procblock)
4755047887 {
4755147888 // copy mutable arguments back from call to emitvaridx
47552- label = 3972LLU; // continue to roll stack
47889+ label = 4011LLU; // continue to roll stack
4755347890 break;
4755447891 }
47555- case 3979LLU: // return from emitvaridx to procblock
47892+ case 4018LLU: // return from emitvaridx to procblock
4755647893 {
4755747894 // copy mutable arguments back from call to emitvaridx
4755847895 printf("%s", ";");
4755947896 printf("%s", "\n ");
4756047897 // call emitvaridx from procblock
47561- stack[base + 40LLU] = 3980LLU/*throw to this address*/;
47898+ stack[base + 40LLU] = 4019LLU/*throw to this address*/;
4756247899 stack[base + 41LLU] = base;
47563- stack[base + 42LLU] = 3981LLU;
47900+ stack[base + 42LLU] = 4020LLU;
4756447901 // arguments for call to emitvaridx
4756547902 stack[base + 43LLU] = stack[base + 35]/*listindex*/;
4756647903 // set stack-base & callee-address
@@ -47568,20 +47905,20 @@
4756847905 label = 741LLU; // emitvaridx
4756947906 break;
4757047907 }
47571- case 3980LLU: // copy-back deleter (emitvaridx to procblock)
47908+ case 4019LLU: // copy-back deleter (emitvaridx to procblock)
4757247909 {
4757347910 // copy mutable arguments back from call to emitvaridx
47574- label = 3972LLU; // continue to roll stack
47911+ label = 4011LLU; // continue to roll stack
4757547912 break;
4757647913 }
47577- case 3981LLU: // return from emitvaridx to procblock
47914+ case 4020LLU: // return from emitvaridx to procblock
4757847915 {
4757947916 // copy mutable arguments back from call to emitvaridx
4758047917 printf("%s", " = (uint64_t)(((const struct listnode *)(");
4758147918 // call emitvaridx from procblock
47582- stack[base + 40LLU] = 3982LLU/*throw to this address*/;
47919+ stack[base + 40LLU] = 4021LLU/*throw to this address*/;
4758347920 stack[base + 41LLU] = base;
47584- stack[base + 42LLU] = 3983LLU;
47921+ stack[base + 42LLU] = 4022LLU;
4758547922 // arguments for call to emitvaridx
4758647923 stack[base + 43LLU] = stack[base + 35]/*listindex*/;
4758747924 // set stack-base & callee-address
@@ -47589,36 +47926,36 @@
4758947926 label = 741LLU; // emitvaridx
4759047927 break;
4759147928 }
47592- case 3982LLU: // copy-back deleter (emitvaridx to procblock)
47929+ case 4021LLU: // copy-back deleter (emitvaridx to procblock)
4759347930 {
4759447931 // copy mutable arguments back from call to emitvaridx
47595- label = 3972LLU; // continue to roll stack
47932+ label = 4011LLU; // continue to roll stack
4759647933 break;
4759747934 }
47598- case 3983LLU: // return from emitvaridx to procblock
47935+ case 4022LLU: // return from emitvaridx to procblock
4759947936 {
4760047937 // copy mutable arguments back from call to emitvaridx
4760147938 printf("%s", "))->next);");
47602- label = 3985LLU; // skip deleter
47939+ label = 4024LLU; // skip deleter
4760347940 break;
4760447941 }
47605- case 3984LLU: // deleter
47942+ case 4023LLU: // deleter
4760647943 {
4760747944 // throw from procblock
4760847945 if(!stack[base + 40])
4760947946 {
47610- label = 3972LLU; // skip, variable already deleted/unscoped
47947+ label = 4011LLU; // skip, variable already deleted/unscoped
4761147948 break;
4761247949 }
47613- label = 3972LLU; // continue unrolling stack, delete next variable
47950+ label = 4011LLU; // continue unrolling stack, delete next variable
4761447951 break;
4761547952 }
47616- case 3985LLU: // skipped deleter
47953+ case 4024LLU: // skipped deleter
4761747954 {
4761847955 // call getdeladdr from procblock
47619- stack[base + 41LLU] = 3986LLU/*throw to this address*/;
47956+ stack[base + 41LLU] = 4025LLU/*throw to this address*/;
4762047957 stack[base + 42LLU] = base;
47621- stack[base + 43LLU] = 3987LLU;
47958+ stack[base + 43LLU] = 4026LLU;
4762247959 // arguments for call to getdeladdr
4762347960 stack[base + 45LLU] = stack[base + 3]/*scope*/;
4762447961 // set stack-base & callee-address
@@ -47626,21 +47963,21 @@
4762647963 label = 592LLU; // getdeladdr
4762747964 break;
4762847965 }
47629- case 3986LLU: // copy-back deleter (getdeladdr to procblock)
47966+ case 4025LLU: // copy-back deleter (getdeladdr to procblock)
4763047967 {
4763147968 // copy mutable arguments back from call to getdeladdr
47632- label = 3972LLU; // continue to roll stack
47969+ label = 4011LLU; // continue to roll stack
4763347970 break;
4763447971 }
47635- case 3987LLU: // return from getdeladdr to procblock
47972+ case 4026LLU: // return from getdeladdr to procblock
4763647973 {
4763747974 // copy mutable arguments back from call to getdeladdr
4763847975 // copy back results provided by call to getdeladdr
4763947976 stack[base + 40] = stack[base + 44LLU];
4764047977 // call add from procblock
47641- stack[base + 41LLU] = 3988LLU/*throw to this address*/;
47978+ stack[base + 41LLU] = 4027LLU/*throw to this address*/;
4764247979 stack[base + 42LLU] = base;
47643- stack[base + 43LLU] = 3989LLU;
47980+ stack[base + 43LLU] = 4028LLU;
4764447981 // arguments for call to add
4764547982 stack[base + 45LLU] = 1LLU;
4764647983 stack[base + 46LLU] = stack[base + 17]/*label*/;
@@ -47649,37 +47986,37 @@
4764947986 label = 18446744073709551605LLU; // add
4765047987 break;
4765147988 }
47652- case 3988LLU: // copy-back deleter (add to procblock)
47989+ case 4027LLU: // copy-back deleter (add to procblock)
4765347990 {
4765447991 // copy mutable arguments back from call to add
47655- label = 3984LLU; // continue to roll stack
47992+ label = 4023LLU; // continue to roll stack
4765647993 break;
4765747994 }
47658- case 3989LLU: // return from add to procblock
47995+ case 4028LLU: // return from add to procblock
4765947996 {
4766047997 // copy mutable arguments back from call to add
4766147998 // copy back results provided by call to add
4766247999 stack[base + 17] = stack[base + 44LLU];
47663- label = 3991LLU; // skip deleter
48000+ label = 4030LLU; // skip deleter
4766448001 break;
4766548002 }
47666- case 3990LLU: // deleter
48003+ case 4029LLU: // deleter
4766748004 {
4766848005 // throw from procblock
4766948006 if(!stack[base + 41])
4767048007 {
47671- label = 3984LLU; // skip, variable already deleted/unscoped
48008+ label = 4023LLU; // skip, variable already deleted/unscoped
4767248009 break;
4767348010 }
47674- label = 3984LLU; // continue unrolling stack, delete next variable
48011+ label = 4023LLU; // continue unrolling stack, delete next variable
4767548012 break;
4767648013 }
47677- case 3991LLU: // skipped deleter
48014+ case 4030LLU: // skipped deleter
4767848015 {
4767948016 stack[base + 41] = stack[base + 17]/*label*/;
4768048017 if(/*scope*/0 != ((uint64_t *)(stack[base + 3]/*scope*/))[0])
4768148018 {
47682- label = 3993LLU; // jump to alternative
48019+ label = 4032LLU; // jump to alternative
4768348020 break;
4768448021 }
4768548022
@@ -47690,43 +48027,43 @@
4769048027 stack[base + 42]/*deleteaddr*/ = stack[base + 41]/*labelfail*/;
4769148028 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 43];
4769248029 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 42];
47693- label = 3992LLU; // case complete
48030+ label = 4031LLU; // case complete
4769448031 break;
4769548032 }
47696- case 3994LLU: // copy-back deleter (switch)
48033+ case 4033LLU: // copy-back deleter (switch)
4769748034 {
4769848035 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 43];
4769948036 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 42];
47700- label = 3990LLU; // continue to unroll stack
48037+ label = 4029LLU; // continue to unroll stack
4770148038 break;
4770248039 }
47703- case 3993LLU: // try next case
48040+ case 4032LLU: // try next case
4770448041 {
4770548042 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
4770648043 exit(-1);
4770748044 }
47708- case 3992LLU: // completed switch
48045+ case 4031LLU: // completed switch
4770948046 {
47710- label = 3996LLU; // skip deleter
48047+ label = 4035LLU; // skip deleter
4771148048 break;
4771248049 }
47713- case 3995LLU: // deleter
48050+ case 4034LLU: // deleter
4771448051 {
4771548052 // throw from procblock
4771648053 if(!stack[base + 42])
4771748054 {
47718- label = 3990LLU; // skip, variable already deleted/unscoped
48055+ label = 4029LLU; // skip, variable already deleted/unscoped
4771948056 break;
4772048057 }
4772148058 // delete list
47722- label = 3997LLU; // start to repeat
48059+ label = 4036LLU; // start to repeat
4772348060 break;
4772448061 }
47725- case 3997LLU: // repeat from here
48062+ case 4036LLU: // repeat from here
4772648063 {
4772748064 if(!stack[base + 42])
4772848065 {
47729- label = 3998LLU; // break loop
48066+ label = 4037LLU; // break loop
4773048067 break;
4773148068 }
4773248069
@@ -47737,7 +48074,7 @@
4773748074 newstack[0] = (uint64_t)stack; // backup stack location
4773848075 newstack[1] = 1234567890;
4773948076 newstack[2] = base;
47740- newstack[3] = 3999LLU;
48077+ newstack[3] = 4038LLU;
4774148078 stack = newstack;
4774248079 // set stack-base & callee-address
4774348080 base = 4/*deloffset*/;
@@ -47744,7 +48081,7 @@
4774448081 label = 395LLU; // ~typeidx
4774548082 break;
4774648083 }
47747- case 3999LLU: // return from ~typeidx to procblock
48084+ case 4038LLU: // return from ~typeidx to procblock
4774848085 {
4774948086 stack = (uint64_t *)stack[0];
4775048087 // releasing toplevel container
@@ -47755,21 +48092,21 @@
4775548092 stack[base + 42] = (uint64_t)list->next;
4775648093 Free(1, sizeof(struct listnode), list);
4775748094 }
47758- label = 3997LLU; // repeat
48095+ label = 4036LLU; // repeat
4775948096 break;
4776048097 }
47761- case 3998LLU: // loop finished
48098+ case 4037LLU: // loop finished
4776248099 {
47763- label = 3990LLU; // continue unrolling stack, delete next variable
48100+ label = 4029LLU; // continue unrolling stack, delete next variable
4776448101 break;
4776548102 }
47766- case 3996LLU: // skipped deleter
48103+ case 4035LLU: // skipped deleter
4776748104 {
4776848105 stack[base + 42] = 0;
4776948106 uint64_t *newstack = (uint64_t *)Calloc(160LLU + 1, sizeof(uint64_t));
4777048107 if(!newstack)
4777148108 {
47772- label = 3995LLU; // throw: begin to unroll stack
48109+ label = 4034LLU; // throw: begin to unroll stack
4777348110 break;
4777448111 }
4777548112
@@ -47776,9 +48113,9 @@
4777648113 newstack[160LLU] = 9876543210LLU; // overflow-marker
4777748114 // call procblock from procblock
4777848115 newstack[0] = (uint64_t)stack; // backup stack location
47779- newstack[1] = 4000LLU;
48116+ newstack[1] = 4039LLU;
4778048117 newstack[2] = base;
47781- newstack[3] = 4001LLU;
48118+ newstack[3] = 4040LLU;
4778248119 // arguments for call to procblock
4778348120 newstack[4LLU] = stack[base + 0]/*fndefs*/;
4778448121 newstack[5LLU] = stack[base + 1]/*typedefs*/;
@@ -47804,7 +48141,7 @@
4780448141 label = 3319LLU; // procblock
4780548142 break;
4780648143 }
47807- case 4000LLU: // copy-back deleter (procblock to procblock)
48144+ case 4039LLU: // copy-back deleter (procblock to procblock)
4780848145 {
4780948146 uint64_t *oldstack = (uint64_t *)stack[0];
4781048147 // copy mutable arguments back from call to procblock
@@ -47821,10 +48158,10 @@
4782148158 }
4782248159 Free(160LLU + 1, sizeof(uint64_t), stack);
4782348160 stack = oldstack;
47824- label = 3995LLU; // continue to unroll stack
48161+ label = 4034LLU; // continue to unroll stack
4782548162 break;
4782648163 }
47827- case 4001LLU: // return from procblock to procblock
48164+ case 4040LLU: // return from procblock to procblock
4782848165 {
4782948166 uint64_t *oldstack = (uint64_t *)stack[0];
4783048167 // copy mutable arguments back from call to procblock
@@ -47842,14 +48179,14 @@
4784248179 Free(160LLU + 1, sizeof(uint64_t), stack);
4784348180 stack = oldstack;
4784448181 // delete list
47845- label = 4002LLU; // start to repeat
48182+ label = 4041LLU; // start to repeat
4784648183 break;
4784748184 }
47848- case 4002LLU: // repeat from here
48185+ case 4041LLU: // repeat from here
4784948186 {
4785048187 if(!stack[base + 42])
4785148188 {
47852- label = 4003LLU; // break loop
48189+ label = 4042LLU; // break loop
4785348190 break;
4785448191 }
4785548192
@@ -47860,7 +48197,7 @@
4786048197 newstack[0] = (uint64_t)stack; // backup stack location
4786148198 newstack[1] = 1234567890;
4786248199 newstack[2] = base;
47863- newstack[3] = 4004LLU;
48200+ newstack[3] = 4043LLU;
4786448201 stack = newstack;
4786548202 // set stack-base & callee-address
4786648203 base = 4/*deloffset*/;
@@ -47867,7 +48204,7 @@
4786748204 label = 395LLU; // ~typeidx
4786848205 break;
4786948206 }
47870- case 4004LLU: // return from ~typeidx to procblock
48207+ case 4043LLU: // return from ~typeidx to procblock
4787148208 {
4787248209 stack = (uint64_t *)stack[0];
4787348210 // releasing toplevel container
@@ -47878,16 +48215,16 @@
4787848215 stack[base + 42] = (uint64_t)list->next;
4787948216 Free(1, sizeof(struct listnode), list);
4788048217 }
47881- label = 4002LLU; // repeat
48218+ label = 4041LLU; // repeat
4788248219 break;
4788348220 }
47884- case 4003LLU: // loop finished
48221+ case 4042LLU: // loop finished
4788548222 {
4788648223 printf("%s", "\n ((struct listnode *)(");
4788748224 // call emitvaridx from procblock
47888- stack[base + 42LLU] = 4005LLU/*throw to this address*/;
48225+ stack[base + 42LLU] = 4044LLU/*throw to this address*/;
4788948226 stack[base + 43LLU] = base;
47890- stack[base + 44LLU] = 4006LLU;
48227+ stack[base + 44LLU] = 4045LLU;
4789148228 // arguments for call to emitvaridx
4789248229 stack[base + 45LLU] = stack[base + 39]/*previdx*/;
4789348230 // set stack-base & callee-address
@@ -47895,20 +48232,20 @@
4789548232 label = 741LLU; // emitvaridx
4789648233 break;
4789748234 }
47898- case 4005LLU: // copy-back deleter (emitvaridx to procblock)
48235+ case 4044LLU: // copy-back deleter (emitvaridx to procblock)
4789948236 {
4790048237 // copy mutable arguments back from call to emitvaridx
47901- label = 3990LLU; // continue to roll stack
48238+ label = 4029LLU; // continue to roll stack
4790248239 break;
4790348240 }
47904- case 4006LLU: // return from emitvaridx to procblock
48241+ case 4045LLU: // return from emitvaridx to procblock
4790548242 {
4790648243 // copy mutable arguments back from call to emitvaridx
4790748244 printf("%s", "/*previous*/))->data = ");
4790848245 // call emitvaridx from procblock
47909- stack[base + 42LLU] = 4007LLU/*throw to this address*/;
48246+ stack[base + 42LLU] = 4046LLU/*throw to this address*/;
4791048247 stack[base + 43LLU] = base;
47911- stack[base + 44LLU] = 4008LLU;
48248+ stack[base + 44LLU] = 4047LLU;
4791248249 // arguments for call to emitvaridx
4791348250 stack[base + 45LLU] = stack[base + 38]/*elemindex*/;
4791448251 // set stack-base & callee-address
@@ -47916,21 +48253,21 @@
4791648253 label = 741LLU; // emitvaridx
4791748254 break;
4791848255 }
47919- case 4007LLU: // copy-back deleter (emitvaridx to procblock)
48256+ case 4046LLU: // copy-back deleter (emitvaridx to procblock)
4792048257 {
4792148258 // copy mutable arguments back from call to emitvaridx
47922- label = 3990LLU; // continue to roll stack
48259+ label = 4029LLU; // continue to roll stack
4792348260 break;
4792448261 }
47925- case 4008LLU: // return from emitvaridx to procblock
48262+ case 4047LLU: // return from emitvaridx to procblock
4792648263 {
4792748264 // copy mutable arguments back from call to emitvaridx
4792848265 printf("%s", ";");
4792948266 printf("%s", "\n label = ");
4793048267 // call printnr from procblock
47931- stack[base + 42LLU] = 4009LLU/*throw to this address*/;
48268+ stack[base + 42LLU] = 4048LLU/*throw to this address*/;
4793248269 stack[base + 43LLU] = base;
47933- stack[base + 44LLU] = 4010LLU;
48270+ stack[base + 44LLU] = 4049LLU;
4793448271 // arguments for call to printnr
4793548272 stack[base + 45LLU] = stack[base + 22]/*labelloop*/;
4793648273 // set stack-base & callee-address
@@ -47938,13 +48275,13 @@
4793848275 label = 18446744073709551590LLU; // printnr
4793948276 break;
4794048277 }
47941- case 4009LLU: // copy-back deleter (printnr to procblock)
48278+ case 4048LLU: // copy-back deleter (printnr to procblock)
4794248279 {
4794348280 // copy mutable arguments back from call to printnr
47944- label = 3990LLU; // continue to roll stack
48281+ label = 4029LLU; // continue to roll stack
4794548282 break;
4794648283 }
47947- case 4010LLU: // return from printnr to procblock
48284+ case 4049LLU: // return from printnr to procblock
4794848285 {
4794948286 // copy mutable arguments back from call to printnr
4795048287 printf("%s", "LLU; // repeat");
@@ -47952,9 +48289,9 @@
4795248289 printf("%s", "\n }");
4795348290 printf("%s", "\n case ");
4795448291 // call printnr from procblock
47955- stack[base + 42LLU] = 4011LLU/*throw to this address*/;
48292+ stack[base + 42LLU] = 4050LLU/*throw to this address*/;
4795648293 stack[base + 43LLU] = base;
47957- stack[base + 44LLU] = 4012LLU;
48294+ stack[base + 44LLU] = 4051LLU;
4795848295 // arguments for call to printnr
4795948296 stack[base + 45LLU] = stack[base + 41]/*labelfail*/;
4796048297 // set stack-base & callee-address
@@ -47962,13 +48299,13 @@
4796248299 label = 18446744073709551590LLU; // printnr
4796348300 break;
4796448301 }
47965- case 4011LLU: // copy-back deleter (printnr to procblock)
48302+ case 4050LLU: // copy-back deleter (printnr to procblock)
4796648303 {
4796748304 // copy mutable arguments back from call to printnr
47968- label = 3990LLU; // continue to roll stack
48305+ label = 4029LLU; // continue to roll stack
4796948306 break;
4797048307 }
47971- case 4012LLU: // return from printnr to procblock
48308+ case 4051LLU: // return from printnr to procblock
4797248309 {
4797348310 // copy mutable arguments back from call to printnr
4797448311 printf("%s", "LLU: // copy-back deleter for while next");
@@ -47975,9 +48312,9 @@
4797548312 printf("%s", "\n {");
4797648313 printf("%s", "\n ((struct listnode *)(");
4797748314 // call emitvaridx from procblock
47978- stack[base + 42LLU] = 4013LLU/*throw to this address*/;
48315+ stack[base + 42LLU] = 4052LLU/*throw to this address*/;
4797948316 stack[base + 43LLU] = base;
47980- stack[base + 44LLU] = 4014LLU;
48317+ stack[base + 44LLU] = 4053LLU;
4798148318 // arguments for call to emitvaridx
4798248319 stack[base + 45LLU] = stack[base + 39]/*previdx*/;
4798348320 // set stack-base & callee-address
@@ -47985,20 +48322,20 @@
4798548322 label = 741LLU; // emitvaridx
4798648323 break;
4798748324 }
47988- case 4013LLU: // copy-back deleter (emitvaridx to procblock)
48325+ case 4052LLU: // copy-back deleter (emitvaridx to procblock)
4798948326 {
4799048327 // copy mutable arguments back from call to emitvaridx
47991- label = 3990LLU; // continue to roll stack
48328+ label = 4029LLU; // continue to roll stack
4799248329 break;
4799348330 }
47994- case 4014LLU: // return from emitvaridx to procblock
48331+ case 4053LLU: // return from emitvaridx to procblock
4799548332 {
4799648333 // copy mutable arguments back from call to emitvaridx
4799748334 printf("%s", "/*previous*/))->data = ");
4799848335 // call emitvaridx from procblock
47999- stack[base + 42LLU] = 4015LLU/*throw to this address*/;
48336+ stack[base + 42LLU] = 4054LLU/*throw to this address*/;
4800048337 stack[base + 43LLU] = base;
48001- stack[base + 44LLU] = 4016LLU;
48338+ stack[base + 44LLU] = 4055LLU;
4800248339 // arguments for call to emitvaridx
4800348340 stack[base + 45LLU] = stack[base + 38]/*elemindex*/;
4800448341 // set stack-base & callee-address
@@ -48006,21 +48343,21 @@
4800648343 label = 741LLU; // emitvaridx
4800748344 break;
4800848345 }
48009- case 4015LLU: // copy-back deleter (emitvaridx to procblock)
48346+ case 4054LLU: // copy-back deleter (emitvaridx to procblock)
4801048347 {
4801148348 // copy mutable arguments back from call to emitvaridx
48012- label = 3990LLU; // continue to roll stack
48349+ label = 4029LLU; // continue to roll stack
4801348350 break;
4801448351 }
48015- case 4016LLU: // return from emitvaridx to procblock
48352+ case 4055LLU: // return from emitvaridx to procblock
4801648353 {
4801748354 // copy mutable arguments back from call to emitvaridx
4801848355 printf("%s", ";");
4801948356 printf("%s", "\n label = ");
4802048357 // call printnr from procblock
48021- stack[base + 42LLU] = 4017LLU/*throw to this address*/;
48358+ stack[base + 42LLU] = 4056LLU/*throw to this address*/;
4802248359 stack[base + 43LLU] = base;
48023- stack[base + 44LLU] = 4018LLU;
48360+ stack[base + 44LLU] = 4057LLU;
4802448361 // arguments for call to printnr
4802548362 stack[base + 45LLU] = stack[base + 40]/*labelthrow*/;
4802648363 // set stack-base & callee-address
@@ -48028,13 +48365,13 @@
4802848365 label = 18446744073709551590LLU; // printnr
4802948366 break;
4803048367 }
48031- case 4017LLU: // copy-back deleter (printnr to procblock)
48368+ case 4056LLU: // copy-back deleter (printnr to procblock)
4803248369 {
4803348370 // copy mutable arguments back from call to printnr
48034- label = 3990LLU; // continue to roll stack
48371+ label = 4029LLU; // continue to roll stack
4803548372 break;
4803648373 }
48037- case 4018LLU: // return from printnr to procblock
48374+ case 4057LLU: // return from printnr to procblock
4803848375 {
4803948376 // copy mutable arguments back from call to printnr
4804048377 printf("%s", "LLU; // continue to unroll stack");
@@ -48042,9 +48379,9 @@
4804248379 printf("%s", "\n }");
4804348380 printf("%s", "\n case ");
4804448381 // call printnr from procblock
48045- stack[base + 42LLU] = 4019LLU/*throw to this address*/;
48382+ stack[base + 42LLU] = 4058LLU/*throw to this address*/;
4804648383 stack[base + 43LLU] = base;
48047- stack[base + 44LLU] = 4020LLU;
48384+ stack[base + 44LLU] = 4059LLU;
4804848385 // arguments for call to printnr
4804948386 stack[base + 45LLU] = stack[base + 23]/*labelskip*/;
4805048387 // set stack-base & callee-address
@@ -48052,40 +48389,40 @@
4805248389 label = 18446744073709551590LLU; // printnr
4805348390 break;
4805448391 }
48055- case 4019LLU: // copy-back deleter (printnr to procblock)
48392+ case 4058LLU: // copy-back deleter (printnr to procblock)
4805648393 {
4805748394 // copy mutable arguments back from call to printnr
48058- label = 3990LLU; // continue to roll stack
48395+ label = 4029LLU; // continue to roll stack
4805948396 break;
4806048397 }
48061- case 4020LLU: // return from printnr to procblock
48398+ case 4059LLU: // return from printnr to procblock
4806248399 {
4806348400 // copy mutable arguments back from call to printnr
4806448401 printf("%s", "LLU: // loop finished");
4806548402 printf("%s", "\n {");
48066- label = 3951LLU; // alternative complete
48403+ label = 3990LLU; // alternative complete
4806748404 break;
4806848405 }
48069- case 3951LLU: // completed if-then-else
48406+ case 3990LLU: // completed if-then-else
4807048407 {
4807148408 ((uint64_t **)(stack[base + 29]))[1][0] = stack[base + 37];
48072- label = 3935LLU; // case complete
48409+ label = 3974LLU; // case complete
4807348410 break;
4807448411 }
48075- case 3937LLU: // copy-back deleter (switch)
48412+ case 3976LLU: // copy-back deleter (switch)
4807648413 {
4807748414 ((uint64_t **)(stack[base + 29]))[1][0] = stack[base + 37];
48078- label = 3923LLU; // continue to unroll stack
48415+ label = 3962LLU; // continue to unroll stack
4807948416 break;
4808048417 }
48081- case 3936LLU: // try next case
48418+ case 3975LLU: // try next case
4808248419 {
4808348420 // default
4808448421 fprintf(stderr, "%s", "in function ");
4808548422 // call reportid from procblock
48086- stack[base + 37LLU] = 4021LLU/*throw to this address*/;
48423+ stack[base + 37LLU] = 4060LLU/*throw to this address*/;
4808748424 stack[base + 38LLU] = base;
48088- stack[base + 39LLU] = 4022LLU;
48425+ stack[base + 39LLU] = 4061LLU;
4808948426 // arguments for call to reportid
4809048427 stack[base + 40LLU] = stack[base + 8]/*fnid*/;
4809148428 // set stack-base & callee-address
@@ -48093,13 +48430,13 @@
4809348430 label = 18446744073709551586LLU; // reportid
4809448431 break;
4809548432 }
48096- case 4021LLU: // copy-back deleter (reportid to procblock)
48433+ case 4060LLU: // copy-back deleter (reportid to procblock)
4809748434 {
4809848435 // copy mutable arguments back from call to reportid
48099- label = 3923LLU; // continue to roll stack
48436+ label = 3962LLU; // continue to roll stack
4810048437 break;
4810148438 }
48102- case 4022LLU: // return from reportid to procblock
48439+ case 4061LLU: // return from reportid to procblock
4810348440 {
4810448441 // copy mutable arguments back from call to reportid
4810548442 fprintf(stderr, "%s", ": ");
@@ -48107,7 +48444,7 @@
4810748444 uint64_t *newstack = (uint64_t *)Calloc(10LLU + 1, sizeof(uint64_t));
4810848445 if(!newstack)
4810948446 {
48110- label = 3923LLU; // throw: begin to unroll stack
48447+ label = 3962LLU; // throw: begin to unroll stack
4811148448 break;
4811248449 }
4811348450
@@ -48114,9 +48451,9 @@
4811448451 newstack[10LLU] = 9876543210LLU; // overflow-marker
4811548452 // call reporttype from procblock
4811648453 newstack[0] = (uint64_t)stack; // backup stack location
48117- newstack[1] = 4023LLU;
48454+ newstack[1] = 4062LLU;
4811848455 newstack[2] = base;
48119- newstack[3] = 4024LLU;
48456+ newstack[3] = 4063LLU;
4812048457 // arguments for call to reporttype
4812148458 newstack[4LLU] = stack[base + 29]/*listtype*/;
4812248459 stack = newstack;
@@ -48125,7 +48462,7 @@
4812548462 label = 326LLU; // reporttype
4812648463 break;
4812748464 }
48128- case 4023LLU: // copy-back deleter (reporttype to procblock)
48465+ case 4062LLU: // copy-back deleter (reporttype to procblock)
4812948466 {
4813048467 uint64_t *oldstack = (uint64_t *)stack[0];
4813148468 // copy mutable arguments back from call to reporttype
@@ -48136,10 +48473,10 @@
4813648473 }
4813748474 Free(10LLU + 1, sizeof(uint64_t), stack);
4813848475 stack = oldstack;
48139- label = 3923LLU; // continue to unroll stack
48476+ label = 3962LLU; // continue to unroll stack
4814048477 break;
4814148478 }
48142- case 4024LLU: // return from reporttype to procblock
48479+ case 4063LLU: // return from reporttype to procblock
4814348480 {
4814448481 uint64_t *oldstack = (uint64_t *)stack[0];
4814548482 // copy mutable arguments back from call to reporttype
@@ -48152,14 +48489,14 @@
4815248489 stack = oldstack;
4815348490 fprintf(stderr, "%s", "\n");
4815448491 {
48155- label = 3923LLU; // throw: begin to unroll stack
48492+ label = 3962LLU; // throw: begin to unroll stack
4815648493 break;
4815748494 }
4815848495
48159- label = 3935LLU; // default complete
48496+ label = 3974LLU; // default complete
4816048497 break;
4816148498 }
48162- case 3935LLU: // completed switch
48499+ case 3974LLU: // completed switch
4816348500 {
4816448501 ((uint64_t **)(stack[base + 28]))[1][4] = stack[base + 33];
4816548502 ((uint64_t **)(stack[base + 28]))[1][3] = stack[base + 32];
@@ -48166,10 +48503,10 @@
4816648503 ((uint64_t **)(stack[base + 28]))[1][2] = stack[base + 31];
4816748504 ((uint64_t **)(stack[base + 28]))[1][1] = stack[base + 30];
4816848505 ((uint64_t **)(stack[base + 28]))[1][0] = stack[base + 29];
48169- label = 3857LLU; // case complete
48506+ label = 3896LLU; // case complete
4817048507 break;
4817148508 }
48172- case 3859LLU: // copy-back deleter (switch)
48509+ case 3898LLU: // copy-back deleter (switch)
4817348510 {
4817448511 ((uint64_t **)(stack[base + 28]))[1][4] = stack[base + 33];
4817548512 ((uint64_t **)(stack[base + 28]))[1][3] = stack[base + 32];
@@ -48176,15 +48513,15 @@
4817648513 ((uint64_t **)(stack[base + 28]))[1][2] = stack[base + 31];
4817748514 ((uint64_t **)(stack[base + 28]))[1][1] = stack[base + 30];
4817848515 ((uint64_t **)(stack[base + 28]))[1][0] = stack[base + 29];
48179- label = 3852LLU; // continue to unroll stack
48516+ label = 3891LLU; // continue to unroll stack
4818048517 break;
4818148518 }
48182- case 3858LLU: // try next case
48519+ case 3897LLU: // try next case
4818348520 {
4818448521 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
4818548522 exit(-1);
4818648523 }
48187- case 3857LLU: // completed switch
48524+ case 3896LLU: // completed switch
4818848525 {
4818948526
4819048527 uint64_t *newstack = (uint64_t *)(stack[base + 28] - sizeof(uint64_t) * 4);
@@ -48192,7 +48529,7 @@
4819248529 newstack[0] = (uint64_t)stack; // backup stack location
4819348530 newstack[1] = 1234567890;
4819448531 newstack[2] = base;
48195- newstack[3] = 4025LLU;
48532+ newstack[3] = 4064LLU;
4819648533 stack = newstack;
4819748534 // set stack-base & callee-address
4819848535 base = 4/*deloffset*/;
@@ -48199,20 +48536,20 @@
4819948536 label = 482LLU; // ~letdef
4820048537 break;
4820148538 }
48202- case 4025LLU: // return from ~letdef to procblock
48539+ case 4064LLU: // return from ~letdef to procblock
4820348540 {
4820448541 stack = (uint64_t *)stack[0];
4820548542 // releasing toplevel container
4820648543 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 28] - sizeof(uint64_t) * 4));
4820748544
48208- label = 3703LLU; // alternative complete
48545+ label = 3742LLU; // alternative complete
4820948546 break;
4821048547 }
48211- case 3703LLU: // completed if-then-else
48548+ case 3742LLU: // completed if-then-else
4821248549 {
4821348550 if(/*scope*/0 != ((uint64_t *)(stack[base + 3]/*scope*/))[0])
4821448551 {
48215- label = 4027LLU; // jump to alternative
48552+ label = 4066LLU; // jump to alternative
4821648553 break;
4821748554 }
4821848555
@@ -48220,14 +48557,14 @@
4822048557 /*letdefs*/stack[base + 27] = ((uint64_t **)(stack[base + 3]/*scope*/))[1][1]/*letdefs*/;
4822148558
4822248559 // case
48223- label = 4029LLU; // start to repeat
48560+ label = 4068LLU; // start to repeat
4822448561 break;
4822548562 }
48226- case 4029LLU: // repeat from here
48563+ case 4068LLU: // repeat from here
4822748564 {
4822848565 if(!stack[base + 27])
4822948566 {
48230- label = 4030LLU; // break loop
48567+ label = 4069LLU; // break loop
4823148568 break;
4823248569 }
4823348570
@@ -48244,7 +48581,7 @@
4824448581 newstack[0] = (uint64_t)stack; // backup stack location
4824548582 newstack[1] = 1234567890;
4824648583 newstack[2] = base;
48247- newstack[3] = 4031LLU;
48584+ newstack[3] = 4070LLU;
4824848585 stack = newstack;
4824948586 // set stack-base & callee-address
4825048587 base = 4/*deloffset*/;
@@ -48251,49 +48588,49 @@
4825148588 label = 482LLU; // ~letdef
4825248589 break;
4825348590 }
48254- case 4031LLU: // return from ~letdef to procblock
48591+ case 4070LLU: // return from ~letdef to procblock
4825548592 {
4825648593 stack = (uint64_t *)stack[0];
4825748594 // releasing toplevel container
4825848595 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 28] - sizeof(uint64_t) * 4));
4825948596
48260- label = 4029LLU; // repeat
48597+ label = 4068LLU; // repeat
4826148598 break;
4826248599 }
48263- case 4030LLU: // loop finished
48600+ case 4069LLU: // loop finished
4826448601 {
4826548602 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 27];
4826648603 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 26];
48267- label = 4026LLU; // case complete
48604+ label = 4065LLU; // case complete
4826848605 break;
4826948606 }
48270- case 4028LLU: // copy-back deleter (switch)
48607+ case 4067LLU: // copy-back deleter (switch)
4827148608 {
4827248609 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 27];
4827348610 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 26];
48274- label = 3670LLU; // continue to unroll stack
48611+ label = 3709LLU; // continue to unroll stack
4827548612 break;
4827648613 }
48277- case 4027LLU: // try next case
48614+ case 4066LLU: // try next case
4827848615 {
4827948616 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
4828048617 exit(-1);
4828148618 }
48282- case 4026LLU: // completed switch
48619+ case 4065LLU: // completed switch
4828348620 {
4828448621 { // if pop
4828548622 struct listnode *list = (struct listnode *)stack[base + 2]/*scopes*/;
4828648623 if(!list)
4828748624 {
48288- label = 4032LLU; // jump to alternative
48625+ label = 4071LLU; // jump to alternative
4828948626 break;
4829048627 }
4829148628
4829248629 // consequent
4829348630 struct listnode *next = list->next;
48294- stack[base + 26]/*tmp*/ = list->data;
48631+ /*tmp*/stack[base + 26] = list->data;
4829548632 Free(1, sizeof(struct listnode), list);
48296- stack[base + 2]/*scopes*/ = (uint64_t)next;
48633+ /*scopes*/stack[base + 2] = (uint64_t)next;
4829748634 }
4829848635 swap(&stack[base + 3], &stack[base + 26]);
4829948636
@@ -48302,7 +48639,7 @@
4830248639 newstack[0] = (uint64_t)stack; // backup stack location
4830348640 newstack[1] = 1234567890;
4830448641 newstack[2] = base;
48305- newstack[3] = 4035LLU;
48642+ newstack[3] = 4074LLU;
4830648643 stack = newstack;
4830748644 // set stack-base & callee-address
4830848645 base = 4/*deloffset*/;
@@ -48309,16 +48646,16 @@
4830948646 label = 558LLU; // ~scope
4831048647 break;
4831148648 }
48312- case 4035LLU: // return from ~scope to procblock
48649+ case 4074LLU: // return from ~scope to procblock
4831348650 {
4831448651 stack = (uint64_t *)stack[0];
4831548652 // releasing toplevel container
4831648653 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 26] - sizeof(uint64_t) * 4));
4831748654
48318- label = 4033LLU; // consequent complete
48655+ label = 4072LLU; // consequent complete
4831948656 break;
4832048657 }
48321- case 4034LLU: // copy-back deleter (if pop)
48658+ case 4073LLU: // copy-back deleter (if pop)
4832248659 {
4832348660
4832448661 uint64_t *newstack = (uint64_t *)(stack[base + 26] - sizeof(uint64_t) * 4);
@@ -48326,7 +48663,7 @@
4832648663 newstack[0] = (uint64_t)stack; // backup stack location
4832748664 newstack[1] = 1234567890;
4832848665 newstack[2] = base;
48329- newstack[3] = 4036LLU;
48666+ newstack[3] = 4075LLU;
4833048667 stack = newstack;
4833148668 // set stack-base & callee-address
4833248669 base = 4/*deloffset*/;
@@ -48333,37 +48670,37 @@
4833348670 label = 558LLU; // ~scope
4833448671 break;
4833548672 }
48336- case 4036LLU: // return from ~scope to procblock
48673+ case 4075LLU: // return from ~scope to procblock
4833748674 {
4833848675 stack = (uint64_t *)stack[0];
4833948676 // releasing toplevel container
4834048677 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 26] - sizeof(uint64_t) * 4));
4834148678
48342- label = 3670LLU; // consequent complete
48679+ label = 3709LLU; // consequent complete
4834348680 break;
4834448681 }
48345- case 4032LLU: // alternative
48682+ case 4071LLU: // alternative
4834648683 {
4834748684 fprintf(stderr, "%s", "internal error poping scope in block/while\n");
4834848685 {
48349- label = 3670LLU; // throw: begin to unroll stack
48686+ label = 3709LLU; // throw: begin to unroll stack
4835048687 break;
4835148688 }
4835248689
48353- label = 4033LLU; // alternative complete
48690+ label = 4072LLU; // alternative complete
4835448691 break;
4835548692 }
48356- case 4033LLU: // completed if-then-else
48693+ case 4072LLU: // completed if-then-else
4835748694 {
48358- label = 3652LLU; // consequent complete
48695+ label = 3691LLU; // consequent complete
4835948696 break;
4836048697 }
48361- case 3651LLU: // alternative
48698+ case 3690LLU: // alternative
4836248699 {
4836348700 // call equ from procblock
48364- stack[base + 22LLU] = 4037LLU/*throw to this address*/;
48701+ stack[base + 22LLU] = 4076LLU/*throw to this address*/;
4836548702 stack[base + 23LLU] = base;
48366- stack[base + 24LLU] = 4038LLU;
48703+ stack[base + 24LLU] = 4077LLU;
4836748704 // arguments for call to equ
4836848705 stack[base + 26LLU] = stack[base + 16]/*content*/;
4836948706 stack[base + 27LLU] = 819847183506341888LLU;
@@ -48372,13 +48709,13 @@
4837248709 label = 18446744073709551600LLU; // equ
4837348710 break;
4837448711 }
48375- case 4037LLU: // copy-back deleter (equ to procblock)
48712+ case 4076LLU: // copy-back deleter (equ to procblock)
4837648713 {
4837748714 // copy mutable arguments back from call to equ
4837848715 label = 3386LLU; // continue to roll stack
4837948716 break;
4838048717 }
48381- case 4038LLU: // return from equ to procblock
48718+ case 4077LLU: // return from equ to procblock
4838248719 {
4838348720 // copy mutable arguments back from call to equ
4838448721 // copy back results provided by call to equ
@@ -48385,7 +48722,7 @@
4838548722 stack[base + 20] = stack[base + 25LLU];
4838648723 if(!stack[base + 20]/*isequal*/)
4838748724 {
48388- label = 4039LLU; // jump to alternative
48725+ label = 4078LLU; // jump to alternative
4838948726 break;
4839048727 }
4839148728
@@ -48392,21 +48729,21 @@
4839248729 // consequent
4839348730 if(!stack[base + 7]/*fnIO*/)
4839448731 {
48395- label = 4041LLU; // jump to alternative
48732+ label = 4080LLU; // jump to alternative
4839648733 break;
4839748734 }
4839848735
4839948736 // consequent
48400- label = 4042LLU; // consequent complete
48737+ label = 4081LLU; // consequent complete
4840148738 break;
4840248739 }
48403- case 4041LLU: // alternative
48740+ case 4080LLU: // alternative
4840448741 {
4840548742 fprintf(stderr, "%s", "in function ");
4840648743 // call reportid from procblock
48407- stack[base + 22LLU] = 4043LLU/*throw to this address*/;
48744+ stack[base + 22LLU] = 4082LLU/*throw to this address*/;
4840848745 stack[base + 23LLU] = base;
48409- stack[base + 24LLU] = 4044LLU;
48746+ stack[base + 24LLU] = 4083LLU;
4841048747 // arguments for call to reportid
4841148748 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4841248749 // set stack-base & callee-address
@@ -48414,13 +48751,13 @@
4841448751 label = 18446744073709551586LLU; // reportid
4841548752 break;
4841648753 }
48417- case 4043LLU: // copy-back deleter (reportid to procblock)
48754+ case 4082LLU: // copy-back deleter (reportid to procblock)
4841848755 {
4841948756 // copy mutable arguments back from call to reportid
4842048757 label = 3386LLU; // continue to roll stack
4842148758 break;
4842248759 }
48423- case 4044LLU: // return from reportid to procblock
48760+ case 4083LLU: // return from reportid to procblock
4842448761 {
4842548762 // copy mutable arguments back from call to reportid
4842648763 fprintf(stderr, "%s", ": report-construct used in non-IO environment\n");
@@ -48429,15 +48766,15 @@
4842948766 break;
4843048767 }
4843148768
48432- label = 4042LLU; // alternative complete
48769+ label = 4081LLU; // alternative complete
4843348770 break;
4843448771 }
48435- case 4042LLU: // completed if-then-else
48772+ case 4081LLU: // completed if-then-else
4843648773 {
4843748774 // call matchsym from procblock
48438- stack[base + 22LLU] = 4045LLU/*throw to this address*/;
48775+ stack[base + 22LLU] = 4084LLU/*throw to this address*/;
4843948776 stack[base + 23LLU] = base;
48440- stack[base + 24LLU] = 4046LLU;
48777+ stack[base + 24LLU] = 4085LLU;
4844148778 // arguments for call to matchsym
4844248779 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4844348780 stack[base + 26LLU] = 40LLU;
@@ -48447,7 +48784,7 @@
4844748784 label = 222LLU; // matchsym
4844848785 break;
4844948786 }
48450- case 4045LLU: // copy-back deleter (matchsym to procblock)
48787+ case 4084LLU: // copy-back deleter (matchsym to procblock)
4845148788 {
4845248789 // copy mutable arguments back from call to matchsym
4845348790 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -48454,15 +48791,15 @@
4845448791 label = 3386LLU; // continue to roll stack
4845548792 break;
4845648793 }
48457- case 4046LLU: // return from matchsym to procblock
48794+ case 4085LLU: // return from matchsym to procblock
4845848795 {
4845948796 // copy mutable arguments back from call to matchsym
4846048797 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
4846148798 printf("%s", "\n fprintf(stderr, \"%s\", ");
4846248799 // call echostring from procblock
48463- stack[base + 22LLU] = 4047LLU/*throw to this address*/;
48800+ stack[base + 22LLU] = 4086LLU/*throw to this address*/;
4846448801 stack[base + 23LLU] = base;
48465- stack[base + 24LLU] = 4048LLU;
48802+ stack[base + 24LLU] = 4087LLU;
4846648803 // arguments for call to echostring
4846748804 stack[base + 26LLU] = stack[base + 19]/*lookahead*/;
4846848805 // set stack-base & callee-address
@@ -48470,13 +48807,13 @@
4847048807 label = 18446744073709551581LLU; // echostring
4847148808 break;
4847248809 }
48473- case 4047LLU: // copy-back deleter (echostring to procblock)
48810+ case 4086LLU: // copy-back deleter (echostring to procblock)
4847448811 {
4847548812 // copy mutable arguments back from call to echostring
4847648813 label = 3386LLU; // continue to roll stack
4847748814 break;
4847848815 }
48479- case 4048LLU: // return from echostring to procblock
48816+ case 4087LLU: // return from echostring to procblock
4848048817 {
4848148818 // copy mutable arguments back from call to echostring
4848248819 // copy back results provided by call to echostring
@@ -48483,9 +48820,9 @@
4848348820 stack[base + 19] = stack[base + 25LLU];
4848448821 printf("%s", ");");
4848548822 // call matchsym from procblock
48486- stack[base + 22LLU] = 4049LLU/*throw to this address*/;
48823+ stack[base + 22LLU] = 4088LLU/*throw to this address*/;
4848748824 stack[base + 23LLU] = base;
48488- stack[base + 24LLU] = 4050LLU;
48825+ stack[base + 24LLU] = 4089LLU;
4848948826 // arguments for call to matchsym
4849048827 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4849148828 stack[base + 26LLU] = 41LLU;
@@ -48495,7 +48832,7 @@
4849548832 label = 222LLU; // matchsym
4849648833 break;
4849748834 }
48498- case 4049LLU: // copy-back deleter (matchsym to procblock)
48835+ case 4088LLU: // copy-back deleter (matchsym to procblock)
4849948836 {
4850048837 // copy mutable arguments back from call to matchsym
4850148838 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -48502,14 +48839,14 @@
4850248839 label = 3386LLU; // continue to roll stack
4850348840 break;
4850448841 }
48505- case 4050LLU: // return from matchsym to procblock
48842+ case 4089LLU: // return from matchsym to procblock
4850648843 {
4850748844 // copy mutable arguments back from call to matchsym
4850848845 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
4850948846 // call delimiter from procblock
48510- stack[base + 22LLU] = 4051LLU/*throw to this address*/;
48847+ stack[base + 22LLU] = 4090LLU/*throw to this address*/;
4851148848 stack[base + 23LLU] = base;
48512- stack[base + 24LLU] = 4052LLU;
48849+ stack[base + 24LLU] = 4091LLU;
4851348850 // arguments for call to delimiter
4851448851 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4851548852 stack[base + 26LLU] = stack[base + 19]/*lookahead*/;
@@ -48518,7 +48855,7 @@
4851848855 label = 29LLU; // delimiter
4851948856 break;
4852048857 }
48521- case 4051LLU: // copy-back deleter (delimiter to procblock)
48858+ case 4090LLU: // copy-back deleter (delimiter to procblock)
4852248859 {
4852348860 // copy mutable arguments back from call to delimiter
4852448861 stack[base + 19]/*lookahead*/ = stack[base + 26LLU];
@@ -48525,19 +48862,19 @@
4852548862 label = 3386LLU; // continue to roll stack
4852648863 break;
4852748864 }
48528- case 4052LLU: // return from delimiter to procblock
48865+ case 4091LLU: // return from delimiter to procblock
4852948866 {
4853048867 // copy mutable arguments back from call to delimiter
4853148868 stack[base + 19]/*lookahead*/ = stack[base + 26LLU];
48532- label = 4040LLU; // consequent complete
48869+ label = 4079LLU; // consequent complete
4853348870 break;
4853448871 }
48535- case 4039LLU: // alternative
48872+ case 4078LLU: // alternative
4853648873 {
4853748874 // call equ from procblock
48538- stack[base + 22LLU] = 4053LLU/*throw to this address*/;
48875+ stack[base + 22LLU] = 4092LLU/*throw to this address*/;
4853948876 stack[base + 23LLU] = base;
48540- stack[base + 24LLU] = 4054LLU;
48877+ stack[base + 24LLU] = 4093LLU;
4854148878 // arguments for call to equ
4854248879 stack[base + 26LLU] = stack[base + 16]/*content*/;
4854348880 stack[base + 27LLU] = 787446707498516480LLU;
@@ -48546,13 +48883,13 @@
4854648883 label = 18446744073709551600LLU; // equ
4854748884 break;
4854848885 }
48549- case 4053LLU: // copy-back deleter (equ to procblock)
48886+ case 4092LLU: // copy-back deleter (equ to procblock)
4855048887 {
4855148888 // copy mutable arguments back from call to equ
4855248889 label = 3386LLU; // continue to roll stack
4855348890 break;
4855448891 }
48555- case 4054LLU: // return from equ to procblock
48892+ case 4093LLU: // return from equ to procblock
4855648893 {
4855748894 // copy mutable arguments back from call to equ
4855848895 // copy back results provided by call to equ
@@ -48559,7 +48896,7 @@
4855948896 stack[base + 20] = stack[base + 25LLU];
4856048897 if(!stack[base + 20]/*isequal*/)
4856148898 {
48562- label = 4055LLU; // jump to alternative
48899+ label = 4094LLU; // jump to alternative
4856348900 break;
4856448901 }
4856548902
@@ -48566,21 +48903,21 @@
4856648903 // consequent
4856748904 if(!stack[base + 7]/*fnIO*/)
4856848905 {
48569- label = 4057LLU; // jump to alternative
48906+ label = 4096LLU; // jump to alternative
4857048907 break;
4857148908 }
4857248909
4857348910 // consequent
48574- label = 4058LLU; // consequent complete
48911+ label = 4097LLU; // consequent complete
4857548912 break;
4857648913 }
48577- case 4057LLU: // alternative
48914+ case 4096LLU: // alternative
4857848915 {
4857948916 fprintf(stderr, "%s", "in function ");
4858048917 // call reportid from procblock
48581- stack[base + 22LLU] = 4059LLU/*throw to this address*/;
48918+ stack[base + 22LLU] = 4098LLU/*throw to this address*/;
4858248919 stack[base + 23LLU] = base;
48583- stack[base + 24LLU] = 4060LLU;
48920+ stack[base + 24LLU] = 4099LLU;
4858448921 // arguments for call to reportid
4858548922 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4858648923 // set stack-base & callee-address
@@ -48588,13 +48925,13 @@
4858848925 label = 18446744073709551586LLU; // reportid
4858948926 break;
4859048927 }
48591- case 4059LLU: // copy-back deleter (reportid to procblock)
48928+ case 4098LLU: // copy-back deleter (reportid to procblock)
4859248929 {
4859348930 // copy mutable arguments back from call to reportid
4859448931 label = 3386LLU; // continue to roll stack
4859548932 break;
4859648933 }
48597- case 4060LLU: // return from reportid to procblock
48934+ case 4099LLU: // return from reportid to procblock
4859848935 {
4859948936 // copy mutable arguments back from call to reportid
4860048937 fprintf(stderr, "%s", ": print-construct used in non-IO environment\n");
@@ -48603,15 +48940,15 @@
4860348940 break;
4860448941 }
4860548942
48606- label = 4058LLU; // alternative complete
48943+ label = 4097LLU; // alternative complete
4860748944 break;
4860848945 }
48609- case 4058LLU: // completed if-then-else
48946+ case 4097LLU: // completed if-then-else
4861048947 {
4861148948 // call matchsym from procblock
48612- stack[base + 22LLU] = 4061LLU/*throw to this address*/;
48949+ stack[base + 22LLU] = 4100LLU/*throw to this address*/;
4861348950 stack[base + 23LLU] = base;
48614- stack[base + 24LLU] = 4062LLU;
48951+ stack[base + 24LLU] = 4101LLU;
4861548952 // arguments for call to matchsym
4861648953 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4861748954 stack[base + 26LLU] = 40LLU;
@@ -48621,7 +48958,7 @@
4862148958 label = 222LLU; // matchsym
4862248959 break;
4862348960 }
48624- case 4061LLU: // copy-back deleter (matchsym to procblock)
48961+ case 4100LLU: // copy-back deleter (matchsym to procblock)
4862548962 {
4862648963 // copy mutable arguments back from call to matchsym
4862748964 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -48628,15 +48965,15 @@
4862848965 label = 3386LLU; // continue to roll stack
4862948966 break;
4863048967 }
48631- case 4062LLU: // return from matchsym to procblock
48968+ case 4101LLU: // return from matchsym to procblock
4863248969 {
4863348970 // copy mutable arguments back from call to matchsym
4863448971 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
4863548972 printf("%s", "\n printf(\"%s\", ");
4863648973 // call echostring from procblock
48637- stack[base + 22LLU] = 4063LLU/*throw to this address*/;
48974+ stack[base + 22LLU] = 4102LLU/*throw to this address*/;
4863848975 stack[base + 23LLU] = base;
48639- stack[base + 24LLU] = 4064LLU;
48976+ stack[base + 24LLU] = 4103LLU;
4864048977 // arguments for call to echostring
4864148978 stack[base + 26LLU] = stack[base + 19]/*lookahead*/;
4864248979 // set stack-base & callee-address
@@ -48644,13 +48981,13 @@
4864448981 label = 18446744073709551581LLU; // echostring
4864548982 break;
4864648983 }
48647- case 4063LLU: // copy-back deleter (echostring to procblock)
48984+ case 4102LLU: // copy-back deleter (echostring to procblock)
4864848985 {
4864948986 // copy mutable arguments back from call to echostring
4865048987 label = 3386LLU; // continue to roll stack
4865148988 break;
4865248989 }
48653- case 4064LLU: // return from echostring to procblock
48990+ case 4103LLU: // return from echostring to procblock
4865448991 {
4865548992 // copy mutable arguments back from call to echostring
4865648993 // copy back results provided by call to echostring
@@ -48657,9 +48994,9 @@
4865748994 stack[base + 19] = stack[base + 25LLU];
4865848995 printf("%s", ");");
4865948996 // call matchsym from procblock
48660- stack[base + 22LLU] = 4065LLU/*throw to this address*/;
48997+ stack[base + 22LLU] = 4104LLU/*throw to this address*/;
4866148998 stack[base + 23LLU] = base;
48662- stack[base + 24LLU] = 4066LLU;
48999+ stack[base + 24LLU] = 4105LLU;
4866349000 // arguments for call to matchsym
4866449001 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4866549002 stack[base + 26LLU] = 41LLU;
@@ -48669,7 +49006,7 @@
4866949006 label = 222LLU; // matchsym
4867049007 break;
4867149008 }
48672- case 4065LLU: // copy-back deleter (matchsym to procblock)
49009+ case 4104LLU: // copy-back deleter (matchsym to procblock)
4867349010 {
4867449011 // copy mutable arguments back from call to matchsym
4867549012 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -48676,14 +49013,14 @@
4867649013 label = 3386LLU; // continue to roll stack
4867749014 break;
4867849015 }
48679- case 4066LLU: // return from matchsym to procblock
49016+ case 4105LLU: // return from matchsym to procblock
4868049017 {
4868149018 // copy mutable arguments back from call to matchsym
4868249019 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
4868349020 // call delimiter from procblock
48684- stack[base + 22LLU] = 4067LLU/*throw to this address*/;
49021+ stack[base + 22LLU] = 4106LLU/*throw to this address*/;
4868549022 stack[base + 23LLU] = base;
48686- stack[base + 24LLU] = 4068LLU;
49023+ stack[base + 24LLU] = 4107LLU;
4868749024 // arguments for call to delimiter
4868849025 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4868949026 stack[base + 26LLU] = stack[base + 19]/*lookahead*/;
@@ -48692,7 +49029,7 @@
4869249029 label = 29LLU; // delimiter
4869349030 break;
4869449031 }
48695- case 4067LLU: // copy-back deleter (delimiter to procblock)
49032+ case 4106LLU: // copy-back deleter (delimiter to procblock)
4869649033 {
4869749034 // copy mutable arguments back from call to delimiter
4869849035 stack[base + 19]/*lookahead*/ = stack[base + 26LLU];
@@ -48699,19 +49036,19 @@
4869949036 label = 3386LLU; // continue to roll stack
4870049037 break;
4870149038 }
48702- case 4068LLU: // return from delimiter to procblock
49039+ case 4107LLU: // return from delimiter to procblock
4870349040 {
4870449041 // copy mutable arguments back from call to delimiter
4870549042 stack[base + 19]/*lookahead*/ = stack[base + 26LLU];
48706- label = 4056LLU; // consequent complete
49043+ label = 4095LLU; // consequent complete
4870749044 break;
4870849045 }
48709- case 4055LLU: // alternative
49046+ case 4094LLU: // alternative
4871049047 {
4871149048 // call equ from procblock
48712- stack[base + 22LLU] = 4069LLU/*throw to this address*/;
49049+ stack[base + 22LLU] = 4108LLU/*throw to this address*/;
4871349050 stack[base + 23LLU] = base;
48714- stack[base + 24LLU] = 4070LLU;
49051+ stack[base + 24LLU] = 4109LLU;
4871549052 // arguments for call to equ
4871649053 stack[base + 26LLU] = stack[base + 16]/*content*/;
4871749054 stack[base + 27LLU] = 856729206128640000LLU;
@@ -48720,13 +49057,13 @@
4872049057 label = 18446744073709551600LLU; // equ
4872149058 break;
4872249059 }
48723- case 4069LLU: // copy-back deleter (equ to procblock)
49060+ case 4108LLU: // copy-back deleter (equ to procblock)
4872449061 {
4872549062 // copy mutable arguments back from call to equ
4872649063 label = 3386LLU; // continue to roll stack
4872749064 break;
4872849065 }
48729- case 4070LLU: // return from equ to procblock
49066+ case 4109LLU: // return from equ to procblock
4873049067 {
4873149068 // copy mutable arguments back from call to equ
4873249069 // copy back results provided by call to equ
@@ -48733,7 +49070,7 @@
4873349070 stack[base + 20] = stack[base + 25LLU];
4873449071 if(!stack[base + 20]/*isequal*/)
4873549072 {
48736- label = 4071LLU; // jump to alternative
49073+ label = 4110LLU; // jump to alternative
4873749074 break;
4873849075 }
4873949076
@@ -48740,21 +49077,21 @@
4874049077 // consequent
4874149078 if(!stack[base + 6]/*fncanthrow*/)
4874249079 {
48743- label = 4073LLU; // jump to alternative
49080+ label = 4112LLU; // jump to alternative
4874449081 break;
4874549082 }
4874649083
4874749084 // consequent
48748- label = 4074LLU; // consequent complete
49085+ label = 4113LLU; // consequent complete
4874949086 break;
4875049087 }
48751- case 4073LLU: // alternative
49088+ case 4112LLU: // alternative
4875249089 {
4875349090 fprintf(stderr, "%s", "in function ");
4875449091 // call reportid from procblock
48755- stack[base + 22LLU] = 4075LLU/*throw to this address*/;
49092+ stack[base + 22LLU] = 4114LLU/*throw to this address*/;
4875649093 stack[base + 23LLU] = base;
48757- stack[base + 24LLU] = 4076LLU;
49094+ stack[base + 24LLU] = 4115LLU;
4875849095 // arguments for call to reportid
4875949096 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4876049097 // set stack-base & callee-address
@@ -48762,13 +49099,13 @@
4876249099 label = 18446744073709551586LLU; // reportid
4876349100 break;
4876449101 }
48765- case 4075LLU: // copy-back deleter (reportid to procblock)
49102+ case 4114LLU: // copy-back deleter (reportid to procblock)
4876649103 {
4876749104 // copy mutable arguments back from call to reportid
4876849105 label = 3386LLU; // continue to roll stack
4876949106 break;
4877049107 }
48771- case 4076LLU: // return from reportid to procblock
49108+ case 4115LLU: // return from reportid to procblock
4877249109 {
4877349110 // copy mutable arguments back from call to reportid
4877449111 fprintf(stderr, "%s", ": use of throw in no-throw environment\n");
@@ -48777,15 +49114,15 @@
4877749114 break;
4877849115 }
4877949116
48780- label = 4074LLU; // alternative complete
49117+ label = 4113LLU; // alternative complete
4878149118 break;
4878249119 }
48783- case 4074LLU: // completed if-then-else
49120+ case 4113LLU: // completed if-then-else
4878449121 {
4878549122 // call emitthrow from procblock
48786- stack[base + 22LLU] = 4077LLU/*throw to this address*/;
49123+ stack[base + 22LLU] = 4116LLU/*throw to this address*/;
4878749124 stack[base + 23LLU] = base;
48788- stack[base + 24LLU] = 4078LLU;
49125+ stack[base + 24LLU] = 4117LLU;
4878949126 // arguments for call to emitthrow
4879049127 stack[base + 25LLU] = stack[base + 3]/*scope*/;
4879149128 // set stack-base & callee-address
@@ -48793,19 +49130,19 @@
4879349130 label = 1698LLU; // emitthrow
4879449131 break;
4879549132 }
48796- case 4077LLU: // copy-back deleter (emitthrow to procblock)
49133+ case 4116LLU: // copy-back deleter (emitthrow to procblock)
4879749134 {
4879849135 // copy mutable arguments back from call to emitthrow
4879949136 label = 3386LLU; // continue to roll stack
4880049137 break;
4880149138 }
48802- case 4078LLU: // return from emitthrow to procblock
49139+ case 4117LLU: // return from emitthrow to procblock
4880349140 {
4880449141 // copy mutable arguments back from call to emitthrow
4880549142 // call delimiter from procblock
48806- stack[base + 22LLU] = 4079LLU/*throw to this address*/;
49143+ stack[base + 22LLU] = 4118LLU/*throw to this address*/;
4880749144 stack[base + 23LLU] = base;
48808- stack[base + 24LLU] = 4080LLU;
49145+ stack[base + 24LLU] = 4119LLU;
4880949146 // arguments for call to delimiter
4881049147 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4881149148 stack[base + 26LLU] = stack[base + 19]/*lookahead*/;
@@ -48814,7 +49151,7 @@
4881449151 label = 29LLU; // delimiter
4881549152 break;
4881649153 }
48817- case 4079LLU: // copy-back deleter (delimiter to procblock)
49154+ case 4118LLU: // copy-back deleter (delimiter to procblock)
4881849155 {
4881949156 // copy mutable arguments back from call to delimiter
4882049157 stack[base + 19]/*lookahead*/ = stack[base + 26LLU];
@@ -48821,14 +49158,14 @@
4882149158 label = 3386LLU; // continue to roll stack
4882249159 break;
4882349160 }
48824- case 4080LLU: // return from delimiter to procblock
49161+ case 4119LLU: // return from delimiter to procblock
4882549162 {
4882649163 // copy mutable arguments back from call to delimiter
4882749164 stack[base + 19]/*lookahead*/ = stack[base + 26LLU];
4882849165 // call MATCHPEEK from procblock
48829- stack[base + 22LLU] = 4081LLU/*throw to this address*/;
49166+ stack[base + 22LLU] = 4120LLU/*throw to this address*/;
4883049167 stack[base + 23LLU] = base;
48831- stack[base + 24LLU] = 4082LLU;
49168+ stack[base + 24LLU] = 4121LLU;
4883249169 // arguments for call to MATCHPEEK
4883349170 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
4883449171 stack[base + 26LLU] = 125LLU;
@@ -48838,7 +49175,7 @@
4883849175 label = 206LLU; // MATCHPEEK
4883949176 break;
4884049177 }
48841- case 4081LLU: // copy-back deleter (MATCHPEEK to procblock)
49178+ case 4120LLU: // copy-back deleter (MATCHPEEK to procblock)
4884249179 {
4884349180 // copy mutable arguments back from call to MATCHPEEK
4884449181 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -48845,14 +49182,14 @@
4884549182 label = 3386LLU; // continue to roll stack
4884649183 break;
4884749184 }
48848- case 4082LLU: // return from MATCHPEEK to procblock
49185+ case 4121LLU: // return from MATCHPEEK to procblock
4884949186 {
4885049187 // copy mutable arguments back from call to MATCHPEEK
4885149188 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
4885249189 // call EOSbyte from procblock
48853- stack[base + 22LLU] = 4083LLU/*throw to this address*/;
49190+ stack[base + 22LLU] = 4122LLU/*throw to this address*/;
4885449191 stack[base + 23LLU] = base;
48855- stack[base + 24LLU] = 4084LLU;
49192+ stack[base + 24LLU] = 4123LLU;
4885649193 // arguments for call to EOSbyte
4885749194 // set stack-base & callee-address
4885849195 base += 25LLU;
@@ -48859,26 +49196,26 @@
4885949196 label = 77LLU; // EOSbyte
4886049197 break;
4886149198 }
48862- case 4083LLU: // copy-back deleter (EOSbyte to procblock)
49199+ case 4122LLU: // copy-back deleter (EOSbyte to procblock)
4886349200 {
4886449201 // copy mutable arguments back from call to EOSbyte
4886549202 label = 3386LLU; // continue to roll stack
4886649203 break;
4886749204 }
48868- case 4084LLU: // return from EOSbyte to procblock
49205+ case 4123LLU: // return from EOSbyte to procblock
4886949206 {
4887049207 // copy mutable arguments back from call to EOSbyte
4887149208 // copy back results provided by call to EOSbyte
4887249209 stack[base + 19] = stack[base + 25LLU];
48873- label = 4072LLU; // consequent complete
49210+ label = 4111LLU; // consequent complete
4887449211 break;
4887549212 }
48876- case 4071LLU: // alternative
49213+ case 4110LLU: // alternative
4887749214 {
4887849215 // call equ from procblock
48879- stack[base + 22LLU] = 4085LLU/*throw to this address*/;
49216+ stack[base + 22LLU] = 4124LLU/*throw to this address*/;
4888049217 stack[base + 23LLU] = base;
48881- stack[base + 24LLU] = 4086LLU;
49218+ stack[base + 24LLU] = 4125LLU;
4888249219 // arguments for call to equ
4888349220 stack[base + 26LLU] = stack[base + 16]/*content*/;
4888449221 stack[base + 27LLU] = 711775449310560256LLU;
@@ -48887,13 +49224,13 @@
4888749224 label = 18446744073709551600LLU; // equ
4888849225 break;
4888949226 }
48890- case 4085LLU: // copy-back deleter (equ to procblock)
49227+ case 4124LLU: // copy-back deleter (equ to procblock)
4889149228 {
4889249229 // copy mutable arguments back from call to equ
4889349230 label = 3386LLU; // continue to roll stack
4889449231 break;
4889549232 }
48896- case 4086LLU: // return from equ to procblock
49233+ case 4125LLU: // return from equ to procblock
4889749234 {
4889849235 // copy mutable arguments back from call to equ
4889949236 // copy back results provided by call to equ
@@ -48900,15 +49237,15 @@
4890049237 stack[base + 20] = stack[base + 25LLU];
4890149238 if(!stack[base + 20]/*isequal*/)
4890249239 {
48903- label = 4087LLU; // jump to alternative
49240+ label = 4126LLU; // jump to alternative
4890449241 break;
4890549242 }
4890649243
4890749244 // consequent
4890849245 // call ParseToken from procblock
48909- stack[base + 22LLU] = 4089LLU/*throw to this address*/;
49246+ stack[base + 22LLU] = 4128LLU/*throw to this address*/;
4891049247 stack[base + 23LLU] = base;
48911- stack[base + 24LLU] = 4090LLU;
49248+ stack[base + 24LLU] = 4129LLU;
4891249249 // arguments for call to ParseToken
4891349250 stack[base + 27LLU] = stack[base + 19]/*lookahead*/;
4891449251 // set stack-base & callee-address
@@ -48916,7 +49253,7 @@
4891649253 label = 3LLU; // ParseToken
4891749254 break;
4891849255 }
48919- case 4089LLU: // copy-back deleter (ParseToken to procblock)
49256+ case 4128LLU: // copy-back deleter (ParseToken to procblock)
4892049257 {
4892149258 // copy mutable arguments back from call to ParseToken
4892249259 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -48923,7 +49260,7 @@
4892349260 label = 3386LLU; // continue to roll stack
4892449261 break;
4892549262 }
48926- case 4090LLU: // return from ParseToken to procblock
49263+ case 4129LLU: // return from ParseToken to procblock
4892749264 {
4892849265 // copy mutable arguments back from call to ParseToken
4892949266 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -48931,9 +49268,9 @@
4893149268 stack[base + 15] = stack[base + 25LLU];
4893249269 stack[base + 16] = stack[base + 26LLU];
4893349270 // call equ from procblock
48934- stack[base + 22LLU] = 4091LLU/*throw to this address*/;
49271+ stack[base + 22LLU] = 4130LLU/*throw to this address*/;
4893549272 stack[base + 23LLU] = base;
48936- stack[base + 24LLU] = 4092LLU;
49273+ stack[base + 24LLU] = 4131LLU;
4893749274 // arguments for call to equ
4893849275 stack[base + 26LLU] = stack[base + 16]/*content*/;
4893949276 stack[base + 27LLU] = 40LLU;
@@ -48942,13 +49279,13 @@
4894249279 label = 18446744073709551600LLU; // equ
4894349280 break;
4894449281 }
48945- case 4091LLU: // copy-back deleter (equ to procblock)
49282+ case 4130LLU: // copy-back deleter (equ to procblock)
4894649283 {
4894749284 // copy mutable arguments back from call to equ
4894849285 label = 3386LLU; // continue to roll stack
4894949286 break;
4895049287 }
48951- case 4092LLU: // return from equ to procblock
49288+ case 4131LLU: // return from equ to procblock
4895249289 {
4895349290 // copy mutable arguments back from call to equ
4895449291 // copy back results provided by call to equ
@@ -48955,15 +49292,15 @@
4895549292 stack[base + 20] = stack[base + 25LLU];
4895649293 if(!stack[base + 20]/*isequal*/)
4895749294 {
48958- label = 4093LLU; // jump to alternative
49295+ label = 4132LLU; // jump to alternative
4895949296 break;
4896049297 }
4896149298
4896249299 // consequent
48963- label = 4096LLU; // skip deleter
49300+ label = 4135LLU; // skip deleter
4896449301 break;
4896549302 }
48966- case 4095LLU: // deleter
49303+ case 4134LLU: // deleter
4896749304 {
4896849305 // throw from procblock
4896949306 if(!stack[base + 22])
@@ -48972,14 +49309,14 @@
4897249309 break;
4897349310 }
4897449311 // delete list
48975- label = 4097LLU; // start to repeat
49312+ label = 4136LLU; // start to repeat
4897649313 break;
4897749314 }
48978- case 4097LLU: // repeat from here
49315+ case 4136LLU: // repeat from here
4897949316 {
4898049317 if(!stack[base + 22])
4898149318 {
48982- label = 4098LLU; // break loop
49319+ label = 4137LLU; // break loop
4898349320 break;
4898449321 }
4898549322
@@ -48990,7 +49327,7 @@
4899049327 newstack[0] = (uint64_t)stack; // backup stack location
4899149328 newstack[1] = 1234567890;
4899249329 newstack[2] = base;
48993- newstack[3] = 4099LLU;
49330+ newstack[3] = 4138LLU;
4899449331 stack = newstack;
4899549332 // set stack-base & callee-address
4899649333 base = 4/*deloffset*/;
@@ -48997,7 +49334,7 @@
4899749334 label = 395LLU; // ~typeidx
4899849335 break;
4899949336 }
49000- case 4099LLU: // return from ~typeidx to procblock
49337+ case 4138LLU: // return from ~typeidx to procblock
4900149338 {
4900249339 stack = (uint64_t *)stack[0];
4900349340 // releasing toplevel container
@@ -49008,26 +49345,26 @@
4900849345 stack[base + 22] = (uint64_t)list->next;
4900949346 Free(1, sizeof(struct listnode), list);
4901049347 }
49011- label = 4097LLU; // repeat
49348+ label = 4136LLU; // repeat
4901249349 break;
4901349350 }
49014- case 4098LLU: // loop finished
49351+ case 4137LLU: // loop finished
4901549352 {
4901649353 label = 3386LLU; // continue unrolling stack, delete next variable
4901749354 break;
4901849355 }
49019- case 4096LLU: // skipped deleter
49356+ case 4135LLU: // skipped deleter
4902049357 {
4902149358 stack[base + 22] = 0;
49022- label = 4101LLU; // skip deleter
49359+ label = 4140LLU; // skip deleter
4902349360 break;
4902449361 }
49025- case 4100LLU: // deleter
49362+ case 4139LLU: // deleter
4902649363 {
4902749364 // throw from procblock
4902849365 if(!stack[base + 23])
4902949366 {
49030- label = 4095LLU; // skip, variable already deleted/unscoped
49367+ label = 4134LLU; // skip, variable already deleted/unscoped
4903149368 break;
4903249369 }
4903349370
@@ -49036,7 +49373,7 @@
4903649373 newstack[0] = (uint64_t)stack; // backup stack location
4903749374 newstack[1] = 1234567890;
4903849375 newstack[2] = base;
49039- newstack[3] = 4102LLU;
49376+ newstack[3] = 4141LLU;
4904049377 stack = newstack;
4904149378 // set stack-base & callee-address
4904249379 base = 4/*deloffset*/;
@@ -49043,21 +49380,21 @@
4904349380 label = 558LLU; // ~scope
4904449381 break;
4904549382 }
49046- case 4102LLU: // return from ~scope to procblock
49383+ case 4141LLU: // return from ~scope to procblock
4904749384 {
4904849385 stack = (uint64_t *)stack[0];
4904949386 // releasing toplevel container
4905049387 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 23] - sizeof(uint64_t) * 4));
4905149388
49052- label = 4095LLU; // continue unrolling stack, delete next variable
49389+ label = 4134LLU; // continue unrolling stack, delete next variable
4905349390 break;
4905449391 }
49055- case 4101LLU: // skipped deleter
49392+ case 4140LLU: // skipped deleter
4905649393 {
4905749394 // call linkscope from procblock
49058- stack[base + 24LLU] = 4103LLU/*throw to this address*/;
49395+ stack[base + 24LLU] = 4142LLU/*throw to this address*/;
4905949396 stack[base + 25LLU] = base;
49060- stack[base + 26LLU] = 4104LLU;
49397+ stack[base + 26LLU] = 4143LLU;
4906149398 // arguments for call to linkscope
4906249399 stack[base + 28LLU] = stack[base + 3]/*scope*/;
4906349400 // set stack-base & callee-address
@@ -49065,21 +49402,21 @@
4906549402 label = 585LLU; // linkscope
4906649403 break;
4906749404 }
49068- case 4103LLU: // copy-back deleter (linkscope to procblock)
49405+ case 4142LLU: // copy-back deleter (linkscope to procblock)
4906949406 {
4907049407 // copy mutable arguments back from call to linkscope
49071- label = 4095LLU; // continue to roll stack
49408+ label = 4134LLU; // continue to roll stack
4907249409 break;
4907349410 }
49074- case 4104LLU: // return from linkscope to procblock
49411+ case 4143LLU: // return from linkscope to procblock
4907549412 {
4907649413 // copy mutable arguments back from call to linkscope
4907749414 // copy back results provided by call to linkscope
4907849415 stack[base + 23] = stack[base + 27LLU];
4907949416 // call skipwscmnt from procblock
49080- stack[base + 24LLU] = 4105LLU/*throw to this address*/;
49417+ stack[base + 24LLU] = 4144LLU/*throw to this address*/;
4908149418 stack[base + 25LLU] = base;
49082- stack[base + 26LLU] = 4106LLU;
49419+ stack[base + 26LLU] = 4145LLU;
4908349420 // arguments for call to skipwscmnt
4908449421 stack[base + 28LLU] = stack[base + 19]/*lookahead*/;
4908549422 // set stack-base & callee-address
@@ -49087,21 +49424,21 @@
4908749424 label = 18446744073709551580LLU; // skipwscmnt
4908849425 break;
4908949426 }
49090- case 4105LLU: // copy-back deleter (skipwscmnt to procblock)
49427+ case 4144LLU: // copy-back deleter (skipwscmnt to procblock)
4909149428 {
4909249429 // copy mutable arguments back from call to skipwscmnt
49093- label = 4100LLU; // continue to roll stack
49430+ label = 4139LLU; // continue to roll stack
4909449431 break;
4909549432 }
49096- case 4106LLU: // return from skipwscmnt to procblock
49433+ case 4145LLU: // return from skipwscmnt to procblock
4909749434 {
4909849435 // copy mutable arguments back from call to skipwscmnt
4909949436 // copy back results provided by call to skipwscmnt
4910049437 stack[base + 19] = stack[base + 27LLU];
4910149438 // call equ from procblock
49102- stack[base + 24LLU] = 4107LLU/*throw to this address*/;
49439+ stack[base + 24LLU] = 4146LLU/*throw to this address*/;
4910349440 stack[base + 25LLU] = base;
49104- stack[base + 26LLU] = 4108LLU;
49441+ stack[base + 26LLU] = 4147LLU;
4910549442 // arguments for call to equ
4910649443 stack[base + 28LLU] = stack[base + 19]/*lookahead*/;
4910749444 stack[base + 29LLU] = 41LLU;
@@ -49110,13 +49447,13 @@
4911049447 label = 18446744073709551600LLU; // equ
4911149448 break;
4911249449 }
49113- case 4107LLU: // copy-back deleter (equ to procblock)
49450+ case 4146LLU: // copy-back deleter (equ to procblock)
4911449451 {
4911549452 // copy mutable arguments back from call to equ
49116- label = 4100LLU; // continue to roll stack
49453+ label = 4139LLU; // continue to roll stack
4911749454 break;
4911849455 }
49119- case 4108LLU: // return from equ to procblock
49456+ case 4147LLU: // return from equ to procblock
4912049457 {
4912149458 // copy mutable arguments back from call to equ
4912249459 // copy back results provided by call to equ
@@ -49123,36 +49460,36 @@
4912349460 stack[base + 20] = stack[base + 27LLU];
4912449461 if(!stack[base + 20]/*isequal*/)
4912549462 {
49126- label = 4109LLU; // jump to alternative
49463+ label = 4148LLU; // jump to alternative
4912749464 break;
4912849465 }
4912949466
4913049467 // consequent
49131- label = 4110LLU; // consequent complete
49468+ label = 4149LLU; // consequent complete
4913249469 break;
4913349470 }
49134- case 4109LLU: // alternative
49471+ case 4148LLU: // alternative
4913549472 {
49136- label = 4112LLU; // skip deleter
49473+ label = 4151LLU; // skip deleter
4913749474 break;
4913849475 }
49139- case 4111LLU: // deleter
49476+ case 4150LLU: // deleter
4914049477 {
4914149478 // throw from procblock
4914249479 if(!stack[base + 24])
4914349480 {
49144- label = 4100LLU; // skip, variable already deleted/unscoped
49481+ label = 4139LLU; // skip, variable already deleted/unscoped
4914549482 break;
4914649483 }
4914749484 // delete list
49148- label = 4113LLU; // start to repeat
49485+ label = 4152LLU; // start to repeat
4914949486 break;
4915049487 }
49151- case 4113LLU: // repeat from here
49488+ case 4152LLU: // repeat from here
4915249489 {
4915349490 if(!stack[base + 24])
4915449491 {
49155- label = 4114LLU; // break loop
49492+ label = 4153LLU; // break loop
4915649493 break;
4915749494 }
4915849495
@@ -49162,33 +49499,33 @@
4916249499 stack[base + 24] = (uint64_t)list->next;
4916349500 Free(1, sizeof(struct listnode), list);
4916449501 }
49165- label = 4113LLU; // repeat
49502+ label = 4152LLU; // repeat
4916649503 break;
4916749504 }
49168- case 4114LLU: // loop finished
49505+ case 4153LLU: // loop finished
4916949506 {
49170- label = 4100LLU; // continue unrolling stack, delete next variable
49507+ label = 4139LLU; // continue unrolling stack, delete next variable
4917149508 break;
4917249509 }
49173- case 4112LLU: // skipped deleter
49510+ case 4151LLU: // skipped deleter
4917449511 {
4917549512 stack[base + 24] = 0;
49176- label = 4115LLU; // start to repeat
49513+ label = 4154LLU; // start to repeat
4917749514 break;
4917849515 }
49179- case 4115LLU: // repeat from here
49516+ case 4154LLU: // repeat from here
4918049517 {
4918149518 if(stack[base + 19]/*lookahead*/ > 0xFF)
4918249519 {
49183- label = 4116LLU; // break loop
49520+ label = 4155LLU; // break loop
4918449521 break;
4918549522 }
4918649523
4918749524 // loop body
4918849525 // call ParseToken from procblock
49189- stack[base + 25LLU] = 4117LLU/*throw to this address*/;
49526+ stack[base + 25LLU] = 4156LLU/*throw to this address*/;
4919049527 stack[base + 26LLU] = base;
49191- stack[base + 27LLU] = 4118LLU;
49528+ stack[base + 27LLU] = 4157LLU;
4919249529 // arguments for call to ParseToken
4919349530 stack[base + 30LLU] = stack[base + 19]/*lookahead*/;
4919449531 // set stack-base & callee-address
@@ -49196,14 +49533,14 @@
4919649533 label = 3LLU; // ParseToken
4919749534 break;
4919849535 }
49199- case 4117LLU: // copy-back deleter (ParseToken to procblock)
49536+ case 4156LLU: // copy-back deleter (ParseToken to procblock)
4920049537 {
4920149538 // copy mutable arguments back from call to ParseToken
4920249539 stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
49203- label = 4111LLU; // continue to roll stack
49540+ label = 4150LLU; // continue to roll stack
4920449541 break;
4920549542 }
49206- case 4118LLU: // return from ParseToken to procblock
49543+ case 4157LLU: // return from ParseToken to procblock
4920749544 {
4920849545 // copy mutable arguments back from call to ParseToken
4920949546 stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
@@ -49210,26 +49547,26 @@
4921049547 // copy back results provided by call to ParseToken
4921149548 stack[base + 15] = stack[base + 28LLU];
4921249549 stack[base + 16] = stack[base + 29LLU];
49213- label = 4120LLU; // skip deleter
49550+ label = 4159LLU; // skip deleter
4921449551 break;
4921549552 }
49216- case 4119LLU: // deleter
49553+ case 4158LLU: // deleter
4921749554 {
4921849555 // throw from procblock
4921949556 if(!stack[base + 25])
4922049557 {
49221- label = 4111LLU; // skip, variable already deleted/unscoped
49558+ label = 4150LLU; // skip, variable already deleted/unscoped
4922249559 break;
4922349560 }
49224- label = 4111LLU; // continue unrolling stack, delete next variable
49561+ label = 4150LLU; // continue unrolling stack, delete next variable
4922549562 break;
4922649563 }
49227- case 4120LLU: // skipped deleter
49564+ case 4159LLU: // skipped deleter
4922849565 {
4922949566 // call equ from procblock
49230- stack[base + 26LLU] = 4121LLU/*throw to this address*/;
49567+ stack[base + 26LLU] = 4160LLU/*throw to this address*/;
4923149568 stack[base + 27LLU] = base;
49232- stack[base + 28LLU] = 4122LLU;
49569+ stack[base + 28LLU] = 4161LLU;
4923349570 // arguments for call to equ
4923449571 stack[base + 30LLU] = stack[base + 15]/*variant*/;
4923549572 stack[base + 31LLU] = 4LLU;
@@ -49238,13 +49575,13 @@
4923849575 label = 18446744073709551600LLU; // equ
4923949576 break;
4924049577 }
49241- case 4121LLU: // copy-back deleter (equ to procblock)
49578+ case 4160LLU: // copy-back deleter (equ to procblock)
4924249579 {
4924349580 // copy mutable arguments back from call to equ
49244- label = 4111LLU; // continue to roll stack
49581+ label = 4150LLU; // continue to roll stack
4924549582 break;
4924649583 }
49247- case 4122LLU: // return from equ to procblock
49584+ case 4161LLU: // return from equ to procblock
4924849585 {
4924949586 // copy mutable arguments back from call to equ
4925049587 // copy back results provided by call to equ
@@ -49251,15 +49588,15 @@
4925149588 stack[base + 20] = stack[base + 29LLU];
4925249589 if(!stack[base + 20]/*isequal*/)
4925349590 {
49254- label = 4123LLU; // jump to alternative
49591+ label = 4162LLU; // jump to alternative
4925549592 break;
4925649593 }
4925749594
4925849595 // consequent
4925949596 // call equ from procblock
49260- stack[base + 26LLU] = 4125LLU/*throw to this address*/;
49597+ stack[base + 26LLU] = 4164LLU/*throw to this address*/;
4926149598 stack[base + 27LLU] = base;
49262- stack[base + 28LLU] = 4126LLU;
49599+ stack[base + 28LLU] = 4165LLU;
4926349600 // arguments for call to equ
4926449601 stack[base + 30LLU] = stack[base + 16]/*content*/;
4926549602 stack[base + 31LLU] = 734293447447412736LLU;
@@ -49268,13 +49605,13 @@
4926849605 label = 18446744073709551600LLU; // equ
4926949606 break;
4927049607 }
49271- case 4125LLU: // copy-back deleter (equ to procblock)
49608+ case 4164LLU: // copy-back deleter (equ to procblock)
4927249609 {
4927349610 // copy mutable arguments back from call to equ
49274- label = 4111LLU; // continue to roll stack
49611+ label = 4150LLU; // continue to roll stack
4927549612 break;
4927649613 }
49277- case 4126LLU: // return from equ to procblock
49614+ case 4165LLU: // return from equ to procblock
4927849615 {
4927949616 // copy mutable arguments back from call to equ
4928049617 // copy back results provided by call to equ
@@ -49281,15 +49618,15 @@
4928149618 stack[base + 20] = stack[base + 29LLU];
4928249619 if(!stack[base + 20]/*isequal*/)
4928349620 {
49284- label = 4127LLU; // jump to alternative
49621+ label = 4166LLU; // jump to alternative
4928549622 break;
4928649623 }
4928749624
4928849625 // consequent
4928949626 // call ParseToken from procblock
49290- stack[base + 26LLU] = 4129LLU/*throw to this address*/;
49627+ stack[base + 26LLU] = 4168LLU/*throw to this address*/;
4929149628 stack[base + 27LLU] = base;
49292- stack[base + 28LLU] = 4130LLU;
49629+ stack[base + 28LLU] = 4169LLU;
4929349630 // arguments for call to ParseToken
4929449631 stack[base + 31LLU] = stack[base + 19]/*lookahead*/;
4929549632 // set stack-base & callee-address
@@ -49297,14 +49634,14 @@
4929749634 label = 3LLU; // ParseToken
4929849635 break;
4929949636 }
49300- case 4129LLU: // copy-back deleter (ParseToken to procblock)
49637+ case 4168LLU: // copy-back deleter (ParseToken to procblock)
4930149638 {
4930249639 // copy mutable arguments back from call to ParseToken
4930349640 stack[base + 19]/*lookahead*/ = stack[base + 31LLU];
49304- label = 4111LLU; // continue to roll stack
49641+ label = 4150LLU; // continue to roll stack
4930549642 break;
4930649643 }
49307- case 4130LLU: // return from ParseToken to procblock
49644+ case 4169LLU: // return from ParseToken to procblock
4930849645 {
4930949646 // copy mutable arguments back from call to ParseToken
4931049647 stack[base + 19]/*lookahead*/ = stack[base + 31LLU];
@@ -49311,86 +49648,86 @@
4931149648 // copy back results provided by call to ParseToken
4931249649 stack[base + 15] = stack[base + 29LLU];
4931349650 stack[base + 16] = stack[base + 30LLU];
49314- label = 4132LLU; // skip deleter
49651+ label = 4171LLU; // skip deleter
4931549652 break;
4931649653 }
49317- case 4131LLU: // deleter
49654+ case 4170LLU: // deleter
4931849655 {
4931949656 // throw from procblock
4932049657 if(!stack[base + 25])
4932149658 {
49322- label = 4111LLU; // skip, variable already deleted/unscoped
49659+ label = 4150LLU; // skip, variable already deleted/unscoped
4932349660 break;
4932449661 }
49325- label = 4111LLU; // continue unrolling stack, delete next variable
49662+ label = 4150LLU; // continue unrolling stack, delete next variable
4932649663 break;
4932749664 }
49328- case 4132LLU: // skipped deleter
49665+ case 4171LLU: // skipped deleter
4932949666 {
4933049667 stack[base + 25] = 1;
49331- label = 4128LLU; // consequent complete
49668+ label = 4167LLU; // consequent complete
4933249669 break;
4933349670 }
49334- case 4127LLU: // alternative
49671+ case 4166LLU: // alternative
4933549672 {
49336- label = 4134LLU; // skip deleter
49673+ label = 4173LLU; // skip deleter
4933749674 break;
4933849675 }
49339- case 4133LLU: // deleter
49676+ case 4172LLU: // deleter
4934049677 {
4934149678 // throw from procblock
4934249679 if(!stack[base + 25])
4934349680 {
49344- label = 4111LLU; // skip, variable already deleted/unscoped
49681+ label = 4150LLU; // skip, variable already deleted/unscoped
4934549682 break;
4934649683 }
49347- label = 4111LLU; // continue unrolling stack, delete next variable
49684+ label = 4150LLU; // continue unrolling stack, delete next variable
4934849685 break;
4934949686 }
49350- case 4134LLU: // skipped deleter
49687+ case 4173LLU: // skipped deleter
4935149688 {
4935249689 stack[base + 25] = 0;
49353- label = 4128LLU; // alternative complete
49690+ label = 4167LLU; // alternative complete
4935449691 break;
4935549692 }
49356- case 4128LLU: // completed if-then-else
49693+ case 4167LLU: // completed if-then-else
4935749694 {
49358- label = 4124LLU; // consequent complete
49695+ label = 4163LLU; // consequent complete
4935949696 break;
4936049697 }
49361- case 4123LLU: // alternative
49698+ case 4162LLU: // alternative
4936249699 {
49363- label = 4136LLU; // skip deleter
49700+ label = 4175LLU; // skip deleter
4936449701 break;
4936549702 }
49366- case 4135LLU: // deleter
49703+ case 4174LLU: // deleter
4936749704 {
4936849705 // throw from procblock
4936949706 if(!stack[base + 25])
4937049707 {
49371- label = 4111LLU; // skip, variable already deleted/unscoped
49708+ label = 4150LLU; // skip, variable already deleted/unscoped
4937249709 break;
4937349710 }
49374- label = 4111LLU; // continue unrolling stack, delete next variable
49711+ label = 4150LLU; // continue unrolling stack, delete next variable
4937549712 break;
4937649713 }
49377- case 4136LLU: // skipped deleter
49714+ case 4175LLU: // skipped deleter
4937849715 {
4937949716 stack[base + 25] = 0;
49380- label = 4124LLU; // alternative complete
49717+ label = 4163LLU; // alternative complete
4938149718 break;
4938249719 }
49383- case 4124LLU: // completed if-then-else
49720+ case 4163LLU: // completed if-then-else
4938449721 {
49385- label = 4138LLU; // skip deleter
49722+ label = 4177LLU; // skip deleter
4938649723 break;
4938749724 }
49388- case 4137LLU: // deleter
49725+ case 4176LLU: // deleter
4938949726 {
4939049727 // throw from procblock
4939149728 if(!stack[base + 26])
4939249729 {
49393- label = 4119LLU; // skip, variable already deleted/unscoped
49730+ label = 4158LLU; // skip, variable already deleted/unscoped
4939449731 break;
4939549732 }
4939649733
@@ -49399,7 +49736,7 @@
4939949736 newstack[0] = (uint64_t)stack; // backup stack location
4940049737 newstack[1] = 1234567890;
4940149738 newstack[2] = base;
49402- newstack[3] = 4139LLU;
49739+ newstack[3] = 4178LLU;
4940349740 stack = newstack;
4940449741 // set stack-base & callee-address
4940549742 base = 4/*deloffset*/;
@@ -49406,21 +49743,21 @@
4940649743 label = 306LLU; // ~type
4940749744 break;
4940849745 }
49409- case 4139LLU: // return from ~type to procblock
49746+ case 4178LLU: // return from ~type to procblock
4941049747 {
4941149748 stack = (uint64_t *)stack[0];
4941249749 // releasing toplevel container
4941349750 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 26] - sizeof(uint64_t) * 4));
4941449751
49415- label = 4119LLU; // continue unrolling stack, delete next variable
49752+ label = 4158LLU; // continue unrolling stack, delete next variable
4941649753 break;
4941749754 }
49418- case 4138LLU: // skipped deleter
49755+ case 4177LLU: // skipped deleter
4941949756 {
4942049757 // call PARSETYPE from procblock
49421- stack[base + 27LLU] = 4140LLU/*throw to this address*/;
49758+ stack[base + 27LLU] = 4179LLU/*throw to this address*/;
4942249759 stack[base + 28LLU] = base;
49423- stack[base + 29LLU] = 4141LLU;
49760+ stack[base + 29LLU] = 4180LLU;
4942449761 // arguments for call to PARSETYPE
4942549762 stack[base + 31LLU] = stack[base + 8]/*fnid*/;
4942649763 stack[base + 32LLU] = stack[base + 15]/*variant*/;
@@ -49431,16 +49768,16 @@
4943149768 label = 932LLU; // PARSETYPE
4943249769 break;
4943349770 }
49434- case 4140LLU: // copy-back deleter (PARSETYPE to procblock)
49771+ case 4179LLU: // copy-back deleter (PARSETYPE to procblock)
4943549772 {
4943649773 // copy mutable arguments back from call to PARSETYPE
4943749774 stack[base + 19]/*lookahead*/ = stack[base + 34LLU];
4943849775 stack[base + 16]/*content*/ = stack[base + 33LLU];
4943949776 stack[base + 15]/*variant*/ = stack[base + 32LLU];
49440- label = 4119LLU; // continue to roll stack
49777+ label = 4158LLU; // continue to roll stack
4944149778 break;
4944249779 }
49443- case 4141LLU: // return from PARSETYPE to procblock
49780+ case 4180LLU: // return from PARSETYPE to procblock
4944449781 {
4944549782 // copy mutable arguments back from call to PARSETYPE
4944649783 stack[base + 19]/*lookahead*/ = stack[base + 34LLU];
@@ -49449,9 +49786,9 @@
4944949786 // copy back results provided by call to PARSETYPE
4945049787 stack[base + 26] = stack[base + 30LLU];
4945149788 // call ParseToken from procblock
49452- stack[base + 27LLU] = 4142LLU/*throw to this address*/;
49789+ stack[base + 27LLU] = 4181LLU/*throw to this address*/;
4945349790 stack[base + 28LLU] = base;
49454- stack[base + 29LLU] = 4143LLU;
49791+ stack[base + 29LLU] = 4182LLU;
4945549792 // arguments for call to ParseToken
4945649793 stack[base + 32LLU] = stack[base + 19]/*lookahead*/;
4945749794 // set stack-base & callee-address
@@ -49459,14 +49796,14 @@
4945949796 label = 3LLU; // ParseToken
4946049797 break;
4946149798 }
49462- case 4142LLU: // copy-back deleter (ParseToken to procblock)
49799+ case 4181LLU: // copy-back deleter (ParseToken to procblock)
4946349800 {
4946449801 // copy mutable arguments back from call to ParseToken
4946549802 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
49466- label = 4137LLU; // continue to roll stack
49803+ label = 4176LLU; // continue to roll stack
4946749804 break;
4946849805 }
49469- case 4143LLU: // return from ParseToken to procblock
49806+ case 4182LLU: // return from ParseToken to procblock
4947049807 {
4947149808 // copy mutable arguments back from call to ParseToken
4947249809 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
@@ -49474,9 +49811,9 @@
4947449811 stack[base + 15] = stack[base + 30LLU];
4947549812 stack[base + 16] = stack[base + 31LLU];
4947649813 // call equ from procblock
49477- stack[base + 27LLU] = 4144LLU/*throw to this address*/;
49814+ stack[base + 27LLU] = 4183LLU/*throw to this address*/;
4947849815 stack[base + 28LLU] = base;
49479- stack[base + 29LLU] = 4145LLU;
49816+ stack[base + 29LLU] = 4184LLU;
4948049817 // arguments for call to equ
4948149818 stack[base + 31LLU] = stack[base + 15]/*variant*/;
4948249819 stack[base + 32LLU] = 4LLU;
@@ -49485,13 +49822,13 @@
4948549822 label = 18446744073709551600LLU; // equ
4948649823 break;
4948749824 }
49488- case 4144LLU: // copy-back deleter (equ to procblock)
49825+ case 4183LLU: // copy-back deleter (equ to procblock)
4948949826 {
4949049827 // copy mutable arguments back from call to equ
49491- label = 4137LLU; // continue to roll stack
49828+ label = 4176LLU; // continue to roll stack
4949249829 break;
4949349830 }
49494- case 4145LLU: // return from equ to procblock
49831+ case 4184LLU: // return from equ to procblock
4949549832 {
4949649833 // copy mutable arguments back from call to equ
4949749834 // copy back results provided by call to equ
@@ -49498,21 +49835,21 @@
4949849835 stack[base + 20] = stack[base + 30LLU];
4949949836 if(!stack[base + 20]/*isequal*/)
4950049837 {
49501- label = 4146LLU; // jump to alternative
49838+ label = 4185LLU; // jump to alternative
4950249839 break;
4950349840 }
4950449841
4950549842 // consequent
49506- label = 4147LLU; // consequent complete
49843+ label = 4186LLU; // consequent complete
4950749844 break;
4950849845 }
49509- case 4146LLU: // alternative
49846+ case 4185LLU: // alternative
4951049847 {
4951149848 fprintf(stderr, "%s", "let expects identifier but found ");
4951249849 // call reporttok from procblock
49513- stack[base + 27LLU] = 4148LLU/*throw to this address*/;
49850+ stack[base + 27LLU] = 4187LLU/*throw to this address*/;
4951449851 stack[base + 28LLU] = base;
49515- stack[base + 29LLU] = 4149LLU;
49852+ stack[base + 29LLU] = 4188LLU;
4951649853 // arguments for call to reporttok
4951749854 stack[base + 30LLU] = stack[base + 15]/*variant*/;
4951849855 stack[base + 31LLU] = stack[base + 16]/*content*/;
@@ -49521,29 +49858,29 @@
4952149858 label = 18446744073709551582LLU; // reporttok
4952249859 break;
4952349860 }
49524- case 4148LLU: // copy-back deleter (reporttok to procblock)
49861+ case 4187LLU: // copy-back deleter (reporttok to procblock)
4952549862 {
4952649863 // copy mutable arguments back from call to reporttok
49527- label = 4137LLU; // continue to roll stack
49864+ label = 4176LLU; // continue to roll stack
4952849865 break;
4952949866 }
49530- case 4149LLU: // return from reporttok to procblock
49867+ case 4188LLU: // return from reporttok to procblock
4953149868 {
4953249869 // copy mutable arguments back from call to reporttok
4953349870 {
49534- label = 4137LLU; // throw: begin to unroll stack
49871+ label = 4176LLU; // throw: begin to unroll stack
4953549872 break;
4953649873 }
4953749874
49538- label = 4147LLU; // alternative complete
49875+ label = 4186LLU; // alternative complete
4953949876 break;
4954049877 }
49541- case 4147LLU: // completed if-then-else
49878+ case 4186LLU: // completed if-then-else
4954249879 {
4954349880 // call existsid from procblock
49544- stack[base + 27LLU] = 4150LLU/*throw to this address*/;
49881+ stack[base + 27LLU] = 4189LLU/*throw to this address*/;
4954549882 stack[base + 28LLU] = base;
49546- stack[base + 29LLU] = 4151LLU;
49883+ stack[base + 29LLU] = 4190LLU;
4954749884 // arguments for call to existsid
4954849885 stack[base + 31LLU] = stack[base + 24]/*letids*/;
4954949886 stack[base + 32LLU] = stack[base + 16]/*content*/;
@@ -49552,13 +49889,13 @@
4955249889 label = 153LLU; // existsid
4955349890 break;
4955449891 }
49555- case 4150LLU: // copy-back deleter (existsid to procblock)
49892+ case 4189LLU: // copy-back deleter (existsid to procblock)
4955649893 {
4955749894 // copy mutable arguments back from call to existsid
49558- label = 4137LLU; // continue to roll stack
49895+ label = 4176LLU; // continue to roll stack
4955949896 break;
4956049897 }
49561- case 4151LLU: // return from existsid to procblock
49898+ case 4190LLU: // return from existsid to procblock
4956249899 {
4956349900 // copy mutable arguments back from call to existsid
4956449901 // copy back results provided by call to existsid
@@ -49565,7 +49902,7 @@
4956549902 stack[base + 20] = stack[base + 30LLU];
4956649903 if(!stack[base + 20]/*isequal*/)
4956749904 {
49568- label = 4152LLU; // jump to alternative
49905+ label = 4191LLU; // jump to alternative
4956949906 break;
4957049907 }
4957149908
@@ -49572,9 +49909,9 @@
4957249909 // consequent
4957349910 fprintf(stderr, "%s", "in function ");
4957449911 // call reportid from procblock
49575- stack[base + 27LLU] = 4154LLU/*throw to this address*/;
49912+ stack[base + 27LLU] = 4193LLU/*throw to this address*/;
4957649913 stack[base + 28LLU] = base;
49577- stack[base + 29LLU] = 4155LLU;
49914+ stack[base + 29LLU] = 4194LLU;
4957849915 // arguments for call to reportid
4957949916 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
4958049917 // set stack-base & callee-address
@@ -49582,21 +49919,21 @@
4958249919 label = 18446744073709551586LLU; // reportid
4958349920 break;
4958449921 }
49585- case 4154LLU: // copy-back deleter (reportid to procblock)
49922+ case 4193LLU: // copy-back deleter (reportid to procblock)
4958649923 {
4958749924 // copy mutable arguments back from call to reportid
49588- label = 4137LLU; // continue to roll stack
49925+ label = 4176LLU; // continue to roll stack
4958949926 break;
4959049927 }
49591- case 4155LLU: // return from reportid to procblock
49928+ case 4194LLU: // return from reportid to procblock
4959249929 {
4959349930 // copy mutable arguments back from call to reportid
4959449931 fprintf(stderr, "%s", ": ");
4959549932 fprintf(stderr, "%s", "duplicate variable ");
4959649933 // call reportid from procblock
49597- stack[base + 27LLU] = 4156LLU/*throw to this address*/;
49934+ stack[base + 27LLU] = 4195LLU/*throw to this address*/;
4959849935 stack[base + 28LLU] = base;
49599- stack[base + 29LLU] = 4157LLU;
49936+ stack[base + 29LLU] = 4196LLU;
4960049937 // arguments for call to reportid
4960149938 stack[base + 30LLU] = stack[base + 16]/*content*/;
4960249939 // set stack-base & callee-address
@@ -49604,25 +49941,25 @@
4960449941 label = 18446744073709551586LLU; // reportid
4960549942 break;
4960649943 }
49607- case 4156LLU: // copy-back deleter (reportid to procblock)
49944+ case 4195LLU: // copy-back deleter (reportid to procblock)
4960849945 {
4960949946 // copy mutable arguments back from call to reportid
49610- label = 4137LLU; // continue to roll stack
49947+ label = 4176LLU; // continue to roll stack
4961149948 break;
4961249949 }
49613- case 4157LLU: // return from reportid to procblock
49950+ case 4196LLU: // return from reportid to procblock
4961449951 {
4961549952 // copy mutable arguments back from call to reportid
4961649953 fprintf(stderr, "%s", " in let\n");
4961749954 {
49618- label = 4137LLU; // throw: begin to unroll stack
49955+ label = 4176LLU; // throw: begin to unroll stack
4961949956 break;
4962049957 }
4962149958
49622- label = 4153LLU; // consequent complete
49959+ label = 4192LLU; // consequent complete
4962349960 break;
4962449961 }
49625- case 4152LLU: // alternative
49962+ case 4191LLU: // alternative
4962649963 {
4962749964 {
4962849965 struct listnode *list = (struct listnode *)Calloc(1, sizeof(struct listnode));
@@ -49637,31 +49974,31 @@
4963749974 stack[base + 24]/*letids*/ = (uint64_t)list;
4963849975 list->data = stack[base + 16]/*content*/;
4963949976 }
49640- label = 4153LLU; // alternative complete
49977+ label = 4192LLU; // alternative complete
4964149978 break;
4964249979 }
49643- case 4153LLU: // completed if-then-else
49980+ case 4192LLU: // completed if-then-else
4964449981 {
49645- label = 4159LLU; // skip deleter
49982+ label = 4198LLU; // skip deleter
4964649983 break;
4964749984 }
49648- case 4158LLU: // deleter
49985+ case 4197LLU: // deleter
4964949986 {
4965049987 // throw from procblock
4965149988 if(!stack[base + 27])
4965249989 {
49653- label = 4137LLU; // skip, variable already deleted/unscoped
49990+ label = 4176LLU; // skip, variable already deleted/unscoped
4965449991 break;
4965549992 }
49656- label = 4137LLU; // continue unrolling stack, delete next variable
49993+ label = 4176LLU; // continue unrolling stack, delete next variable
4965749994 break;
4965849995 }
49659- case 4159LLU: // skipped deleter
49996+ case 4198LLU: // skipped deleter
4966049997 {
4966149998 // call newvarraw from procblock
49662- stack[base + 28LLU] = 4160LLU/*throw to this address*/;
49999+ stack[base + 28LLU] = 4199LLU/*throw to this address*/;
4966350000 stack[base + 29LLU] = base;
49664- stack[base + 30LLU] = 4161LLU;
50001+ stack[base + 30LLU] = 4200LLU;
4966550002 // arguments for call to newvarraw
4966650003 stack[base + 32LLU] = stack[base + 26]/*type*/;
4966750004 stack[base + 33LLU] = stack[base + 16]/*content*/;
@@ -49677,16 +50014,16 @@
4967750014 label = 755LLU; // newvarraw
4967850015 break;
4967950016 }
49680- case 4160LLU: // copy-back deleter (newvarraw to procblock)
50017+ case 4199LLU: // copy-back deleter (newvarraw to procblock)
4968150018 {
4968250019 // copy mutable arguments back from call to newvarraw
4968350020 stack[base + 23]/*NEWSCOPE*/ = stack[base + 39LLU];
4968450021 stack[base + 18]/*varcount*/ = stack[base + 38LLU];
4968550022 stack[base + 12]/*fnmaxcount*/ = stack[base + 37LLU];
49686- label = 4137LLU; // continue to roll stack
50023+ label = 4176LLU; // continue to roll stack
4968750024 break;
4968850025 }
49689- case 4161LLU: // return from newvarraw to procblock
50026+ case 4200LLU: // return from newvarraw to procblock
4969050027 {
4969150028 // copy mutable arguments back from call to newvarraw
4969250029 stack[base + 23]/*NEWSCOPE*/ = stack[base + 39LLU];
@@ -49694,26 +50031,26 @@
4969450031 stack[base + 12]/*fnmaxcount*/ = stack[base + 37LLU];
4969550032 // copy back results provided by call to newvarraw
4969650033 stack[base + 27] = stack[base + 31LLU];
49697- label = 4163LLU; // skip deleter
50034+ label = 4202LLU; // skip deleter
4969850035 break;
4969950036 }
49700- case 4162LLU: // deleter
50037+ case 4201LLU: // deleter
4970150038 {
4970250039 // throw from procblock
4970350040 if(!stack[base + 28])
4970450041 {
49705- label = 4158LLU; // skip, variable already deleted/unscoped
50042+ label = 4197LLU; // skip, variable already deleted/unscoped
4970650043 break;
4970750044 }
49708- label = 4158LLU; // continue unrolling stack, delete next variable
50045+ label = 4197LLU; // continue unrolling stack, delete next variable
4970950046 break;
4971050047 }
49711- case 4163LLU: // skipped deleter
50048+ case 4202LLU: // skipped deleter
4971250049 {
4971350050 // call getdeladdr from procblock
49714- stack[base + 29LLU] = 4164LLU/*throw to this address*/;
50051+ stack[base + 29LLU] = 4203LLU/*throw to this address*/;
4971550052 stack[base + 30LLU] = base;
49716- stack[base + 31LLU] = 4165LLU;
50053+ stack[base + 31LLU] = 4204LLU;
4971750054 // arguments for call to getdeladdr
4971850055 stack[base + 33LLU] = stack[base + 23]/*NEWSCOPE*/;
4971950056 // set stack-base & callee-address
@@ -49721,37 +50058,37 @@
4972150058 label = 592LLU; // getdeladdr
4972250059 break;
4972350060 }
49724- case 4164LLU: // copy-back deleter (getdeladdr to procblock)
50061+ case 4203LLU: // copy-back deleter (getdeladdr to procblock)
4972550062 {
4972650063 // copy mutable arguments back from call to getdeladdr
49727- label = 4158LLU; // continue to roll stack
50064+ label = 4197LLU; // continue to roll stack
4972850065 break;
4972950066 }
49730- case 4165LLU: // return from getdeladdr to procblock
50067+ case 4204LLU: // return from getdeladdr to procblock
4973150068 {
4973250069 // copy mutable arguments back from call to getdeladdr
4973350070 // copy back results provided by call to getdeladdr
4973450071 stack[base + 28] = stack[base + 32LLU];
49735- label = 4167LLU; // skip deleter
50072+ label = 4206LLU; // skip deleter
4973650073 break;
4973750074 }
49738- case 4166LLU: // deleter
50075+ case 4205LLU: // deleter
4973950076 {
4974050077 // throw from procblock
4974150078 if(!stack[base + 29])
4974250079 {
49743- label = 4162LLU; // skip, variable already deleted/unscoped
50080+ label = 4201LLU; // skip, variable already deleted/unscoped
4974450081 break;
4974550082 }
49746- label = 4162LLU; // continue unrolling stack, delete next variable
50083+ label = 4201LLU; // continue unrolling stack, delete next variable
4974750084 break;
4974850085 }
49749- case 4167LLU: // skipped deleter
50086+ case 4206LLU: // skipped deleter
4975050087 {
4975150088 // call emitdelete from procblock
49752- stack[base + 30LLU] = 4168LLU/*throw to this address*/;
50089+ stack[base + 30LLU] = 4207LLU/*throw to this address*/;
4975350090 stack[base + 31LLU] = base;
49754- stack[base + 32LLU] = 4169LLU;
50091+ stack[base + 32LLU] = 4208LLU;
4975550092 // arguments for call to emitdelete
4975650093 stack[base + 34LLU] = stack[base + 8]/*fnid*/;
4975750094 stack[base + 35LLU] = stack[base + 26]/*type*/;
@@ -49765,14 +50102,14 @@
4976550102 label = 2402LLU; // emitdelete
4976650103 break;
4976750104 }
49768- case 4168LLU: // copy-back deleter (emitdelete to procblock)
50105+ case 4207LLU: // copy-back deleter (emitdelete to procblock)
4976950106 {
4977050107 // copy mutable arguments back from call to emitdelete
4977150108 stack[base + 17]/*label*/ = stack[base + 40LLU];
49772- label = 4162LLU; // continue to roll stack
50109+ label = 4201LLU; // continue to roll stack
4977350110 break;
4977450111 }
49775- case 4169LLU: // return from emitdelete to procblock
50112+ case 4208LLU: // return from emitdelete to procblock
4977650113 {
4977750114 // copy mutable arguments back from call to emitdelete
4977850115 stack[base + 17]/*label*/ = stack[base + 40LLU];
@@ -49779,9 +50116,9 @@
4977950116 // copy back results provided by call to emitdelete
4978050117 stack[base + 29] = stack[base + 33LLU];
4978150118 // call linkthrow from procblock
49782- stack[base + 30LLU] = 4170LLU/*throw to this address*/;
50119+ stack[base + 30LLU] = 4209LLU/*throw to this address*/;
4978350120 stack[base + 31LLU] = base;
49784- stack[base + 32LLU] = 4171LLU;
50121+ stack[base + 32LLU] = 4210LLU;
4978550122 // arguments for call to linkthrow
4978650123 stack[base + 33LLU] = stack[base + 23]/*NEWSCOPE*/;
4978750124 stack[base + 34LLU] = stack[base + 29]/*labelfail*/;
@@ -49790,26 +50127,26 @@
4979050127 label = 1693LLU; // linkthrow
4979150128 break;
4979250129 }
49793- case 4170LLU: // copy-back deleter (linkthrow to procblock)
50130+ case 4209LLU: // copy-back deleter (linkthrow to procblock)
4979450131 {
4979550132 // copy mutable arguments back from call to linkthrow
4979650133 stack[base + 23]/*NEWSCOPE*/ = stack[base + 33LLU];
49797- label = 4166LLU; // continue to roll stack
50134+ label = 4205LLU; // continue to roll stack
4979850135 break;
4979950136 }
49800- case 4171LLU: // return from linkthrow to procblock
50137+ case 4210LLU: // return from linkthrow to procblock
4980150138 {
4980250139 // copy mutable arguments back from call to linkthrow
4980350140 stack[base + 23]/*NEWSCOPE*/ = stack[base + 33LLU];
49804- label = 4173LLU; // skip deleter
50141+ label = 4212LLU; // skip deleter
4980550142 break;
4980650143 }
49807- case 4172LLU: // deleter
50144+ case 4211LLU: // deleter
4980850145 {
4980950146 // throw from procblock
4981050147 if(!stack[base + 28])
4981150148 {
49812- label = 4158LLU; // skip, variable already deleted/unscoped
50149+ label = 4197LLU; // skip, variable already deleted/unscoped
4981350150 break;
4981450151 }
4981550152
@@ -49818,7 +50155,7 @@
4981850155 newstack[0] = (uint64_t)stack; // backup stack location
4981950156 newstack[1] = 1234567890;
4982050157 newstack[2] = base;
49821- newstack[3] = 4174LLU;
50158+ newstack[3] = 4213LLU;
4982250159 stack = newstack;
4982350160 // set stack-base & callee-address
4982450161 base = 4/*deloffset*/;
@@ -49825,21 +50162,21 @@
4982550162 label = 395LLU; // ~typeidx
4982650163 break;
4982750164 }
49828- case 4174LLU: // return from ~typeidx to procblock
50165+ case 4213LLU: // return from ~typeidx to procblock
4982950166 {
4983050167 stack = (uint64_t *)stack[0];
4983150168 // releasing toplevel container
4983250169 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 28] - sizeof(uint64_t) * 4));
4983350170
49834- label = 4158LLU; // continue unrolling stack, delete next variable
50171+ label = 4197LLU; // continue unrolling stack, delete next variable
4983550172 break;
4983650173 }
49837- case 4173LLU: // skipped deleter
50174+ case 4212LLU: // skipped deleter
4983850175 {
4983950176 // construct typeidx.typeidx
4984050177 if(!(stack[base + 28] = construct(2)))
4984150178 {
49842- label = 4158LLU; // throw: begin to unroll stack
50179+ label = 4197LLU; // throw: begin to unroll stack
4984350180 break;
4984450181 }
4984550182
@@ -49861,9 +50198,9 @@
4986150198 MOVE(&list->data, &stack[base + 28]/*typeidx*/);
4986250199 }
4986350200 // call skipwscmnt from procblock
49864- stack[base + 29LLU] = 4175LLU/*throw to this address*/;
50201+ stack[base + 29LLU] = 4214LLU/*throw to this address*/;
4986550202 stack[base + 30LLU] = base;
49866- stack[base + 31LLU] = 4176LLU;
50203+ stack[base + 31LLU] = 4215LLU;
4986750204 // arguments for call to skipwscmnt
4986850205 stack[base + 33LLU] = stack[base + 19]/*lookahead*/;
4986950206 // set stack-base & callee-address
@@ -49871,37 +50208,37 @@
4987150208 label = 18446744073709551580LLU; // skipwscmnt
4987250209 break;
4987350210 }
49874- case 4175LLU: // copy-back deleter (skipwscmnt to procblock)
50211+ case 4214LLU: // copy-back deleter (skipwscmnt to procblock)
4987550212 {
4987650213 // copy mutable arguments back from call to skipwscmnt
49877- label = 4172LLU; // continue to roll stack
50214+ label = 4211LLU; // continue to roll stack
4987850215 break;
4987950216 }
49880- case 4176LLU: // return from skipwscmnt to procblock
50217+ case 4215LLU: // return from skipwscmnt to procblock
4988150218 {
4988250219 // copy mutable arguments back from call to skipwscmnt
4988350220 // copy back results provided by call to skipwscmnt
4988450221 stack[base + 19] = stack[base + 32LLU];
49885- label = 4178LLU; // skip deleter
50222+ label = 4217LLU; // skip deleter
4988650223 break;
4988750224 }
49888- case 4177LLU: // deleter
50225+ case 4216LLU: // deleter
4988950226 {
4989050227 // throw from procblock
4989150228 if(!stack[base + 29])
4989250229 {
49893- label = 4172LLU; // skip, variable already deleted/unscoped
50230+ label = 4211LLU; // skip, variable already deleted/unscoped
4989450231 break;
4989550232 }
49896- label = 4172LLU; // continue unrolling stack, delete next variable
50233+ label = 4211LLU; // continue unrolling stack, delete next variable
4989750234 break;
4989850235 }
49899- case 4178LLU: // skipped deleter
50236+ case 4217LLU: // skipped deleter
4990050237 {
4990150238 // call neq from procblock
49902- stack[base + 30LLU] = 4179LLU/*throw to this address*/;
50239+ stack[base + 30LLU] = 4218LLU/*throw to this address*/;
4990350240 stack[base + 31LLU] = base;
49904- stack[base + 32LLU] = 4180LLU;
50241+ stack[base + 32LLU] = 4219LLU;
4990550242 // arguments for call to neq
4990650243 stack[base + 34LLU] = stack[base + 19]/*lookahead*/;
4990750244 stack[base + 35LLU] = 41LLU;
@@ -49910,13 +50247,13 @@
4991050247 label = 18446744073709551599LLU; // neq
4991150248 break;
4991250249 }
49913- case 4179LLU: // copy-back deleter (neq to procblock)
50250+ case 4218LLU: // copy-back deleter (neq to procblock)
4991450251 {
4991550252 // copy mutable arguments back from call to neq
49916- label = 4172LLU; // continue to roll stack
50253+ label = 4211LLU; // continue to roll stack
4991750254 break;
4991850255 }
49919- case 4180LLU: // return from neq to procblock
50256+ case 4219LLU: // return from neq to procblock
4992050257 {
4992150258 // copy mutable arguments back from call to neq
4992250259 // copy back results provided by call to neq
@@ -49923,15 +50260,15 @@
4992350260 stack[base + 29] = stack[base + 33LLU];
4992450261 if(!stack[base + 29]/*continue*/)
4992550262 {
49926- label = 4181LLU; // jump to alternative
50263+ label = 4220LLU; // jump to alternative
4992750264 break;
4992850265 }
4992950266
4993050267 // consequent
4993150268 // call MATCHPEEK from procblock
49932- stack[base + 30LLU] = 4183LLU/*throw to this address*/;
50269+ stack[base + 30LLU] = 4222LLU/*throw to this address*/;
4993350270 stack[base + 31LLU] = base;
49934- stack[base + 32LLU] = 4184LLU;
50271+ stack[base + 32LLU] = 4223LLU;
4993550272 // arguments for call to MATCHPEEK
4993650273 stack[base + 33LLU] = stack[base + 8]/*fnid*/;
4993750274 stack[base + 34LLU] = 44LLU;
@@ -49941,26 +50278,26 @@
4994150278 label = 206LLU; // MATCHPEEK
4994250279 break;
4994350280 }
49944- case 4183LLU: // copy-back deleter (MATCHPEEK to procblock)
50281+ case 4222LLU: // copy-back deleter (MATCHPEEK to procblock)
4994550282 {
4994650283 // copy mutable arguments back from call to MATCHPEEK
4994750284 stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
49948- label = 4177LLU; // continue to roll stack
50285+ label = 4216LLU; // continue to roll stack
4994950286 break;
4995050287 }
49951- case 4184LLU: // return from MATCHPEEK to procblock
50288+ case 4223LLU: // return from MATCHPEEK to procblock
4995250289 {
4995350290 // copy mutable arguments back from call to MATCHPEEK
4995450291 stack[base + 19]/*lookahead*/ = stack[base + 35LLU];
49955- label = 4182LLU; // consequent complete
50292+ label = 4221LLU; // consequent complete
4995650293 break;
4995750294 }
49958- case 4181LLU: // alternative
50295+ case 4220LLU: // alternative
4995950296 {
4996050297 // call EOSbyte from procblock
49961- stack[base + 30LLU] = 4185LLU/*throw to this address*/;
50298+ stack[base + 30LLU] = 4224LLU/*throw to this address*/;
4996250299 stack[base + 31LLU] = base;
49963- stack[base + 32LLU] = 4186LLU;
50300+ stack[base + 32LLU] = 4225LLU;
4996450301 // arguments for call to EOSbyte
4996550302 // set stack-base & callee-address
4996650303 base += 33LLU;
@@ -49967,36 +50304,36 @@
4996750304 label = 77LLU; // EOSbyte
4996850305 break;
4996950306 }
49970- case 4185LLU: // copy-back deleter (EOSbyte to procblock)
50307+ case 4224LLU: // copy-back deleter (EOSbyte to procblock)
4997150308 {
4997250309 // copy mutable arguments back from call to EOSbyte
49973- label = 4177LLU; // continue to roll stack
50310+ label = 4216LLU; // continue to roll stack
4997450311 break;
4997550312 }
49976- case 4186LLU: // return from EOSbyte to procblock
50313+ case 4225LLU: // return from EOSbyte to procblock
4997750314 {
4997850315 // copy mutable arguments back from call to EOSbyte
4997950316 // copy back results provided by call to EOSbyte
4998050317 stack[base + 19] = stack[base + 33LLU];
49981- label = 4182LLU; // alternative complete
50318+ label = 4221LLU; // alternative complete
4998250319 break;
4998350320 }
49984- case 4182LLU: // completed if-then-else
50321+ case 4221LLU: // completed if-then-else
4998550322 {
4998650323 if(stack[base + 19]/*lookahead*/ <= 0xFF) stack[base + 19]/*lookahead*/ = getchar();
49987- label = 4115LLU; // repeat
50324+ label = 4154LLU; // repeat
4998850325 break;
4998950326 }
49990- case 4116LLU: // loop finished
50327+ case 4155LLU: // loop finished
4999150328 {
49992- label = 4187LLU; // start to repeat
50329+ label = 4226LLU; // start to repeat
4999350330 break;
4999450331 }
49995- case 4187LLU: // repeat from here
50332+ case 4226LLU: // repeat from here
4999650333 {
4999750334 if(!stack[base + 24])
4999850335 {
49999- label = 4188LLU; // break loop
50336+ label = 4227LLU; // break loop
5000050337 break;
5000150338 }
5000250339
@@ -50007,20 +50344,20 @@
5000750344 stack[base + 24] = (uint64_t)list->next;
5000850345 Free(1, sizeof(struct listnode), list);
5000950346 }
50010- label = 4187LLU; // repeat
50347+ label = 4226LLU; // repeat
5001150348 break;
5001250349 }
50013- case 4188LLU: // loop finished
50350+ case 4227LLU: // loop finished
5001450351 {
5001550352 // delete list
50016- label = 4189LLU; // start to repeat
50353+ label = 4228LLU; // start to repeat
5001750354 break;
5001850355 }
50019- case 4189LLU: // repeat from here
50356+ case 4228LLU: // repeat from here
5002050357 {
5002150358 if(!stack[base + 24])
5002250359 {
50023- label = 4190LLU; // break loop
50360+ label = 4229LLU; // break loop
5002450361 break;
5002550362 }
5002650363
@@ -50030,20 +50367,20 @@
5003050367 stack[base + 24] = (uint64_t)list->next;
5003150368 Free(1, sizeof(struct listnode), list);
5003250369 }
50033- label = 4189LLU; // repeat
50370+ label = 4228LLU; // repeat
5003450371 break;
5003550372 }
50036- case 4190LLU: // loop finished
50373+ case 4229LLU: // loop finished
5003750374 {
50038- label = 4110LLU; // alternative complete
50375+ label = 4149LLU; // alternative complete
5003950376 break;
5004050377 }
50041- case 4110LLU: // completed if-then-else
50378+ case 4149LLU: // completed if-then-else
5004250379 {
5004350380 // call getbyte from procblock
50044- stack[base + 24LLU] = 4191LLU/*throw to this address*/;
50381+ stack[base + 24LLU] = 4230LLU/*throw to this address*/;
5004550382 stack[base + 25LLU] = base;
50046- stack[base + 26LLU] = 4192LLU;
50383+ stack[base + 26LLU] = 4231LLU;
5004750384 // arguments for call to getbyte
5004850385 // set stack-base & callee-address
5004950386 base += 27LLU;
@@ -50050,13 +50387,13 @@
5005050387 label = 18446744073709551593LLU; // getbyte
5005150388 break;
5005250389 }
50053- case 4191LLU: // copy-back deleter (getbyte to procblock)
50390+ case 4230LLU: // copy-back deleter (getbyte to procblock)
5005450391 {
5005550392 // copy mutable arguments back from call to getbyte
50056- label = 4100LLU; // continue to roll stack
50393+ label = 4139LLU; // continue to roll stack
5005750394 break;
5005850395 }
50059- case 4192LLU: // return from getbyte to procblock
50396+ case 4231LLU: // return from getbyte to procblock
5006050397 {
5006150398 // copy mutable arguments back from call to getbyte
5006250399 // copy back results provided by call to getbyte
@@ -50063,9 +50400,9 @@
5006350400 stack[base + 19] = stack[base + 27LLU];
5006450401 list_reverse(((struct listnode **)(&stack[base + 22]/*blkresults*/)));
5006550402 // call matchsym from procblock
50066- stack[base + 24LLU] = 4193LLU/*throw to this address*/;
50403+ stack[base + 24LLU] = 4232LLU/*throw to this address*/;
5006750404 stack[base + 25LLU] = base;
50068- stack[base + 26LLU] = 4194LLU;
50405+ stack[base + 26LLU] = 4233LLU;
5006950406 // arguments for call to matchsym
5007050407 stack[base + 27LLU] = stack[base + 8]/*fnid*/;
5007150408 stack[base + 28LLU] = 61LLU;
@@ -50075,21 +50412,21 @@
5007550412 label = 222LLU; // matchsym
5007650413 break;
5007750414 }
50078- case 4193LLU: // copy-back deleter (matchsym to procblock)
50415+ case 4232LLU: // copy-back deleter (matchsym to procblock)
5007950416 {
5008050417 // copy mutable arguments back from call to matchsym
5008150418 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
50082- label = 4100LLU; // continue to roll stack
50419+ label = 4139LLU; // continue to roll stack
5008350420 break;
5008450421 }
50085- case 4194LLU: // return from matchsym to procblock
50422+ case 4233LLU: // return from matchsym to procblock
5008650423 {
5008750424 // copy mutable arguments back from call to matchsym
5008850425 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
5008950426 // call PARSETOKEN from procblock
50090- stack[base + 24LLU] = 4195LLU/*throw to this address*/;
50427+ stack[base + 24LLU] = 4234LLU/*throw to this address*/;
5009150428 stack[base + 25LLU] = base;
50092- stack[base + 26LLU] = 4196LLU;
50429+ stack[base + 26LLU] = 4235LLU;
5009350430 // arguments for call to PARSETOKEN
5009450431 stack[base + 29LLU] = stack[base + 19]/*lookahead*/;
5009550432 // set stack-base & callee-address
@@ -50097,13 +50434,13 @@
5009750434 label = 18446744073709551584LLU; // PARSETOKEN
5009850435 break;
5009950436 }
50100- case 4195LLU: // copy-back deleter (PARSETOKEN to procblock)
50437+ case 4234LLU: // copy-back deleter (PARSETOKEN to procblock)
5010150438 {
5010250439 // copy mutable arguments back from call to PARSETOKEN
50103- label = 4100LLU; // continue to roll stack
50440+ label = 4139LLU; // continue to roll stack
5010450441 break;
5010550442 }
50106- case 4196LLU: // return from PARSETOKEN to procblock
50443+ case 4235LLU: // return from PARSETOKEN to procblock
5010750444 {
5010850445 // copy mutable arguments back from call to PARSETOKEN
5010950446 // copy back results provided by call to PARSETOKEN
@@ -50110,9 +50447,9 @@
5011050447 stack[base + 15] = stack[base + 27LLU];
5011150448 stack[base + 16] = stack[base + 28LLU];
5011250449 // call equ from procblock
50113- stack[base + 24LLU] = 4197LLU/*throw to this address*/;
50450+ stack[base + 24LLU] = 4236LLU/*throw to this address*/;
5011450451 stack[base + 25LLU] = base;
50115- stack[base + 26LLU] = 4198LLU;
50452+ stack[base + 26LLU] = 4237LLU;
5011650453 // arguments for call to equ
5011750454 stack[base + 28LLU] = stack[base + 15]/*variant*/;
5011850455 stack[base + 29LLU] = 4LLU;
@@ -50121,13 +50458,13 @@
5012150458 label = 18446744073709551600LLU; // equ
5012250459 break;
5012350460 }
50124- case 4197LLU: // copy-back deleter (equ to procblock)
50461+ case 4236LLU: // copy-back deleter (equ to procblock)
5012550462 {
5012650463 // copy mutable arguments back from call to equ
50127- label = 4100LLU; // continue to roll stack
50464+ label = 4139LLU; // continue to roll stack
5012850465 break;
5012950466 }
50130- case 4198LLU: // return from equ to procblock
50467+ case 4237LLU: // return from equ to procblock
5013150468 {
5013250469 // copy mutable arguments back from call to equ
5013350470 // copy back results provided by call to equ
@@ -50134,20 +50471,20 @@
5013450471 stack[base + 20] = stack[base + 27LLU];
5013550472 if(!stack[base + 20]/*isequal*/)
5013650473 {
50137- label = 4199LLU; // jump to alternative
50474+ label = 4238LLU; // jump to alternative
5013850475 break;
5013950476 }
5014050477
5014150478 // consequent
50142- label = 4202LLU; // skip deleter
50479+ label = 4241LLU; // skip deleter
5014350480 break;
5014450481 }
50145- case 4201LLU: // deleter
50482+ case 4240LLU: // deleter
5014650483 {
5014750484 // throw from procblock
5014850485 if(!stack[base + 24])
5014950486 {
50150- label = 4100LLU; // skip, variable already deleted/unscoped
50487+ label = 4139LLU; // skip, variable already deleted/unscoped
5015150488 break;
5015250489 }
5015350490
@@ -50156,7 +50493,7 @@
5015650493 newstack[0] = (uint64_t)stack; // backup stack location
5015750494 newstack[1] = 1234567890;
5015850495 newstack[2] = base;
50159- newstack[3] = 4203LLU;
50496+ newstack[3] = 4242LLU;
5016050497 stack = newstack;
5016150498 // set stack-base & callee-address
5016250499 base = 4/*deloffset*/;
@@ -50163,21 +50500,21 @@
5016350500 label = 1449LLU; // ~fndef
5016450501 break;
5016550502 }
50166- case 4203LLU: // return from ~fndef to procblock
50503+ case 4242LLU: // return from ~fndef to procblock
5016750504 {
5016850505 stack = (uint64_t *)stack[0];
5016950506 // releasing toplevel container
5017050507 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 24] - sizeof(uint64_t) * 4));
5017150508
50172- label = 4100LLU; // continue unrolling stack, delete next variable
50509+ label = 4139LLU; // continue unrolling stack, delete next variable
5017350510 break;
5017450511 }
50175- case 4202LLU: // skipped deleter
50512+ case 4241LLU: // skipped deleter
5017650513 {
5017750514 // call FindFn from procblock
50178- stack[base + 25LLU] = 4204LLU/*throw to this address*/;
50515+ stack[base + 25LLU] = 4243LLU/*throw to this address*/;
5017950516 stack[base + 26LLU] = base;
50180- stack[base + 27LLU] = 4205LLU;
50517+ stack[base + 27LLU] = 4244LLU;
5018150518 // arguments for call to FindFn
5018250519 stack[base + 29LLU] = stack[base + 8]/*fnid*/;
5018350520 stack[base + 30LLU] = stack[base + 0]/*fndefs*/;
@@ -50187,21 +50524,21 @@
5018750524 label = 1530LLU; // FindFn
5018850525 break;
5018950526 }
50190- case 4204LLU: // copy-back deleter (FindFn to procblock)
50527+ case 4243LLU: // copy-back deleter (FindFn to procblock)
5019150528 {
5019250529 // copy mutable arguments back from call to FindFn
50193- label = 4100LLU; // continue to roll stack
50530+ label = 4139LLU; // continue to roll stack
5019450531 break;
5019550532 }
50196- case 4205LLU: // return from FindFn to procblock
50533+ case 4244LLU: // return from FindFn to procblock
5019750534 {
5019850535 // copy mutable arguments back from call to FindFn
5019950536 // copy back results provided by call to FindFn
5020050537 stack[base + 24] = stack[base + 28LLU];
5020150538 // call matchsym from procblock
50202- stack[base + 25LLU] = 4206LLU/*throw to this address*/;
50539+ stack[base + 25LLU] = 4245LLU/*throw to this address*/;
5020350540 stack[base + 26LLU] = base;
50204- stack[base + 27LLU] = 4207LLU;
50541+ stack[base + 27LLU] = 4246LLU;
5020550542 // arguments for call to matchsym
5020650543 stack[base + 28LLU] = stack[base + 8]/*fnid*/;
5020750544 stack[base + 29LLU] = 40LLU;
@@ -50211,21 +50548,21 @@
5021150548 label = 222LLU; // matchsym
5021250549 break;
5021350550 }
50214- case 4206LLU: // copy-back deleter (matchsym to procblock)
50551+ case 4245LLU: // copy-back deleter (matchsym to procblock)
5021550552 {
5021650553 // copy mutable arguments back from call to matchsym
5021750554 stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
50218- label = 4201LLU; // continue to roll stack
50555+ label = 4240LLU; // continue to roll stack
5021950556 break;
5022050557 }
50221- case 4207LLU: // return from matchsym to procblock
50558+ case 4246LLU: // return from matchsym to procblock
5022250559 {
5022350560 // copy mutable arguments back from call to matchsym
5022450561 stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
5022550562 // call ProcCall from procblock
50226- stack[base + 25LLU] = 4208LLU/*throw to this address*/;
50563+ stack[base + 25LLU] = 4247LLU/*throw to this address*/;
5022750564 stack[base + 26LLU] = base;
50228- stack[base + 27LLU] = 4209LLU;
50565+ stack[base + 27LLU] = 4248LLU;
5022950566 // arguments for call to ProcCall
5023050567 stack[base + 28LLU] = stack[base + 22]/*blkresults*/;
5023150568 stack[base + 29LLU] = stack[base + 0]/*fndefs*/;
@@ -50250,7 +50587,7 @@
5025050587 label = 1705LLU; // ProcCall
5025150588 break;
5025250589 }
50253- case 4208LLU: // copy-back deleter (ProcCall to procblock)
50590+ case 4247LLU: // copy-back deleter (ProcCall to procblock)
5025450591 {
5025550592 // copy mutable arguments back from call to ProcCall
5025650593 stack[base + 17]/*label*/ = stack[base + 45LLU];
@@ -50259,10 +50596,10 @@
5025950596 stack[base + 19]/*lookahead*/ = stack[base + 42LLU];
5026050597 stack[base + 12]/*fnmaxcount*/ = stack[base + 40LLU];
5026150598 stack[base + 22]/*blkresults*/ = stack[base + 28LLU];
50262- label = 4201LLU; // continue to roll stack
50599+ label = 4240LLU; // continue to roll stack
5026350600 break;
5026450601 }
50265- case 4209LLU: // return from ProcCall to procblock
50602+ case 4248LLU: // return from ProcCall to procblock
5026650603 {
5026750604 // copy mutable arguments back from call to ProcCall
5026850605 stack[base + 17]/*label*/ = stack[base + 45LLU];
@@ -50272,9 +50609,9 @@
5027250609 stack[base + 12]/*fnmaxcount*/ = stack[base + 40LLU];
5027350610 stack[base + 22]/*blkresults*/ = stack[base + 28LLU];
5027450611 // call matchsym from procblock
50275- stack[base + 25LLU] = 4210LLU/*throw to this address*/;
50612+ stack[base + 25LLU] = 4249LLU/*throw to this address*/;
5027650613 stack[base + 26LLU] = base;
50277- stack[base + 27LLU] = 4211LLU;
50614+ stack[base + 27LLU] = 4250LLU;
5027850615 // arguments for call to matchsym
5027950616 stack[base + 28LLU] = stack[base + 8]/*fnid*/;
5028050617 stack[base + 29LLU] = 41LLU;
@@ -50284,14 +50621,14 @@
5028450621 label = 222LLU; // matchsym
5028550622 break;
5028650623 }
50287- case 4210LLU: // copy-back deleter (matchsym to procblock)
50624+ case 4249LLU: // copy-back deleter (matchsym to procblock)
5028850625 {
5028950626 // copy mutable arguments back from call to matchsym
5029050627 stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
50291- label = 4201LLU; // continue to roll stack
50628+ label = 4240LLU; // continue to roll stack
5029250629 break;
5029350630 }
50294- case 4211LLU: // return from matchsym to procblock
50631+ case 4250LLU: // return from matchsym to procblock
5029550632 {
5029650633 // copy mutable arguments back from call to matchsym
5029750634 stack[base + 19]/*lookahead*/ = stack[base + 30LLU];
@@ -50301,7 +50638,7 @@
5030150638 newstack[0] = (uint64_t)stack; // backup stack location
5030250639 newstack[1] = 1234567890;
5030350640 newstack[2] = base;
50304- newstack[3] = 4212LLU;
50641+ newstack[3] = 4251LLU;
5030550642 stack = newstack;
5030650643 // set stack-base & callee-address
5030750644 base = 4/*deloffset*/;
@@ -50308,21 +50645,21 @@
5030850645 label = 1449LLU; // ~fndef
5030950646 break;
5031050647 }
50311- case 4212LLU: // return from ~fndef to procblock
50648+ case 4251LLU: // return from ~fndef to procblock
5031250649 {
5031350650 stack = (uint64_t *)stack[0];
5031450651 // releasing toplevel container
5031550652 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 24] - sizeof(uint64_t) * 4));
5031650653
50317- label = 4200LLU; // consequent complete
50654+ label = 4239LLU; // consequent complete
5031850655 break;
5031950656 }
50320- case 4199LLU: // alternative
50657+ case 4238LLU: // alternative
5032150658 {
5032250659 // call issimple from procblock
50323- stack[base + 24LLU] = 4213LLU/*throw to this address*/;
50660+ stack[base + 24LLU] = 4252LLU/*throw to this address*/;
5032450661 stack[base + 25LLU] = base;
50325- stack[base + 26LLU] = 4214LLU;
50662+ stack[base + 26LLU] = 4253LLU;
5032650663 // arguments for call to issimple
5032750664 stack[base + 28LLU] = stack[base + 15]/*variant*/;
5032850665 stack[base + 29LLU] = stack[base + 16]/*content*/;
@@ -50332,13 +50669,13 @@
5033250669 label = 166LLU; // issimple
5033350670 break;
5033450671 }
50335- case 4213LLU: // copy-back deleter (issimple to procblock)
50672+ case 4252LLU: // copy-back deleter (issimple to procblock)
5033650673 {
5033750674 // copy mutable arguments back from call to issimple
50338- label = 4100LLU; // continue to roll stack
50675+ label = 4139LLU; // continue to roll stack
5033950676 break;
5034050677 }
50341- case 4214LLU: // return from issimple to procblock
50678+ case 4253LLU: // return from issimple to procblock
5034250679 {
5034350680 // copy mutable arguments back from call to issimple
5034450681 // copy back results provided by call to issimple
@@ -50345,7 +50682,7 @@
5034550682 stack[base + 20] = stack[base + 27LLU];
5034650683 if(!stack[base + 20]/*isequal*/)
5034750684 {
50348- label = 4215LLU; // jump to alternative
50685+ label = 4254LLU; // jump to alternative
5034950686 break;
5035050687 }
5035150688
@@ -50353,7 +50690,7 @@
5035350690 uint64_t *newstack = (uint64_t *)Calloc(160LLU + 1, sizeof(uint64_t));
5035450691 if(!newstack)
5035550692 {
50356- label = 4100LLU; // throw: begin to unroll stack
50693+ label = 4139LLU; // throw: begin to unroll stack
5035750694 break;
5035850695 }
5035950696
@@ -50360,9 +50697,9 @@
5036050697 newstack[160LLU] = 9876543210LLU; // overflow-marker
5036150698 // call procblock from procblock
5036250699 newstack[0] = (uint64_t)stack; // backup stack location
50363- newstack[1] = 4217LLU;
50700+ newstack[1] = 4256LLU;
5036450701 newstack[2] = base;
50365- newstack[3] = 4218LLU;
50702+ newstack[3] = 4257LLU;
5036650703 // arguments for call to procblock
5036750704 newstack[4LLU] = stack[base + 0]/*fndefs*/;
5036850705 newstack[5LLU] = stack[base + 1]/*typedefs*/;
@@ -50388,7 +50725,7 @@
5038850725 label = 3319LLU; // procblock
5038950726 break;
5039050727 }
50391- case 4217LLU: // copy-back deleter (procblock to procblock)
50728+ case 4256LLU: // copy-back deleter (procblock to procblock)
5039250729 {
5039350730 uint64_t *oldstack = (uint64_t *)stack[0];
5039450731 // copy mutable arguments back from call to procblock
@@ -50405,10 +50742,10 @@
5040550742 }
5040650743 Free(160LLU + 1, sizeof(uint64_t), stack);
5040750744 stack = oldstack;
50408- label = 4100LLU; // continue to unroll stack
50745+ label = 4139LLU; // continue to unroll stack
5040950746 break;
5041050747 }
50411- case 4218LLU: // return from procblock to procblock
50748+ case 4257LLU: // return from procblock to procblock
5041250749 {
5041350750 uint64_t *oldstack = (uint64_t *)stack[0];
5041450751 // copy mutable arguments back from call to procblock
@@ -50425,15 +50762,15 @@
5042550762 }
5042650763 Free(160LLU + 1, sizeof(uint64_t), stack);
5042750764 stack = oldstack;
50428- label = 4216LLU; // consequent complete
50765+ label = 4255LLU; // consequent complete
5042950766 break;
5043050767 }
50431- case 4215LLU: // alternative
50768+ case 4254LLU: // alternative
5043250769 {
5043350770 // call issimple from procblock
50434- stack[base + 24LLU] = 4219LLU/*throw to this address*/;
50771+ stack[base + 24LLU] = 4258LLU/*throw to this address*/;
5043550772 stack[base + 25LLU] = base;
50436- stack[base + 26LLU] = 4220LLU;
50773+ stack[base + 26LLU] = 4259LLU;
5043750774 // arguments for call to issimple
5043850775 stack[base + 28LLU] = stack[base + 15]/*variant*/;
5043950776 stack[base + 29LLU] = stack[base + 16]/*content*/;
@@ -50443,13 +50780,13 @@
5044350780 label = 166LLU; // issimple
5044450781 break;
5044550782 }
50446- case 4219LLU: // copy-back deleter (issimple to procblock)
50783+ case 4258LLU: // copy-back deleter (issimple to procblock)
5044750784 {
5044850785 // copy mutable arguments back from call to issimple
50449- label = 4100LLU; // continue to roll stack
50786+ label = 4139LLU; // continue to roll stack
5045050787 break;
5045150788 }
50452- case 4220LLU: // return from issimple to procblock
50789+ case 4259LLU: // return from issimple to procblock
5045350790 {
5045450791 // copy mutable arguments back from call to issimple
5045550792 // copy back results provided by call to issimple
@@ -50456,15 +50793,15 @@
5045650793 stack[base + 20] = stack[base + 27LLU];
5045750794 if(!stack[base + 20]/*isequal*/)
5045850795 {
50459- label = 4221LLU; // jump to alternative
50796+ label = 4260LLU; // jump to alternative
5046050797 break;
5046150798 }
5046250799
5046350800 // consequent
5046450801 // call getbyte from procblock
50465- stack[base + 24LLU] = 4223LLU/*throw to this address*/;
50802+ stack[base + 24LLU] = 4262LLU/*throw to this address*/;
5046650803 stack[base + 25LLU] = base;
50467- stack[base + 26LLU] = 4224LLU;
50804+ stack[base + 26LLU] = 4263LLU;
5046850805 // arguments for call to getbyte
5046950806 // set stack-base & callee-address
5047050807 base += 27LLU;
@@ -50471,21 +50808,21 @@
5047150808 label = 18446744073709551593LLU; // getbyte
5047250809 break;
5047350810 }
50474- case 4223LLU: // copy-back deleter (getbyte to procblock)
50811+ case 4262LLU: // copy-back deleter (getbyte to procblock)
5047550812 {
5047650813 // copy mutable arguments back from call to getbyte
50477- label = 4100LLU; // continue to roll stack
50814+ label = 4139LLU; // continue to roll stack
5047850815 break;
5047950816 }
50480- case 4224LLU: // return from getbyte to procblock
50817+ case 4263LLU: // return from getbyte to procblock
5048150818 {
5048250819 // copy mutable arguments back from call to getbyte
5048350820 // copy back results provided by call to getbyte
5048450821 stack[base + 19] = stack[base + 27LLU];
5048550822 // call PROCRETURN from procblock
50486- stack[base + 24LLU] = 4225LLU/*throw to this address*/;
50823+ stack[base + 24LLU] = 4264LLU/*throw to this address*/;
5048750824 stack[base + 25LLU] = base;
50488- stack[base + 26LLU] = 4226LLU;
50825+ stack[base + 26LLU] = 4265LLU;
5048950826 // arguments for call to PROCRETURN
5049050827 stack[base + 27LLU] = stack[base + 0]/*fndefs*/;
5049150828 stack[base + 28LLU] = stack[base + 1]/*typedefs*/;
@@ -50510,7 +50847,7 @@
5051050847 label = 2829LLU; // PROCRETURN
5051150848 break;
5051250849 }
50513- case 4225LLU: // copy-back deleter (PROCRETURN to procblock)
50850+ case 4264LLU: // copy-back deleter (PROCRETURN to procblock)
5051450851 {
5051550852 // copy mutable arguments back from call to PROCRETURN
5051650853 stack[base + 17]/*label*/ = stack[base + 44LLU];
@@ -50519,10 +50856,10 @@
5051950856 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
5052050857 stack[base + 12]/*fnmaxcount*/ = stack[base + 40LLU];
5052150858 stack[base + 3]/*scope*/ = stack[base + 30LLU];
50522- label = 4100LLU; // continue to roll stack
50859+ label = 4139LLU; // continue to roll stack
5052350860 break;
5052450861 }
50525- case 4226LLU: // return from PROCRETURN to procblock
50862+ case 4265LLU: // return from PROCRETURN to procblock
5052650863 {
5052750864 // copy mutable arguments back from call to PROCRETURN
5052850865 stack[base + 17]/*label*/ = stack[base + 44LLU];
@@ -50531,16 +50868,16 @@
5053150868 stack[base + 19]/*lookahead*/ = stack[base + 41LLU];
5053250869 stack[base + 12]/*fnmaxcount*/ = stack[base + 40LLU];
5053350870 stack[base + 3]/*scope*/ = stack[base + 30LLU];
50534- label = 4222LLU; // consequent complete
50871+ label = 4261LLU; // consequent complete
5053550872 break;
5053650873 }
50537- case 4221LLU: // alternative
50874+ case 4260LLU: // alternative
5053850875 {
5053950876 fprintf(stderr, "%s", "parsing function call expected identifier but found ");
5054050877 // call reporttok from procblock
50541- stack[base + 24LLU] = 4227LLU/*throw to this address*/;
50878+ stack[base + 24LLU] = 4266LLU/*throw to this address*/;
5054250879 stack[base + 25LLU] = base;
50543- stack[base + 26LLU] = 4228LLU;
50880+ stack[base + 26LLU] = 4267LLU;
5054450881 // arguments for call to reporttok
5054550882 stack[base + 27LLU] = stack[base + 15]/*variant*/;
5054650883 stack[base + 28LLU] = stack[base + 16]/*content*/;
@@ -50549,38 +50886,38 @@
5054950886 label = 18446744073709551582LLU; // reporttok
5055050887 break;
5055150888 }
50552- case 4227LLU: // copy-back deleter (reporttok to procblock)
50889+ case 4266LLU: // copy-back deleter (reporttok to procblock)
5055350890 {
5055450891 // copy mutable arguments back from call to reporttok
50555- label = 4100LLU; // continue to roll stack
50892+ label = 4139LLU; // continue to roll stack
5055650893 break;
5055750894 }
50558- case 4228LLU: // return from reporttok to procblock
50895+ case 4267LLU: // return from reporttok to procblock
5055950896 {
5056050897 // copy mutable arguments back from call to reporttok
5056150898 {
50562- label = 4100LLU; // throw: begin to unroll stack
50899+ label = 4139LLU; // throw: begin to unroll stack
5056350900 break;
5056450901 }
5056550902
50566- label = 4222LLU; // alternative complete
50903+ label = 4261LLU; // alternative complete
5056750904 break;
5056850905 }
50569- case 4222LLU: // completed if-then-else
50906+ case 4261LLU: // completed if-then-else
5057050907 {
50571- label = 4216LLU; // alternative complete
50908+ label = 4255LLU; // alternative complete
5057250909 break;
5057350910 }
50574- case 4216LLU: // completed if-then-else
50911+ case 4255LLU: // completed if-then-else
5057550912 {
50576- label = 4200LLU; // alternative complete
50913+ label = 4239LLU; // alternative complete
5057750914 break;
5057850915 }
50579- case 4200LLU: // completed if-then-else
50916+ case 4239LLU: // completed if-then-else
5058050917 {
5058150918 if(/*scope*/0 != ((uint64_t *)(stack[base + 23]/*NEWSCOPE*/))[0])
5058250919 {
50583- label = 4230LLU; // jump to alternative
50920+ label = 4269LLU; // jump to alternative
5058450921 break;
5058550922 }
5058650923
@@ -50588,14 +50925,14 @@
5058850925 /*LETDEFS*/stack[base + 25] = ((uint64_t **)(stack[base + 23]/*NEWSCOPE*/))[1][1]/*letdefs*/;
5058950926
5059050927 // case
50591- label = 4232LLU; // start to repeat
50928+ label = 4271LLU; // start to repeat
5059250929 break;
5059350930 }
50594- case 4232LLU: // repeat from here
50931+ case 4271LLU: // repeat from here
5059550932 {
5059650933 if(!stack[base + 25])
5059750934 {
50598- label = 4233LLU; // break loop
50935+ label = 4272LLU; // break loop
5059950936 break;
5060050937 }
5060150938
@@ -50608,7 +50945,7 @@
5060850945 }
5060950946 if(/*scope*/0 != ((uint64_t *)(stack[base + 3]/*scope*/))[0])
5061050947 {
50611- label = 4235LLU; // jump to alternative
50948+ label = 4274LLU; // jump to alternative
5061250949 break;
5061350950 }
5061450951
@@ -50617,15 +50954,15 @@
5061750954
5061850955 // case
5061950956 stack[base + 27]/*deleteaddr*/ = stack[base + 24]/*DELETEADDR*/;
50620- label = 4238LLU; // skip deleter
50957+ label = 4277LLU; // skip deleter
5062150958 break;
5062250959 }
50623- case 4237LLU: // deleter
50960+ case 4276LLU: // deleter
5062450961 {
5062550962 // throw from procblock
5062650963 if(!stack[base + 29])
5062750964 {
50628- label = 4236LLU; // skip, variable already deleted/unscoped
50965+ label = 4275LLU; // skip, variable already deleted/unscoped
5062950966 break;
5063050967 }
5063150968
@@ -50634,7 +50971,7 @@
5063450971 newstack[0] = (uint64_t)stack; // backup stack location
5063550972 newstack[1] = 1234567890;
5063650973 newstack[2] = base;
50637- newstack[3] = 4239LLU;
50974+ newstack[3] = 4278LLU;
5063850975 stack = newstack;
5063950976 // set stack-base & callee-address
5064050977 base = 4/*deloffset*/;
@@ -50641,21 +50978,21 @@
5064150978 label = 482LLU; // ~letdef
5064250979 break;
5064350980 }
50644- case 4239LLU: // return from ~letdef to procblock
50981+ case 4278LLU: // return from ~letdef to procblock
5064550982 {
5064650983 stack = (uint64_t *)stack[0];
5064750984 // releasing toplevel container
5064850985 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 29] - sizeof(uint64_t) * 4));
5064950986
50650- label = 4236LLU; // continue unrolling stack, delete next variable
50987+ label = 4275LLU; // continue unrolling stack, delete next variable
5065150988 break;
5065250989 }
50653- case 4238LLU: // skipped deleter
50990+ case 4277LLU: // skipped deleter
5065450991 {
5065550992 // call mkletdummy from procblock
50656- stack[base + 30LLU] = 4240LLU/*throw to this address*/;
50993+ stack[base + 30LLU] = 4279LLU/*throw to this address*/;
5065750994 stack[base + 31LLU] = base;
50658- stack[base + 32LLU] = 4241LLU;
50995+ stack[base + 32LLU] = 4280LLU;
5065950996 // arguments for call to mkletdummy
5066050997 // set stack-base & callee-address
5066150998 base += 33LLU;
@@ -50662,13 +50999,13 @@
5066250999 label = 485LLU; // mkletdummy
5066351000 break;
5066451001 }
50665- case 4240LLU: // copy-back deleter (mkletdummy to procblock)
51002+ case 4279LLU: // copy-back deleter (mkletdummy to procblock)
5066651003 {
5066751004 // copy mutable arguments back from call to mkletdummy
50668- label = 4236LLU; // continue to roll stack
51005+ label = 4275LLU; // continue to roll stack
5066951006 break;
5067051007 }
50671- case 4241LLU: // return from mkletdummy to procblock
51008+ case 4280LLU: // return from mkletdummy to procblock
5067251009 {
5067351010 // copy mutable arguments back from call to mkletdummy
5067451011 // copy back results provided by call to mkletdummy
@@ -50689,22 +51026,22 @@
5068951026 }
5069051027 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 28];
5069151028 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 27];
50692- label = 4234LLU; // case complete
51029+ label = 4273LLU; // case complete
5069351030 break;
5069451031 }
50695- case 4236LLU: // copy-back deleter (switch)
51032+ case 4275LLU: // copy-back deleter (switch)
5069651033 {
5069751034 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 28];
5069851035 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 27];
50699- label = 4231LLU; // continue to unroll stack
51036+ label = 4270LLU; // continue to unroll stack
5070051037 break;
5070151038 }
50702- case 4235LLU: // try next case
51039+ case 4274LLU: // try next case
5070351040 {
5070451041 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
5070551042 exit(-1);
5070651043 }
50707- case 4234LLU: // completed switch
51044+ case 4273LLU: // completed switch
5070851045 {
5070951046
5071051047 uint64_t *newstack = (uint64_t *)(stack[base + 26] - sizeof(uint64_t) * 4);
@@ -50712,7 +51049,7 @@
5071251049 newstack[0] = (uint64_t)stack; // backup stack location
5071351050 newstack[1] = 1234567890;
5071451051 newstack[2] = base;
50715- newstack[3] = 4242LLU;
51052+ newstack[3] = 4281LLU;
5071651053 stack = newstack;
5071751054 // set stack-base & callee-address
5071851055 base = 4/*deloffset*/;
@@ -50719,35 +51056,35 @@
5071951056 label = 482LLU; // ~letdef
5072051057 break;
5072151058 }
50722- case 4242LLU: // return from ~letdef to procblock
51059+ case 4281LLU: // return from ~letdef to procblock
5072351060 {
5072451061 stack = (uint64_t *)stack[0];
5072551062 // releasing toplevel container
5072651063 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 26] - sizeof(uint64_t) * 4));
5072751064
50728- label = 4232LLU; // repeat
51065+ label = 4271LLU; // repeat
5072951066 break;
5073051067 }
50731- case 4233LLU: // loop finished
51068+ case 4272LLU: // loop finished
5073251069 {
5073351070 ((uint64_t **)(stack[base + 23]))[1][1] = stack[base + 25];
5073451071 ((uint64_t **)(stack[base + 23]))[1][0] = stack[base + 24];
50735- label = 4229LLU; // case complete
51072+ label = 4268LLU; // case complete
5073651073 break;
5073751074 }
50738- case 4231LLU: // copy-back deleter (switch)
51075+ case 4270LLU: // copy-back deleter (switch)
5073951076 {
5074051077 ((uint64_t **)(stack[base + 23]))[1][1] = stack[base + 25];
5074151078 ((uint64_t **)(stack[base + 23]))[1][0] = stack[base + 24];
50742- label = 4100LLU; // continue to unroll stack
51079+ label = 4139LLU; // continue to unroll stack
5074351080 break;
5074451081 }
50745- case 4230LLU: // try next case
51082+ case 4269LLU: // try next case
5074651083 {
5074751084 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
5074851085 exit(-1);
5074951086 }
50750- case 4229LLU: // completed switch
51087+ case 4268LLU: // completed switch
5075151088 {
5075251089
5075351090 uint64_t *newstack = (uint64_t *)(stack[base + 23] - sizeof(uint64_t) * 4);
@@ -50755,7 +51092,7 @@
5075551092 newstack[0] = (uint64_t)stack; // backup stack location
5075651093 newstack[1] = 1234567890;
5075751094 newstack[2] = base;
50758- newstack[3] = 4243LLU;
51095+ newstack[3] = 4282LLU;
5075951096 stack = newstack;
5076051097 // set stack-base & callee-address
5076151098 base = 4/*deloffset*/;
@@ -50762,7 +51099,7 @@
5076251099 label = 558LLU; // ~scope
5076351100 break;
5076451101 }
50765- case 4243LLU: // return from ~scope to procblock
51102+ case 4282LLU: // return from ~scope to procblock
5076651103 {
5076751104 stack = (uint64_t *)stack[0];
5076851105 // releasing toplevel container
@@ -50769,14 +51106,14 @@
5076951106 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 23] - sizeof(uint64_t) * 4));
5077051107
5077151108 // delete list
50772- label = 4244LLU; // start to repeat
51109+ label = 4283LLU; // start to repeat
5077351110 break;
5077451111 }
50775- case 4244LLU: // repeat from here
51112+ case 4283LLU: // repeat from here
5077651113 {
5077751114 if(!stack[base + 22])
5077851115 {
50779- label = 4245LLU; // break loop
51116+ label = 4284LLU; // break loop
5078051117 break;
5078151118 }
5078251119
@@ -50787,7 +51124,7 @@
5078751124 newstack[0] = (uint64_t)stack; // backup stack location
5078851125 newstack[1] = 1234567890;
5078951126 newstack[2] = base;
50790- newstack[3] = 4246LLU;
51127+ newstack[3] = 4285LLU;
5079151128 stack = newstack;
5079251129 // set stack-base & callee-address
5079351130 base = 4/*deloffset*/;
@@ -50794,7 +51131,7 @@
5079451131 label = 395LLU; // ~typeidx
5079551132 break;
5079651133 }
50797- case 4246LLU: // return from ~typeidx to procblock
51134+ case 4285LLU: // return from ~typeidx to procblock
5079851135 {
5079951136 stack = (uint64_t *)stack[0];
5080051137 // releasing toplevel container
@@ -50805,20 +51142,20 @@
5080551142 stack[base + 22] = (uint64_t)list->next;
5080651143 Free(1, sizeof(struct listnode), list);
5080751144 }
50808- label = 4244LLU; // repeat
51145+ label = 4283LLU; // repeat
5080951146 break;
5081051147 }
50811- case 4245LLU: // loop finished
51148+ case 4284LLU: // loop finished
5081251149 {
50813- label = 4094LLU; // consequent complete
51150+ label = 4133LLU; // consequent complete
5081451151 break;
5081551152 }
50816- case 4093LLU: // alternative
51153+ case 4132LLU: // alternative
5081751154 {
5081851155 // call equ from procblock
50819- stack[base + 22LLU] = 4247LLU/*throw to this address*/;
51156+ stack[base + 22LLU] = 4286LLU/*throw to this address*/;
5082051157 stack[base + 23LLU] = base;
50821- stack[base + 24LLU] = 4248LLU;
51158+ stack[base + 24LLU] = 4287LLU;
5082251159 // arguments for call to equ
5082351160 stack[base + 26LLU] = stack[base + 15]/*variant*/;
5082451161 stack[base + 27LLU] = 4LLU;
@@ -50827,21 +51164,21 @@
5082751164 label = 18446744073709551600LLU; // equ
5082851165 break;
5082951166 }
50830- case 4247LLU: // copy-back deleter (equ to procblock)
51167+ case 4286LLU: // copy-back deleter (equ to procblock)
5083151168 {
5083251169 // copy mutable arguments back from call to equ
5083351170 label = 3386LLU; // continue to roll stack
5083451171 break;
5083551172 }
50836- case 4248LLU: // return from equ to procblock
51173+ case 4287LLU: // return from equ to procblock
5083751174 {
5083851175 // copy mutable arguments back from call to equ
5083951176 // copy back results provided by call to equ
5084051177 stack[base + 20] = stack[base + 25LLU];
50841- label = 4250LLU; // skip deleter
51178+ label = 4289LLU; // skip deleter
5084251179 break;
5084351180 }
50844- case 4249LLU: // deleter
51181+ case 4288LLU: // deleter
5084551182 {
5084651183 // throw from procblock
5084751184 if(!stack[base + 22])
@@ -50852,19 +51189,19 @@
5085251189 label = 3386LLU; // continue unrolling stack, delete next variable
5085351190 break;
5085451191 }
50855- case 4250LLU: // skipped deleter
51192+ case 4289LLU: // skipped deleter
5085651193 {
5085751194 if(!stack[base + 20]/*isequal*/)
5085851195 {
50859- label = 4251LLU; // jump to alternative
51196+ label = 4290LLU; // jump to alternative
5086051197 break;
5086151198 }
5086251199
5086351200 // consequent
5086451201 // call equ from procblock
50865- stack[base + 23LLU] = 4253LLU/*throw to this address*/;
51202+ stack[base + 23LLU] = 4292LLU/*throw to this address*/;
5086651203 stack[base + 24LLU] = base;
50867- stack[base + 25LLU] = 4254LLU;
51204+ stack[base + 25LLU] = 4293LLU;
5086851205 // arguments for call to equ
5086951206 stack[base + 27LLU] = stack[base + 16]/*content*/;
5087051207 stack[base + 28LLU] = 734293447447412736LLU;
@@ -50873,13 +51210,13 @@
5087351210 label = 18446744073709551600LLU; // equ
5087451211 break;
5087551212 }
50876- case 4253LLU: // copy-back deleter (equ to procblock)
51213+ case 4292LLU: // copy-back deleter (equ to procblock)
5087751214 {
5087851215 // copy mutable arguments back from call to equ
5087951216 label = 3386LLU; // continue to roll stack
5088051217 break;
5088151218 }
50882- case 4254LLU: // return from equ to procblock
51219+ case 4293LLU: // return from equ to procblock
5088351220 {
5088451221 // copy mutable arguments back from call to equ
5088551222 // copy back results provided by call to equ
@@ -50886,15 +51223,15 @@
5088651223 stack[base + 20] = stack[base + 26LLU];
5088751224 if(!stack[base + 20]/*isequal*/)
5088851225 {
50889- label = 4255LLU; // jump to alternative
51226+ label = 4294LLU; // jump to alternative
5089051227 break;
5089151228 }
5089251229
5089351230 // consequent
5089451231 // call ParseToken from procblock
50895- stack[base + 23LLU] = 4257LLU/*throw to this address*/;
51232+ stack[base + 23LLU] = 4296LLU/*throw to this address*/;
5089651233 stack[base + 24LLU] = base;
50897- stack[base + 25LLU] = 4258LLU;
51234+ stack[base + 25LLU] = 4297LLU;
5089851235 // arguments for call to ParseToken
5089951236 stack[base + 28LLU] = stack[base + 19]/*lookahead*/;
5090051237 // set stack-base & callee-address
@@ -50902,7 +51239,7 @@
5090251239 label = 3LLU; // ParseToken
5090351240 break;
5090451241 }
50905- case 4257LLU: // copy-back deleter (ParseToken to procblock)
51242+ case 4296LLU: // copy-back deleter (ParseToken to procblock)
5090651243 {
5090751244 // copy mutable arguments back from call to ParseToken
5090851245 stack[base + 19]/*lookahead*/ = stack[base + 28LLU];
@@ -50909,7 +51246,7 @@
5090951246 label = 3386LLU; // continue to roll stack
5091051247 break;
5091151248 }
50912- case 4258LLU: // return from ParseToken to procblock
51249+ case 4297LLU: // return from ParseToken to procblock
5091351250 {
5091451251 // copy mutable arguments back from call to ParseToken
5091551252 stack[base + 19]/*lookahead*/ = stack[base + 28LLU];
@@ -50916,10 +51253,10 @@
5091651253 // copy back results provided by call to ParseToken
5091751254 stack[base + 15] = stack[base + 26LLU];
5091851255 stack[base + 16] = stack[base + 27LLU];
50919- label = 4260LLU; // skip deleter
51256+ label = 4299LLU; // skip deleter
5092051257 break;
5092151258 }
50922- case 4259LLU: // deleter
51259+ case 4298LLU: // deleter
5092351260 {
5092451261 // throw from procblock
5092551262 if(!stack[base + 22])
@@ -50930,18 +51267,18 @@
5093051267 label = 3386LLU; // continue unrolling stack, delete next variable
5093151268 break;
5093251269 }
50933- case 4260LLU: // skipped deleter
51270+ case 4299LLU: // skipped deleter
5093451271 {
5093551272 stack[base + 22] = 1;
50936- label = 4256LLU; // consequent complete
51273+ label = 4295LLU; // consequent complete
5093751274 break;
5093851275 }
50939- case 4255LLU: // alternative
51276+ case 4294LLU: // alternative
5094051277 {
50941- label = 4262LLU; // skip deleter
51278+ label = 4301LLU; // skip deleter
5094251279 break;
5094351280 }
50944- case 4261LLU: // deleter
51281+ case 4300LLU: // deleter
5094551282 {
5094651283 // throw from procblock
5094751284 if(!stack[base + 22])
@@ -50952,23 +51289,23 @@
5095251289 label = 3386LLU; // continue unrolling stack, delete next variable
5095351290 break;
5095451291 }
50955- case 4262LLU: // skipped deleter
51292+ case 4301LLU: // skipped deleter
5095651293 {
5095751294 stack[base + 22] = 0;
50958- label = 4256LLU; // alternative complete
51295+ label = 4295LLU; // alternative complete
5095951296 break;
5096051297 }
50961- case 4256LLU: // completed if-then-else
51298+ case 4295LLU: // completed if-then-else
5096251299 {
50963- label = 4252LLU; // consequent complete
51300+ label = 4291LLU; // consequent complete
5096451301 break;
5096551302 }
50966- case 4251LLU: // alternative
51303+ case 4290LLU: // alternative
5096751304 {
50968- label = 4264LLU; // skip deleter
51305+ label = 4303LLU; // skip deleter
5096951306 break;
5097051307 }
50971- case 4263LLU: // deleter
51308+ case 4302LLU: // deleter
5097251309 {
5097351310 // throw from procblock
5097451311 if(!stack[base + 22])
@@ -50979,23 +51316,23 @@
5097951316 label = 3386LLU; // continue unrolling stack, delete next variable
5098051317 break;
5098151318 }
50982- case 4264LLU: // skipped deleter
51319+ case 4303LLU: // skipped deleter
5098351320 {
5098451321 stack[base + 22] = 0;
50985- label = 4252LLU; // alternative complete
51322+ label = 4291LLU; // alternative complete
5098651323 break;
5098751324 }
50988- case 4252LLU: // completed if-then-else
51325+ case 4291LLU: // completed if-then-else
5098951326 {
50990- label = 4266LLU; // skip deleter
51327+ label = 4305LLU; // skip deleter
5099151328 break;
5099251329 }
50993- case 4265LLU: // deleter
51330+ case 4304LLU: // deleter
5099451331 {
5099551332 // throw from procblock
5099651333 if(!stack[base + 23])
5099751334 {
50998- label = 4249LLU; // skip, variable already deleted/unscoped
51335+ label = 4288LLU; // skip, variable already deleted/unscoped
5099951336 break;
5100051337 }
5100151338
@@ -51004,7 +51341,7 @@
5100451341 newstack[0] = (uint64_t)stack; // backup stack location
5100551342 newstack[1] = 1234567890;
5100651343 newstack[2] = base;
51007- newstack[3] = 4267LLU;
51344+ newstack[3] = 4306LLU;
5100851345 stack = newstack;
5100951346 // set stack-base & callee-address
5101051347 base = 4/*deloffset*/;
@@ -51011,21 +51348,21 @@
5101151348 label = 306LLU; // ~type
5101251349 break;
5101351350 }
51014- case 4267LLU: // return from ~type to procblock
51351+ case 4306LLU: // return from ~type to procblock
5101551352 {
5101651353 stack = (uint64_t *)stack[0];
5101751354 // releasing toplevel container
5101851355 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 23] - sizeof(uint64_t) * 4));
5101951356
51020- label = 4249LLU; // continue unrolling stack, delete next variable
51357+ label = 4288LLU; // continue unrolling stack, delete next variable
5102151358 break;
5102251359 }
51023- case 4266LLU: // skipped deleter
51360+ case 4305LLU: // skipped deleter
5102451361 {
5102551362 // call PARSETYPE from procblock
51026- stack[base + 24LLU] = 4268LLU/*throw to this address*/;
51363+ stack[base + 24LLU] = 4307LLU/*throw to this address*/;
5102751364 stack[base + 25LLU] = base;
51028- stack[base + 26LLU] = 4269LLU;
51365+ stack[base + 26LLU] = 4308LLU;
5102951366 // arguments for call to PARSETYPE
5103051367 stack[base + 28LLU] = stack[base + 8]/*fnid*/;
5103151368 stack[base + 29LLU] = stack[base + 15]/*variant*/;
@@ -51036,16 +51373,16 @@
5103651373 label = 932LLU; // PARSETYPE
5103751374 break;
5103851375 }
51039- case 4268LLU: // copy-back deleter (PARSETYPE to procblock)
51376+ case 4307LLU: // copy-back deleter (PARSETYPE to procblock)
5104051377 {
5104151378 // copy mutable arguments back from call to PARSETYPE
5104251379 stack[base + 19]/*lookahead*/ = stack[base + 31LLU];
5104351380 stack[base + 16]/*content*/ = stack[base + 30LLU];
5104451381 stack[base + 15]/*variant*/ = stack[base + 29LLU];
51045- label = 4249LLU; // continue to roll stack
51382+ label = 4288LLU; // continue to roll stack
5104651383 break;
5104751384 }
51048- case 4269LLU: // return from PARSETYPE to procblock
51385+ case 4308LLU: // return from PARSETYPE to procblock
5104951386 {
5105051387 // copy mutable arguments back from call to PARSETYPE
5105151388 stack[base + 19]/*lookahead*/ = stack[base + 31LLU];
@@ -51054,9 +51391,9 @@
5105451391 // copy back results provided by call to PARSETYPE
5105551392 stack[base + 23] = stack[base + 27LLU];
5105651393 // call ParseToken from procblock
51057- stack[base + 24LLU] = 4270LLU/*throw to this address*/;
51394+ stack[base + 24LLU] = 4309LLU/*throw to this address*/;
5105851395 stack[base + 25LLU] = base;
51059- stack[base + 26LLU] = 4271LLU;
51396+ stack[base + 26LLU] = 4310LLU;
5106051397 // arguments for call to ParseToken
5106151398 stack[base + 29LLU] = stack[base + 19]/*lookahead*/;
5106251399 // set stack-base & callee-address
@@ -51064,14 +51401,14 @@
5106451401 label = 3LLU; // ParseToken
5106551402 break;
5106651403 }
51067- case 4270LLU: // copy-back deleter (ParseToken to procblock)
51404+ case 4309LLU: // copy-back deleter (ParseToken to procblock)
5106851405 {
5106951406 // copy mutable arguments back from call to ParseToken
5107051407 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
51071- label = 4265LLU; // continue to roll stack
51408+ label = 4304LLU; // continue to roll stack
5107251409 break;
5107351410 }
51074- case 4271LLU: // return from ParseToken to procblock
51411+ case 4310LLU: // return from ParseToken to procblock
5107551412 {
5107651413 // copy mutable arguments back from call to ParseToken
5107751414 stack[base + 19]/*lookahead*/ = stack[base + 29LLU];
@@ -51079,9 +51416,9 @@
5107951416 stack[base + 15] = stack[base + 27LLU];
5108051417 stack[base + 16] = stack[base + 28LLU];
5108151418 // call equ from procblock
51082- stack[base + 24LLU] = 4272LLU/*throw to this address*/;
51419+ stack[base + 24LLU] = 4311LLU/*throw to this address*/;
5108351420 stack[base + 25LLU] = base;
51084- stack[base + 26LLU] = 4273LLU;
51421+ stack[base + 26LLU] = 4312LLU;
5108551422 // arguments for call to equ
5108651423 stack[base + 28LLU] = stack[base + 15]/*variant*/;
5108751424 stack[base + 29LLU] = 4LLU;
@@ -51090,13 +51427,13 @@
5109051427 label = 18446744073709551600LLU; // equ
5109151428 break;
5109251429 }
51093- case 4272LLU: // copy-back deleter (equ to procblock)
51430+ case 4311LLU: // copy-back deleter (equ to procblock)
5109451431 {
5109551432 // copy mutable arguments back from call to equ
51096- label = 4265LLU; // continue to roll stack
51433+ label = 4304LLU; // continue to roll stack
5109751434 break;
5109851435 }
51099- case 4273LLU: // return from equ to procblock
51436+ case 4312LLU: // return from equ to procblock
5110051437 {
5110151438 // copy mutable arguments back from call to equ
5110251439 // copy back results provided by call to equ
@@ -51103,21 +51440,21 @@
5110351440 stack[base + 20] = stack[base + 27LLU];
5110451441 if(!stack[base + 20]/*isequal*/)
5110551442 {
51106- label = 4274LLU; // jump to alternative
51443+ label = 4313LLU; // jump to alternative
5110751444 break;
5110851445 }
5110951446
5111051447 // consequent
51111- label = 4275LLU; // consequent complete
51448+ label = 4314LLU; // consequent complete
5111251449 break;
5111351450 }
51114- case 4274LLU: // alternative
51451+ case 4313LLU: // alternative
5111551452 {
5111651453 fprintf(stderr, "%s", "let expects identifier but found ");
5111751454 // call reporttok from procblock
51118- stack[base + 24LLU] = 4276LLU/*throw to this address*/;
51455+ stack[base + 24LLU] = 4315LLU/*throw to this address*/;
5111951456 stack[base + 25LLU] = base;
51120- stack[base + 26LLU] = 4277LLU;
51457+ stack[base + 26LLU] = 4316LLU;
5112151458 // arguments for call to reporttok
5112251459 stack[base + 27LLU] = stack[base + 15]/*variant*/;
5112351460 stack[base + 28LLU] = stack[base + 16]/*content*/;
@@ -51126,51 +51463,51 @@
5112651463 label = 18446744073709551582LLU; // reporttok
5112751464 break;
5112851465 }
51129- case 4276LLU: // copy-back deleter (reporttok to procblock)
51466+ case 4315LLU: // copy-back deleter (reporttok to procblock)
5113051467 {
5113151468 // copy mutable arguments back from call to reporttok
51132- label = 4265LLU; // continue to roll stack
51469+ label = 4304LLU; // continue to roll stack
5113351470 break;
5113451471 }
51135- case 4277LLU: // return from reporttok to procblock
51472+ case 4316LLU: // return from reporttok to procblock
5113651473 {
5113751474 // copy mutable arguments back from call to reporttok
5113851475 {
51139- label = 4265LLU; // throw: begin to unroll stack
51476+ label = 4304LLU; // throw: begin to unroll stack
5114051477 break;
5114151478 }
5114251479
51143- label = 4275LLU; // alternative complete
51480+ label = 4314LLU; // alternative complete
5114451481 break;
5114551482 }
51146- case 4275LLU: // completed if-then-else
51483+ case 4314LLU: // completed if-then-else
5114751484 {
51148- label = 4279LLU; // skip deleter
51485+ label = 4318LLU; // skip deleter
5114951486 break;
5115051487 }
51151- case 4278LLU: // deleter
51488+ case 4317LLU: // deleter
5115251489 {
5115351490 // throw from procblock
5115451491 if(!stack[base + 24])
5115551492 {
51156- label = 4265LLU; // skip, variable already deleted/unscoped
51493+ label = 4304LLU; // skip, variable already deleted/unscoped
5115751494 break;
5115851495 }
51159- label = 4265LLU; // continue unrolling stack, delete next variable
51496+ label = 4304LLU; // continue unrolling stack, delete next variable
5116051497 break;
5116151498 }
51162- case 4279LLU: // skipped deleter
51499+ case 4318LLU: // skipped deleter
5116351500 {
5116451501 stack[base + 24] = stack[base + 16]/*content*/;
51165- label = 4281LLU; // skip deleter
51502+ label = 4320LLU; // skip deleter
5116651503 break;
5116751504 }
51168- case 4280LLU: // deleter
51505+ case 4319LLU: // deleter
5116951506 {
5117051507 // throw from procblock
5117151508 if(!stack[base + 25])
5117251509 {
51173- label = 4278LLU; // skip, variable already deleted/unscoped
51510+ label = 4317LLU; // skip, variable already deleted/unscoped
5117451511 break;
5117551512 }
5117651513
@@ -51179,7 +51516,7 @@
5117951516 newstack[0] = (uint64_t)stack; // backup stack location
5118051517 newstack[1] = 1234567890;
5118151518 newstack[2] = base;
51182- newstack[3] = 4282LLU;
51519+ newstack[3] = 4321LLU;
5118351520 stack = newstack;
5118451521 // set stack-base & callee-address
5118551522 base = 4/*deloffset*/;
@@ -51186,21 +51523,21 @@
5118651523 label = 558LLU; // ~scope
5118751524 break;
5118851525 }
51189- case 4282LLU: // return from ~scope to procblock
51526+ case 4321LLU: // return from ~scope to procblock
5119051527 {
5119151528 stack = (uint64_t *)stack[0];
5119251529 // releasing toplevel container
5119351530 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 25] - sizeof(uint64_t) * 4));
5119451531
51195- label = 4278LLU; // continue unrolling stack, delete next variable
51532+ label = 4317LLU; // continue unrolling stack, delete next variable
5119651533 break;
5119751534 }
51198- case 4281LLU: // skipped deleter
51535+ case 4320LLU: // skipped deleter
5119951536 {
5120051537 // call emptyscope from procblock
51201- stack[base + 26LLU] = 4283LLU/*throw to this address*/;
51538+ stack[base + 26LLU] = 4322LLU/*throw to this address*/;
5120251539 stack[base + 27LLU] = base;
51203- stack[base + 28LLU] = 4284LLU;
51540+ stack[base + 28LLU] = 4323LLU;
5120451541 // arguments for call to emptyscope
5120551542 // set stack-base & callee-address
5120651543 base += 29LLU;
@@ -51207,37 +51544,37 @@
5120751544 label = 563LLU; // emptyscope
5120851545 break;
5120951546 }
51210- case 4283LLU: // copy-back deleter (emptyscope to procblock)
51547+ case 4322LLU: // copy-back deleter (emptyscope to procblock)
5121151548 {
5121251549 // copy mutable arguments back from call to emptyscope
51213- label = 4278LLU; // continue to roll stack
51550+ label = 4317LLU; // continue to roll stack
5121451551 break;
5121551552 }
51216- case 4284LLU: // return from emptyscope to procblock
51553+ case 4323LLU: // return from emptyscope to procblock
5121751554 {
5121851555 // copy mutable arguments back from call to emptyscope
5121951556 // copy back results provided by call to emptyscope
5122051557 stack[base + 25] = stack[base + 29LLU];
51221- label = 4286LLU; // skip deleter
51558+ label = 4325LLU; // skip deleter
5122251559 break;
5122351560 }
51224- case 4285LLU: // deleter
51561+ case 4324LLU: // deleter
5122551562 {
5122651563 // throw from procblock
5122751564 if(!stack[base + 26])
5122851565 {
51229- label = 4280LLU; // skip, variable already deleted/unscoped
51566+ label = 4319LLU; // skip, variable already deleted/unscoped
5123051567 break;
5123151568 }
51232- label = 4280LLU; // continue unrolling stack, delete next variable
51569+ label = 4319LLU; // continue unrolling stack, delete next variable
5123351570 break;
5123451571 }
51235- case 4286LLU: // skipped deleter
51572+ case 4325LLU: // skipped deleter
5123651573 {
5123751574 // call newvarraw from procblock
51238- stack[base + 27LLU] = 4287LLU/*throw to this address*/;
51575+ stack[base + 27LLU] = 4326LLU/*throw to this address*/;
5123951576 stack[base + 28LLU] = base;
51240- stack[base + 29LLU] = 4288LLU;
51577+ stack[base + 29LLU] = 4327LLU;
5124151578 // arguments for call to newvarraw
5124251579 stack[base + 31LLU] = stack[base + 23]/*type*/;
5124351580 stack[base + 32LLU] = stack[base + 24]/*id*/;
@@ -51253,16 +51590,16 @@
5125351590 label = 755LLU; // newvarraw
5125451591 break;
5125551592 }
51256- case 4287LLU: // copy-back deleter (newvarraw to procblock)
51593+ case 4326LLU: // copy-back deleter (newvarraw to procblock)
5125751594 {
5125851595 // copy mutable arguments back from call to newvarraw
5125951596 stack[base + 25]/*NEWSCOPE*/ = stack[base + 38LLU];
5126051597 stack[base + 18]/*varcount*/ = stack[base + 37LLU];
5126151598 stack[base + 12]/*fnmaxcount*/ = stack[base + 36LLU];
51262- label = 4280LLU; // continue to roll stack
51599+ label = 4319LLU; // continue to roll stack
5126351600 break;
5126451601 }
51265- case 4288LLU: // return from newvarraw to procblock
51602+ case 4327LLU: // return from newvarraw to procblock
5126651603 {
5126751604 // copy mutable arguments back from call to newvarraw
5126851605 stack[base + 25]/*NEWSCOPE*/ = stack[base + 38LLU];
@@ -51271,9 +51608,9 @@
5127151608 // copy back results provided by call to newvarraw
5127251609 stack[base + 26] = stack[base + 30LLU];
5127351610 // call matchsym from procblock
51274- stack[base + 27LLU] = 4289LLU/*throw to this address*/;
51611+ stack[base + 27LLU] = 4328LLU/*throw to this address*/;
5127551612 stack[base + 28LLU] = base;
51276- stack[base + 29LLU] = 4290LLU;
51613+ stack[base + 29LLU] = 4329LLU;
5127751614 // arguments for call to matchsym
5127851615 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
5127951616 stack[base + 31LLU] = 61LLU;
@@ -51283,21 +51620,21 @@
5128351620 label = 222LLU; // matchsym
5128451621 break;
5128551622 }
51286- case 4289LLU: // copy-back deleter (matchsym to procblock)
51623+ case 4328LLU: // copy-back deleter (matchsym to procblock)
5128751624 {
5128851625 // copy mutable arguments back from call to matchsym
5128951626 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
51290- label = 4285LLU; // continue to roll stack
51627+ label = 4324LLU; // continue to roll stack
5129151628 break;
5129251629 }
51293- case 4290LLU: // return from matchsym to procblock
51630+ case 4329LLU: // return from matchsym to procblock
5129451631 {
5129551632 // copy mutable arguments back from call to matchsym
5129651633 stack[base + 19]/*lookahead*/ = stack[base + 32LLU];
5129751634 // call initfrom from procblock
51298- stack[base + 27LLU] = 4291LLU/*throw to this address*/;
51635+ stack[base + 27LLU] = 4330LLU/*throw to this address*/;
5129951636 stack[base + 28LLU] = base;
51300- stack[base + 29LLU] = 4292LLU;
51637+ stack[base + 29LLU] = 4331LLU;
5130151638 // arguments for call to initfrom
5130251639 stack[base + 30LLU] = stack[base + 8]/*fnid*/;
5130351640 stack[base + 31LLU] = stack[base + 23]/*type*/;
@@ -51314,16 +51651,16 @@
5131451651 label = 2430LLU; // initfrom
5131551652 break;
5131651653 }
51317- case 4291LLU: // copy-back deleter (initfrom to procblock)
51654+ case 4330LLU: // copy-back deleter (initfrom to procblock)
5131851655 {
5131951656 // copy mutable arguments back from call to initfrom
5132051657 stack[base + 17]/*label*/ = stack[base + 38LLU];
5132151658 stack[base + 19]/*lookahead*/ = stack[base + 37LLU];
5132251659 stack[base + 3]/*scope*/ = stack[base + 36LLU];
51323- label = 4285LLU; // continue to roll stack
51660+ label = 4324LLU; // continue to roll stack
5132451661 break;
5132551662 }
51326- case 4292LLU: // return from initfrom to procblock
51663+ case 4331LLU: // return from initfrom to procblock
5132751664 {
5132851665 // copy mutable arguments back from call to initfrom
5132951666 stack[base + 17]/*label*/ = stack[base + 38LLU];
@@ -51331,7 +51668,7 @@
5133151668 stack[base + 3]/*scope*/ = stack[base + 36LLU];
5133251669 if(/*scope*/0 != ((uint64_t *)(stack[base + 25]/*NEWSCOPE*/))[0])
5133351670 {
51334- label = 4294LLU; // jump to alternative
51671+ label = 4333LLU; // jump to alternative
5133551672 break;
5133651673 }
5133751674
@@ -51339,14 +51676,14 @@
5133951676 /*LETDEFS*/stack[base + 28] = ((uint64_t **)(stack[base + 25]/*NEWSCOPE*/))[1][1]/*letdefs*/;
5134051677
5134151678 // case
51342- label = 4296LLU; // start to repeat
51679+ label = 4335LLU; // start to repeat
5134351680 break;
5134451681 }
51345- case 4296LLU: // repeat from here
51682+ case 4335LLU: // repeat from here
5134651683 {
5134751684 if(!stack[base + 28])
5134851685 {
51349- label = 4297LLU; // break loop
51686+ label = 4336LLU; // break loop
5135051687 break;
5135151688 }
5135251689
@@ -51359,7 +51696,7 @@
5135951696 }
5136051697 if(/*scope*/0 != ((uint64_t *)(stack[base + 3]/*scope*/))[0])
5136151698 {
51362- label = 4299LLU; // jump to alternative
51699+ label = 4338LLU; // jump to alternative
5136351700 break;
5136451701 }
5136551702
@@ -51367,15 +51704,15 @@
5136751704 /*letdefs*/stack[base + 31] = ((uint64_t **)(stack[base + 3]/*scope*/))[1][1]/*letdefs*/;
5136851705
5136951706 // case
51370- label = 4302LLU; // skip deleter
51707+ label = 4341LLU; // skip deleter
5137151708 break;
5137251709 }
51373- case 4301LLU: // deleter
51710+ case 4340LLU: // deleter
5137451711 {
5137551712 // throw from procblock
5137651713 if(!stack[base + 32])
5137751714 {
51378- label = 4300LLU; // skip, variable already deleted/unscoped
51715+ label = 4339LLU; // skip, variable already deleted/unscoped
5137951716 break;
5138051717 }
5138151718
@@ -51384,7 +51721,7 @@
5138451721 newstack[0] = (uint64_t)stack; // backup stack location
5138551722 newstack[1] = 1234567890;
5138651723 newstack[2] = base;
51387- newstack[3] = 4303LLU;
51724+ newstack[3] = 4342LLU;
5138851725 stack = newstack;
5138951726 // set stack-base & callee-address
5139051727 base = 4/*deloffset*/;
@@ -51391,21 +51728,21 @@
5139151728 label = 482LLU; // ~letdef
5139251729 break;
5139351730 }
51394- case 4303LLU: // return from ~letdef to procblock
51731+ case 4342LLU: // return from ~letdef to procblock
5139551732 {
5139651733 stack = (uint64_t *)stack[0];
5139751734 // releasing toplevel container
5139851735 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 32] - sizeof(uint64_t) * 4));
5139951736
51400- label = 4300LLU; // continue unrolling stack, delete next variable
51737+ label = 4339LLU; // continue unrolling stack, delete next variable
5140151738 break;
5140251739 }
51403- case 4302LLU: // skipped deleter
51740+ case 4341LLU: // skipped deleter
5140451741 {
5140551742 // call mkletdummy from procblock
51406- stack[base + 33LLU] = 4304LLU/*throw to this address*/;
51743+ stack[base + 33LLU] = 4343LLU/*throw to this address*/;
5140751744 stack[base + 34LLU] = base;
51408- stack[base + 35LLU] = 4305LLU;
51745+ stack[base + 35LLU] = 4344LLU;
5140951746 // arguments for call to mkletdummy
5141051747 // set stack-base & callee-address
5141151748 base += 36LLU;
@@ -51412,13 +51749,13 @@
5141251749 label = 485LLU; // mkletdummy
5141351750 break;
5141451751 }
51415- case 4304LLU: // copy-back deleter (mkletdummy to procblock)
51752+ case 4343LLU: // copy-back deleter (mkletdummy to procblock)
5141651753 {
5141751754 // copy mutable arguments back from call to mkletdummy
51418- label = 4300LLU; // continue to roll stack
51755+ label = 4339LLU; // continue to roll stack
5141951756 break;
5142051757 }
51421- case 4305LLU: // return from mkletdummy to procblock
51758+ case 4344LLU: // return from mkletdummy to procblock
5142251759 {
5142351760 // copy mutable arguments back from call to mkletdummy
5142451761 // copy back results provided by call to mkletdummy
@@ -51439,22 +51776,22 @@
5143951776 }
5144051777 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 31];
5144151778 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 30];
51442- label = 4298LLU; // case complete
51779+ label = 4337LLU; // case complete
5144351780 break;
5144451781 }
51445- case 4300LLU: // copy-back deleter (switch)
51782+ case 4339LLU: // copy-back deleter (switch)
5144651783 {
5144751784 ((uint64_t **)(stack[base + 3]))[1][1] = stack[base + 31];
5144851785 ((uint64_t **)(stack[base + 3]))[1][0] = stack[base + 30];
51449- label = 4295LLU; // continue to unroll stack
51786+ label = 4334LLU; // continue to unroll stack
5145051787 break;
5145151788 }
51452- case 4299LLU: // try next case
51789+ case 4338LLU: // try next case
5145351790 {
5145451791 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
5145551792 exit(-1);
5145651793 }
51457- case 4298LLU: // completed switch
51794+ case 4337LLU: // completed switch
5145851795 {
5145951796
5146051797 uint64_t *newstack = (uint64_t *)(stack[base + 29] - sizeof(uint64_t) * 4);
@@ -51462,7 +51799,7 @@
5146251799 newstack[0] = (uint64_t)stack; // backup stack location
5146351800 newstack[1] = 1234567890;
5146451801 newstack[2] = base;
51465- newstack[3] = 4306LLU;
51802+ newstack[3] = 4345LLU;
5146651803 stack = newstack;
5146751804 // set stack-base & callee-address
5146851805 base = 4/*deloffset*/;
@@ -51469,35 +51806,35 @@
5146951806 label = 482LLU; // ~letdef
5147051807 break;
5147151808 }
51472- case 4306LLU: // return from ~letdef to procblock
51809+ case 4345LLU: // return from ~letdef to procblock
5147351810 {
5147451811 stack = (uint64_t *)stack[0];
5147551812 // releasing toplevel container
5147651813 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 29] - sizeof(uint64_t) * 4));
5147751814
51478- label = 4296LLU; // repeat
51815+ label = 4335LLU; // repeat
5147951816 break;
5148051817 }
51481- case 4297LLU: // loop finished
51818+ case 4336LLU: // loop finished
5148251819 {
5148351820 ((uint64_t **)(stack[base + 25]))[1][1] = stack[base + 28];
5148451821 ((uint64_t **)(stack[base + 25]))[1][0] = stack[base + 27];
51485- label = 4293LLU; // case complete
51822+ label = 4332LLU; // case complete
5148651823 break;
5148751824 }
51488- case 4295LLU: // copy-back deleter (switch)
51825+ case 4334LLU: // copy-back deleter (switch)
5148951826 {
5149051827 ((uint64_t **)(stack[base + 25]))[1][1] = stack[base + 28];
5149151828 ((uint64_t **)(stack[base + 25]))[1][0] = stack[base + 27];
51492- label = 4285LLU; // continue to unroll stack
51829+ label = 4324LLU; // continue to unroll stack
5149351830 break;
5149451831 }
51495- case 4294LLU: // try next case
51832+ case 4333LLU: // try next case
5149651833 {
5149751834 fprintf(stderr, "INTERNAL ERROR: UNREACHABLE CASE\n");
5149851835 exit(-1);
5149951836 }
51500- case 4293LLU: // completed switch
51837+ case 4332LLU: // completed switch
5150151838 {
5150251839
5150351840 uint64_t *newstack = (uint64_t *)(stack[base + 25] - sizeof(uint64_t) * 4);
@@ -51505,7 +51842,7 @@
5150551842 newstack[0] = (uint64_t)stack; // backup stack location
5150651843 newstack[1] = 1234567890;
5150751844 newstack[2] = base;
51508- newstack[3] = 4307LLU;
51845+ newstack[3] = 4346LLU;
5150951846 stack = newstack;
5151051847 // set stack-base & callee-address
5151151848 base = 4/*deloffset*/;
@@ -51512,7 +51849,7 @@
5151251849 label = 558LLU; // ~scope
5151351850 break;
5151451851 }
51515- case 4307LLU: // return from ~scope to procblock
51852+ case 4346LLU: // return from ~scope to procblock
5151651853 {
5151751854 stack = (uint64_t *)stack[0];
5151851855 // releasing toplevel container
@@ -51524,7 +51861,7 @@
5152451861 newstack[0] = (uint64_t)stack; // backup stack location
5152551862 newstack[1] = 1234567890;
5152651863 newstack[2] = base;
51527- newstack[3] = 4308LLU;
51864+ newstack[3] = 4347LLU;
5152851865 stack = newstack;
5152951866 // set stack-base & callee-address
5153051867 base = 4/*deloffset*/;
@@ -51531,21 +51868,21 @@
5153151868 label = 306LLU; // ~type
5153251869 break;
5153351870 }
51534- case 4308LLU: // return from ~type to procblock
51871+ case 4347LLU: // return from ~type to procblock
5153551872 {
5153651873 stack = (uint64_t *)stack[0];
5153751874 // releasing toplevel container
5153851875 Free(2 + 4, sizeof(uint64_t), (uint64_t *)(stack[base + 23] - sizeof(uint64_t) * 4));
5153951876
51540- label = 4094LLU; // alternative complete
51877+ label = 4133LLU; // alternative complete
5154151878 break;
5154251879 }
51543- case 4094LLU: // completed if-then-else
51880+ case 4133LLU: // completed if-then-else
5154451881 {
5154551882 // call DELIMITER from procblock
51546- stack[base + 22LLU] = 4309LLU/*throw to this address*/;
51883+ stack[base + 22LLU] = 4348LLU/*throw to this address*/;
5154751884 stack[base + 23LLU] = base;
51548- stack[base + 24LLU] = 4310LLU;
51885+ stack[base + 24LLU] = 4349LLU;
5154951886 // arguments for call to DELIMITER
5155051887 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
5155151888 stack[base + 26LLU] = stack[base + 19]/*lookahead*/;
@@ -51554,7 +51891,7 @@
5155451891 label = 17LLU; // DELIMITER
5155551892 break;
5155651893 }
51557- case 4309LLU: // copy-back deleter (DELIMITER to procblock)
51894+ case 4348LLU: // copy-back deleter (DELIMITER to procblock)
5155851895 {
5155951896 // copy mutable arguments back from call to DELIMITER
5156051897 stack[base + 19]/*lookahead*/ = stack[base + 26LLU];
@@ -51561,19 +51898,19 @@
5156151898 label = 3386LLU; // continue to roll stack
5156251899 break;
5156351900 }
51564- case 4310LLU: // return from DELIMITER to procblock
51901+ case 4349LLU: // return from DELIMITER to procblock
5156551902 {
5156651903 // copy mutable arguments back from call to DELIMITER
5156751904 stack[base + 19]/*lookahead*/ = stack[base + 26LLU];
51568- label = 4088LLU; // consequent complete
51905+ label = 4127LLU; // consequent complete
5156951906 break;
5157051907 }
51571- case 4087LLU: // alternative
51908+ case 4126LLU: // alternative
5157251909 {
5157351910 // call equ from procblock
51574- stack[base + 22LLU] = 4311LLU/*throw to this address*/;
51911+ stack[base + 22LLU] = 4350LLU/*throw to this address*/;
5157551912 stack[base + 23LLU] = base;
51576- stack[base + 24LLU] = 4312LLU;
51913+ stack[base + 24LLU] = 4351LLU;
5157751914 // arguments for call to equ
5157851915 stack[base + 26LLU] = stack[base + 16]/*content*/;
5157951916 stack[base + 27LLU] = 788334650111033344LLU;
@@ -51582,13 +51919,13 @@
5158251919 label = 18446744073709551600LLU; // equ
5158351920 break;
5158451921 }
51585- case 4311LLU: // copy-back deleter (equ to procblock)
51922+ case 4350LLU: // copy-back deleter (equ to procblock)
5158651923 {
5158751924 // copy mutable arguments back from call to equ
5158851925 label = 3386LLU; // continue to roll stack
5158951926 break;
5159051927 }
51591- case 4312LLU: // return from equ to procblock
51928+ case 4351LLU: // return from equ to procblock
5159251929 {
5159351930 // copy mutable arguments back from call to equ
5159451931 // copy back results provided by call to equ
@@ -51595,15 +51932,15 @@
5159551932 stack[base + 20] = stack[base + 25LLU];
5159651933 if(!stack[base + 20]/*isequal*/)
5159751934 {
51598- label = 4313LLU; // jump to alternative
51935+ label = 4352LLU; // jump to alternative
5159951936 break;
5160051937 }
5160151938
5160251939 // consequent
5160351940 // call matchsym from procblock
51604- stack[base + 22LLU] = 4315LLU/*throw to this address*/;
51941+ stack[base + 22LLU] = 4354LLU/*throw to this address*/;
5160551942 stack[base + 23LLU] = base;
51606- stack[base + 24LLU] = 4316LLU;
51943+ stack[base + 24LLU] = 4355LLU;
5160751944 // arguments for call to matchsym
5160851945 stack[base + 25LLU] = stack[base + 8]/*fnid*/;
5160951946 stack[base + 26LLU] = 40LLU;
@@ -51613,7 +51950,7 @@
5161351950 label = 222LLU; // matchsym
5161451951 break;
5161551952 }
51616- case 4315LLU: // copy-back deleter (matchsym to procblock)
51953+ case 4354LLU: // copy-back deleter (matchsym to procblock)
5161751954 {
5161851955 // copy mutable arguments back from call to matchsym
5161951956 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -51620,14 +51957,14 @@
5162051957 label = 3386LLU; // continue to roll stack
5162151958 break;
5162251959 }
51623- case 4316LLU: // return from matchsym to procblock
51960+ case 4355LLU: // return from matchsym to procblock
5162451961 {
5162551962 // copy mutable arguments back from call to matchsym
5162651963 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
5162751964 // call ParseToken from procblock
51628- stack[base + 22LLU] = 4317LLU/*throw to this address*/;
51965+ stack[base + 22LLU] = 4356LLU/*throw to this address*/;
5162951966 stack[base + 23LLU] = base;
51630- stack[base + 24LLU] = 4318LLU;
51967+ stack[base + 24LLU] = 4357LLU;
5163151968 // arguments for call to ParseToken
5163251969 stack[base + 27LLU] = stack[base + 19]/*lookahead*/;
5163351970 // set stack-base & callee-address
@@ -51635,7 +51972,7 @@
5163551972 label = 3LLU; // ParseToken
5163651973 break;
5163751974 }
51638- case 4317LLU: // copy-back deleter (ParseToken to procblock)
51975+ case 4356LLU: // copy-back deleter (ParseToken to procblock)
5163951976 {
5164051977 // copy mutable arguments back from call to ParseToken
5164151978 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -51642,7 +51979,7 @@
5164251979 label = 3386LLU; // continue to roll stack
5164351980 break;
5164451981 }
51645- case 4318LLU: // return from ParseToken to procblock
51982+ case 4357LLU: // return from ParseToken to procblock
5164651983 {
5164751984 // copy mutable arguments back from call to ParseToken
5164851985 stack[base + 19]/*lookahead*/ = stack[base + 27LLU];
@@ -51650,9 +51987,9 @@
5165051987 stack[base + 15] = stack[base + 25LLU];
5165151988 stack[base + 16] = stack[base + 26LLU];
5165251989 // call equ from procblock
51653- stack[base + 22LLU] = 4319LLU/*throw to this address*/;
51990+ stack[base + 22LLU] = 4358LLU/*throw to this address*/;
5165451991 stack[base + 23LLU] = base;
51655- stack[base + 24LLU] = 4320LLU;
51992+ stack[base + 24LLU] = 4359LLU;
5165651993 // arguments for call to equ
5165751994 stack[base + 26LLU] = stack[base + 15]/*variant*/;
5165851995 stack[base + 27LLU] = 4LLU;
@@ -51661,13 +51998,13 @@
5166151998 label = 18446744073709551600LLU; // equ
5166251999 break;
5166352000 }
51664- case 4319LLU: // copy-back deleter (equ to procblock)
52001+ case 4358LLU: // copy-back deleter (equ to procblock)
5166552002 {
5166652003 // copy mutable arguments back from call to equ
5166752004 label = 3386LLU; // continue to roll stack
5166852005 break;
5166952006 }
51670- case 4320LLU: // return from equ to procblock
52007+ case 4359LLU: // return from equ to procblock
5167152008 {
5167252009 // copy mutable arguments back from call to equ
5167352010 // copy back results provided by call to equ
@@ -51674,15 +52011,15 @@
5167452011 stack[base

Part of diff was cut off due to size limit. Use your local client to view the full diff.

Show on old repository browser