• R/O
  • SSH
  • HTTPS

jpl: Commit


Commit MetaInfo

Revisión1075 (tree)
Tiempo2021-01-19 07:21:42
Autorjakobthomsen

Log Message

cleanup

Cambiar Resumen

Diferencia incremental

--- trunk/jpl_compiler_pragmatic/compiler.compiled.c (revision 1074)
+++ trunk/jpl_compiler_pragmatic/compiler.compiled.c (revision 1075)
@@ -1196,15 +1196,13 @@
11961196 //#define arg0 1
11971197 //#define arg1 2
11981198 stack[base + 0]/*found*/ = 0;
1199-//#define current 3
1200- stack[base + 3/*current*/] = 0; // init
1201- assign(stack[base + 1]/*ids*/, &stack[base + 4]/*ids*/);
1199+ assign(stack[base + 1]/*ids*/, &stack[base + 3]/*ids*/);
12021200 label = 13LLU; // start to repeat
12031201 break;
12041202 }
12051203 case 13LLU: // repeat from here
12061204 {
1207- if(!stack[base + 4]/*ids*/)
1205+ if(!stack[base + 3]/*ids*/)
12081206 {
12091207 label = 14LLU; // break loop
12101208 break;
@@ -1211,13 +1209,13 @@
12111209 }
12121210
12131211 // loop body
1214-//#define current 5
1215- stack[base + 5/*current*/] = 0; // init
1216- stack[base + 5]/*current*/ = (uint64_t)(((const struct listnode *)(stack[base + 4]/*ids*/))->data);
1217-//#define 6
1218- stack[base + 6/**/] = 0; // init
1219- stack[base + 6/*previous*/] = stack[base + 4]/*ids*/;
1220- stack[base + 4]/*ids*/ = (uint64_t)(((const struct listnode *)(stack[base + 4]/*ids*/))->next);
1212+//#define current 4
1213+ stack[base + 4/*current*/] = 0; // init
1214+ stack[base + 4]/*current*/ = (uint64_t)(((const struct listnode *)(stack[base + 3]/*ids*/))->data);
1215+//#define 5
1216+ stack[base + 5/**/] = 0; // init
1217+ stack[base + 5/*previous*/] = stack[base + 3]/*ids*/;
1218+ stack[base + 3]/*ids*/ = (uint64_t)(((const struct listnode *)(stack[base + 3]/*ids*/))->next);
12211219 if(!stack[base + 0]/*found*/)
12221220 {
12231221 label = 15LLU; // jump to alternative
@@ -1231,13 +1229,13 @@
12311229 case 15LLU: // alternative
12321230 {
12331231 // call equ from existsid
1234- stack[base + 7LLU] = base;
1235- stack[base + 8LLU] = 17LLU;
1232+ stack[base + 6LLU] = base;
1233+ stack[base + 7LLU] = 17LLU;
12361234 // arguments for call to equ
1237- stack[base + 10LLU] = stack[base + 5]/*current*/;
1238- stack[base + 11LLU] = stack[base + 2]/*wanted*/;
1235+ stack[base + 9LLU] = stack[base + 4]/*current*/;
1236+ stack[base + 10LLU] = stack[base + 2]/*wanted*/;
12391237 // set stack-base & callee-address
1240- base += 9LLU;
1238+ base += 8LLU;
12411239 label = 18446744073709551600LLU; // equ
12421240 break;
12431241 }
@@ -1245,13 +1243,13 @@
12451243 {
12461244 // copy mutable arguments back from call to equ
12471245 // copy back results provided by call to equ
1248- stack[base + 0] = stack[base + 9LLU];
1246+ stack[base + 0] = stack[base + 8LLU];
12491247 label = 16LLU; // alternative complete
12501248 break;
12511249 }
12521250 case 16LLU: // completed if-then-else
12531251 {
1254- ((struct listnode *)(stack[base + 6/*previous*/]))->data = stack[base + 5]/*current*/;
1252+ ((struct listnode *)(stack[base + 5/*previous*/]))->data = stack[base + 4]/*current*/;
12551253 label = 13LLU; // repeat
12561254 break;
12571255 }
@@ -2717,15 +2715,13 @@
27172715 //#define arg0 1
27182716 //#define arg1 2
27192717 stack[base + 0]/*found*/ = 0;
2720-//#define result 3
2721- stack[base + 3/*result*/] = 0; // init
2722- assign(stack[base + 1]/*results*/, &stack[base + 4]/*results*/);
2718+ assign(stack[base + 1]/*results*/, &stack[base + 3]/*results*/);
27232719 label = 131LLU; // start to repeat
27242720 break;
27252721 }
27262722 case 131LLU: // repeat from here
27272723 {
2728- if(!stack[base + 4]/*results*/)
2724+ if(!stack[base + 3]/*results*/)
27292725 {
27302726 label = 132LLU; // break loop
27312727 break;
@@ -2732,13 +2728,13 @@
27322728 }
27332729
27342730 // loop body
2735-//#define result 5
2736- stack[base + 5/*result*/] = 0; // init
2737- stack[base + 5]/*result*/ = (uint64_t)(((const struct listnode *)(stack[base + 4]/*results*/))->data);
2738-//#define 6
2739- stack[base + 6/**/] = 0; // init
2740- stack[base + 6/*previous*/] = stack[base + 4]/*results*/;
2741- stack[base + 4]/*results*/ = (uint64_t)(((const struct listnode *)(stack[base + 4]/*results*/))->next);
2731+//#define result 4
2732+ stack[base + 4/*result*/] = 0; // init
2733+ stack[base + 4]/*result*/ = (uint64_t)(((const struct listnode *)(stack[base + 3]/*results*/))->data);
2734+//#define 5
2735+ stack[base + 5/**/] = 0; // init
2736+ stack[base + 5/*previous*/] = stack[base + 3]/*results*/;
2737+ stack[base + 3]/*results*/ = (uint64_t)(((const struct listnode *)(stack[base + 3]/*results*/))->next);
27422738 if(!stack[base + 0]/*found*/)
27432739 {
27442740 label = 133LLU; // jump to alternative
@@ -2751,7 +2747,7 @@
27512747 }
27522748 case 133LLU: // alternative
27532749 {
2754- if(/*result*/0 != ((uint64_t *)(stack[base + 5]/*result*/))[0])
2750+ if(/*result*/0 != ((uint64_t *)(stack[base + 4]/*result*/))[0])
27552751 {
27562752 label = 135LLU; // jump to alternative
27572753 break;
@@ -2758,13 +2754,13 @@
27582754 }
27592755
27602756 // consequent
2761-//#define typeid 7
2762- stack[base + 7/*typeid*/] = 0; // init
2763- stack[base + 7]/*typeid*/ = ((uint64_t **)(stack[base + 5]/*result*/))[1][0];
2764-//#define mutable 8
2765- stack[base + 8/*mutable*/] = 0; // init
2766- stack[base + 8]/*mutable*/ = ((uint64_t **)(stack[base + 5]/*result*/))[1][1];
2767- if(/*typeid*/0 != ((uint64_t *)(stack[base + 7]/*typeid*/))[0])
2757+//#define typeid 6
2758+ stack[base + 6/*typeid*/] = 0; // init
2759+ stack[base + 6]/*typeid*/ = ((uint64_t **)(stack[base + 4]/*result*/))[1][0];
2760+//#define mutable 7
2761+ stack[base + 7/*mutable*/] = 0; // init
2762+ stack[base + 7]/*mutable*/ = ((uint64_t **)(stack[base + 4]/*result*/))[1][1];
2763+ if(/*typeid*/0 != ((uint64_t *)(stack[base + 6]/*typeid*/))[0])
27682764 {
27692765 label = 137LLU; // jump to alternative
27702766 break;
@@ -2771,20 +2767,20 @@
27712767 }
27722768
27732769 // consequent
2774-//#define type 9
2775- stack[base + 9/*type*/] = 0; // init
2776- stack[base + 9]/*type*/ = ((uint64_t **)(stack[base + 7]/*typeid*/))[1][0];
2777-//#define id 10
2778- stack[base + 10/*id*/] = 0; // init
2779- stack[base + 10]/*id*/ = ((uint64_t **)(stack[base + 7]/*typeid*/))[1][1];
2770+//#define type 8
2771+ stack[base + 8/*type*/] = 0; // init
2772+ stack[base + 8]/*type*/ = ((uint64_t **)(stack[base + 6]/*typeid*/))[1][0];
2773+//#define id 9
2774+ stack[base + 9/*id*/] = 0; // init
2775+ stack[base + 9]/*id*/ = ((uint64_t **)(stack[base + 6]/*typeid*/))[1][1];
27802776 // call equ from lookresult
2781- stack[base + 11LLU] = base;
2782- stack[base + 12LLU] = 139LLU;
2777+ stack[base + 10LLU] = base;
2778+ stack[base + 11LLU] = 139LLU;
27832779 // arguments for call to equ
2784- stack[base + 14LLU] = stack[base + 10]/*id*/;
2785- stack[base + 15LLU] = stack[base + 2]/*wanted*/;
2780+ stack[base + 13LLU] = stack[base + 9]/*id*/;
2781+ stack[base + 14LLU] = stack[base + 2]/*wanted*/;
27862782 // set stack-base & callee-address
2787- base += 13LLU;
2783+ base += 12LLU;
27882784 label = 18446744073709551600LLU; // equ
27892785 break;
27902786 }
@@ -2792,9 +2788,9 @@
27922788 {
27932789 // copy mutable arguments back from call to equ
27942790 // copy back results provided by call to equ
2795- stack[base + 0] = stack[base + 13LLU];
2796- ((uint64_t **)(stack[base + 7]/*typeid*/))[1][1] = stack[base + 10]/*id*/;
2797- ((uint64_t **)(stack[base + 7]/*typeid*/))[1][0] = stack[base + 9]/*type*/;
2791+ stack[base + 0] = stack[base + 12LLU];
2792+ ((uint64_t **)(stack[base + 6]/*typeid*/))[1][1] = stack[base + 9]/*id*/;
2793+ ((uint64_t **)(stack[base + 6]/*typeid*/))[1][0] = stack[base + 8]/*type*/;
27982794 label = 138LLU; // consequent complete
27992795 break;
28002796 }
@@ -2807,8 +2803,8 @@
28072803 }
28082804 case 138LLU: // completed if-then-else
28092805 {
2810- ((uint64_t **)(stack[base + 5]/*result*/))[1][1] = stack[base + 8]/*mutable*/;
2811- ((uint64_t **)(stack[base + 5]/*result*/))[1][0] = stack[base + 7]/*typeid*/;
2806+ ((uint64_t **)(stack[base + 4]/*result*/))[1][1] = stack[base + 7]/*mutable*/;
2807+ ((uint64_t **)(stack[base + 4]/*result*/))[1][0] = stack[base + 6]/*typeid*/;
28122808 label = 136LLU; // consequent complete
28132809 break;
28142810 }
@@ -2826,7 +2822,7 @@
28262822 }
28272823 case 134LLU: // completed if-then-else
28282824 {
2829- ((struct listnode *)(stack[base + 6/*previous*/]))->data = stack[base + 5]/*result*/;
2825+ ((struct listnode *)(stack[base + 5/*previous*/]))->data = stack[base + 4]/*result*/;
28302826 label = 131LLU; // repeat
28312827 break;
28322828 }
@@ -3004,15 +3000,13 @@
30043000 //#define arg0 1
30053001 //#define arg1 2
30063002 stack[base + 0]/*found*/ = 0;
3007-//#define param 3
3008- stack[base + 3/*param*/] = 0; // init
3009- assign(stack[base + 1]/*params*/, &stack[base + 4]/*params*/);
3003+ assign(stack[base + 1]/*params*/, &stack[base + 3]/*params*/);
30103004 label = 154LLU; // start to repeat
30113005 break;
30123006 }
30133007 case 154LLU: // repeat from here
30143008 {
3015- if(!stack[base + 4]/*params*/)
3009+ if(!stack[base + 3]/*params*/)
30163010 {
30173011 label = 155LLU; // break loop
30183012 break;
@@ -3019,13 +3013,13 @@
30193013 }
30203014
30213015 // loop body
3022-//#define param 5
3023- stack[base + 5/*param*/] = 0; // init
3024- stack[base + 5]/*param*/ = (uint64_t)(((const struct listnode *)(stack[base + 4]/*params*/))->data);
3025-//#define 6
3026- stack[base + 6/**/] = 0; // init
3027- stack[base + 6/*previous*/] = stack[base + 4]/*params*/;
3028- stack[base + 4]/*params*/ = (uint64_t)(((const struct listnode *)(stack[base + 4]/*params*/))->next);
3016+//#define param 4
3017+ stack[base + 4/*param*/] = 0; // init
3018+ stack[base + 4]/*param*/ = (uint64_t)(((const struct listnode *)(stack[base + 3]/*params*/))->data);
3019+//#define 5
3020+ stack[base + 5/**/] = 0; // init
3021+ stack[base + 5/*previous*/] = stack[base + 3]/*params*/;
3022+ stack[base + 3]/*params*/ = (uint64_t)(((const struct listnode *)(stack[base + 3]/*params*/))->next);
30293023 if(!stack[base + 0]/*found*/)
30303024 {
30313025 label = 156LLU; // jump to alternative
@@ -3038,7 +3032,7 @@
30383032 }
30393033 case 156LLU: // alternative
30403034 {
3041- if(/*param*/0 != ((uint64_t *)(stack[base + 5]/*param*/))[0])
3035+ if(/*param*/0 != ((uint64_t *)(stack[base + 4]/*param*/))[0])
30423036 {
30433037 label = 158LLU; // jump to alternative
30443038 break;
@@ -3045,13 +3039,13 @@
30453039 }
30463040
30473041 // consequent
3048-//#define typeid 7
3049- stack[base + 7/*typeid*/] = 0; // init
3050- stack[base + 7]/*typeid*/ = ((uint64_t **)(stack[base + 5]/*param*/))[1][0];
3051-//#define mutable 8
3052- stack[base + 8/*mutable*/] = 0; // init
3053- stack[base + 8]/*mutable*/ = ((uint64_t **)(stack[base + 5]/*param*/))[1][1];
3054- if(/*typeid*/0 != ((uint64_t *)(stack[base + 7]/*typeid*/))[0])
3042+//#define typeid 6
3043+ stack[base + 6/*typeid*/] = 0; // init
3044+ stack[base + 6]/*typeid*/ = ((uint64_t **)(stack[base + 4]/*param*/))[1][0];
3045+//#define mutable 7
3046+ stack[base + 7/*mutable*/] = 0; // init
3047+ stack[base + 7]/*mutable*/ = ((uint64_t **)(stack[base + 4]/*param*/))[1][1];
3048+ if(/*typeid*/0 != ((uint64_t *)(stack[base + 6]/*typeid*/))[0])
30553049 {
30563050 label = 160LLU; // jump to alternative
30573051 break;
@@ -3058,20 +3052,20 @@
30583052 }
30593053
30603054 // consequent
3061-//#define type 9
3062- stack[base + 9/*type*/] = 0; // init
3063- stack[base + 9]/*type*/ = ((uint64_t **)(stack[base + 7]/*typeid*/))[1][0];
3064-//#define id 10
3065- stack[base + 10/*id*/] = 0; // init
3066- stack[base + 10]/*id*/ = ((uint64_t **)(stack[base + 7]/*typeid*/))[1][1];
3055+//#define type 8
3056+ stack[base + 8/*type*/] = 0; // init
3057+ stack[base + 8]/*type*/ = ((uint64_t **)(stack[base + 6]/*typeid*/))[1][0];
3058+//#define id 9
3059+ stack[base + 9/*id*/] = 0; // init
3060+ stack[base + 9]/*id*/ = ((uint64_t **)(stack[base + 6]/*typeid*/))[1][1];
30673061 // call equ from lookparam
3068- stack[base + 11LLU] = base;
3069- stack[base + 12LLU] = 162LLU;
3062+ stack[base + 10LLU] = base;
3063+ stack[base + 11LLU] = 162LLU;
30703064 // arguments for call to equ
3071- stack[base + 14LLU] = stack[base + 10]/*id*/;
3072- stack[base + 15LLU] = stack[base + 2]/*wanted*/;
3065+ stack[base + 13LLU] = stack[base + 9]/*id*/;
3066+ stack[base + 14LLU] = stack[base + 2]/*wanted*/;
30733067 // set stack-base & callee-address
3074- base += 13LLU;
3068+ base += 12LLU;
30753069 label = 18446744073709551600LLU; // equ
30763070 break;
30773071 }
@@ -3079,9 +3073,9 @@
30793073 {
30803074 // copy mutable arguments back from call to equ
30813075 // copy back results provided by call to equ
3082- stack[base + 0] = stack[base + 13LLU];
3083- ((uint64_t **)(stack[base + 7]/*typeid*/))[1][1] = stack[base + 10]/*id*/;
3084- ((uint64_t **)(stack[base + 7]/*typeid*/))[1][0] = stack[base + 9]/*type*/;
3076+ stack[base + 0] = stack[base + 12LLU];
3077+ ((uint64_t **)(stack[base + 6]/*typeid*/))[1][1] = stack[base + 9]/*id*/;
3078+ ((uint64_t **)(stack[base + 6]/*typeid*/))[1][0] = stack[base + 8]/*type*/;
30853079 label = 161LLU; // consequent complete
30863080 break;
30873081 }
@@ -3094,8 +3088,8 @@
30943088 }
30953089 case 161LLU: // completed if-then-else
30963090 {
3097- ((uint64_t **)(stack[base + 5]/*param*/))[1][1] = stack[base + 8]/*mutable*/;
3098- ((uint64_t **)(stack[base + 5]/*param*/))[1][0] = stack[base + 7]/*typeid*/;
3091+ ((uint64_t **)(stack[base + 4]/*param*/))[1][1] = stack[base + 7]/*mutable*/;
3092+ ((uint64_t **)(stack[base + 4]/*param*/))[1][0] = stack[base + 6]/*typeid*/;
30993093 label = 159LLU; // consequent complete
31003094 break;
31013095 }
@@ -3113,7 +3107,7 @@
31133107 }
31143108 case 157LLU: // completed if-then-else
31153109 {
3116- ((struct listnode *)(stack[base + 6/*previous*/]))->data = stack[base + 5]/*param*/;
3110+ ((struct listnode *)(stack[base + 5/*previous*/]))->data = stack[base + 4]/*param*/;
31173111 label = 154LLU; // repeat
31183112 break;
31193113 }
@@ -4465,15 +4459,13 @@
44654459 //#define arg0 1
44664460 //#define arg1 2
44674461 stack[base + 0]/*found*/ = 0;
4468-//#define idnr 3
4469- stack[base + 3/*idnr*/] = 0; // init
4470- assign(stack[base + 1]/*idnrs*/, &stack[base + 4]/*idnrs*/);
4462+ assign(stack[base + 1]/*idnrs*/, &stack[base + 3]/*idnrs*/);
44714463 label = 253LLU; // start to repeat
44724464 break;
44734465 }
44744466 case 253LLU: // repeat from here
44754467 {
4476- if(!stack[base + 4]/*idnrs*/)
4468+ if(!stack[base + 3]/*idnrs*/)
44774469 {
44784470 label = 254LLU; // break loop
44794471 break;
@@ -4480,13 +4472,13 @@
44804472 }
44814473
44824474 // loop body
4483-//#define idnr 5
4484- stack[base + 5/*idnr*/] = 0; // init
4485- stack[base + 5]/*idnr*/ = (uint64_t)(((const struct listnode *)(stack[base + 4]/*idnrs*/))->data);
4486-//#define 6
4487- stack[base + 6/**/] = 0; // init
4488- stack[base + 6/*previous*/] = stack[base + 4]/*idnrs*/;
4489- stack[base + 4]/*idnrs*/ = (uint64_t)(((const struct listnode *)(stack[base + 4]/*idnrs*/))->next);
4475+//#define idnr 4
4476+ stack[base + 4/*idnr*/] = 0; // init
4477+ stack[base + 4]/*idnr*/ = (uint64_t)(((const struct listnode *)(stack[base + 3]/*idnrs*/))->data);
4478+//#define 5
4479+ stack[base + 5/**/] = 0; // init
4480+ stack[base + 5/*previous*/] = stack[base + 3]/*idnrs*/;
4481+ stack[base + 3]/*idnrs*/ = (uint64_t)(((const struct listnode *)(stack[base + 3]/*idnrs*/))->next);
44904482 if(!stack[base + 0]/*found*/)
44914483 {
44924484 label = 255LLU; // jump to alternative
@@ -4499,7 +4491,7 @@
44994491 }
45004492 case 255LLU: // alternative
45014493 {
4502- if(/*idnr*/0 != ((uint64_t *)(stack[base + 5]/*idnr*/))[0])
4494+ if(/*idnr*/0 != ((uint64_t *)(stack[base + 4]/*idnr*/))[0])
45034495 {
45044496 label = 257LLU; // jump to alternative
45054497 break;
@@ -4506,20 +4498,20 @@
45064498 }
45074499
45084500 // consequent
4509-//#define id 7
4510- stack[base + 7/*id*/] = 0; // init
4511- stack[base + 7]/*id*/ = ((uint64_t **)(stack[base + 5]/*idnr*/))[1][0];
4512-//#define nr 8
4513- stack[base + 8/*nr*/] = 0; // init
4514- stack[base + 8]/*nr*/ = ((uint64_t **)(stack[base + 5]/*idnr*/))[1][1];
4501+//#define id 6
4502+ stack[base + 6/*id*/] = 0; // init
4503+ stack[base + 6]/*id*/ = ((uint64_t **)(stack[base + 4]/*idnr*/))[1][0];
4504+//#define nr 7
4505+ stack[base + 7/*nr*/] = 0; // init
4506+ stack[base + 7]/*nr*/ = ((uint64_t **)(stack[base + 4]/*idnr*/))[1][1];
45154507 // call equ from lookidnr
4516- stack[base + 9LLU] = base;
4517- stack[base + 10LLU] = 259LLU;
4508+ stack[base + 8LLU] = base;
4509+ stack[base + 9LLU] = 259LLU;
45184510 // arguments for call to equ
4519- stack[base + 12LLU] = stack[base + 7]/*id*/;
4520- stack[base + 13LLU] = stack[base + 2]/*wanted*/;
4511+ stack[base + 11LLU] = stack[base + 6]/*id*/;
4512+ stack[base + 12LLU] = stack[base + 2]/*wanted*/;
45214513 // set stack-base & callee-address
4522- base += 11LLU;
4514+ base += 10LLU;
45234515 label = 18446744073709551600LLU; // equ
45244516 break;
45254517 }
@@ -4527,9 +4519,9 @@
45274519 {
45284520 // copy mutable arguments back from call to equ
45294521 // copy back results provided by call to equ
4530- stack[base + 0] = stack[base + 11LLU];
4531- ((uint64_t **)(stack[base + 5]/*idnr*/))[1][1] = stack[base + 8]/*nr*/;
4532- ((uint64_t **)(stack[base + 5]/*idnr*/))[1][0] = stack[base + 7]/*id*/;
4522+ stack[base + 0] = stack[base + 10LLU];
4523+ ((uint64_t **)(stack[base + 4]/*idnr*/))[1][1] = stack[base + 7]/*nr*/;
4524+ ((uint64_t **)(stack[base + 4]/*idnr*/))[1][0] = stack[base + 6]/*id*/;
45334525 label = 258LLU; // consequent complete
45344526 break;
45354527 }
@@ -4547,7 +4539,7 @@
45474539 }
45484540 case 256LLU: // completed if-then-else
45494541 {
4550- ((struct listnode *)(stack[base + 6/*previous*/]))->data = stack[base + 5]/*idnr*/;
4542+ ((struct listnode *)(stack[base + 5/*previous*/]))->data = stack[base + 4]/*idnr*/;
45514543 label = 253LLU; // repeat
45524544 break;
45534545 }
@@ -11657,15 +11649,13 @@
1165711649 //#define cerec 24
1165811650 stack[base + 24/*cerec*/] = 0; // init
1165911651 stack[base + 24]/*cerec*/ = ((uint64_t **)(stack[base + 16]/*calleedef*/))[1][5];
11660-//#define result 25
11661- stack[base + 25/*result*/] = 0; // init
11662- assign(stack[base + 20]/*cerestypes*/, &stack[base + 26]/*cerestypes*/);
11652+ assign(stack[base + 20]/*cerestypes*/, &stack[base + 25]/*cerestypes*/);
1166311653 label = 752LLU; // start to repeat
1166411654 break;
1166511655 }
1166611656 case 752LLU: // repeat from here
1166711657 {
11668- if(!stack[base + 26]/*cerestypes*/)
11658+ if(!stack[base + 25]/*cerestypes*/)
1166911659 {
1167011660 label = 753LLU; // break loop
1167111661 break;
@@ -11672,15 +11662,15 @@
1167211662 }
1167311663
1167411664 // loop body
11675-//#define result 27
11676- stack[base + 27/*result*/] = 0; // init
11677- stack[base + 27]/*result*/ = (uint64_t)(((const struct listnode *)(stack[base + 26]/*cerestypes*/))->data);
11678-//#define 28
11679- stack[base + 28/**/] = 0; // init
11680- stack[base + 28/*previous*/] = stack[base + 26]/*cerestypes*/;
11681- stack[base + 26]/*cerestypes*/ = (uint64_t)(((const struct listnode *)(stack[base + 26]/*cerestypes*/))->next);
11682-//#define RESULT 29
11683- stack[base + 29/*RESULT*/] = 0; // init
11665+//#define result 26
11666+ stack[base + 26/*result*/] = 0; // init
11667+ stack[base + 26]/*result*/ = (uint64_t)(((const struct listnode *)(stack[base + 25]/*cerestypes*/))->data);
11668+//#define 27
11669+ stack[base + 27/**/] = 0; // init
11670+ stack[base + 27/*previous*/] = stack[base + 25]/*cerestypes*/;
11671+ stack[base + 25]/*cerestypes*/ = (uint64_t)(((const struct listnode *)(stack[base + 25]/*cerestypes*/))->next);
11672+//#define RESULT 28
11673+ stack[base + 28/*RESULT*/] = 0; // init
1168411674 { // if pop
1168511675 struct listnode *list = (struct listnode *)stack[base + 17]/*results*/;
1168611676 if(!list)
@@ -11691,7 +11681,7 @@
1169111681
1169211682 // consequent
1169311683 struct listnode *next = list->next;
11694- stack[base + 29]/*RESULT*/ = list->data;
11684+ stack[base + 28]/*RESULT*/ = list->data;
1169511685 Free(1, sizeof(struct listnode), list);
1169611686 stack[base + 17]/*results*/ = (uint64_t)next;
1169711687 }
@@ -11702,12 +11692,12 @@
1170211692 {
1170311693 fprintf(stderr, "%s", "in function ");
1170411694 // call reportid from PROCCALL
11705- stack[base + 30LLU] = base;
11706- stack[base + 31LLU] = 756LLU;
11695+ stack[base + 29LLU] = base;
11696+ stack[base + 30LLU] = 756LLU;
1170711697 // arguments for call to reportid
11708- stack[base + 32LLU] = stack[base + 5]/*fnid*/;
11698+ stack[base + 31LLU] = stack[base + 5]/*fnid*/;
1170911699 // set stack-base & callee-address
11710- base += 32LLU;
11700+ base += 31LLU;
1171111701 label = 18446744073709551587LLU; // reportid
1171211702 break;
1171311703 }
@@ -11716,12 +11706,12 @@
1171611706 // copy mutable arguments back from call to reportid
1171711707 fprintf(stderr, "%s", " call to ");
1171811708 // call reportid from PROCCALL
11719- stack[base + 30LLU] = base;
11720- stack[base + 31LLU] = 757LLU;
11709+ stack[base + 29LLU] = base;
11710+ stack[base + 30LLU] = 757LLU;
1172111711 // arguments for call to reportid
11722- stack[base + 32LLU] = stack[base + 23]/*ceid*/;
11712+ stack[base + 31LLU] = stack[base + 23]/*ceid*/;
1172311713 // set stack-base & callee-address
11724- base += 32LLU;
11714+ base += 31LLU;
1172511715 label = 18446744073709551587LLU; // reportid
1172611716 break;
1172711717 }
@@ -11736,7 +11726,7 @@
1173611726 }
1173711727 case 755LLU: // completed if-then-else
1173811728 {
11739- if(/*result*/0 != ((uint64_t *)(stack[base + 27]/*result*/))[0])
11729+ if(/*result*/0 != ((uint64_t *)(stack[base + 26]/*result*/))[0])
1174011730 {
1174111731 label = 758LLU; // jump to alternative
1174211732 break;
@@ -11743,13 +11733,13 @@
1174311733 }
1174411734
1174511735 // consequent
11746-//#define typeid 30
11747- stack[base + 30/*typeid*/] = 0; // init
11748- stack[base + 30]/*typeid*/ = ((uint64_t **)(stack[base + 27]/*result*/))[1][0];
11749-//#define mutable 31
11750- stack[base + 31/*mutable*/] = 0; // init
11751- stack[base + 31]/*mutable*/ = ((uint64_t **)(stack[base + 27]/*result*/))[1][1];
11752- if(/*typeid*/0 != ((uint64_t *)(stack[base + 30]/*typeid*/))[0])
11736+//#define typeid 29
11737+ stack[base + 29/*typeid*/] = 0; // init
11738+ stack[base + 29]/*typeid*/ = ((uint64_t **)(stack[base + 26]/*result*/))[1][0];
11739+//#define mutable 30
11740+ stack[base + 30/*mutable*/] = 0; // init
11741+ stack[base + 30]/*mutable*/ = ((uint64_t **)(stack[base + 26]/*result*/))[1][1];
11742+ if(/*typeid*/0 != ((uint64_t *)(stack[base + 29]/*typeid*/))[0])
1175311743 {
1175411744 label = 760LLU; // jump to alternative
1175511745 break;
@@ -11756,13 +11746,13 @@
1175611746 }
1175711747
1175811748 // consequent
11759-//#define expected 32
11760- stack[base + 32/*expected*/] = 0; // init
11761- stack[base + 32]/*expected*/ = ((uint64_t **)(stack[base + 30]/*typeid*/))[1][0];
11762-//#define paramname 33
11763- stack[base + 33/*paramname*/] = 0; // init
11764- stack[base + 33]/*paramname*/ = ((uint64_t **)(stack[base + 30]/*typeid*/))[1][1];
11765- if(/*letdef*/0 != ((uint64_t *)(stack[base + 29]/*RESULT*/))[0])
11749+//#define expected 31
11750+ stack[base + 31/*expected*/] = 0; // init
11751+ stack[base + 31]/*expected*/ = ((uint64_t **)(stack[base + 29]/*typeid*/))[1][0];
11752+//#define paramname 32
11753+ stack[base + 32/*paramname*/] = 0; // init
11754+ stack[base + 32]/*paramname*/ = ((uint64_t **)(stack[base + 29]/*typeid*/))[1][1];
11755+ if(/*letdef*/0 != ((uint64_t *)(stack[base + 28]/*RESULT*/))[0])
1176611756 {
1176711757 label = 762LLU; // jump to alternative
1176811758 break;
@@ -11769,18 +11759,18 @@
1176911759 }
1177011760
1177111761 // consequent
11772-//#define type 34
11773- stack[base + 34/*type*/] = 0; // init
11774- stack[base + 34]/*type*/ = ((uint64_t **)(stack[base + 29]/*RESULT*/))[1][0];
11775-//#define id 35
11776- stack[base + 35/*id*/] = 0; // init
11777- stack[base + 35]/*id*/ = ((uint64_t **)(stack[base + 29]/*RESULT*/))[1][1];
11778-//#define INDEX 36
11779- stack[base + 36/*INDEX*/] = 0; // init
11780- stack[base + 36]/*INDEX*/ = ((uint64_t **)(stack[base + 29]/*RESULT*/))[1][2];
11781-//#define mutres 37
11782- stack[base + 37/*mutres*/] = 0; // init
11783- stack[base + 37]/*mutres*/ = ((uint64_t **)(stack[base + 29]/*RESULT*/))[1][3];
11762+//#define type 33
11763+ stack[base + 33/*type*/] = 0; // init
11764+ stack[base + 33]/*type*/ = ((uint64_t **)(stack[base + 28]/*RESULT*/))[1][0];
11765+//#define id 34
11766+ stack[base + 34/*id*/] = 0; // init
11767+ stack[base + 34]/*id*/ = ((uint64_t **)(stack[base + 28]/*RESULT*/))[1][1];
11768+//#define INDEX 35
11769+ stack[base + 35/*INDEX*/] = 0; // init
11770+ stack[base + 35]/*INDEX*/ = ((uint64_t **)(stack[base + 28]/*RESULT*/))[1][2];
11771+//#define mutres 36
11772+ stack[base + 36/*mutres*/] = 0; // init
11773+ stack[base + 36]/*mutres*/ = ((uint64_t **)(stack[base + 28]/*RESULT*/))[1][3];
1178411774 uint64_t *newstack = (uint64_t *)Calloc(13LLU + 1, sizeof(uint64_t));
1178511775 newstack[13LLU] = 9876543210LLU; // overflow-marker
1178611776 // call equtype from PROCCALL
@@ -11788,8 +11778,8 @@
1178811778 newstack[1] = base;
1178911779 newstack[2] = 764LLU;
1179011780 // arguments for call to equtype
11791- newstack[4LLU] = stack[base + 34]/*type*/;
11792- newstack[5LLU] = stack[base + 32]/*expected*/;
11781+ newstack[4LLU] = stack[base + 33]/*type*/;
11782+ newstack[5LLU] = stack[base + 31]/*expected*/;
1179311783 stack = newstack;
1179411784 // set stack-base & callee-address
1179511785 base = 3;
@@ -11823,12 +11813,12 @@
1182311813 {
1182411814 fprintf(stderr, "%s", "in function ");
1182511815 // call reportid from PROCCALL
11826- stack[base + 38LLU] = base;
11827- stack[base + 39LLU] = 767LLU;
11816+ stack[base + 37LLU] = base;
11817+ stack[base + 38LLU] = 767LLU;
1182811818 // arguments for call to reportid
11829- stack[base + 40LLU] = stack[base + 5]/*fnid*/;
11819+ stack[base + 39LLU] = stack[base + 5]/*fnid*/;
1183011820 // set stack-base & callee-address
11831- base += 40LLU;
11821+ base += 39LLU;
1183211822 label = 18446744073709551587LLU; // reportid
1183311823 break;
1183411824 }
@@ -11837,12 +11827,12 @@
1183711827 // copy mutable arguments back from call to reportid
1183811828 fprintf(stderr, "%s", " call to ");
1183911829 // call reportid from PROCCALL
11840- stack[base + 38LLU] = base;
11841- stack[base + 39LLU] = 768LLU;
11830+ stack[base + 37LLU] = base;
11831+ stack[base + 38LLU] = 768LLU;
1184211832 // arguments for call to reportid
11843- stack[base + 40LLU] = stack[base + 23]/*ceid*/;
11833+ stack[base + 39LLU] = stack[base + 23]/*ceid*/;
1184411834 // set stack-base & callee-address
11845- base += 40LLU;
11835+ base += 39LLU;
1184611836 label = 18446744073709551587LLU; // reportid
1184711837 break;
1184811838 }
@@ -11857,7 +11847,7 @@
1185711847 newstack[1] = base;
1185811848 newstack[2] = 769LLU;
1185911849 // arguments for call to reporttype
11860- newstack[3LLU] = stack[base + 32]/*expected*/;
11850+ newstack[3LLU] = stack[base + 31]/*expected*/;
1186111851 stack = newstack;
1186211852 // set stack-base & callee-address
1186311853 base = 3;
@@ -11883,7 +11873,7 @@
1188311873 newstack[1] = base;
1188411874 newstack[2] = 770LLU;
1188511875 // arguments for call to reporttype
11886- newstack[3LLU] = stack[base + 34]/*type*/;
11876+ newstack[3LLU] = stack[base + 33]/*type*/;
1188711877 stack = newstack;
1188811878 // set stack-base & callee-address
1188911879 base = 3;
@@ -11908,7 +11898,7 @@
1190811898 }
1190911899 case 766LLU: // completed if-then-else
1191011900 {
11911- if(!stack[base + 31]/*mutable*/)
11901+ if(!stack[base + 30]/*mutable*/)
1191211902 {
1191311903 label = 771LLU; // jump to alternative
1191411904 break;
@@ -11915,7 +11905,7 @@
1191511905 }
1191611906
1191711907 // consequent
11918- if(!stack[base + 37]/*mutres*/)
11908+ if(!stack[base + 36]/*mutres*/)
1191911909 {
1192011910 label = 773LLU; // jump to alternative
1192111911 break;
@@ -11929,12 +11919,12 @@
1192911919 {
1193011920 fprintf(stderr, "%s", "in function ");
1193111921 // call reportid from PROCCALL
11932- stack[base + 38LLU] = base;
11933- stack[base + 39LLU] = 775LLU;
11922+ stack[base + 37LLU] = base;
11923+ stack[base + 38LLU] = 775LLU;
1193411924 // arguments for call to reportid
11935- stack[base + 40LLU] = stack[base + 5]/*fnid*/;
11925+ stack[base + 39LLU] = stack[base + 5]/*fnid*/;
1193611926 // set stack-base & callee-address
11937- base += 40LLU;
11927+ base += 39LLU;
1193811928 label = 18446744073709551587LLU; // reportid
1193911929 break;
1194011930 }
@@ -11943,12 +11933,12 @@
1194311933 // copy mutable arguments back from call to reportid
1194411934 fprintf(stderr, "%s", ", call to ");
1194511935 // call reportid from PROCCALL
11946- stack[base + 38LLU] = base;
11947- stack[base + 39LLU] = 776LLU;
11936+ stack[base + 37LLU] = base;
11937+ stack[base + 38LLU] = 776LLU;
1194811938 // arguments for call to reportid
11949- stack[base + 40LLU] = stack[base + 23]/*ceid*/;
11939+ stack[base + 39LLU] = stack[base + 23]/*ceid*/;
1195011940 // set stack-base & callee-address
11951- base += 40LLU;
11941+ base += 39LLU;
1195211942 label = 18446744073709551587LLU; // reportid
1195311943 break;
1195411944 }
@@ -11963,7 +11953,7 @@
1196311953 newstack[1] = base;
1196411954 newstack[2] = 777LLU;
1196511955 // arguments for call to reporttype
11966- newstack[3LLU] = stack[base + 32]/*expected*/;
11956+ newstack[3LLU] = stack[base + 31]/*expected*/;
1196711957 stack = newstack;
1196811958 // set stack-base & callee-address
1196911959 base = 3;
@@ -11983,12 +11973,12 @@
1198311973 stack = oldstack;
1198411974 fprintf(stderr, "%s", " ");
1198511975 // call reportid from PROCCALL
11986- stack[base + 38LLU] = base;
11987- stack[base + 39LLU] = 778LLU;
11976+ stack[base + 37LLU] = base;
11977+ stack[base + 38LLU] = 778LLU;
1198811978 // arguments for call to reportid
11989- stack[base + 40LLU] = stack[base + 33]/*paramname*/;
11979+ stack[base + 39LLU] = stack[base + 32]/*paramname*/;
1199011980 // set stack-base & callee-address
11991- base += 40LLU;
11981+ base += 39LLU;
1199211982 label = 18446744073709551587LLU; // reportid
1199311983 break;
1199411984 }
@@ -12003,7 +11993,7 @@
1200311993 newstack[1] = base;
1200411994 newstack[2] = 779LLU;
1200511995 // arguments for call to reporttype
12006- newstack[3LLU] = stack[base + 34]/*type*/;
11996+ newstack[3LLU] = stack[base + 33]/*type*/;
1200711997 stack = newstack;
1200811998 // set stack-base & callee-address
1200911999 base = 3;
@@ -12023,12 +12013,12 @@
1202312013 stack = oldstack;
1202412014 fprintf(stderr, "%s", " ");
1202512015 // call reportid from PROCCALL
12026- stack[base + 38LLU] = base;
12027- stack[base + 39LLU] = 780LLU;
12016+ stack[base + 37LLU] = base;
12017+ stack[base + 38LLU] = 780LLU;
1202812018 // arguments for call to reportid
12029- stack[base + 40LLU] = stack[base + 12]/*content*/;
12019+ stack[base + 39LLU] = stack[base + 12]/*content*/;
1203012020 // set stack-base & callee-address
12031- base += 40LLU;
12021+ base += 39LLU;
1203212022 label = 18446744073709551587LLU; // reportid
1203312023 break;
1203412024 }
@@ -12056,17 +12046,17 @@
1205612046 struct listnode *list = (struct listnode *)Calloc(1, sizeof(struct listnode));
1205712047 list->next = (struct listnode *)stack[base + 14]/*verified*/;
1205812048 stack[base + 14]/*verified*/ = (uint64_t)list;
12059- list->data = stack[base + 36]/*INDEX*/;
12049+ list->data = stack[base + 35]/*INDEX*/;
1206012050 }
1206112051 {
1206212052 struct listnode *list = (struct listnode *)Calloc(1, sizeof(struct listnode));
1206312053 list->next = (struct listnode *)stack[base + 15]/*locked*/;
1206412054 stack[base + 15]/*locked*/ = (uint64_t)list;
12065- list->data = stack[base + 35]/*id*/;
12055+ list->data = stack[base + 34]/*id*/;
1206612056 }
1206712057 // releasing RESULT
12068- Free(4, sizeof(uint64_t), ((uint64_t **)stack[base + 29]/*RESULT*/)[1]);
12069- Free(2, sizeof(uint64_t), (uint64_t *)stack[base + 29]/*RESULT*/);
12058+ Free(4, sizeof(uint64_t), ((uint64_t **)stack[base + 28]/*RESULT*/)[1]);
12059+ Free(2, sizeof(uint64_t), (uint64_t *)stack[base + 28]/*RESULT*/);
1207012060 label = 763LLU; // consequent complete
1207112061 break;
1207212062 }
@@ -12079,8 +12069,8 @@
1207912069 }
1208012070 case 763LLU: // completed if-then-else
1208112071 {
12082- ((uint64_t **)(stack[base + 30]/*typeid*/))[1][1] = stack[base + 33]/*paramname*/;
12083- ((uint64_t **)(stack[base + 30]/*typeid*/))[1][0] = stack[base + 32]/*expected*/;
12072+ ((uint64_t **)(stack[base + 29]/*typeid*/))[1][1] = stack[base + 32]/*paramname*/;
12073+ ((uint64_t **)(stack[base + 29]/*typeid*/))[1][0] = stack[base + 31]/*expected*/;
1208412074 label = 761LLU; // consequent complete
1208512075 break;
1208612076 }
@@ -12093,8 +12083,8 @@
1209312083 }
1209412084 case 761LLU: // completed if-then-else
1209512085 {
12096- ((uint64_t **)(stack[base + 27]/*result*/))[1][1] = stack[base + 31]/*mutable*/;
12097- ((uint64_t **)(stack[base + 27]/*result*/))[1][0] = stack[base + 30]/*typeid*/;
12086+ ((uint64_t **)(stack[base + 26]/*result*/))[1][1] = stack[base + 30]/*mutable*/;
12087+ ((uint64_t **)(stack[base + 26]/*result*/))[1][0] = stack[base + 29]/*typeid*/;
1209812088 label = 759LLU; // consequent complete
1209912089 break;
1210012090 }
@@ -12107,7 +12097,7 @@
1210712097 }
1210812098 case 759LLU: // completed if-then-else
1210912099 {
12110- ((struct listnode *)(stack[base + 28/*previous*/]))->data = stack[base + 27]/*result*/;
12100+ ((struct listnode *)(stack[base + 27/*previous*/]))->data = stack[base + 26]/*result*/;
1211112101 label = 752LLU; // repeat
1211212102 break;
1211312103 }
@@ -19128,15 +19118,13 @@
1912819118 //#define cerec 28
1912919119 stack[base + 28/*cerec*/] = 0; // init
1913019120 stack[base + 28]/*cerec*/ = ((uint64_t **)(stack[base + 22]/*calleedef*/))[1][5];
19131-//#define result 29
19132- stack[base + 29/*result*/] = 0; // init
19133- assign(stack[base + 24]/*cerestypes*/, &stack[base + 30]/*cerestypes*/);
19121+ assign(stack[base + 24]/*cerestypes*/, &stack[base + 29]/*cerestypes*/);
1913419122 label = 1235LLU; // start to repeat
1913519123 break;
1913619124 }
1913719125 case 1235LLU: // repeat from here
1913819126 {
19139- if(!stack[base + 30]/*cerestypes*/)
19127+ if(!stack[base + 29]/*cerestypes*/)
1914019128 {
1914119129 label = 1236LLU; // break loop
1914219130 break;
@@ -19143,15 +19131,15 @@
1914319131 }
1914419132
1914519133 // loop body
19146-//#define result 31
19147- stack[base + 31/*result*/] = 0; // init
19148- stack[base + 31]/*result*/ = (uint64_t)(((const struct listnode *)(stack[base + 30]/*cerestypes*/))->data);
19149-//#define 32
19150- stack[base + 32/**/] = 0; // init
19151- stack[base + 32/*previous*/] = stack[base + 30]/*cerestypes*/;
19152- stack[base + 30]/*cerestypes*/ = (uint64_t)(((const struct listnode *)(stack[base + 30]/*cerestypes*/))->next);
19153-//#define RESULT 33
19154- stack[base + 33/*RESULT*/] = 0; // init
19134+//#define result 30
19135+ stack[base + 30/*result*/] = 0; // init
19136+ stack[base + 30]/*result*/ = (uint64_t)(((const struct listnode *)(stack[base + 29]/*cerestypes*/))->data);
19137+//#define 31
19138+ stack[base + 31/**/] = 0; // init
19139+ stack[base + 31/*previous*/] = stack[base + 29]/*cerestypes*/;
19140+ stack[base + 29]/*cerestypes*/ = (uint64_t)(((const struct listnode *)(stack[base + 29]/*cerestypes*/))->next);
19141+//#define RESULT 32
19142+ stack[base + 32/*RESULT*/] = 0; // init
1915519143 { // if pop
1915619144 struct listnode *list = (struct listnode *)stack[base + 21]/*news*/;
1915719145 if(!list)
@@ -19162,7 +19150,7 @@
1916219150
1916319151 // consequent
1916419152 struct listnode *next = list->next;
19165- stack[base + 33]/*RESULT*/ = list->data;
19153+ stack[base + 32]/*RESULT*/ = list->data;
1916619154 Free(1, sizeof(struct listnode), list);
1916719155 stack[base + 21]/*news*/ = (uint64_t)next;
1916819156 }
@@ -19173,12 +19161,12 @@
1917319161 {
1917419162 fprintf(stderr, "%s", "in function ");
1917519163 // call reportid from procblock
19176- stack[base + 34LLU] = base;
19177- stack[base + 35LLU] = 1239LLU;
19164+ stack[base + 33LLU] = base;
19165+ stack[base + 34LLU] = 1239LLU;
1917819166 // arguments for call to reportid
19179- stack[base + 36LLU] = stack[base + 5]/*fnid*/;
19167+ stack[base + 35LLU] = stack[base + 5]/*fnid*/;
1918019168 // set stack-base & callee-address
19181- base += 36LLU;
19169+ base += 35LLU;
1918219170 label = 18446744073709551587LLU; // reportid
1918319171 break;
1918419172 }
@@ -19187,12 +19175,12 @@
1918719175 // copy mutable arguments back from call to reportid
1918819176 fprintf(stderr, "%s", " call to ");
1918919177 // call reportid from procblock
19190- stack[base + 34LLU] = base;
19191- stack[base + 35LLU] = 1240LLU;
19178+ stack[base + 33LLU] = base;
19179+ stack[base + 34LLU] = 1240LLU;
1919219180 // arguments for call to reportid
19193- stack[base + 36LLU] = stack[base + 27]/*ceid*/;
19181+ stack[base + 35LLU] = stack[base + 27]/*ceid*/;
1919419182 // set stack-base & callee-address
19195- base += 36LLU;
19183+ base += 35LLU;
1919619184 label = 18446744073709551587LLU; // reportid
1919719185 break;
1919819186 }
@@ -19207,7 +19195,7 @@
1920719195 }
1920819196 case 1238LLU: // completed if-then-else
1920919197 {
19210- if(/*result*/0 != ((uint64_t *)(stack[base + 31]/*result*/))[0])
19198+ if(/*result*/0 != ((uint64_t *)(stack[base + 30]/*result*/))[0])
1921119199 {
1921219200 label = 1241LLU; // jump to alternative
1921319201 break;
@@ -19214,13 +19202,13 @@
1921419202 }
1921519203
1921619204 // consequent
19217-//#define typeid 34
19218- stack[base + 34/*typeid*/] = 0; // init
19219- stack[base + 34]/*typeid*/ = ((uint64_t **)(stack[base + 31]/*result*/))[1][0];
19220-//#define mutable 35
19221- stack[base + 35/*mutable*/] = 0; // init
19222- stack[base + 35]/*mutable*/ = ((uint64_t **)(stack[base + 31]/*result*/))[1][1];
19223- if(/*typeid*/0 != ((uint64_t *)(stack[base + 34]/*typeid*/))[0])
19205+//#define typeid 33
19206+ stack[base + 33/*typeid*/] = 0; // init
19207+ stack[base + 33]/*typeid*/ = ((uint64_t **)(stack[base + 30]/*result*/))[1][0];
19208+//#define mutable 34
19209+ stack[base + 34/*mutable*/] = 0; // init
19210+ stack[base + 34]/*mutable*/ = ((uint64_t **)(stack[base + 30]/*result*/))[1][1];
19211+ if(/*typeid*/0 != ((uint64_t *)(stack[base + 33]/*typeid*/))[0])
1922419212 {
1922519213 label = 1243LLU; // jump to alternative
1922619214 break;
@@ -19227,13 +19215,13 @@
1922719215 }
1922819216
1922919217 // consequent
19230-//#define expected 36
19231- stack[base + 36/*expected*/] = 0; // init
19232- stack[base + 36]/*expected*/ = ((uint64_t **)(stack[base + 34]/*typeid*/))[1][0];
19233-//#define paramname 37
19234- stack[base + 37/*paramname*/] = 0; // init
19235- stack[base + 37]/*paramname*/ = ((uint64_t **)(stack[base + 34]/*typeid*/))[1][1];
19236- if(/*idnr*/0 != ((uint64_t *)(stack[base + 33]/*RESULT*/))[0])
19218+//#define expected 35
19219+ stack[base + 35/*expected*/] = 0; // init
19220+ stack[base + 35]/*expected*/ = ((uint64_t **)(stack[base + 33]/*typeid*/))[1][0];
19221+//#define paramname 36
19222+ stack[base + 36/*paramname*/] = 0; // init
19223+ stack[base + 36]/*paramname*/ = ((uint64_t **)(stack[base + 33]/*typeid*/))[1][1];
19224+ if(/*idnr*/0 != ((uint64_t *)(stack[base + 32]/*RESULT*/))[0])
1923719225 {
1923819226 label = 1245LLU; // jump to alternative
1923919227 break;
@@ -19240,14 +19228,14 @@
1924019228 }
1924119229
1924219230 // consequent
19243-//#define id 38
19244- stack[base + 38/*id*/] = 0; // init
19245- stack[base + 38]/*id*/ = ((uint64_t **)(stack[base + 33]/*RESULT*/))[1][0];
19246-//#define mutres 39
19247- stack[base + 39/*mutres*/] = 0; // init
19248- stack[base + 39]/*mutres*/ = ((uint64_t **)(stack[base + 33]/*RESULT*/))[1][1];
19249-//#define type 40
19250- stack[base + 40/*type*/] = 0; // init
19231+//#define id 37
19232+ stack[base + 37/*id*/] = 0; // init
19233+ stack[base + 37]/*id*/ = ((uint64_t **)(stack[base + 32]/*RESULT*/))[1][0];
19234+//#define mutres 38
19235+ stack[base + 38/*mutres*/] = 0; // init
19236+ stack[base + 38]/*mutres*/ = ((uint64_t **)(stack[base + 32]/*RESULT*/))[1][1];
19237+//#define type 39
19238+ stack[base + 39/*type*/] = 0; // init
1925119239 uint64_t *newstack = (uint64_t *)Calloc(13LLU + 1, sizeof(uint64_t));
1925219240 newstack[13LLU] = 9876543210LLU; // overflow-marker
1925319241 // call copytype from procblock
@@ -19255,7 +19243,7 @@
1925519243 newstack[1] = base;
1925619244 newstack[2] = 1247LLU;
1925719245 // arguments for call to copytype
19258- newstack[4LLU] = stack[base + 36]/*expected*/;
19246+ newstack[4LLU] = stack[base + 35]/*expected*/;
1925919247 stack = newstack;
1926019248 // set stack-base & callee-address
1926119249 base = 3;
@@ -19267,7 +19255,7 @@
1926719255 uint64_t *oldstack = (uint64_t *)stack[0];
1926819256 // copy mutable arguments back from call to copytype
1926919257 // copy back results provided by call to copytype
19270- oldstack[base + 40] = stack[3LLU];
19258+ oldstack[base + 39] = stack[3LLU];
1927119259 if(stack[13LLU] != 9876543210LLU)
1927219260 {
1927319261 fprintf(stderr, "INTERNAL ERROR - OVERFLOW (in recursive call to copytype)!");
@@ -19276,19 +19264,19 @@
1927619264 Free(13LLU + 1, sizeof(uint64_t), stack);
1927719265 stack = oldstack;
1927819266 // call newvar from procblock
19279- stack[base + 41LLU] = base;
19280- stack[base + 42LLU] = 1248LLU;
19267+ stack[base + 40LLU] = base;
19268+ stack[base + 41LLU] = 1248LLU;
1928119269 // arguments for call to newvar
19282- stack[base + 43LLU] = stack[base + 40]/*type*/;
19283- stack[base + 44LLU] = stack[base + 38]/*id*/;
19284- stack[base + 45LLU] = stack[base + 39]/*mutres*/;
19285- stack[base + 46LLU] = stack[base + 7]/*fnrescount*/;
19286- stack[base + 47LLU] = stack[base + 8]/*fnargcount*/;
19287- stack[base + 48LLU] = stack[base + 9]/*fnmaxcount*/;
19288- stack[base + 49LLU] = stack[base + 16]/*varcount*/;
19289- stack[base + 50LLU] = stack[base + 3]/*scope*/;
19270+ stack[base + 42LLU] = stack[base + 39]/*type*/;
19271+ stack[base + 43LLU] = stack[base + 37]/*id*/;
19272+ stack[base + 44LLU] = stack[base + 38]/*mutres*/;
19273+ stack[base + 45LLU] = stack[base + 7]/*fnrescount*/;
19274+ stack[base + 46LLU] = stack[base + 8]/*fnargcount*/;
19275+ stack[base + 47LLU] = stack[base + 9]/*fnmaxcount*/;
19276+ stack[base + 48LLU] = stack[base + 16]/*varcount*/;
19277+ stack[base + 49LLU] = stack[base + 3]/*scope*/;
1929019278 // set stack-base & callee-address
19291- base += 43LLU;
19279+ base += 42LLU;
1929219280 label = 235LLU; // newvar
1929319281 break;
1929419282 }
@@ -19295,20 +19283,20 @@
1929519283 case 1248LLU: // return from newvar to procblock
1929619284 {
1929719285 // copy mutable arguments back from call to newvar
19298- stack[base + 3]/*scope*/ = stack[base + 50LLU];
19299- stack[base + 16]/*varcount*/ = stack[base + 49LLU];
19300- stack[base + 9]/*fnmaxcount*/ = stack[base + 48LLU];
19301-//#define INDEX 41
19302- stack[base + 41/*INDEX*/] = 0; // init
19286+ stack[base + 3]/*scope*/ = stack[base + 49LLU];
19287+ stack[base + 16]/*varcount*/ = stack[base + 48LLU];
19288+ stack[base + 9]/*fnmaxcount*/ = stack[base + 47LLU];
19289+//#define INDEX 40
19290+ stack[base + 40/*INDEX*/] = 0; // init
1930319291 // call findletidx from procblock
19304- stack[base + 42LLU] = base;
19305- stack[base + 43LLU] = 1249LLU;
19292+ stack[base + 41LLU] = base;
19293+ stack[base + 42LLU] = 1249LLU;
1930619294 // arguments for call to findletidx
19307- stack[base + 45LLU] = stack[base + 38]/*id*/;
19308- stack[base + 46LLU] = stack[base + 2]/*scopes*/;
19309- stack[base + 47LLU] = stack[base + 3]/*scope*/;
19295+ stack[base + 44LLU] = stack[base + 37]/*id*/;
19296+ stack[base + 45LLU] = stack[base + 2]/*scopes*/;
19297+ stack[base + 46LLU] = stack[base + 3]/*scope*/;
1931019298 // set stack-base & callee-address
19311- base += 44LLU;
19299+ base += 43LLU;
1931219300 label = 215LLU; // findletidx
1931319301 break;
1931419302 }
@@ -19316,22 +19304,22 @@
1931619304 {
1931719305 // copy mutable arguments back from call to findletidx
1931819306 // copy back results provided by call to findletidx
19319- stack[base + 41] = stack[base + 44LLU];
19307+ stack[base + 40] = stack[base + 43LLU];
1932019308 {
1932119309 struct listnode *list = (struct listnode *)Calloc(1, sizeof(struct listnode));
1932219310 list->next = (struct listnode *)stack[base + 19]/*verified*/;
1932319311 stack[base + 19]/*verified*/ = (uint64_t)list;
19324- list->data = stack[base + 41]/*INDEX*/;
19312+ list->data = stack[base + 40]/*INDEX*/;
1932519313 }
1932619314 {
1932719315 struct listnode *list = (struct listnode *)Calloc(1, sizeof(struct listnode));
1932819316 list->next = (struct listnode *)stack[base + 20]/*locked*/;
1932919317 stack[base + 20]/*locked*/ = (uint64_t)list;
19330- list->data = stack[base + 38]/*id*/;
19318+ list->data = stack[base + 37]/*id*/;
1933119319 }
1933219320 // releasing RESULT
19333- Free(2, sizeof(uint64_t), ((uint64_t **)stack[base + 33]/*RESULT*/)[1]);
19334- Free(2, sizeof(uint64_t), (uint64_t *)stack[base + 33]/*RESULT*/);
19321+ Free(2, sizeof(uint64_t), ((uint64_t **)stack[base + 32]/*RESULT*/)[1]);
19322+ Free(2, sizeof(uint64_t), (uint64_t *)stack[base + 32]/*RESULT*/);
1933519323 label = 1246LLU; // consequent complete
1933619324 break;
1933719325 }
@@ -19344,8 +19332,8 @@
1934419332 }
1934519333 case 1246LLU: // completed if-then-else
1934619334 {
19347- ((uint64_t **)(stack[base + 34]/*typeid*/))[1][1] = stack[base + 37]/*paramname*/;
19348- ((uint64_t **)(stack[base + 34]/*typeid*/))[1][0] = stack[base + 36]/*expected*/;
19335+ ((uint64_t **)(stack[base + 33]/*typeid*/))[1][1] = stack[base + 36]/*paramname*/;
19336+ ((uint64_t **)(stack[base + 33]/*typeid*/))[1][0] = stack[base + 35]/*expected*/;
1934919337 label = 1244LLU; // consequent complete
1935019338 break;
1935119339 }
@@ -19358,8 +19346,8 @@
1935819346 }
1935919347 case 1244LLU: // completed if-then-else
1936019348 {
19361- ((uint64_t **)(stack[base + 31]/*result*/))[1][1] = stack[base + 35]/*mutable*/;
19362- ((uint64_t **)(stack[base + 31]/*result*/))[1][0] = stack[base + 34]/*typeid*/;
19349+ ((uint64_t **)(stack[base + 30]/*result*/))[1][1] = stack[base + 34]/*mutable*/;
19350+ ((uint64_t **)(stack[base + 30]/*result*/))[1][0] = stack[base + 33]/*typeid*/;
1936319351 label = 1242LLU; // consequent complete
1936419352 break;
1936519353 }
@@ -19372,7 +19360,7 @@
1937219360 }
1937319361 case 1242LLU: // completed if-then-else
1937419362 {
19375- ((struct listnode *)(stack[base + 32/*previous*/]))->data = stack[base + 31]/*result*/;
19363+ ((struct listnode *)(stack[base + 31/*previous*/]))->data = stack[base + 30]/*result*/;
1937619364 label = 1235LLU; // repeat
1937719365 break;
1937819366 }
@@ -19387,12 +19375,12 @@
1938719375 // consequent
1938819376 fprintf(stderr, "%s", "in function ");
1938919377 // call reportid from procblock
19390- stack[base + 33LLU] = base;
19391- stack[base + 34LLU] = 1252LLU;
19378+ stack[base + 32LLU] = base;
19379+ stack[base + 33LLU] = 1252LLU;
1939219380 // arguments for call to reportid
19393- stack[base + 35LLU] = stack[base + 5]/*fnid*/;
19381+ stack[base + 34LLU] = stack[base + 5]/*fnid*/;
1939419382 // set stack-base & callee-address
19395- base += 35LLU;
19383+ base += 34LLU;
1939619384 label = 18446744073709551587LLU; // reportid
1939719385 break;
1939819386 }
@@ -19401,12 +19389,12 @@
1940119389 // copy mutable arguments back from call to reportid
1940219390 fprintf(stderr, "%s", " let-expression initialized by call to ");
1940319391 // call reportid from procblock
19404- stack[base + 33LLU] = base;
19405- stack[base + 34LLU] = 1253LLU;
19392+ stack[base + 32LLU] = base;
19393+ stack[base + 33LLU] = 1253LLU;
1940619394 // arguments for call to reportid
19407- stack[base + 35LLU] = stack[base + 27]/*ceid*/;
19395+ stack[base + 34LLU] = stack[base + 27]/*ceid*/;
1940819396 // set stack-base & callee-address
19409- base += 35LLU;
19397+ base += 34LLU;
1941019398 label = 18446744073709551587LLU; // reportid
1941119399 break;
1941219400 }
@@ -20270,19 +20258,17 @@
2027020258 stack[base + 11]/*lookahead*/ = stack[base + 34LLU];
2027120259 //#define typeids 31
2027220260 stack[base + 31/*typeids*/] = 0; // init
20273-//#define typeid 32
20274- stack[base + 32/*typeid*/] = 0; // init
2027520261 stack[base + 31]/*typeids*/ = stack[base + 29]/*TYPEIDS*/;
20276-//#define elemindex 33
20277- stack[base + 33/*elemindex*/] = 0; // init
20278- stack[base + 33]/*elemindex*/ = 0;
20279- assign(stack[base + 31]/*typeids*/, &stack[base + 34]/*typeids*/);
20262+//#define elemindex 32
20263+ stack[base + 32/*elemindex*/] = 0; // init
20264+ stack[base + 32]/*elemindex*/ = 0;
20265+ assign(stack[base + 31]/*typeids*/, &stack[base + 33]/*typeids*/);
2028020266 label = 1313LLU; // start to repeat
2028120267 break;
2028220268 }
2028320269 case 1313LLU: // repeat from here
2028420270 {
20285- if(!stack[base + 34]/*typeids*/)
20271+ if(!stack[base + 33]/*typeids*/)
2028620272 {
2028720273 label = 1314LLU; // break loop
2028820274 break;
@@ -20289,14 +20275,14 @@
2028920275 }
2029020276
2029120277 // loop body
20292-//#define typeid 35
20293- stack[base + 35/*typeid*/] = 0; // init
20294- stack[base + 35]/*typeid*/ = (uint64_t)(((const struct listnode *)(stack[base + 34]/*typeids*/))->data);
20295-//#define 36
20296- stack[base + 36/**/] = 0; // init
20297- stack[base + 36/*previous*/] = stack[base + 34]/*typeids*/;
20298- stack[base + 34]/*typeids*/ = (uint64_t)(((const struct listnode *)(stack[base + 34]/*typeids*/))->next);
20299- if(/*typeid*/0 != ((uint64_t *)(stack[base + 35]/*typeid*/))[0])
20278+//#define typeid 34
20279+ stack[base + 34/*typeid*/] = 0; // init
20280+ stack[base + 34]/*typeid*/ = (uint64_t)(((const struct listnode *)(stack[base + 33]/*typeids*/))->data);
20281+//#define 35
20282+ stack[base + 35/**/] = 0; // init
20283+ stack[base + 35/*previous*/] = stack[base + 33]/*typeids*/;
20284+ stack[base + 33]/*typeids*/ = (uint64_t)(((const struct listnode *)(stack[base + 33]/*typeids*/))->next);
20285+ if(/*typeid*/0 != ((uint64_t *)(stack[base + 34]/*typeid*/))[0])
2030020286 {
2030120287 label = 1315LLU; // jump to alternative
2030220288 break;
@@ -20303,13 +20289,13 @@
2030320289 }
2030420290
2030520291 // consequent
20306-//#define type 37
20307- stack[base + 37/*type*/] = 0; // init
20308- stack[base + 37]/*type*/ = ((uint64_t **)(stack[base + 35]/*typeid*/))[1][0];
20309-//#define elemid 38
20310- stack[base + 38/*elemid*/] = 0; // init
20311- stack[base + 38]/*elemid*/ = ((uint64_t **)(stack[base + 35]/*typeid*/))[1][1];
20312- if(!stack[base + 33]/*elemindex*/)
20292+//#define type 36
20293+ stack[base + 36/*type*/] = 0; // init
20294+ stack[base + 36]/*type*/ = ((uint64_t **)(stack[base + 34]/*typeid*/))[1][0];
20295+//#define elemid 37
20296+ stack[base + 37/*elemid*/] = 0; // init
20297+ stack[base + 37]/*elemid*/ = ((uint64_t **)(stack[base + 34]/*typeid*/))[1][1];
20298+ if(!stack[base + 32]/*elemindex*/)
2031320299 {
2031420300 label = 1317LLU; // jump to alternative
2031520301 break;
@@ -20317,13 +20303,13 @@
2031720303
2031820304 // consequent
2031920305 // call matchsym from procblock
20320- stack[base + 39LLU] = base;
20321- stack[base + 40LLU] = 1319LLU;
20306+ stack[base + 38LLU] = base;
20307+ stack[base + 39LLU] = 1319LLU;
2032220308 // arguments for call to matchsym
20323- stack[base + 41LLU] = 44LLU;
20324- stack[base + 42LLU] = stack[base + 11]/*lookahead*/;
20309+ stack[base + 40LLU] = 44LLU;
20310+ stack[base + 41LLU] = stack[base + 11]/*lookahead*/;
2032520311 // set stack-base & callee-address
20326- base += 41LLU;
20312+ base += 40LLU;
2032720313 label = 27LLU; // matchsym
2032820314 break;
2032920315 }
@@ -20330,7 +20316,7 @@
2033020316 case 1319LLU: // return from matchsym to procblock
2033120317 {
2033220318 // copy mutable arguments back from call to matchsym
20333- stack[base + 11]/*lookahead*/ = stack[base + 42LLU];
20319+ stack[base + 11]/*lookahead*/ = stack[base + 41LLU];
2033420320 label = 1318LLU; // consequent complete
2033520321 break;
2033620322 }
@@ -20342,12 +20328,12 @@
2034220328 case 1318LLU: // completed if-then-else
2034320329 {
2034420330 // call parsetoken from procblock
20345- stack[base + 39LLU] = base;
20346- stack[base + 40LLU] = 1320LLU;
20331+ stack[base + 38LLU] = base;
20332+ stack[base + 39LLU] = 1320LLU;
2034720333 // arguments for call to parsetoken
20348- stack[base + 44LLU] = stack[base + 11]/*lookahead*/;
20334+ stack[base + 43LLU] = stack[base + 11]/*lookahead*/;
2034920335 // set stack-base & callee-address
20350- base += 41LLU;
20336+ base += 40LLU;
2035120337 label = 18446744073709551585LLU; // parsetoken
2035220338 break;
2035320339 }
@@ -20355,17 +20341,17 @@
2035520341 {
2035620342 // copy mutable arguments back from call to parsetoken
2035720343 // copy back results provided by call to parsetoken
20358- stack[base + 12] = stack[base + 41LLU];
20359- stack[base + 13] = stack[base + 42LLU];
20360- stack[base + 11] = stack[base + 43LLU];
20344+ stack[base + 12] = stack[base + 40LLU];
20345+ stack[base + 13] = stack[base + 41LLU];
20346+ stack[base + 11] = stack[base + 42LLU];
2036120347 // call equ from procblock
20362- stack[base + 39LLU] = base;
20363- stack[base + 40LLU] = 1321LLU;
20348+ stack[base + 38LLU] = base;
20349+ stack[base + 39LLU] = 1321LLU;
2036420350 // arguments for call to equ
20365- stack[base + 42LLU] = stack[base + 12]/*variant*/;
20366- stack[base + 43LLU] = 4LLU;
20351+ stack[base + 41LLU] = stack[base + 12]/*variant*/;
20352+ stack[base + 42LLU] = 4LLU;
2036720353 // set stack-base & callee-address
20368- base += 41LLU;
20354+ base += 40LLU;
2036920355 label = 18446744073709551600LLU; // equ
2037020356 break;
2037120357 }
@@ -20373,7 +20359,7 @@
2037320359 {
2037420360 // copy mutable arguments back from call to equ
2037520361 // copy back results provided by call to equ
20376- stack[base + 18] = stack[base + 41LLU];
20362+ stack[base + 18] = stack[base + 40LLU];
2037720363 if(!stack[base + 18]/*isequal*/)
2037820364 {
2037920365 label = 1322LLU; // jump to alternative
@@ -20388,13 +20374,13 @@
2038820374 {
2038920375 fprintf(stderr, "%s", "constructor requires variables but found ");
2039020376 // call reporttok from procblock
20391- stack[base + 39LLU] = base;
20392- stack[base + 40LLU] = 1324LLU;
20377+ stack[base + 38LLU] = base;
20378+ stack[base + 39LLU] = 1324LLU;
2039320379 // arguments for call to reporttok
20394- stack[base + 41LLU] = stack[base + 12]/*variant*/;
20395- stack[base + 42LLU] = stack[base + 13]/*content*/;
20380+ stack[base + 40LLU] = stack[base + 12]/*variant*/;
20381+ stack[base + 41LLU] = stack[base + 13]/*content*/;
2039620382 // set stack-base & callee-address
20397- base += 41LLU;
20383+ base += 40LLU;
2039820384 label = 18446744073709551583LLU; // reporttok
2039920385 break;
2040020386 }
@@ -20410,14 +20396,14 @@
2041020396 {
2041120397 printf("%s", "\n MOVE(&");
2041220398 // call emitvar from procblock
20413- stack[base + 39LLU] = base;
20414- stack[base + 40LLU] = 1325LLU;
20399+ stack[base + 38LLU] = base;
20400+ stack[base + 39LLU] = 1325LLU;
2041520401 // arguments for call to emitvar
20416- stack[base + 41LLU] = stack[base + 13]/*content*/;
20417- stack[base + 42LLU] = stack[base + 2]/*scopes*/;
20418- stack[base + 43LLU] = stack[base + 3]/*scope*/;
20402+ stack[base + 40LLU] = stack[base + 13]/*content*/;
20403+ stack[base + 41LLU] = stack[base + 2]/*scopes*/;
20404+ stack[base + 42LLU] = stack[base + 3]/*scope*/;
2041920405 // set stack-base & callee-address
20420- base += 41LLU;
20406+ base += 40LLU;
2042120407 label = 224LLU; // emitvar
2042220408 break;
2042320409 }
@@ -20426,14 +20412,14 @@
2042620412 // copy mutable arguments back from call to emitvar
2042720413 printf("%s", ", &(((uint64_t **)(");
2042820414 // call emitvar from procblock
20429- stack[base + 39LLU] = base;
20430- stack[base + 40LLU] = 1326LLU;
20415+ stack[base + 38LLU] = base;
20416+ stack[base + 39LLU] = 1326LLU;
2043120417 // arguments for call to emitvar
20432- stack[base + 41LLU] = stack[base + 20]/*id*/;
20433- stack[base + 42LLU] = stack[base + 2]/*scopes*/;
20434- stack[base + 43LLU] = stack[base + 3]/*scope*/;
20418+ stack[base + 40LLU] = stack[base + 20]/*id*/;
20419+ stack[base + 41LLU] = stack[base + 2]/*scopes*/;
20420+ stack[base + 42LLU] = stack[base + 3]/*scope*/;
2043520421 // set stack-base & callee-address
20436- base += 41LLU;
20422+ base += 40LLU;
2043720423 label = 224LLU; // emitvar
2043820424 break;
2043920425 }
@@ -20442,12 +20428,12 @@
2044220428 // copy mutable arguments back from call to emitvar
2044320429 printf("%s", "))[1][");
2044420430 // call printnr from procblock
20445- stack[base + 39LLU] = base;
20446- stack[base + 40LLU] = 1327LLU;
20431+ stack[base + 38LLU] = base;
20432+ stack[base + 39LLU] = 1327LLU;
2044720433 // arguments for call to printnr
20448- stack[base + 41LLU] = stack[base + 33]/*elemindex*/;
20434+ stack[base + 40LLU] = stack[base + 32]/*elemindex*/;
2044920435 // set stack-base & callee-address
20450- base += 41LLU;
20436+ base += 40LLU;
2045120437 label = 18446744073709551591LLU; // printnr
2045220438 break;
2045320439 }
@@ -20455,8 +20441,8 @@
2045520441 {
2045620442 // copy mutable arguments back from call to printnr
2045720443 printf("%s", "]));");
20458- ((uint64_t **)(stack[base + 35]/*typeid*/))[1][1] = stack[base + 38]/*elemid*/;
20459- ((uint64_t **)(stack[base + 35]/*typeid*/))[1][0] = stack[base + 37]/*type*/;
20444+ ((uint64_t **)(stack[base + 34]/*typeid*/))[1][1] = stack[base + 37]/*elemid*/;
20445+ ((uint64_t **)(stack[base + 34]/*typeid*/))[1][0] = stack[base + 36]/*type*/;
2046020446 label = 1316LLU; // consequent complete
2046120447 break;
2046220448 }
@@ -20470,13 +20456,13 @@
2047020456 case 1316LLU: // completed if-then-else
2047120457 {
2047220458 // call add from procblock
20473- stack[base + 37LLU] = base;
20474- stack[base + 38LLU] = 1328LLU;
20459+ stack[base + 36LLU] = base;
20460+ stack[base + 37LLU] = 1328LLU;
2047520461 // arguments for call to add
20476- stack[base + 40LLU] = stack[base + 33]/*elemindex*/;
20477- stack[base + 41LLU] = 1LLU;
20462+ stack[base + 39LLU] = stack[base + 32]/*elemindex*/;
20463+ stack[base + 40LLU] = 1LLU;
2047820464 // set stack-base & callee-address
20479- base += 39LLU;
20465+ base += 38LLU;
2048020466 label = 18446744073709551605LLU; // add
2048120467 break;
2048220468 }
@@ -20484,8 +20470,8 @@
2048420470 {
2048520471 // copy mutable arguments back from call to add
2048620472 // copy back results provided by call to add
20487- stack[base + 33] = stack[base + 39LLU];
20488- ((struct listnode *)(stack[base + 36/*previous*/]))->data = stack[base + 35]/*typeid*/;
20473+ stack[base + 32] = stack[base + 38LLU];
20474+ ((struct listnode *)(stack[base + 35/*previous*/]))->data = stack[base + 34]/*typeid*/;
2048920475 label = 1313LLU; // repeat
2049020476 break;
2049120477 }
@@ -20492,13 +20478,13 @@
2049220478 case 1314LLU: // loop finished
2049320479 {
2049420480 // call matchsym from procblock
20495- stack[base + 37LLU] = base;
20496- stack[base + 38LLU] = 1329LLU;
20481+ stack[base + 36LLU] = base;
20482+ stack[base + 37LLU] = 1329LLU;
2049720483 // arguments for call to matchsym
20498- stack[base + 39LLU] = 41LLU;
20499- stack[base + 40LLU] = stack[base + 11]/*lookahead*/;
20484+ stack[base + 38LLU] = 41LLU;
20485+ stack[base + 39LLU] = stack[base + 11]/*lookahead*/;
2050020486 // set stack-base & callee-address
20501- base += 39LLU;
20487+ base += 38LLU;
2050220488 label = 27LLU; // matchsym
2050320489 break;
2050420490 }
@@ -20505,7 +20491,7 @@
2050520491 case 1329LLU: // return from matchsym to procblock
2050620492 {
2050720493 // copy mutable arguments back from call to matchsym
20508- stack[base + 11]/*lookahead*/ = stack[base + 40LLU];
20494+ stack[base + 11]/*lookahead*/ = stack[base + 39LLU];
2050920495 ((uint64_t **)(stack[base + 27]/*constr*/))[1][1] = stack[base + 29]/*TYPEIDS*/;
2051020496 ((uint64_t **)(stack[base + 27]/*constr*/))[1][0] = stack[base + 28]/*dummy*/;
2051120497 label = 1304LLU; // consequent complete
--- trunk/jpl_compiler_pragmatic/compiler.source.c (revision 1074)
+++ trunk/jpl_compiler_pragmatic/compiler.source.c (revision 1075)
@@ -293,7 +293,6 @@
293293 (u64 found) existsid([u64] ids, u64 wanted)
294294 {
295295 found = 0
296- NEW u64 current
297296 while next(ids)->(current)
298297 {
299298 if(found)
@@ -721,7 +720,6 @@
721720 (u64 found) lookresult ([result] results, u64 wanted)
722721 {
723722 found = 0
724- NEW mut result result
725723 while next(results)->(result)
726724 {
727725 if(found)
@@ -817,7 +815,6 @@
817815 (u64 found) lookparam ([param] params, u64 wanted)
818816 {
819817 found = 0
820- NEW mut param param
821818 while next(params)->(param)
822819 {
823820 if(found)
@@ -1191,7 +1188,6 @@
11911188 (u64 found) lookidnr([idnr] idnrs, u64 wanted)
11921189 {
11931190 found = 0
1194- NEW idnr idnr
11951191 while next(idnrs)->(idnr)
11961192 {
11971193 if(found)
@@ -2705,7 +2701,6 @@
27052701 calleedef.id -> ceid
27062702 calleedef.recursive -> cerec
27072703
2708- NEW mut result result
27092704 while next(cerestypes)->(result)
27102705 {
27112706 NEW mut letdef RESULT
@@ -4132,7 +4127,6 @@
41324127 calleedef.id -> ceid
41334128 calleedef.recursive -> cerec
41344129
4135- NEW mut result result
41364130 while next(cerestypes)->(result)
41374131 {
41384132 NEW mut idnr RESULT
@@ -4355,7 +4349,6 @@
43554349 matchsym('(', lookahead)
43564350
43574351 NEW mut [typeid] typeids
4358- NEW mut typeid typeid
43594352 typeids = TYPEIDS // NOTE: must copy reference to avoid destruction of list in data-element!
43604353 NEW mut u64 elemindex
43614354 elemindex = 0
Show on old repository browser