1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3
4 #include "nimbase.h"
5 #include <string.h>
6 #undef LANGUAGE_C
7 #undef MIPSEB
8 #undef MIPSEL
9 #undef PPC
10 #undef R3000
11 #undef R4000
12 #undef i386
13 #undef linux
14 #undef mips
15 #undef near
16 #undef far
17 #undef powerpc
18 #undef unix
19 #define nimfr_(x, y)
20 #define nimln_(x, y)
21 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
22 typedef struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ;
23 typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
24 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
25 typedef struct tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A;
26 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
27 typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
28 typedef struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ tySequence__4mZLwkxT8rbt9bf3wXrXYNQ;
29 typedef struct tySequence__rQHmYk1HzcwNxKBymIFHpA tySequence__rQHmYk1HzcwNxKBymIFHpA;
30 typedef struct tySequence__XMM60DtBsc6xYsIpNANkrA tySequence__XMM60DtBsc6xYsIpNANkrA;
31 typedef struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw;
32 typedef struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg;
33 typedef struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg;
34 typedef struct tySequence__mWRMiYLthG9coLjkbElCxkw tySequence__mWRMiYLthG9coLjkbElCxkw;
35 typedef struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyObject_Table__iowAVDkco3qpbEH0z8OmkQ;
36 typedef struct tySequence__bTDCDwD2P7TodzbAefLcSw tySequence__bTDCDwD2P7TodzbAefLcSw;
37 typedef struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w;
38 typedef struct tySequence__3MPVXAHA08SszBrU4ffqEg tySequence__3MPVXAHA08SszBrU4ffqEg;
39 typedef struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw tyObject_Table__KcymdZjUsmGSK8BxmvoJgw;
40 typedef struct tySequence__YCf5zJHm4JI06qpmKwPUWg tySequence__YCf5zJHm4JI06qpmKwPUWg;
41 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
42 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
43 typedef struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ;
44 typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA;
45 typedef struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ tySequence__eHqUwlHGGaPw0TDPDeL79cQ;
46 typedef struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA;
47 typedef struct tySequence__61s9cbAniKuBrdHwBhMDfQg tySequence__61s9cbAniKuBrdHwBhMDfQg;
48 typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
49 typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
50 typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
51 typedef struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA tyObject_Table__fdKWDDO1P17zvuQPReVgRA;
52 typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
53 typedef struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ;
54 typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
55 typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
56 typedef struct RootObj RootObj;
57 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
58 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
59 typedef struct tySequence__s9byh6WFJ16lPMcmqdaMTHA tySequence__s9byh6WFJ16lPMcmqdaMTHA;
60 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
61 typedef struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw tyObject_Table__Ue6w4c82v7gc7t2qntTbAw;
62 typedef struct tySequence__1U9bG8RcAedEeYkQLZjVFKA tySequence__1U9bG8RcAedEeYkQLZjVFKA;
63 typedef struct tyObject_Table__G1v8c16HePOldLeucwe05Q tyObject_Table__G1v8c16HePOldLeucwe05Q;
64 typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
65 typedef struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA;
66 typedef struct tySequence__23SMqauuRsbDANhthj9bWlA tySequence__23SMqauuRsbDANhthj9bWlA;
67 typedef struct tyObject_Table__NttoEzoiq5CiphZe81oadg tyObject_Table__NttoEzoiq5CiphZe81oadg;
68 typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
69 typedef struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg tyObject_Table__nagDFX4QHx0s6Fvma9blmSg;
70 typedef struct tySequence__pHNq3oXj9av2sEUdqaqeZjw tySequence__pHNq3oXj9av2sEUdqaqeZjw;
71 typedef struct tySequence__MAQKEADohlpnXTModtugbQ tySequence__MAQKEADohlpnXTModtugbQ;
72 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
73 typedef struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA;
74 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
75 typedef struct TNimType TNimType;
76 typedef struct TNimNode TNimNode;
77 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
78 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
79 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
80 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
81 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
82 typedef struct NimStringDesc NimStringDesc;
83 typedef struct TGenericSeq TGenericSeq;
84 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
85 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
86 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
87 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
88 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
89 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
90 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
91 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
92 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
93 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
94 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
95 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
96 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
97 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
98 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
99 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
100 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
101 typedef struct tyObject_PreprocessContext__ATjkivkWYrBstrMNxiy9cNw tyObject_PreprocessContext__ATjkivkWYrBstrMNxiy9cNw;
102 typedef struct tySequence__1I3cxybVrOXM64KW2dfERQ tySequence__1I3cxybVrOXM64KW2dfERQ;
103 typedef struct tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw;
104 typedef struct tyObject_FreshVarsContext__BITJ25TBEN8CE4NK59coN0w tyObject_FreshVarsContext__BITJ25TBEN8CE4NK59coN0w;
105 typedef struct tyObject_Table__5WMmzblM3wEpYUTgMBzetQ tyObject_Table__5WMmzblM3wEpYUTgMBzetQ;
106 typedef struct tySequence__gVogYzwlGNrCaz6jQnXRzA tySequence__gVogYzwlGNrCaz6jQnXRzA;
107 typedef struct tyTuple__O3AtiO8fwKWfdl6NGmuzhw tyTuple__O3AtiO8fwKWfdl6NGmuzhw;
108 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
109 typedef struct tyTuple__EFqgCXJ4d8PgqOdFJmldsQ tyTuple__EFqgCXJ4d8PgqOdFJmldsQ;
110 typedef struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA;
111 typedef struct tySequence__vv5mGmK03BCr5e3LTZA5Hw tySequence__vv5mGmK03BCr5e3LTZA5Hw;
112 typedef struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w;
113 typedef struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ;
114 typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA;
115 typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA;
116 typedef struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw;
117 typedef struct tySequence__29bS0n2QNyO1R7e0qMMOvLA tySequence__29bS0n2QNyO1R7e0qMMOvLA;
118 typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg;
119 typedef struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg tySequence__REuPuHuSlOkZ0Q5oqzDrQg;
120 typedef struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA tySequence__I9aQmO9asXXWJ58UI9c8BCSzA;
121 typedef struct tySequence__NyaOkf8ZwxP6rkRF5TOkew tySequence__NyaOkf8ZwxP6rkRF5TOkew;
122 typedef struct tySequence__L9bOt8CaTEmIjgtuZvp6syg tySequence__L9bOt8CaTEmIjgtuZvp6syg;
123 typedef struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ tySequence__im8UB2GsZvUaQ4a1wKGWhQ;
124 typedef struct tySequence__xxnXDLpoqBo8zJzP9b1073g tySequence__xxnXDLpoqBo8zJzP9b1073g;
125 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
126 typedef struct tySequence__DfmUmNgVGnYaiV1I6227tw tySequence__DfmUmNgVGnYaiV1I6227tw;
127 typedef struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA tySequence__t8Uv4lEJ4lkuECvP9c6JMhA;
128 typedef struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg;
129 typedef struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ;
130 typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
131 typedef struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g tyObject_Table__CE4eiu6FavV1vmUiTXQ70g;
132 typedef struct tySequence__9bT7o0CflHuiE4VhmtqBPCw tySequence__9bT7o0CflHuiE4VhmtqBPCw;
133 typedef struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw;
134 typedef struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q tyObject_Table__TRm6MPqklA8EYBmBMY117Q;
135 typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
136 typedef struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ;
137 typedef struct tySequence__O5RcspOP32YJ4YtU5ppxxA tySequence__O5RcspOP32YJ4YtU5ppxxA;
138 typedef struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg;
139 typedef struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ;
140 typedef struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ;
141 typedef struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg tyTuple__o67sDX0wYbEuhI9cJYAbDtg;
142 typedef struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA;
143 typedef struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg;
144 typedef struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA tySequence__ipEvhpHAmm8ZCn9bZAOdNYA;
145 typedef struct tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA;
146 typedef struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q tyTuple__9aNnDWBFMF44sfFinBpMT4Q;
147 typedef struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg;
148 typedef struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g tySequence__159bHWBGAOOs6U7OZ9cQlO0g;
149 typedef struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ tyTuple__VrD6plbUKJjYKM0lCr3hGQ;
150 typedef struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA;
151 typedef struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA tyTuple__1ZbjBgxAbnye0IFMZ6w4OA;
152 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
153 typedef struct tyTuple__rplX06U9bjhu9asm5pWdgqsA tyTuple__rplX06U9bjhu9asm5pWdgqsA;
154 typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
155 typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
156 typedef struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A;
157 typedef struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ tyTuple__3i6hlQmqrn6m7tuVN8FHjQ;
158 typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
159 typedef struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw;
160 typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
161 typedef struct tyTuple__wcNatyuf8WOqAhGLhSvgiw tyTuple__wcNatyuf8WOqAhGLhSvgiw;
162 typedef struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg;
163 typedef struct tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g;
164 typedef struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ;
165 typedef struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w;
166 typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
167 typedef struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow;
168 typedef struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg;
169 typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
170 typedef struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA tyTuple__Q7r9caOmeWqQGZCIBHhGRUA;
171 typedef struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg;
172 typedef struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw tyTuple__XyJ8LOAZzVVXSsmt09b8uWw;
173 typedef struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA;
174 typedef struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw tySequence__vC9cvg0R8tfBaOXXi3sfMzw;
175 typedef struct tyTuple__9aoobCDZB4x41HJSOmh0mwA tyTuple__9aoobCDZB4x41HJSOmh0mwA;
176 typedef struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA tyTuple__g0Q6Qx15nK53ce9aLo7YyrA;
177 typedef struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw;
178 typedef struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw;
179 typedef struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA;
180 typedef struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ;
181 typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
182 struct tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A {
183 tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g;
184 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* fn;
185 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* stateVarSym;
186 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* tmpResultSym;
187 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* unrollFinallySym;
188 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* curExcSym;
189 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* states;
190 NI blockLevel;
191 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* stateLoopLabel;
192 NI exitStateIdx;
193 NI tempVarId;
194 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tempVars;
195 tySequence__qwqHTkRvwhrRyENtudHQ7g* exceptionTable;
196 NIM_BOOL hasExceptions;
197 NI curExcHandlingState;
198 NI nearestFinally;
199 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
200 };
201 struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw {
202 tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg* data;
203 NI counter;
204 };
205 struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg {
206 tySequence__mWRMiYLthG9coLjkbElCxkw* data;
207 NI counter;
208 };
209 struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ {
210 tySequence__bTDCDwD2P7TodzbAefLcSw* data;
211 NI counter;
212 };
213 typedef tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ[5];
214 struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w {
215 tySequence__3MPVXAHA08SszBrU4ffqEg* data;
216 NI counter;
217 };
218 struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw {
219 tySequence__YCf5zJHm4JI06qpmKwPUWg* data;
220 NI counter;
221 };
222 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
223 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
224 NI counter;
225 };
226 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
227 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
228 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
229 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
230 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
231 struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ {
232 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
233 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
234 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
235 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
236 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
237 };
238 struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA {
239 NI counter;
240 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* data;
241 };
242 struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA {
243 tySequence__61s9cbAniKuBrdHwBhMDfQg* data;
244 NI counter;
245 };
246 typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
247 struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
248 NI elems;
249 NI counter;
250 NI max;
251 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
252 tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
253 tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
254 };
255 struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA {
256 tySequence__fdmz6VkIf1ewwrssKYqRFg* data;
257 NI counter;
258 };
259 struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ {
260 tySequence__kxu4GK0onha2t9bo86mdVAg* data;
261 NI counter;
262 };
263 typedef struct {
264 N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
265 void* ClE_0;
266 } tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
267 typedef tyObject_TType__facALICuu8zUj0hjvbTLFg* tyArray__9bjuenwQUcqO3lbmS2wX7uA[65];
268 struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw {
269 tySequence__1U9bG8RcAedEeYkQLZjVFKA* data;
270 NI counter;
271 };
272 struct tyObject_Table__G1v8c16HePOldLeucwe05Q {
273 tySequence__fIB1rTQ55aFonoft9a9bmljQ* data;
274 NI counter;
275 };
276 typedef N_NIMCALL_PTR(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, tyProc__VHDwJFdIqpwtpUGuxiXUwg) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
277 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__mjUN9alLJ31lnSKkUsuyWMw) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
278 struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA {
279 tySequence__23SMqauuRsbDANhthj9bWlA* data;
280 NI counter;
281 };
282 struct tyObject_Table__NttoEzoiq5CiphZe81oadg {
283 tySequence__squ9b9bUH4OLHf6cEMrt6hVA* data;
284 NI counter;
285 };
286 struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg {
287 tySequence__pHNq3oXj9av2sEUdqaqeZjw* data;
288 NI counter;
289 };
290 typedef N_NIMCALL_PTR(void, tyProc__TjycsqkDBjsxd4da6KYTng) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
291 typedef N_NIMCALL_PTR(void, tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body);
292 typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__J7Jq15ZScfKLqcLx8sEz9cA) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TType__facALICuu8zUj0hjvbTLFg* formal, tyObject_TType__facALICuu8zUj0hjvbTLFg* actual);
293 struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA {
294 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opNot;
295 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opContains;
296 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLe;
297 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLt;
298 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAnd;
299 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opOr;
300 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opIsNil;
301 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opEq;
302 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAdd;
303 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opSub;
304 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opMul;
305 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opDiv;
306 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLen;
307 };
308 struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ {
309 tySequence__4mZLwkxT8rbt9bf3wXrXYNQ* ifaces;
310 tySequence__rQHmYk1HzcwNxKBymIFHpA* packed_0;
311 tySequence__XMM60DtBsc6xYsIpNANkrA* encoders;
312 tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw typeInstCache;
313 tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg procInstCache;
314 tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ attachedOps;
315 tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w methodsPerType;
316 tyObject_Table__KcymdZjUsmGSK8BxmvoJgw enumToStringProcs;
317 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA emittedTypeInfo;
318 tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ startupPackedConfig;
319 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageSyms;
320 tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA modulesPerPackage;
321 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA deps;
322 tyObject_Table__fdKWDDO1P17zvuQPReVgRA importDeps;
323 NIM_BOOL suggestMode;
324 NIM_BOOL invalidTransitiveClosure;
325 tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ inclToMod;
326 tySequence__48JTohSgTy339bRxHzUD8KA* importStack;
327 RootObj* backend;
328 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
329 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
330 RootObj* vm;
331 tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
332 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* usageSym;
333 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* owners;
334 tySequence__s9byh6WFJ16lPMcmqdaMTHA* methods;
335 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* systemModule;
336 tyArray__9bjuenwQUcqO3lbmS2wX7uA sysTypes;
337 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA compilerprocs;
338 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA exposed;
339 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageTypes;
340 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* emptyNode;
341 tyObject_Table__Ue6w4c82v7gc7t2qntTbAw canonTypes;
342 tyObject_Table__G1v8c16HePOldLeucwe05Q symBodyHashes;
343 tyProc__VHDwJFdIqpwtpUGuxiXUwg importModuleCallback;
344 tyProc__mjUN9alLJ31lnSKkUsuyWMw includeFileCallback;
345 tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA cacheSeqs;
346 tyObject_Table__NttoEzoiq5CiphZe81oadg cacheCounters;
347 tyObject_Table__nagDFX4QHx0s6Fvma9blmSg cacheTables;
348 tySequence__MAQKEADohlpnXTModtugbQ* passes;
349 tyProc__TjycsqkDBjsxd4da6KYTng onDefinition;
350 tyProc__TjycsqkDBjsxd4da6KYTng onDefinitionResolveForward;
351 tyProc__TjycsqkDBjsxd4da6KYTng onUsage;
352 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* globalDestructors;
353 tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ strongSemCheck;
354 tyProc__J7Jq15ZScfKLqcLx8sEz9cA compatibleProps;
355 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
356 tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA operators;
357 };
358 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
359 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
360 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
361 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
362 struct TNimType {
363 NI size;
364 NI align;
365 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
366 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
367 TNimType* base;
368 TNimNode* node;
369 void* finalizer;
370 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
371 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
372 };
373 struct RootObj {
374 TNimType* m_type;
375 };
376 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
377 NI32 module;
378 NI32 item;
379 };
380 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
381 RootObj Sup;
382 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
383 };
384 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
385 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
386 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
387 NU16 line;
388 NI16 col;
389 NI32 fileIndex;
390 };
391 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
392 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
393 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
394 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
395 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
396 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
397 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
398 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
399 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
400 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
401 };
402 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
403 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
404 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
405 union{
406 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
407 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
408 } _kind_1;
409 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
410 NI bitsize;
411 NI alignment;
412 } _kind_2;
413 };
414 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
415 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
416 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
417 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
418 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
419 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
420 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
421 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
422 NI position;
423 NI offset;
424 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
425 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
426 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
427 };
428 struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q {
429 NI32 module;
430 NI32 symId;
431 NI32 typeId_0;
432 NIM_BOOL sealed;
433 };
434 struct TGenericSeq {
435 NI len;
436 NI reserved;
437 };
438 struct NimStringDesc {
439 TGenericSeq Sup;
440 NIM_CHAR data[SEQ_DECL_SIZE];
441 };
442 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
443 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
444 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
445 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
446 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
447 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
448 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
449 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
450 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
451 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
452 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
453 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
454 NI64 size;
455 NI16 align;
456 NI16 paddingAtEnd;
457 NI16 lockLevel;
458 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
459 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
460 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
461 };
462 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
463 NI refcount;
464 TNimType* typ;
465 };
466 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
467 void* bottom;
468 };
469 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
470 NI len;
471 NI cap;
472 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
473 };
474 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
475 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
476 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
477 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
478 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
479 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
480 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
481 };
482 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
483 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
484 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
485 NI key;
486 NI upperBound;
487 NI level;
488 };
489 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
490 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
491 NI Field1;
492 };
493 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
494 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
495 NI len;
496 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
497 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
498 };
499 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
500 NI minLargeObj;
501 NI maxLargeObj;
502 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
503 NU32 flBitmap;
504 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
505 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
506 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
507 NI currMem;
508 NI maxMem;
509 NI freeMem;
510 NI occ;
511 NI lastSize;
512 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
513 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
514 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
515 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
516 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
517 NIM_BOOL locked;
518 NIM_BOOL blockChunkSizeIncrease;
519 NI nextChunkSize;
520 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
521 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
522 };
523 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
524 NI stackScans;
525 NI cycleCollections;
526 NI maxThreshold;
527 NI maxStackSize;
528 NI maxStackCells;
529 NI cycleTableSize;
530 NI64 maxPause;
531 };
532 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
533 NI counter;
534 NI max;
535 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
536 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
537 };
538 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
539 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
540 NI cycleThreshold;
541 NI zctThreshold;
542 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
543 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
544 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
545 NI recGcLock;
546 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
547 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
548 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
549 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
550 NI gcThreadId;
551 };
552 struct tyObject_PreprocessContext__ATjkivkWYrBstrMNxiy9cNw {
553 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* finallys;
554 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
555 tySequence__1I3cxybVrOXM64KW2dfERQ* blocks;
556 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
557 };
558 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
559 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
560 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
561 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
562 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
563 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
564 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
565 union{
566 struct {NI64 intVal;
567 } _kind_1;
568 struct {NF floatVal;
569 } _kind_2;
570 struct {NimStringDesc* strVal;
571 } _kind_3;
572 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
573 } _kind_4;
574 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
575 } _kind_5;
576 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
577 } _kind_6;
578 };
579 };
580 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
581 struct TNimNode {
582 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
583 NI offset;
584 TNimType* typ;
585 NCSTRING name;
586 NI len;
587 TNimNode** sons;
588 };
589 struct tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw {
590 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field0;
591 NI Field1;
592 };
593 struct tyObject_Table__5WMmzblM3wEpYUTgMBzetQ {
594 tySequence__gVogYzwlGNrCaz6jQnXRzA* data;
595 NI counter;
596 };
597 struct tyObject_FreshVarsContext__BITJ25TBEN8CE4NK59coN0w {
598 tyObject_Table__5WMmzblM3wEpYUTgMBzetQ tab;
599 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
600 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
601 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
602 };
603 struct tyTuple__O3AtiO8fwKWfdl6NGmuzhw {
604 NI Field0;
605 NI Field1;
606 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field2;
607 };
608 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
609 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
610 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
611 NimStringDesc* Field0;
612 NI Field1;
613 NI Field2;
614 };
615 typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__jlWPjgtbdjE069arIWHC9c9bg[1];
616 struct tyTuple__EFqgCXJ4d8PgqOdFJmldsQ {
617 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field0;
618 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field1;
619 };
620 typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__AB6yfoUgfWM2NtGe9bzkCmw[2];
621 typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__T6RKPw8xfAeNaoei9aZGzXg[3];
622 typedef NU8 tyEnum_TNodeKind__Dq0DNfMwTBUf7hLFKKDU7g;
623 struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA {
624 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
625 tySequence__vv5mGmK03BCr5e3LTZA5Hw* converters;
626 tySequence__vv5mGmK03BCr5e3LTZA5Hw* patterns;
627 tySequence__vv5mGmK03BCr5e3LTZA5Hw* pureEnums;
628 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interf;
629 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interfHidden;
630 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* uniqueName;
631 };
632 typedef NU8 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q;
633 struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw {
634 tySequence__29bS0n2QNyO1R7e0qMMOvLA* nodes;
635 };
636 typedef NU8 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g;
637 struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg {
638 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* vals;
639 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
640 };
641 struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ {
642 tySequence__IHUFRsFxZNv7YydiUO2esQ* vals;
643 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
644 };
645 struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ {
646 NimStringDesc* definedSymbols;
647 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw moduleFlags;
648 tySequence__PXIzfWocnrafGz5p3CP5LA* includes;
649 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* imports;
650 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw toReplay;
651 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw topLevel;
652 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw bodies;
653 tySequence__b89aLriiJnVTD186H6zNIgg* exports;
654 tySequence__b89aLriiJnVTD186H6zNIgg* hidden;
655 tySequence__REuPuHuSlOkZ0Q5oqzDrQg* reexports;
656 tySequence__b89aLriiJnVTD186H6zNIgg* compilerProcs;
657 tySequence__48JTohSgTy339bRxHzUD8KA* converters;
658 tySequence__48JTohSgTy339bRxHzUD8KA* methods;
659 tySequence__48JTohSgTy339bRxHzUD8KA* trmacros;
660 tySequence__48JTohSgTy339bRxHzUD8KA* pureEnums;
661 tySequence__I9aQmO9asXXWJ58UI9c8BCSzA* macroUsages;
662 tySequence__NyaOkf8ZwxP6rkRF5TOkew* typeInstCache;
663 tySequence__L9bOt8CaTEmIjgtuZvp6syg* procInstCache;
664 tySequence__im8UB2GsZvUaQ4a1wKGWhQ* attachedOps;
665 tySequence__xxnXDLpoqBo8zJzP9b1073g* methodsPerType;
666 tySequence__NyaOkf8ZwxP6rkRF5TOkew* enumToStringProcs;
667 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* emittedTypeInfo;
668 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g backendFlags;
669 tySequence__DfmUmNgVGnYaiV1I6227tw* syms;
670 tySequence__t8Uv4lEJ4lkuECvP9c6JMhA* types;
671 tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg strings;
672 tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ numbers;
673 tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ cfg;
674 };
675 struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g {
676 tySequence__9bT7o0CflHuiE4VhmtqBPCw* data;
677 NI counter;
678 };
679 struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w {
680 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q status;
681 NIM_BOOL symsInit;
682 NIM_BOOL typesInit;
683 NIM_BOOL loadedButAliveSetChanged;
684 tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ fromDisk;
685 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* syms;
686 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* types;
687 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
688 tyObject_Table__CE4eiu6FavV1vmUiTXQ70g iface;
689 tyObject_Table__CE4eiu6FavV1vmUiTXQ70g ifaceHidden;
690 };
691 struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q {
692 tySequence__9cnx3zXnWzeclW8Ko4oUgAQ* data;
693 NI counter;
694 };
695 struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw {
696 NI32 thisModule;
697 NI32 lastFile;
698 NU32 lastLit;
699 tyObject_Table__TRm6MPqklA8EYBmBMY117Q filenames;
700 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* pendingTypes;
701 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* pendingSyms;
702 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA typeMarker;
703 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA symMarker;
704 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
705 };
706 struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ {
707 NU32 module;
708 NI32 item;
709 };
710 struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ {
711 NI module;
712 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ packed_0;
713 };
714 struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg {
715 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
716 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
717 };
718 struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ {
719 NI Field0;
720 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
721 tySequence__O5RcspOP32YJ4YtU5ppxxA* Field2;
722 };
723 struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg {
724 NI module;
725 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ sym;
726 tySequence__ipEvhpHAmm8ZCn9bZAOdNYA* concreteTypes;
727 tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* inst;
728 };
729 struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg {
730 NI Field0;
731 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
732 tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA* Field2;
733 };
734 struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q {
735 NI Field0;
736 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
737 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field2;
738 };
739 struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA {
740 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
741 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
742 };
743 struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ {
744 NI Field0;
745 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field1;
746 };
747 struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg {
748 NI Field0;
749 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
750 tySequence__159bHWBGAOOs6U7OZ9cQlO0g* Field2;
751 };
752 struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA {
753 NI Field0;
754 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
755 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field2;
756 };
757 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
758 NI Field0;
759 NimStringDesc* Field1;
760 NI32 Field2;
761 };
762 struct tyTuple__rplX06U9bjhu9asm5pWdgqsA {
763 NI Field0;
764 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
765 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA Field2;
766 };
767 struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
768 NI Field0;
769 NI32 Field1;
770 tySequence__48JTohSgTy339bRxHzUD8KA* Field2;
771 };
772 struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
773 NI Field0;
774 NI32 Field1;
775 NI32 Field2;
776 };
777 struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A {
778 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* Field0;
779 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field1;
780 };
781 typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16];
782 struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ {
783 NI Field0;
784 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
785 tyObject_TType__facALICuu8zUj0hjvbTLFg* Field2;
786 };
787 struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
788 NI Field0;
789 NI Field1;
790 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
791 };
792 struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw {
793 NI Field0;
794 NimStringDesc* Field1;
795 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field2;
796 };
797 struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
798 NI Field0;
799 NimStringDesc* Field1;
800 NI64 Field2;
801 };
802 struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg {
803 tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g* root;
804 NI entries;
805 };
806 struct tyTuple__wcNatyuf8WOqAhGLhSvgiw {
807 NI Field0;
808 NimStringDesc* Field1;
809 tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg Field2;
810 };
811 typedef N_NIMCALL_PTR(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, tyProc__jkSFMhvPZ1AdGcvT2dK9a2w) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
812 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__A7Sdoem70tRxSEmKrf9cmyg) (tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* topLevelStmt);
813 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__EAEKmBUgKFg29agoUGtzDEQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
814 struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ {
815 tyProc__jkSFMhvPZ1AdGcvT2dK9a2w Field0;
816 tyProc__A7Sdoem70tRxSEmKrf9cmyg Field1;
817 tyProc__EAEKmBUgKFg29agoUGtzDEQ Field2;
818 NIM_BOOL Field3;
819 };
820 struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q {
821 NU32 Field0;
822 NimStringDesc* Field1;
823 };
824 struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg {
825 NU16 line;
826 NI16 col;
827 NU32 file;
828 };
829 struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow {
830 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
831 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
832 NI32 operand;
833 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeId_0;
834 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
835 };
836 struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ {
837 NU32 Field0;
838 NI32 Field1;
839 };
840 struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA {
841 NU32 Field0;
842 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
843 };
844 struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg {
845 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
846 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg Field1;
847 };
848 struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw {
849 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
850 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
851 };
852 struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA {
853 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ key;
854 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
855 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* concreteTypes;
856 };
857 typedef NU8 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg;
858 struct tyTuple__9aoobCDZB4x41HJSOmh0mwA {
859 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg Field0;
860 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
861 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
862 };
863 struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA {
864 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
865 NI Field1;
866 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
867 };
868 typedef NU8 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ;
869 struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw {
870 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ kind;
871 NIM_BOOL generated;
872 NIM_BOOL isOverriden;
873 NU32 name;
874 NI32 path;
875 };
876 struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw {
877 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
878 NU32 name;
879 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typ;
880 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
881 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
882 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
883 NI32 ast;
884 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
885 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ guard;
886 NI bitsize;
887 NI alignment;
888 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
889 NI position;
890 NI offset;
891 NU32 externalName;
892 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA locFlags;
893 tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw annex;
894 NI32 constraint;
895 };
896 struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA {
897 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
898 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
899 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
900 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* types;
901 NI32 n;
902 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
903 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
904 NI64 size;
905 NI16 align;
906 NI16 paddingAtEnd;
907 NI16 lockLevel;
908 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeInst;
909 NI32 nonUniqueId;
910 };
911 struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ {
912 NI Field0;
913 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* Field1;
914 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* Field2;
915 };
916 struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA {
917 NI Field0;
918 NI32 Field1;
919 NU32 Field2;
920 };
921 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
922 TGenericSeq Sup;
923 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
924 };
925 struct tySequence__1I3cxybVrOXM64KW2dfERQ {
926 TGenericSeq Sup;
927 tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw data[SEQ_DECL_SIZE];
928 };
929 struct tySequence__gVogYzwlGNrCaz6jQnXRzA {
930 TGenericSeq Sup;
931 tyTuple__O3AtiO8fwKWfdl6NGmuzhw data[SEQ_DECL_SIZE];
932 };
933 struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
934 TGenericSeq Sup;
935 NI data[SEQ_DECL_SIZE];
936 };
937 struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ {
938 TGenericSeq Sup;
939 tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA data[SEQ_DECL_SIZE];
940 };
941 struct tySequence__rQHmYk1HzcwNxKBymIFHpA {
942 TGenericSeq Sup;
943 tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w data[SEQ_DECL_SIZE];
944 };
945 struct tySequence__XMM60DtBsc6xYsIpNANkrA {
946 TGenericSeq Sup;
947 tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw data[SEQ_DECL_SIZE];
948 };
949 struct tySequence__O5RcspOP32YJ4YtU5ppxxA {
950 TGenericSeq Sup;
951 tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg data[SEQ_DECL_SIZE];
952 };
953 struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg {
954 TGenericSeq Sup;
955 tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ data[SEQ_DECL_SIZE];
956 };
957 struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA {
958 TGenericSeq Sup;
959 tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg data[SEQ_DECL_SIZE];
960 };
961 struct tySequence__mWRMiYLthG9coLjkbElCxkw {
962 TGenericSeq Sup;
963 tyTuple__o67sDX0wYbEuhI9cJYAbDtg data[SEQ_DECL_SIZE];
964 };
965 struct tySequence__bTDCDwD2P7TodzbAefLcSw {
966 TGenericSeq Sup;
967 tyTuple__9aNnDWBFMF44sfFinBpMT4Q data[SEQ_DECL_SIZE];
968 };
969 struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g {
970 TGenericSeq Sup;
971 tyTuple__VrD6plbUKJjYKM0lCr3hGQ data[SEQ_DECL_SIZE];
972 };
973 struct tySequence__3MPVXAHA08SszBrU4ffqEg {
974 TGenericSeq Sup;
975 tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg data[SEQ_DECL_SIZE];
976 };
977 struct tySequence__YCf5zJHm4JI06qpmKwPUWg {
978 TGenericSeq Sup;
979 tyTuple__1ZbjBgxAbnye0IFMZ6w4OA data[SEQ_DECL_SIZE];
980 };
981 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
982 TGenericSeq Sup;
983 tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
984 };
985 struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ {
986 TGenericSeq Sup;
987 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* data[SEQ_DECL_SIZE];
988 };
989 struct tySequence__61s9cbAniKuBrdHwBhMDfQg {
990 TGenericSeq Sup;
991 tyTuple__rplX06U9bjhu9asm5pWdgqsA data[SEQ_DECL_SIZE];
992 };
993 struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
994 TGenericSeq Sup;
995 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
996 };
997 struct tySequence__48JTohSgTy339bRxHzUD8KA {
998 TGenericSeq Sup;
999 NI32 data[SEQ_DECL_SIZE];
1000 };
1001 struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
1002 TGenericSeq Sup;
1003 tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE];
1004 };
1005 struct tySequence__kxu4GK0onha2t9bo86mdVAg {
1006 TGenericSeq Sup;
1007 tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE];
1008 };
1009 struct tySequence__s9byh6WFJ16lPMcmqdaMTHA {
1010 TGenericSeq Sup;
1011 tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A data[SEQ_DECL_SIZE];
1012 };
1013 struct tySequence__1U9bG8RcAedEeYkQLZjVFKA {
1014 TGenericSeq Sup;
1015 tyTuple__3i6hlQmqrn6m7tuVN8FHjQ data[SEQ_DECL_SIZE];
1016 };
1017 struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
1018 TGenericSeq Sup;
1019 tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE];
1020 };
1021 struct tySequence__23SMqauuRsbDANhthj9bWlA {
1022 TGenericSeq Sup;
1023 tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw data[SEQ_DECL_SIZE];
1024 };
1025 struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
1026 TGenericSeq Sup;
1027 tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE];
1028 };
1029 struct tySequence__pHNq3oXj9av2sEUdqaqeZjw {
1030 TGenericSeq Sup;
1031 tyTuple__wcNatyuf8WOqAhGLhSvgiw data[SEQ_DECL_SIZE];
1032 };
1033 struct tySequence__MAQKEADohlpnXTModtugbQ {
1034 TGenericSeq Sup;
1035 tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ data[SEQ_DECL_SIZE];
1036 };
1037 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
1038 TGenericSeq Sup;
1039 tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
1040 };
1041 struct tySequence__vv5mGmK03BCr5e3LTZA5Hw {
1042 TGenericSeq Sup;
1043 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA data[SEQ_DECL_SIZE];
1044 };
1045 struct tySequence__PXIzfWocnrafGz5p3CP5LA {
1046 TGenericSeq Sup;
1047 tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE];
1048 };
1049 struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA {
1050 TGenericSeq Sup;
1051 NU32 data[SEQ_DECL_SIZE];
1052 };
1053 struct tySequence__29bS0n2QNyO1R7e0qMMOvLA {
1054 TGenericSeq Sup;
1055 tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow data[SEQ_DECL_SIZE];
1056 };
1057 struct tySequence__b89aLriiJnVTD186H6zNIgg {
1058 TGenericSeq Sup;
1059 tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];
1060 };
1061 struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg {
1062 TGenericSeq Sup;
1063 tyTuple__Q7r9caOmeWqQGZCIBHhGRUA data[SEQ_DECL_SIZE];
1064 };
1065 struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA {
1066 TGenericSeq Sup;
1067 tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg data[SEQ_DECL_SIZE];
1068 };
1069 struct tySequence__NyaOkf8ZwxP6rkRF5TOkew {
1070 TGenericSeq Sup;
1071 tyTuple__XyJ8LOAZzVVXSsmt09b8uWw data[SEQ_DECL_SIZE];
1072 };
1073 struct tySequence__L9bOt8CaTEmIjgtuZvp6syg {
1074 TGenericSeq Sup;
1075 tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA data[SEQ_DECL_SIZE];
1076 };
1077 struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ {
1078 TGenericSeq Sup;
1079 tyTuple__9aoobCDZB4x41HJSOmh0mwA data[SEQ_DECL_SIZE];
1080 };
1081 struct tySequence__xxnXDLpoqBo8zJzP9b1073g {
1082 TGenericSeq Sup;
1083 tyTuple__g0Q6Qx15nK53ce9aLo7YyrA data[SEQ_DECL_SIZE];
1084 };
1085 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
1086 TGenericSeq Sup;
1087 NimStringDesc* data[SEQ_DECL_SIZE];
1088 };
1089 struct tySequence__DfmUmNgVGnYaiV1I6227tw {
1090 TGenericSeq Sup;
1091 tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw data[SEQ_DECL_SIZE];
1092 };
1093 struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA {
1094 TGenericSeq Sup;
1095 tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA data[SEQ_DECL_SIZE];
1096 };
1097 struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
1098 TGenericSeq Sup;
1099 NI64 data[SEQ_DECL_SIZE];
1100 };
1101 struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw {
1102 TGenericSeq Sup;
1103 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ data[SEQ_DECL_SIZE];
1104 };
1105 struct tySequence__9bT7o0CflHuiE4VhmtqBPCw {
1106 TGenericSeq Sup;
1107 tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ data[SEQ_DECL_SIZE];
1108 };
1109 struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
1110 TGenericSeq Sup;
1111 tyTuple__UvldbCB6B9ayi9bGYW7vJNLA data[SEQ_DECL_SIZE];
1112 };
1113 struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA {
1114 TGenericSeq Sup;
1115 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ data[SEQ_DECL_SIZE];
1116 };
1117 static N_INLINE(void, nimZeroMem)(void* p, NI size);
1118 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
1119 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getEnvParam__lambdalifting_131)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* routine);
1120 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, newSym__ast_3445)(tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw symKind, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options);
1121 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_143)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
1122 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
1123 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, createClosureIterStateType__lambdalifting_33)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* iter, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
1124 static N_INLINE(void, asgnRef)(void** dest, void* src);
1125 static N_INLINE(void, incRef__system_5317)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1126 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
1127 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5279)(void* usr);
1128 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
1129 static N_INLINE(void, decRef__system_5324)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1130 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
1131 static N_INLINE(void, rtlAddZCT__system_5322)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1132 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5273)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1133 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, preprocess__closureiters_3362)(tyObject_PreprocessContext__ATjkivkWYrBstrMNxiy9cNw* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1134 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1135 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
1136 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
1137 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1138 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, pop__trees_32)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** s);
1139 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
1140 static N_INLINE(void, pop__closureiters_3415)(tySequence__1I3cxybVrOXM64KW2dfERQ** s, tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw* Result);
1141 static N_INLINE(tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw*, X5BX5D___closureiters_3437)(tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw* s, NI sLen_0, NI i);
1142 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI__ast_3356)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1143 N_LIB_PRIVATE N_NIMCALL(void, initTable__closureiters_3484)(NI initialSize, tyObject_Table__5WMmzblM3wEpYUTgMBzetQ* Result);
1144 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count);
1145 N_LIB_PRIVATE N_NIMCALL(NI, nextPowerOfTwo__pureZmath_177)(NI x);
1146 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
1147 N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
1148 static N_NIMCALL(void, Marker_tySequence__gVogYzwlGNrCaz6jQnXRzA)(void* p, NI op);
1149 N_LIB_PRIVATE N_NIMCALL(void, add__ast_4797)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
1150 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, freshVars__closureiters_1804)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_FreshVarsContext__BITJ25TBEN8CE4NK59coN0w* c);
1151 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getOrDefault__closureiters_1903)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ t, NI key);
1152 static N_INLINE(NI, rawGet__closureiters_1912)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ t, NI key, NI* hc);
1153 static N_INLINE(NI, hash__pureZhashes_128)(NI x);
1154 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x);
1155 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b);
1156 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode);
1157 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash);
1158 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3719)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1159 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyNode__ast_4336)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
1160 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1161 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, copySym__ast_4054)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id);
1162 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___closureiters_2290)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ* t, NI key, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* val);
1163 static N_INLINE(NIM_BOOL, mustRehash__closureiters_2463)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ t);
1164 N_LIB_PRIVATE N_NIMCALL(void, enlarge__closureiters_2616)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ* t);
1165 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__closureiters_2916)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ* t, tySequence__gVogYzwlGNrCaz6jQnXRzA** data, NI key, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* val, NI hc, NI h);
1166 static N_INLINE(NI, rawGetKnownHC__closureiters_3085)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ t, NI key, NI hc);
1167 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3716)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
1168 N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1118)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
1169 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, toStmtList__closureiters_136)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1170 N_LIB_PRIVATE N_NIMCALL(NI, newState__closureiters_97)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gotoOut);
1171 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newIntLit__lowerings_695)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NI64 value);
1172 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newTree__ast_3392)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** children, NI childrenLen_0);
1173 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lowerStmtListExprs__closureiters_478)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL* needsSplit);
1174 N_LIB_PRIVATE N_NIMCALL(void, exprToStmtList__closureiters_385)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyTuple__EFqgCXJ4d8PgqOdFJmldsQ* Result);
1175 static N_INLINE(void, nimGCunrefRC1)(void* p);
1176 N_LIB_PRIVATE N_NIMCALL(void, add__closureiters_406)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** y, NI yLen_0);
1177 N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
1178 static N_INLINE(NIM_BOOL, isEmptyType__ast_4779)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1179 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, newTempVar__closureiters_167)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1180 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, newEnvVar__closureiters_49)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, NimStringDesc* name, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1181 N_LIB_PRIVATE N_NIMCALL(void, addVar__lowerings_63)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* v);
1182 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, addUniqueField__lowerings_443)(tyObject_TType__facALICuu8zUj0hjvbTLFg* obj, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
1183 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lastSon__ast_3743)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
1184 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
1185 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
1186 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
1187 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
1188 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
1189 N_LIB_PRIVATE N_NIMCALL(void, addExprAssgn__closureiters_446)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* output, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* input, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
1190 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newEnvVarAsgn__closureiters_441)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* v);
1191 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newEnvVarAccess__closureiters_70)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1192 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, rawIndirectAccess__lowerings_326)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1193 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
1194 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, convertExprBodyToAsgn__closureiters_469)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exprBody, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* res);
1195 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNotCall__closureiters_474)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e);
1196 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getSysMagic__magicsys_29)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* name, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m);
1197 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, getSysType__magicsys_60)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind);
1198 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getSysSym__magicsys_16)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* name);
1199 N_LIB_PRIVATE N_NIMCALL(void, transitionSonsKind__ast_4359)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TNodeKind__Dq0DNfMwTBUf7hLFKKDU7g kind);
1200 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasYieldsInExpressions__closureiters_371)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1201 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasYields__closureiters_175)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1202 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformClosureIteratorBody__closureiters_1173)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gotoOut);
1203 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, addGotoOut__closureiters_147)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gotoOut);
1204 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformBreaksAndContinuesInWhile__closureiters_179)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* before, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* after);
1205 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformBreaksInBlock__closureiters_205)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* label, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* after);
1206 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, collectExceptState__closureiters_256)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1207 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, callCodegenProc__lowerings_635)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NimStringDesc* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg1, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg2, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg3, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* optionalArgs);
1208 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newOr__closureiters_251)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
1209 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNullifyCurExc__closureiters_245)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1210 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newCurExcAccess__closureiters_91)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx);
1211 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNode__ast_3332)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind);
1212 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getFinallyNode__closureiters_357)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1213 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformReturnsInTry__closureiters_1107)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1214 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newUnrollFinallyAccess__closureiters_84)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1215 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newIntTypeNode__ast_3783)(NI64 intVal, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1216 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newTmpResultAccess__closureiters_77)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx);
1217 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newEndFinallyNode__closureiters_1092)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1218 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getClosureIterResult__lambdalifting_62)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* iter, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
1219 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getCompilerProc__magicsys_145)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NimStringDesc* name);
1220 N_LIB_PRIVATE N_NIMCALL(void, addElseToExcept__closureiters_316)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1221 N_LIB_PRIVATE N_NIMCALL(void, deleteEmptyStates__closureiters_1659)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx);
1222 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipStmtList__closureiters_1491)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1223 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipThroughEmptyStates__closureiters_1529)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1224 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyTree__ast_4431)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
1225 N_LIB_PRIVATE N_NIMCALL(NI, skipEmptyStates__closureiters_1503)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, NI stateIdx);
1226 N_LIB_PRIVATE N_NIMCALL(void, delete__closureiters_1709)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** x, NI i);
1227 N_LIB_PRIVATE N_NIMCALL(void, delete__closureiters_1746)(tySequence__qwqHTkRvwhrRyENtudHQ7g** x, NI i);
1228 N_LIB_PRIVATE N_NIMCALL(void, del__closureiters_3571)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** x, NI i);
1229 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformStateAssignments__closureiters_1386)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1230 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStateAssgn__closureiters_45)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, NI stateNo);
1231 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStateAssgn__closureiters_41)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* toValue);
1232 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStateAccess__closureiters_35)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx);
1233 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getStateField__lambdalifting_4660)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
1234 N_LIB_PRIVATE N_NIMCALL(NI, stateFromGotoState__closureiters_1375)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1235 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, wrapIntoStateLoop__closureiters_1612)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1236 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, wrapIntoTryExcept__closureiters_1605)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1237 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newCatchBody__closureiters_1568)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1238 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, createExceptionTable__closureiters_1553)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx);
1239 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, newArrayType__closureiters_1545)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI n, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
1240 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, newType__ast_3896)(tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
1241 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
1242 N_LIB_PRIVATE N_NIMCALL(void, rawAddSon__ast_4288)(tyObject_TType__facALICuu8zUj0hjvbTLFg* father, tyObject_TType__facALICuu8zUj0hjvbTLFg* son, NIM_BOOL propagateHasAsgn);
1243 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newIntNode__ast_3723)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, NI64 intVal);
1244 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_2, ":state", 6);
1245 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_3, ":stateLoop", 10);
1246 extern TNimType NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_;
1247 extern TNimType NTIseqLtupleLn58pnode_idx58intTT__1I3cxybVrOXM64KW2dfERQ_;
1248 N_LIB_PRIVATE TNimType NTIkeyvaluepair__O3AtiO8fwKWfdl6NGmuzhw_;
1249 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
1250 extern TNimType NTIpsym__dG2QVH5Z69aMUY38zTqWxaA_;
1251 N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_;
1252 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_5, "unsupported control flow: \'finally: ... raise\' duplicated because of \'break\'", 76);
1253 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_7, "/home/runner/work/nightlies/nightlies/nim/compiler/closureiters.nim", 67);
1254 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_6 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1255 ((NI) 1337),
1256 ((NI) 14)}
1257 ;
1258 extern TNimType NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_;
1259 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
1260 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_8, "lowerStmtListExprs: constr typ.isNil", 36);
1261 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_9 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1262 ((NI) 468),
1263 ((NI) 35)}
1264 ;
1265 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_10, ":tmpSlLower", 11);
1266 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_11, "lowerStmtListExpr(nkIf): ", 25);
1267 extern TNimType NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_;
1268 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_12 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1269 ((NI) 546),
1270 ((NI) 23)}
1271 ;
1272 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_13, "lowerStmtListExpr(nkTryStmt): ", 30);
1273 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_14 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1274 ((NI) 576),
1275 ((NI) 25)}
1276 ;
1277 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_15, "lowerStmtListExpr(nkCaseStmt): ", 31);
1278 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_16 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1279 ((NI) 608),
1280 ((NI) 25)}
1281 ;
1282 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_17, "not", 3);
1283 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_18, "true", 4);
1284 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_19, "yield in expr not lowered", 25);
1285 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_20 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1286 ((NI) 1420),
1287 ((NI) 17)}
1288 ;
1289 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_21, "transformClosureIteratorBody != s", 33);
1290 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_22 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1291 ((NI) 888),
1292 ((NI) 23)}
1293 ;
1294 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_23, "of", 2);
1295 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_24, "getCurrentException", 19);
1296 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_25, "or", 2);
1297 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_26, ":curExc", 7);
1298 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_27, ":unrollFinally", 14);
1299 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_28, ":tmpResult", 10);
1300 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_29, "==", 2);
1301 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_30, "closureIterSetupExc", 19);
1302 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_31, "transformReturnsInTry != tryBody", 32);
1303 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_32 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1304 ((NI) 997),
1305 ((NI) 21)}
1306 ;
1307 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_33, "transformClosureIteratorBody != tryBody", 39);
1308 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_34 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1309 ((NI) 999),
1310 ((NI) 21)}
1311 ;
1312 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_35, "transformReturnsInTry != exceptBody", 35);
1313 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_36 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1314 ((NI) 1004),
1315 ((NI) 21)}
1316 ;
1317 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_37, "transformClosureIteratorBody != exceptBody", 42);
1318 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_38 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1319 ((NI) 1006),
1320 ((NI) 21)}
1321 ;
1322 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_39, "transformClosureIteratorBody != finallyBody", 43);
1323 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_40 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1324 ((NI) 1011),
1325 ((NI) 21)}
1326 ;
1327 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_41, "closure iter ", 13);
1328 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__slVvvIjx75ivXdMpHiE9c9aQ_42 = {((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_7),
1329 ((NI) 1014),
1330 ((NI) 17)}
1331 ;
1332 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_43, "<", 1);
1333 STRING_LITERAL(TM__slVvvIjx75ivXdMpHiE9c9aQ_44, "-", 1);
1334 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5226;
N_INLINE(void,nimSetMem__systemZmemory_7)1335 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
1336 void* T1_;
1337 T1_ = (void*)0;
1338 T1_ = memset(a, v, ((size_t) (size)));
1339 }
N_INLINE(void,nimZeroMem)1340 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
1341 nimSetMem__systemZmemory_7(p, ((int) 0), size);
1342 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextSymId__ast_3132)1343 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
1344 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
1345 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
1346 (*x).symId += ((NI) 1);
1347 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
1348 result.module = (*x).module;
1349 result.item = (*x).symId;
1350 return result;
1351 }
N_INLINE(NI,pluspercent___system_696)1352 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
1353 NI result;
1354 result = (NI)0;
1355 result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
1356 return result;
1357 }
N_INLINE(void,incRef__system_5317)1358 static N_INLINE(void, incRef__system_5317)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1359 (*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
1360 }
N_INLINE(NI,minuspercent___system_716)1361 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
1362 NI result;
1363 result = (NI)0;
1364 result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
1365 return result;
1366 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5279)1367 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5279)(void* usr) {
1368 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
1369 NI T1_;
1370 result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1371 T1_ = (NI)0;
1372 T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
1373 result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
1374 return result;
1375 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)1376 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
1377 NIM_BOOL result;
1378 result = (NIM_BOOL)0;
1379 result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
1380 return result;
1381 }
N_INLINE(void,rtlAddZCT__system_5322)1382 static N_INLINE(void, rtlAddZCT__system_5322)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1383 addZCT__system_5273((&gch__system_5226.zct), c);
1384 }
N_INLINE(void,decRef__system_5324)1385 static N_INLINE(void, decRef__system_5324)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1386 (*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
1387 {
1388 NIM_BOOL T3_;
1389 T3_ = (NIM_BOOL)0;
1390 T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
1391 if (!T3_) goto LA4_;
1392 rtlAddZCT__system_5322(c);
1393 }
1394 LA4_: ;
1395 }
N_INLINE(void,asgnRef)1396 static N_INLINE(void, asgnRef)(void** dest, void* src) {
1397 {
1398 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
1399 if (!!((src == NIM_NIL))) goto LA3_;
1400 T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1401 T5_ = usrToCell__system_5279(src);
1402 incRef__system_5317(T5_);
1403 }
1404 LA3_: ;
1405 {
1406 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
1407 if (!!(((*dest) == NIM_NIL))) goto LA8_;
1408 T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1409 T10_ = usrToCell__system_5279((*dest));
1410 decRef__system_5324(T10_);
1411 }
1412 LA8_: ;
1413 (*dest) = src;
1414 }
N_INLINE(NI,len__ast_3198)1415 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1416 NI result;
1417 NI T1_;
1418 result = (NI)0;
1419 T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
1420 result = T1_;
1421 return result;
1422 }
N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,pop__trees_32)1423 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, pop__trees_32)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** s) {
1424 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
1425 NI L;
1426 NI T1_;
1427 result = NIM_NIL;
1428 T1_ = ((*s) ? (*s)->Sup.len : 0);
1429 L = (NI)(T1_ - ((NI) 1));
1430 result = (*s)->data[L];
1431 unsureAsgnRef((void**) (&(*s)), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*s))->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (L))));
1432 return result;
1433 }
N_INLINE(void,pop__closureiters_3415)1434 static N_INLINE(void, pop__closureiters_3415)(tySequence__1I3cxybVrOXM64KW2dfERQ** s, tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw* Result) {
1435 NI L;
1436 NI T1_;
1437 T1_ = ((*s) ? (*s)->Sup.len : 0);
1438 L = (NI)(T1_ - ((NI) 1));
1439 unsureAsgnRef((void**) (&(*Result).Field0), (*s)->data[L].Field0);
1440 (*Result).Field1 = (*s)->data[L].Field1;
1441 unsureAsgnRef((void**) (&(*s)), (tySequence__1I3cxybVrOXM64KW2dfERQ*) setLengthSeqV2(&((*s))->Sup, (&NTIseqLtupleLn58pnode_idx58intTT__1I3cxybVrOXM64KW2dfERQ_), ((NI) (L))));
1442 }
N_INLINE(tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw *,X5BX5D___closureiters_3437)1443 static N_INLINE(tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw*, X5BX5D___closureiters_3437)(tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw* s, NI sLen_0, NI i) {
1444 tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw* result;
1445 result = (tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw*)0;
1446 result = (&s[(NI)(sLen_0 - i)]);
1447 return result;
1448 }
N_INLINE(NI,slotsNeeded__pureZcollectionsZtables_42)1449 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count) {
1450 NI result;
1451 result = (NI)0;
1452 result = nextPowerOfTwo__pureZmath_177((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
1453 return result;
1454 }
N_NIMCALL(void,Marker_tySequence__gVogYzwlGNrCaz6jQnXRzA)1455 static N_NIMCALL(void, Marker_tySequence__gVogYzwlGNrCaz6jQnXRzA)(void* p, NI op) {
1456 tySequence__gVogYzwlGNrCaz6jQnXRzA* a;
1457 NI T1_;
1458 a = (tySequence__gVogYzwlGNrCaz6jQnXRzA*)p;
1459 T1_ = (NI)0;
1460 for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
1461 nimGCvisit((void*)a->data[T1_].Field2, op);
1462 }
1463 }
N_NIMCALL(void,initTable__closureiters_3484)1464 N_LIB_PRIVATE N_NIMCALL(void, initTable__closureiters_3484)(NI initialSize, tyObject_Table__5WMmzblM3wEpYUTgMBzetQ* Result) {
1465 NI correctSizeX60gensym346_;
1466 unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
1467 (*Result).counter = 0;
1468 correctSizeX60gensym346_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
1469 (*Result).counter = ((NI) 0);
1470 unsureAsgnRef((void**) (&(*Result).data), (tySequence__gVogYzwlGNrCaz6jQnXRzA*) newSeq((&NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_), ((NI) (correctSizeX60gensym346_))));
1471 }
N_INLINE(NU64,hiXorLo__pureZhashes_79)1472 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b) {
1473 NU64 result;
1474 result = (NU64)0;
1475 __uint128_t r = a; r *= b; result = (r >> 64) ^ r;
1476 return result;
1477 }
N_INLINE(NI,hashWangYi1__pureZhashes_136)1478 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x) {
1479 NI result;
1480 NU64 T1_;
1481 NU64 T2_;
1482 result = (NI)0;
1483 T1_ = (NU64)0;
1484 T1_ = hiXorLo__pureZhashes_79(11562461410679940143ULL, (NU64)(x ^ 16646288086500911323ULL));
1485 T2_ = (NU64)0;
1486 T2_ = hiXorLo__pureZhashes_79(T1_, 16952864883938283885ULL);
1487 result = ((NI) (T2_));
1488 return result;
1489 }
N_INLINE(NI,hash__pureZhashes_128)1490 static N_INLINE(NI, hash__pureZhashes_128)(NI x) {
1491 NI result;
1492 result = (NI)0;
1493 result = hashWangYi1__pureZhashes_136(((NU64) (x)));
1494 return result;
1495 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZtables_31)1496 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) {
1497 NIM_BOOL result;
1498 result = (NIM_BOOL)0;
1499 result = !((hcode == ((NI) 0)));
1500 return result;
1501 }
N_INLINE(NI,nextTry__pureZcollectionsZtables_34)1502 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) {
1503 NI result;
1504 result = (NI)0;
1505 result = (NI)((NI)(h + ((NI) 1)) & maxHash);
1506 return result;
1507 }
N_INLINE(NI,rawGet__closureiters_1912)1508 static N_INLINE(NI, rawGet__closureiters_1912)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ t, NI key, NI* hc) {
1509 NI result;
1510 NI h;
1511 NI T10_;
1512 { result = (NI)0;
1513 (*hc) = hash__pureZhashes_128(key);
1514 {
1515 if (!((*hc) == ((NI) 0))) goto LA3_;
1516 (*hc) = ((NI) 314159265);
1517 }
1518 LA3_: ;
1519 {
1520 NI T7_;
1521 T7_ = (t.data ? t.data->Sup.len : 0);
1522 if (!(T7_ == ((NI) 0))) goto LA8_;
1523 result = ((NI) -1);
1524 goto BeforeRet_;
1525 }
1526 LA8_: ;
1527 T10_ = ((t.data ? t.data->Sup.len : 0)-1);
1528 h = (NI)((*hc) & T10_);
1529 {
1530 while (1) {
1531 NIM_BOOL T13_;
1532 NI T20_;
1533 T13_ = (NIM_BOOL)0;
1534 T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
1535 if (!T13_) goto LA12;
1536 {
1537 NIM_BOOL T16_;
1538 T16_ = (NIM_BOOL)0;
1539 T16_ = (t.data->data[h].Field0 == (*hc));
1540 if (!(T16_)) goto LA17_;
1541 T16_ = (t.data->data[h].Field1 == key);
1542 LA17_: ;
1543 if (!T16_) goto LA18_;
1544 result = h;
1545 goto BeforeRet_;
1546 }
1547 LA18_: ;
1548 T20_ = ((t.data ? t.data->Sup.len : 0)-1);
1549 h = nextTry__pureZcollectionsZtables_34(h, T20_);
1550 } LA12: ;
1551 }
1552 result = (NI)(((NI) -1) - h);
1553 }BeforeRet_: ;
1554 return result;
1555 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,getOrDefault__closureiters_1903)1556 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getOrDefault__closureiters_1903)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ t, NI key) {
1557 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
1558 NI hcX60gensym308_;
1559 NI indexX60gensym308_;
1560 result = NIM_NIL;
1561 hcX60gensym308_ = (NI)0;
1562 indexX60gensym308_ = rawGet__closureiters_1912(t, key, (&hcX60gensym308_));
1563 {
1564 if (!(((NI) 0) <= indexX60gensym308_)) goto LA3_;
1565 result = t.data->data[indexX60gensym308_].Field2;
1566 }
1567 LA3_: ;
1568 return result;
1569 }
N_INLINE(NI,safeLen__ast_3191)1570 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1571 NI result;
1572 result = (NI)0;
1573 {
1574 if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
1575 result = ((NI) 0);
1576 }
1577 goto LA1_;
1578 LA3_: ;
1579 {
1580 result = len__ast_3198(n);
1581 }
1582 LA1_: ;
1583 return result;
1584 }
N_INLINE(NIM_BOOL,mustRehash__closureiters_2463)1585 static N_INLINE(NIM_BOOL, mustRehash__closureiters_2463)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ t) {
1586 NIM_BOOL result;
1587 NIM_BOOL T1_;
1588 NI T2_;
1589 NI T4_;
1590 result = (NIM_BOOL)0;
1591 T1_ = (NIM_BOOL)0;
1592 T2_ = (t.data ? t.data->Sup.len : 0);
1593 T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
1594 if (T1_) goto LA3_;
1595 T4_ = (t.data ? t.data->Sup.len : 0);
1596 T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
1597 LA3_: ;
1598 result = T1_;
1599 return result;
1600 }
N_NIMCALL(void,rawInsert__closureiters_2916)1601 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__closureiters_2916)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ* t, tySequence__gVogYzwlGNrCaz6jQnXRzA** data, NI key, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* val, NI hc, NI h) {
1602 (*data)->data[h].Field1 = key;
1603 asgnRef((void**) (&(*data)->data[h].Field2), val);
1604 (*data)->data[h].Field0 = hc;
1605 }
N_NIMCALL(void,enlarge__closureiters_2616)1606 N_LIB_PRIVATE N_NIMCALL(void, enlarge__closureiters_2616)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ* t) {
1607 tySequence__gVogYzwlGNrCaz6jQnXRzA* n;
1608 NI T1_;
1609 tySequence__gVogYzwlGNrCaz6jQnXRzA* T2_;
1610 n = NIM_NIL;
1611 T1_ = ((*t).data ? (*t).data->Sup.len : 0);
1612 n = (tySequence__gVogYzwlGNrCaz6jQnXRzA*) newSeq((&NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_), ((NI) ((NI)(T1_ * ((NI) 2)))));
1613 T2_ = NIM_NIL;
1614 T2_ = (*t).data;
1615 unsureAsgnRef((void**) (&(*t).data), n);
1616 n = T2_;
1617 {
1618 NI i;
1619 NI colontmp_;
1620 NI T4_;
1621 NI res;
1622 i = (NI)0;
1623 colontmp_ = (NI)0;
1624 T4_ = ((n ? n->Sup.len : 0)-1);
1625 colontmp_ = T4_;
1626 res = ((NI) 0);
1627 {
1628 while (1) {
1629 NI eh;
1630 if (!(res <= colontmp_)) goto LA6;
1631 i = res;
1632 eh = n->data[i].Field0;
1633 {
1634 NIM_BOOL T9_;
1635 NI j;
1636 NI T12_;
1637 NI T17_;
1638 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T18_;
1639 T9_ = (NIM_BOOL)0;
1640 T9_ = isFilled__pureZcollectionsZtables_31(eh);
1641 if (!T9_) goto LA10_;
1642 T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
1643 j = (NI)(eh & T12_);
1644 {
1645 while (1) {
1646 NIM_BOOL T15_;
1647 NI T16_;
1648 T15_ = (NIM_BOOL)0;
1649 T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
1650 if (!T15_) goto LA14;
1651 T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
1652 j = nextTry__pureZcollectionsZtables_34(j, T16_);
1653 } LA14: ;
1654 }
1655 T17_ = (NI)0;
1656 T17_ = n->data[i].Field1;
1657 n->data[i].Field1 = 0;
1658 T18_ = NIM_NIL;
1659 T18_ = n->data[i].Field2;
1660 asgnRef((void**) (&n->data[i].Field2), NIM_NIL);
1661 rawInsert__closureiters_2916(t, (&(*t).data), T17_, T18_, eh, j);
1662 }
1663 LA10_: ;
1664 res += ((NI) 1);
1665 } LA6: ;
1666 }
1667 }
1668 }
N_INLINE(NI,rawGetKnownHC__closureiters_3085)1669 static N_INLINE(NI, rawGetKnownHC__closureiters_3085)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ t, NI key, NI hc) {
1670 NI result;
1671 NI h;
1672 NI T6_;
1673 { result = (NI)0;
1674 {
1675 NI T3_;
1676 T3_ = (t.data ? t.data->Sup.len : 0);
1677 if (!(T3_ == ((NI) 0))) goto LA4_;
1678 result = ((NI) -1);
1679 goto BeforeRet_;
1680 }
1681 LA4_: ;
1682 T6_ = ((t.data ? t.data->Sup.len : 0)-1);
1683 h = (NI)(hc & T6_);
1684 {
1685 while (1) {
1686 NIM_BOOL T9_;
1687 NI T16_;
1688 T9_ = (NIM_BOOL)0;
1689 T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
1690 if (!T9_) goto LA8;
1691 {
1692 NIM_BOOL T12_;
1693 T12_ = (NIM_BOOL)0;
1694 T12_ = (t.data->data[h].Field0 == hc);
1695 if (!(T12_)) goto LA13_;
1696 T12_ = (t.data->data[h].Field1 == key);
1697 LA13_: ;
1698 if (!T12_) goto LA14_;
1699 result = h;
1700 goto BeforeRet_;
1701 }
1702 LA14_: ;
1703 T16_ = ((t.data ? t.data->Sup.len : 0)-1);
1704 h = nextTry__pureZcollectionsZtables_34(h, T16_);
1705 } LA8: ;
1706 }
1707 result = (NI)(((NI) -1) - h);
1708 }BeforeRet_: ;
1709 return result;
1710 }
N_NIMCALL(void,X5BX5Deq___closureiters_2290)1711 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___closureiters_2290)(tyObject_Table__5WMmzblM3wEpYUTgMBzetQ* t, NI key, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* val) {
1712 NI hc;
1713 NI index;
1714 {
1715 NI T3_;
1716 NI correctSizeX60gensym318_;
1717 T3_ = ((*t).data ? (*t).data->Sup.len : 0);
1718 if (!(T3_ == ((NI) 0))) goto LA4_;
1719 correctSizeX60gensym318_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1720 (*t).counter = ((NI) 0);
1721 unsureAsgnRef((void**) (&(*t).data), (tySequence__gVogYzwlGNrCaz6jQnXRzA*) newSeq((&NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_), ((NI) (correctSizeX60gensym318_))));
1722 }
1723 LA4_: ;
1724 hc = (NI)0;
1725 index = rawGet__closureiters_1912((*t), key, (&hc));
1726 {
1727 if (!(((NI) 0) <= index)) goto LA8_;
1728 asgnRef((void**) (&(*t).data->data[index].Field2), val);
1729 }
1730 goto LA6_;
1731 LA8_: ;
1732 {
1733 {
1734 NI T13_;
1735 NI correctSizeX60gensym321_;
1736 T13_ = ((*t).data ? (*t).data->Sup.len : 0);
1737 if (!(T13_ == ((NI) 0))) goto LA14_;
1738 correctSizeX60gensym321_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1739 (*t).counter = ((NI) 0);
1740 unsureAsgnRef((void**) (&(*t).data), (tySequence__gVogYzwlGNrCaz6jQnXRzA*) newSeq((&NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_), ((NI) (correctSizeX60gensym321_))));
1741 }
1742 LA14_: ;
1743 {
1744 NIM_BOOL T18_;
1745 T18_ = (NIM_BOOL)0;
1746 T18_ = mustRehash__closureiters_2463((*t));
1747 if (!T18_) goto LA19_;
1748 enlarge__closureiters_2616(t);
1749 index = rawGetKnownHC__closureiters_3085((*t), key, hc);
1750 }
1751 LA19_: ;
1752 index = (NI)(((NI) -1) - index);
1753 rawInsert__closureiters_2916(t, (&(*t).data), key, val, hc, index);
1754 (*t).counter += ((NI) 1);
1755 }
1756 LA6_: ;
1757 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,freshVars__closureiters_1804)1758 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, freshVars__closureiters_1804)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_FreshVarsContext__BITJ25TBEN8CE4NK59coN0w* c) {
1759 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
1760 result = NIM_NIL;
1761 switch ((*n).kind) {
1762 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
1763 {
1764 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* x;
1765 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym307_;
1766 xX60gensym307_ = (*n)._kind_4.sym;
1767 x = getOrDefault__closureiters_1903((*c).tab, (NI)((NI)((NU64)(((NI) ((*xX60gensym307_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym307_).Sup.itemId.item))));
1768 {
1769 if (!(x == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA4_;
1770 result = n;
1771 }
1772 goto LA2_;
1773 LA4_: ;
1774 {
1775 result = newSymNode__ast_3719(x, (*n).info);
1776 }
1777 LA2_: ;
1778 }
1779 break;
1780 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
1781 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
1782 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
1783 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
1784 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
1785 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
1786 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
1787 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
1788 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
1789 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
1790 {
1791 result = n;
1792 }
1793 break;
1794 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100):
1795 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99):
1796 {
1797 result = copyNode__ast_4336(n);
1798 {
1799 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
1800 it = NIM_NIL;
1801 {
1802 NI i;
1803 NI colontmp_;
1804 NI i_2;
1805 i = (NI)0;
1806 colontmp_ = (NI)0;
1807 colontmp_ = safeLen__ast_3191(n);
1808 i_2 = ((NI) 0);
1809 {
1810 while (1) {
1811 if (!(i_2 < colontmp_)) goto LA12;
1812 i = i_2;
1813 it = (*n)._kind_6.sons->data[i];
1814 {
1815 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* idefs;
1816 if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 35) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 36))) goto LA15_;
1817 idefs = copyNode__ast_4336(it);
1818 {
1819 NI v;
1820 NI colontmp__2;
1821 NI T18_;
1822 NI res;
1823 v = (NI)0;
1824 colontmp__2 = (NI)0;
1825 T18_ = (NI)0;
1826 T18_ = len__ast_3198(it);
1827 colontmp__2 = (NI)(T18_ - ((NI) 3));
1828 res = ((NI) 0);
1829 {
1830 while (1) {
1831 if (!(res <= colontmp__2)) goto LA20;
1832 v = res;
1833 {
1834 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* x_2;
1835 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T25_;
1836 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym316_;
1837 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T26_;
1838 if (!((*(*it)._kind_6.sons->data[v]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA23_;
1839 T25_ = nextSymId__ast_3132((*c).idgen);
1840 x_2 = copySym__ast_4054((*(*it)._kind_6.sons->data[v])._kind_4.sym, T25_);
1841 xX60gensym316_ = (*(*it)._kind_6.sons->data[v])._kind_4.sym;
1842 X5BX5Deq___closureiters_2290((&(*c).tab), (NI)((NI)((NU64)(((NI) ((*xX60gensym316_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym316_).Sup.itemId.item))), x_2);
1843 T26_ = NIM_NIL;
1844 T26_ = newSymNode__ast_3716(x_2);
1845 add__ast_4797(idefs, T26_);
1846 }
1847 goto LA21_;
1848 LA23_: ;
1849 {
1850 add__ast_4797(idefs, (*it)._kind_6.sons->data[v]);
1851 }
1852 LA21_: ;
1853 res += ((NI) 1);
1854 } LA20: ;
1855 }
1856 }
1857 {
1858 NI rest;
1859 NI colontmp__3;
1860 NI colontmp__4;
1861 NI T29_;
1862 NI i_3;
1863 rest = (NI)0;
1864 colontmp__3 = (NI)0;
1865 colontmp__4 = (NI)0;
1866 T29_ = (NI)0;
1867 T29_ = len__ast_3198(it);
1868 colontmp__3 = (NI)(T29_ - ((NI) 2));
1869 colontmp__4 = len__ast_3198(it);
1870 i_3 = colontmp__3;
1871 {
1872 while (1) {
1873 if (!(i_3 < colontmp__4)) goto LA31;
1874 rest = i_3;
1875 add__ast_4797(idefs, (*it)._kind_6.sons->data[rest]);
1876 i_3 += ((NI) 1);
1877 } LA31: ;
1878 }
1879 }
1880 add__ast_4797(result, idefs);
1881 }
1882 goto LA13_;
1883 LA15_: ;
1884 {
1885 add__ast_4797(result, it);
1886 }
1887 LA13_: ;
1888 i_2 += ((NI) 1);
1889 } LA12: ;
1890 }
1891 }
1892 }
1893 }
1894 break;
1895 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108):
1896 {
1897 liMessage__msgs_1118((*c).config, (*c).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_5), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__slVvvIjx75ivXdMpHiE9c9aQ_6, NIM_FALSE);
1898 }
1899 break;
1900 default:
1901 {
1902 result = n;
1903 {
1904 NI i_4;
1905 NI colontmp__5;
1906 NI i_5;
1907 i_4 = (NI)0;
1908 colontmp__5 = (NI)0;
1909 colontmp__5 = safeLen__ast_3191(n);
1910 i_5 = ((NI) 0);
1911 {
1912 while (1) {
1913 if (!(i_5 < colontmp__5)) goto LA37;
1914 i_4 = i_5;
1915 asgnRef((void**) (&(*result)._kind_6.sons->data[i_4]), freshVars__closureiters_1804((*n)._kind_6.sons->data[i_4], c));
1916 i_5 += ((NI) 1);
1917 } LA37: ;
1918 }
1919 }
1920 }
1921 break;
1922 }
1923 return result;
1924 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,preprocess__closureiters_3362)1925 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, preprocess__closureiters_3362)(tyObject_PreprocessContext__ATjkivkWYrBstrMNxiy9cNw* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1926 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
1927 result = NIM_NIL;
1928 result = n;
1929 switch ((*n).kind) {
1930 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106):
1931 {
1932 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* f;
1933 f = lastSon__ast_4832(n);
1934 {
1935 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T6_;
1936 NI T7_;
1937 if (!((*f).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107))) goto LA4_;
1938 T6_ = NIM_NIL;
1939 T6_ = lastSon__ast_4832(f);
1940 unsureAsgnRef((void**) (&(*c).finallys), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) incrSeqV3((TGenericSeq*)((*c).finallys), (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_)));
1941 T7_ = (*c).finallys->Sup.len++;
1942 asgnRef((void**) (&(*c).finallys->data[T7_]), T6_);
1943 }
1944 LA4_: ;
1945 {
1946 NI i;
1947 NI colontmp_;
1948 NI i_2;
1949 i = (NI)0;
1950 colontmp_ = (NI)0;
1951 colontmp_ = len__ast_3198(n);
1952 i_2 = ((NI) 0);
1953 {
1954 while (1) {
1955 if (!(i_2 < colontmp_)) goto LA10;
1956 i = i_2;
1957 asgnRef((void**) (&(*result)._kind_6.sons->data[i]), preprocess__closureiters_3362(c, (*n)._kind_6.sons->data[i]));
1958 i_2 += ((NI) 1);
1959 } LA10: ;
1960 }
1961 }
1962 {
1963 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T15_;
1964 if (!((*f).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107))) goto LA13_;
1965 T15_ = NIM_NIL;
1966 T15_ = pop__trees_32((&(*c).finallys));
1967 (void)(T15_);
1968 }
1969 LA13_: ;
1970 }
1971 break;
1972 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
1973 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112):
1974 {
1975 tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw T17_;
1976 NI T18_;
1977 NI T19_;
1978 tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw T23_;
1979 nimZeroMem((void*)(&T17_), sizeof(tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw));
1980 T17_.Field0 = n;
1981 T18_ = ((*c).finallys ? (*c).finallys->Sup.len : 0);
1982 T17_.Field1 = T18_;
1983 unsureAsgnRef((void**) (&(*c).blocks), (tySequence__1I3cxybVrOXM64KW2dfERQ*) incrSeqV3((TGenericSeq*)((*c).blocks), (&NTIseqLtupleLn58pnode_idx58intTT__1I3cxybVrOXM64KW2dfERQ_)));
1984 T19_ = (*c).blocks->Sup.len++;
1985 asgnRef((void**) (&(*c).blocks->data[T19_].Field0), T17_.Field0);
1986 (*c).blocks->data[T19_].Field1 = T17_.Field1;
1987 {
1988 NI i_3;
1989 NI colontmp__2;
1990 NI i_4;
1991 i_3 = (NI)0;
1992 colontmp__2 = (NI)0;
1993 colontmp__2 = len__ast_3198(n);
1994 i_4 = ((NI) 0);
1995 {
1996 while (1) {
1997 if (!(i_4 < colontmp__2)) goto LA22;
1998 i_3 = i_4;
1999 asgnRef((void**) (&(*result)._kind_6.sons->data[i_3]), preprocess__closureiters_3362(c, (*n)._kind_6.sons->data[i_3]));
2000 i_4 += ((NI) 1);
2001 } LA22: ;
2002 }
2003 }
2004 nimZeroMem((void*)(&T23_), sizeof(tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw));
2005 pop__closureiters_3415((&(*c).blocks), (&T23_));
2006 (void)(T23_);
2007 }
2008 break;
2009 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110):
2010 {
2011 {
2012 NI T27_;
2013 T27_ = ((*c).blocks ? (*c).blocks->Sup.len : 0);
2014 if (!(T27_ == ((NI) 0))) goto LA28_;
2015 }
2016 goto LA25_;
2017 LA28_: ;
2018 {
2019 NI fin;
2020 fin = ((NI) -1);
2021 {
2022 tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw* T35_;
2023 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1))) goto LA33_;
2024 T35_ = (tyTuple__FyNGItFCBJSXLJ9aJSzlX9aw*)0;
2025 T35_ = X5BX5D___closureiters_3437((*c).blocks->data, ((*c).blocks ? (*c).blocks->Sup.len : 0), ((NI) 1));
2026 fin = (*T35_).Field1;
2027 }
2028 goto LA31_;
2029 LA33_: ;
2030 {
2031 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA37_;
2032 {
2033 NI i_5;
2034 NI colontmp__3;
2035 NI T40_;
2036 NI res;
2037 i_5 = (NI)0;
2038 colontmp__3 = (NI)0;
2039 T40_ = (((*c).blocks ? (*c).blocks->Sup.len : 0)-1);
2040 colontmp__3 = T40_;
2041 res = colontmp__3;
2042 {
2043 while (1) {
2044 if (!(((NI) 0) <= res)) goto LA42;
2045 i_5 = res;
2046 {
2047 NIM_BOOL T45_;
2048 NIM_BOOL T46_;
2049 T45_ = (NIM_BOOL)0;
2050 T46_ = (NIM_BOOL)0;
2051 T46_ = ((*(*c).blocks->data[i_5].Field0).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112));
2052 if (!(T46_)) goto LA47_;
2053 T46_ = ((*(*(*c).blocks->data[i_5].Field0)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
2054 LA47_: ;
2055 T45_ = T46_;
2056 if (!(T45_)) goto LA48_;
2057 T45_ = ((*(*(*c).blocks->data[i_5].Field0)._kind_6.sons->data[((NI) 0)])._kind_4.sym == (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
2058 LA48_: ;
2059 if (!T45_) goto LA49_;
2060 fin = (*c).blocks->data[i_5].Field1;
2061 goto LA39;
2062 }
2063 LA49_: ;
2064 res -= ((NI) 1);
2065 } LA42: ;
2066 }
2067 } LA39: ;
2068 }
2069 goto LA31_;
2070 LA37_: ;
2071 LA31_: ;
2072 {
2073 if (!(((NI) 0) <= fin)) goto LA53_;
2074 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
2075 {
2076 NI i_6;
2077 NI colontmp__4;
2078 NI T56_;
2079 NI res_2;
2080 i_6 = (NI)0;
2081 colontmp__4 = (NI)0;
2082 T56_ = (((*c).finallys ? (*c).finallys->Sup.len : 0)-1);
2083 colontmp__4 = T56_;
2084 res_2 = colontmp__4;
2085 {
2086 while (1) {
2087 tyObject_FreshVarsContext__BITJ25TBEN8CE4NK59coN0w vars;
2088 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T59_;
2089 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T60_;
2090 if (!(fin <= res_2)) goto LA58;
2091 i_6 = res_2;
2092 nimZeroMem((void*)(&vars), sizeof(tyObject_FreshVarsContext__BITJ25TBEN8CE4NK59coN0w));
2093 nimZeroMem((void*)(&vars), sizeof(tyObject_FreshVarsContext__BITJ25TBEN8CE4NK59coN0w));
2094 initTable__closureiters_3484(((NI) 32), (&vars.tab));
2095 vars.config = (*c).config;
2096 vars.info = (*n).info;
2097 vars.idgen = (*c).idgen;
2098 T59_ = NIM_NIL;
2099 T59_ = preprocess__closureiters_3362(c, (*c).finallys->data[i_6]);
2100 T60_ = NIM_NIL;
2101 T60_ = freshVars__closureiters_1804(T59_, (&vars));
2102 add__ast_4797(result, T60_);
2103 unsureAsgnRef((void**) (&(*c).idgen), vars.idgen);
2104 res_2 -= ((NI) 1);
2105 } LA58: ;
2106 }
2107 }
2108 add__ast_4797(result, n);
2109 }
2110 LA53_: ;
2111 }
2112 LA25_: ;
2113 }
2114 break;
2115 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
2116 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
2117 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
2118 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
2119 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
2120 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
2121 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
2122 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
2123 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
2124 {
2125 }
2126 break;
2127 default:
2128 {
2129 {
2130 NI i_7;
2131 NI colontmp__5;
2132 NI i_8;
2133 i_7 = (NI)0;
2134 colontmp__5 = (NI)0;
2135 colontmp__5 = len__ast_3198(n);
2136 i_8 = ((NI) 0);
2137 {
2138 while (1) {
2139 if (!(i_8 < colontmp__5)) goto LA65;
2140 i_7 = i_8;
2141 asgnRef((void**) (&(*result)._kind_6.sons->data[i_7]), preprocess__closureiters_3362(c, (*n)._kind_6.sons->data[i_7]));
2142 i_8 += ((NI) 1);
2143 } LA65: ;
2144 }
2145 }
2146 }
2147 break;
2148 }
2149 return result;
2150 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,toStmtList__closureiters_136)2151 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, toStmtList__closureiters_136)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
2152 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2153 result = NIM_NIL;
2154 result = n;
2155 {
2156 if (!!(((*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115) || (*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126)))) goto LA3_;
2157 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
2158 add__ast_4797(result, n);
2159 }
2160 LA3_: ;
2161 return result;
2162 }
N_NIMCALL(NI,newState__closureiters_97)2163 N_LIB_PRIVATE N_NIMCALL(NI, newState__closureiters_97)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gotoOut) {
2164 NI result;
2165 NI T1_;
2166 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* resLit;
2167 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s;
2168 NI T2_;
2169 NI T3_;
2170 result = (NI)0;
2171 T1_ = ((*ctx).states ? (*ctx).states->Sup.len : 0);
2172 result = T1_;
2173 resLit = newIntLit__lowerings_695((*ctx).g, (*n).info, ((NI64) (result)));
2174 s = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 157), (*n).info);
2175 add__ast_4797(s, resLit);
2176 add__ast_4797(s, n);
2177 unsureAsgnRef((void**) (&(*ctx).states), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) incrSeqV3((TGenericSeq*)((*ctx).states), (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_)));
2178 T2_ = (*ctx).states->Sup.len++;
2179 asgnRef((void**) (&(*ctx).states->data[T2_]), s);
2180 unsureAsgnRef((void**) (&(*ctx).exceptionTable), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*ctx).exceptionTable), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_)));
2181 T3_ = (*ctx).exceptionTable->Sup.len++;
2182 (*ctx).exceptionTable->data[T3_] = (*ctx).curExcHandlingState;
2183 {
2184 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T8_;
2185 if (!!((gotoOut == 0))) goto LA6_;
2186 T8_ = NIM_NIL;
2187 T8_ = newIntLit__lowerings_695((*ctx).g, (*gotoOut).info, ((NI64) (result)));
2188 add__ast_4797(gotoOut, T8_);
2189 }
2190 LA6_: ;
2191 return result;
2192 }
N_INLINE(void,nimGCunrefRC1)2193 static N_INLINE(void, nimGCunrefRC1)(void* p) {
2194 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
2195 T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2196 T1_ = usrToCell__system_5279(p);
2197 decRef__system_5324(T1_);
2198 }
N_NIMCALL(void,add__closureiters_406)2199 N_LIB_PRIVATE N_NIMCALL(void, add__closureiters_406)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** y, NI yLen_0) {
2200 NI xl;
2201 NI T1_;
2202 T1_ = ((*x) ? (*x)->Sup.len : 0);
2203 xl = T1_;
2204 unsureAsgnRef((void**) (&(*x)), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*x))->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((NI)(xl + yLen_0)))));
2205 {
2206 NI i;
2207 NI colontmp_;
2208 NI res;
2209 i = (NI)0;
2210 colontmp_ = (NI)0;
2211 colontmp_ = (yLen_0-1);
2212 res = ((NI) 0);
2213 {
2214 while (1) {
2215 if (!(res <= colontmp_)) goto LA4;
2216 i = res;
2217 asgnRef((void**) (&(*x)->data[(NI)(xl + i)]), y[i]);
2218 res += ((NI) 1);
2219 } LA4: ;
2220 }
2221 }
2222 }
N_NIMCALL(void,exprToStmtList__closureiters_385)2223 N_LIB_PRIVATE N_NIMCALL(void, exprToStmtList__closureiters_385)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyTuple__EFqgCXJ4d8PgqOdFJmldsQ* Result) {
2224 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
2225 unsureAsgnRef((void**)&(*Result).Field0, NIM_NIL);
2226 unsureAsgnRef((void**)&(*Result).Field1, NIM_NIL);
2227 unsureAsgnRef((void**) (&(*Result).Field0), newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info));
2228 if ((*(*Result).Field0)._kind_6.sons) { nimGCunrefRC1((*(*Result).Field0)._kind_6.sons); (*(*Result).Field0)._kind_6.sons = NIM_NIL; }
2229 n_2 = n;
2230 {
2231 while (1) {
2232 NI T3_;
2233 NI T4_;
2234 if (!((*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA2;
2235 add__closureiters_406((&(*(*Result).Field0)._kind_6.sons), (*n_2)._kind_6.sons->data, ((*n_2)._kind_6.sons ? (*n_2)._kind_6.sons->Sup.len : 0));
2236 T3_ = (NI)0;
2237 T3_ = len__ast_3198((*Result).Field0);
2238 asgnRef((void**) (&(*(*Result).Field0)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*(*Result).Field0)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((NI)(T3_ - ((NI) 1))))));
2239 T4_ = (NI)0;
2240 T4_ = len__ast_3198(n_2);
2241 n_2 = (*n_2)._kind_6.sons->data[(NI)(T4_ - ((NI) 1))];
2242 } LA2: ;
2243 }
2244 unsureAsgnRef((void**) (&(*Result).Field1), n_2);
2245 }
N_INLINE(NIM_BOOL,isEmptyType__ast_4779)2246 static N_INLINE(NIM_BOOL, isEmptyType__ast_4779)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
2247 NIM_BOOL result;
2248 NIM_BOOL T1_;
2249 result = (NIM_BOOL)0;
2250 T1_ = (NIM_BOOL)0;
2251 T1_ = (t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
2252 if (T1_) goto LA2_;
2253 T1_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 7));
2254 LA2_: ;
2255 result = T1_;
2256 return result;
2257 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,newEnvVar__closureiters_49)2258 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, newEnvVar__closureiters_49)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, NimStringDesc* name, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
2259 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2260 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T1_;
2261 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T2_;
2262 result = NIM_NIL;
2263 T1_ = NIM_NIL;
2264 T1_ = getIdent__idents_143((*(*ctx).g).cache, name);
2265 T2_ = nextSymId__ast_3132((*ctx).idgen);
2266 result = newSym__ast_3445(((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8), T1_, T2_, (*ctx).fn, (*(*ctx).fn).info, 0);
2267 asgnRef((void**) (&(*result).typ), typ);
2268 {
2269 if (!!(((*ctx).stateVarSym == 0))) goto LA5_;
2270 {
2271 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T11_;
2272 if (!((*ctx).tempVars == 0)) goto LA9_;
2273 unsureAsgnRef((void**) (&(*ctx).tempVars), newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99), (*(*ctx).fn).info));
2274 T11_ = NIM_NIL;
2275 T11_ = newSymNode__ast_3716(result);
2276 addVar__lowerings_63((*ctx).tempVars, T11_);
2277 }
2278 LA9_: ;
2279 }
2280 goto LA3_;
2281 LA5_: ;
2282 {
2283 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* envParam;
2284 tyObject_TType__facALICuu8zUj0hjvbTLFg* T13_;
2285 envParam = getEnvParam__lambdalifting_131((*ctx).fn);
2286 T13_ = NIM_NIL;
2287 T13_ = lastSon__ast_3743((*envParam).typ);
2288 result = addUniqueField__lowerings_443(T13_, result, (*(*ctx).g).cache, (*ctx).idgen);
2289 }
2290 LA3_: ;
2291 return result;
2292 }
N_INLINE(void,nimCopyMem)2293 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
2294 void* T1_;
2295 T1_ = (void*)0;
2296 T1_ = memcpy(dest, source, ((size_t) (size)));
2297 }
N_INLINE(void,copyMem__system_1727)2298 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
2299 nimCopyMem(dest, source, size);
2300 }
N_INLINE(void,appendString)2301 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
2302 {
2303 if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
2304 copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
2305 (*dest).Sup.len += (*src).Sup.len;
2306 }
2307 LA3_: ;
2308 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,newTempVar__closureiters_167)2309 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, newTempVar__closureiters_167)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
2310 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2311 NimStringDesc* T1_;
2312 NimStringDesc* T2_;
2313 result = NIM_NIL;
2314 T1_ = NIM_NIL;
2315 T2_ = NIM_NIL;
2316 T2_ = dollar___systemZdollars_3((*ctx).tempVarId);
2317 T1_ = rawNewString((T2_ ? T2_->Sup.len : 0) + 11);
2318 appendString(T1_, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_10));
2319 appendString(T1_, T2_);
2320 result = newEnvVar__closureiters_49(ctx, T1_, typ);
2321 (*ctx).tempVarId += ((NI) 1);
2322 return result;
2323 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newEnvVarAccess__closureiters_70)2324 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newEnvVarAccess__closureiters_70)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
2325 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2326 result = NIM_NIL;
2327 {
2328 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T5_;
2329 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T6_;
2330 if (!((*ctx).stateVarSym == 0)) goto LA3_;
2331 T5_ = NIM_NIL;
2332 T5_ = getEnvParam__lambdalifting_131((*ctx).fn);
2333 T6_ = NIM_NIL;
2334 T6_ = newSymNode__ast_3716(T5_);
2335 result = rawIndirectAccess__lowerings_326(T6_, s, (*(*ctx).fn).info);
2336 }
2337 goto LA1_;
2338 LA3_: ;
2339 {
2340 result = newSymNode__ast_3716(s);
2341 }
2342 LA1_: ;
2343 return result;
2344 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newEnvVarAsgn__closureiters_441)2345 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newEnvVarAsgn__closureiters_441)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* v) {
2346 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2347 result = NIM_NIL;
2348 {
2349 NIM_BOOL T3_;
2350 T3_ = (NIM_BOOL)0;
2351 T3_ = isEmptyType__ast_4779((*v).typ);
2352 if (!T3_) goto LA4_;
2353 result = v;
2354 }
2355 goto LA1_;
2356 LA4_: ;
2357 {
2358 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T7_;
2359 nimZeroMem((void*)T7_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
2360 T7_[0] = newEnvVarAccess__closureiters_70(ctx, s);
2361 T7_[1] = v;
2362 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74), T7_, 2);
2363 (*result).info = (*v).info;
2364 }
2365 LA1_: ;
2366 return result;
2367 }
N_NIMCALL(void,addExprAssgn__closureiters_446)2368 N_LIB_PRIVATE N_NIMCALL(void, addExprAssgn__closureiters_446)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* output, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* input, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
2369 {
2370 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T5_;
2371 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st;
2372 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* res;
2373 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T6_;
2374 if (!((*input).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA3_;
2375 nimZeroMem((void*)(&T5_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
2376 exprToStmtList__closureiters_385(input, (&T5_));
2377 st = NIM_NIL;
2378 st = T5_.Field0;
2379 res = NIM_NIL;
2380 res = T5_.Field1;
2381 add__ast_4797(output, st);
2382 T6_ = NIM_NIL;
2383 T6_ = newEnvVarAsgn__closureiters_441(ctx, sym, res);
2384 add__ast_4797(output, T6_);
2385 }
2386 goto LA1_;
2387 LA3_: ;
2388 {
2389 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T8_;
2390 T8_ = NIM_NIL;
2391 T8_ = newEnvVarAsgn__closureiters_441(ctx, sym, input);
2392 add__ast_4797(output, T8_);
2393 }
2394 LA1_: ;
2395 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,convertExprBodyToAsgn__closureiters_469)2396 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, convertExprBodyToAsgn__closureiters_469)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exprBody, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* res) {
2397 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2398 result = NIM_NIL;
2399 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*exprBody).info);
2400 addExprAssgn__closureiters_446(ctx, result, exprBody, res);
2401 return result;
2402 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newNotCall__closureiters_474)2403 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNotCall__closureiters_474)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e) {
2404 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2405 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T1_;
2406 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T2_;
2407 result = NIM_NIL;
2408 nimZeroMem((void*)T1_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
2409 T2_ = NIM_NIL;
2410 T2_ = getSysMagic__magicsys_29(g, (*e).info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_17), ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 96));
2411 T1_[0] = newSymNode__ast_3719(T2_, (*e).info);
2412 T1_[1] = e;
2413 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T1_, 2);
2414 asgnRef((void**) (&(*result).typ), getSysType__magicsys_60(g, (*e).info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1)));
2415 return result;
2416 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,lowerStmtListExprs__closureiters_478)2417 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lowerStmtListExprs__closureiters_478)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL* needsSplit) {
2418 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2419 result = NIM_NIL;
2420 result = n;
2421 switch ((*n).kind) {
2422 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
2423 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
2424 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
2425 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
2426 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
2427 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
2428 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
2429 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
2430 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
2431 {
2432 }
2433 break;
2434 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 104):
2435 {
2436 NIM_BOOL ns;
2437 ns = NIM_FALSE;
2438 {
2439 NI i;
2440 NI colontmp_;
2441 NI i_2;
2442 i = (NI)0;
2443 colontmp_ = (NI)0;
2444 colontmp_ = len__ast_3198(n);
2445 i_2 = ((NI) 0);
2446 {
2447 while (1) {
2448 if (!(i_2 < colontmp_)) goto LA5;
2449 i = i_2;
2450 asgnRef((void**) (&(*n)._kind_6.sons->data[i]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i], (&ns)));
2451 i_2 += ((NI) 1);
2452 } LA5: ;
2453 }
2454 }
2455 {
2456 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T10_;
2457 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st;
2458 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex;
2459 if (!ns) goto LA8_;
2460 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
2461 nimZeroMem((void*)(&T10_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
2462 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 0)], (&T10_));
2463 st = NIM_NIL;
2464 st = T10_.Field0;
2465 ex = NIM_NIL;
2466 ex = T10_.Field1;
2467 add__ast_4797(result, st);
2468 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), ex);
2469 add__ast_4797(result, n);
2470 }
2471 LA8_: ;
2472 (*needsSplit) = NIM_TRUE;
2473 }
2474 break;
2475 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37):
2476 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
2477 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160):
2478 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41):
2479 {
2480 NIM_BOOL ns_2;
2481 ns_2 = NIM_FALSE;
2482 {
2483 NI i_3;
2484 NI colontmp__2;
2485 NI i_4;
2486 i_3 = (NI)0;
2487 colontmp__2 = (NI)0;
2488 colontmp__2 = len__ast_3198(n);
2489 i_4 = ((NI) 0);
2490 {
2491 while (1) {
2492 if (!(i_4 < colontmp__2)) goto LA14;
2493 i_3 = i_4;
2494 asgnRef((void**) (&(*n)._kind_6.sons->data[i_3]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_3], (&ns_2)));
2495 i_4 += ((NI) 1);
2496 } LA14: ;
2497 }
2498 }
2499 {
2500 if (!ns_2) goto LA17_;
2501 (*needsSplit) = NIM_TRUE;
2502 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
2503 {
2504 if (!((*n).typ == 0)) goto LA21_;
2505 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_8), TM__slVvvIjx75ivXdMpHiE9c9aQ_9);
2506 }
2507 LA21_: ;
2508 asgnRef((void**) (&(*result).typ), (*n).typ);
2509 {
2510 NI i_5;
2511 NI colontmp__3;
2512 NI i_6;
2513 i_5 = (NI)0;
2514 colontmp__3 = (NI)0;
2515 colontmp__3 = len__ast_3198(n);
2516 i_6 = ((NI) 0);
2517 {
2518 while (1) {
2519 if (!(i_6 < colontmp__3)) goto LA25;
2520 i_5 = i_6;
2521 switch ((*(*n)._kind_6.sons->data[i_5]).kind) {
2522 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34):
2523 {
2524 {
2525 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T31_;
2526 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_2;
2527 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_2;
2528 if (!((*(*(*n)._kind_6.sons->data[i_5])._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA29_;
2529 nimZeroMem((void*)(&T31_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
2530 exprToStmtList__closureiters_385((*(*n)._kind_6.sons->data[i_5])._kind_6.sons->data[((NI) 1)], (&T31_));
2531 st_2 = NIM_NIL;
2532 st_2 = T31_.Field0;
2533 ex_2 = NIM_NIL;
2534 ex_2 = T31_.Field1;
2535 add__ast_4797(result, st_2);
2536 asgnRef((void**) (&(*(*n)._kind_6.sons->data[i_5])._kind_6.sons->data[((NI) 1)]), ex_2);
2537 }
2538 LA29_: ;
2539 }
2540 break;
2541 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
2542 {
2543 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T33_;
2544 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_3;
2545 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_3;
2546 nimZeroMem((void*)(&T33_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
2547 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[i_5], (&T33_));
2548 st_3 = NIM_NIL;
2549 st_3 = T33_.Field0;
2550 ex_3 = NIM_NIL;
2551 ex_3 = T33_.Field1;
2552 add__ast_4797(result, st_3);
2553 asgnRef((void**) (&(*n)._kind_6.sons->data[i_5]), ex_3);
2554 }
2555 break;
2556 default:
2557 {
2558 }
2559 break;
2560 }
2561 i_6 += ((NI) 1);
2562 } LA25: ;
2563 }
2564 }
2565 add__ast_4797(result, n);
2566 }
2567 LA17_: ;
2568 }
2569 break;
2570 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92):
2571 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48):
2572 {
2573 NIM_BOOL ns_3;
2574 ns_3 = NIM_FALSE;
2575 {
2576 NI i_7;
2577 NI colontmp__4;
2578 NI i_8;
2579 i_7 = (NI)0;
2580 colontmp__4 = (NI)0;
2581 colontmp__4 = len__ast_3198(n);
2582 i_8 = ((NI) 0);
2583 {
2584 while (1) {
2585 if (!(i_8 < colontmp__4)) goto LA38;
2586 i_7 = i_8;
2587 asgnRef((void**) (&(*n)._kind_6.sons->data[i_7]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_7], (&ns_3)));
2588 i_8 += ((NI) 1);
2589 } LA38: ;
2590 }
2591 }
2592 {
2593 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* tmp;
2594 NIM_BOOL isExpr;
2595 NIM_BOOL T43_;
2596 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* curS;
2597 if (!ns_3) goto LA41_;
2598 (*needsSplit) = NIM_TRUE;
2599 tmp = NIM_NIL;
2600 T43_ = (NIM_BOOL)0;
2601 T43_ = isEmptyType__ast_4779((*n).typ);
2602 isExpr = !(T43_);
2603 {
2604 if (!isExpr) goto LA46_;
2605 tmp = newTempVar__closureiters_167(ctx, (*n).typ);
2606 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
2607 asgnRef((void**) (&(*result).typ), (*n).typ);
2608 }
2609 goto LA44_;
2610 LA46_: ;
2611 {
2612 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
2613 }
2614 LA44_: ;
2615 curS = result;
2616 {
2617 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
2618 branch = NIM_NIL;
2619 {
2620 NI i_9;
2621 NI colontmp__5;
2622 NI i_10;
2623 i_9 = (NI)0;
2624 colontmp__5 = (NI)0;
2625 colontmp__5 = safeLen__ast_3191(n);
2626 i_10 = ((NI) 0);
2627 {
2628 while (1) {
2629 if (!(i_10 < colontmp__5)) goto LA52;
2630 i_9 = i_10;
2631 branch = (*n)._kind_6.sons->data[i_9];
2632 switch ((*branch).kind) {
2633 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 50):
2634 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
2635 {
2636 {
2637 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branchBody;
2638 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* newBranch;
2639 tyArray__jlWPjgtbdjE069arIWHC9c9bg T58_;
2640 if (!isExpr) goto LA56_;
2641 branchBody = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*branch).info);
2642 addExprAssgn__closureiters_446((&(*ctx)), branchBody, (*branch)._kind_6.sons->data[((NI) 0)], tmp);
2643 nimZeroMem((void*)T58_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
2644 T58_[0] = branchBody;
2645 newBranch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88), T58_, 1);
2646 add__ast_4797(curS, newBranch);
2647 }
2648 goto LA54_;
2649 LA56_: ;
2650 {
2651 add__ast_4797(curS, branch);
2652 }
2653 LA54_: ;
2654 }
2655 break;
2656 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 49):
2657 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
2658 {
2659 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* newBranch_2;
2660 newBranch_2 = NIM_NIL;
2661 {
2662 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T65_;
2663 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_4;
2664 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* res;
2665 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elseBody;
2666 tyArray__jlWPjgtbdjE069arIWHC9c9bg T66_;
2667 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T67_;
2668 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* newIf;
2669 tyArray__jlWPjgtbdjE069arIWHC9c9bg T68_;
2670 if (!((*(*branch)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA63_;
2671 nimZeroMem((void*)(&T65_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
2672 exprToStmtList__closureiters_385((*branch)._kind_6.sons->data[((NI) 0)], (&T65_));
2673 st_4 = NIM_NIL;
2674 st_4 = T65_.Field0;
2675 res = NIM_NIL;
2676 res = T65_.Field1;
2677 nimZeroMem((void*)T66_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
2678 T66_[0] = st_4;
2679 elseBody = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T66_, 1);
2680 nimZeroMem((void*)T67_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
2681 T67_[0] = res;
2682 T67_[1] = (*branch)._kind_6.sons->data[((NI) 1)];
2683 newBranch_2 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), T67_, 2);
2684 nimZeroMem((void*)T68_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
2685 T68_[0] = newBranch_2;
2686 newIf = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), T68_, 1);
2687 add__ast_4797(elseBody, newIf);
2688 {
2689 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* newElse;
2690 if (!((*curS).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92))) goto LA71_;
2691 newElse = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88), (*branch).info);
2692 add__ast_4797(newElse, elseBody);
2693 add__ast_4797(curS, newElse);
2694 }
2695 goto LA69_;
2696 LA71_: ;
2697 {
2698 add__ast_4797(curS, elseBody);
2699 }
2700 LA69_: ;
2701 curS = newIf;
2702 }
2703 goto LA61_;
2704 LA63_: ;
2705 {
2706 newBranch_2 = branch;
2707 {
2708 if (!((*curS).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92))) goto LA77_;
2709 add__ast_4797(curS, newBranch_2);
2710 }
2711 goto LA75_;
2712 LA77_: ;
2713 {
2714 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* newIf_2;
2715 tyArray__jlWPjgtbdjE069arIWHC9c9bg T80_;
2716 nimZeroMem((void*)T80_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
2717 T80_[0] = newBranch_2;
2718 newIf_2 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), T80_, 1);
2719 add__ast_4797(curS, newIf_2);
2720 curS = newIf_2;
2721 }
2722 LA75_: ;
2723 }
2724 LA61_: ;
2725 {
2726 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branchBody_2;
2727 if (!isExpr) goto LA83_;
2728 branchBody_2 = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*(*branch)._kind_6.sons->data[((NI) 1)]).info);
2729 addExprAssgn__closureiters_446((&(*ctx)), branchBody_2, (*branch)._kind_6.sons->data[((NI) 1)], tmp);
2730 asgnRef((void**) (&(*newBranch_2)._kind_6.sons->data[((NI) 1)]), branchBody_2);
2731 }
2732 LA83_: ;
2733 }
2734 break;
2735 default:
2736 {
2737 NimStringDesc* T86_;
2738 T86_ = NIM_NIL;
2739 T86_ = rawNewString((reprEnum((NI)(*branch).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*branch).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 25);
2740 appendString(T86_, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_11));
2741 appendString(T86_, reprEnum((NI)(*branch).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)));
2742 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, T86_, TM__slVvvIjx75ivXdMpHiE9c9aQ_12);
2743 }
2744 break;
2745 }
2746 i_10 += ((NI) 1);
2747 } LA52: ;
2748 }
2749 }
2750 }
2751 {
2752 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T91_;
2753 if (!isExpr) goto LA89_;
2754 T91_ = NIM_NIL;
2755 T91_ = newEnvVarAccess__closureiters_70((&(*ctx)), tmp);
2756 add__ast_4797(result, T91_);
2757 }
2758 LA89_: ;
2759 }
2760 LA41_: ;
2761 }
2762 break;
2763 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106):
2764 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 154):
2765 {
2766 NIM_BOOL ns_4;
2767 ns_4 = NIM_FALSE;
2768 {
2769 NI i_11;
2770 NI colontmp__6;
2771 NI i_12;
2772 i_11 = (NI)0;
2773 colontmp__6 = (NI)0;
2774 colontmp__6 = len__ast_3198(n);
2775 i_12 = ((NI) 0);
2776 {
2777 while (1) {
2778 if (!(i_12 < colontmp__6)) goto LA95;
2779 i_11 = i_12;
2780 asgnRef((void**) (&(*n)._kind_6.sons->data[i_11]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_11], (&ns_4)));
2781 i_12 += ((NI) 1);
2782 } LA95: ;
2783 }
2784 }
2785 {
2786 NIM_BOOL isExpr_2;
2787 NIM_BOOL T100_;
2788 if (!ns_4) goto LA98_;
2789 (*needsSplit) = NIM_TRUE;
2790 T100_ = (NIM_BOOL)0;
2791 T100_ = isEmptyType__ast_4779((*n).typ);
2792 isExpr_2 = !(T100_);
2793 {
2794 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* tmp_2;
2795 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T117_;
2796 if (!isExpr_2) goto LA103_;
2797 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
2798 asgnRef((void**) (&(*result).typ), (*n).typ);
2799 tmp_2 = newTempVar__closureiters_167(ctx, (*n).typ);
2800 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), convertExprBodyToAsgn__closureiters_469((&(*ctx)), (*n)._kind_6.sons->data[((NI) 0)], tmp_2));
2801 {
2802 NI i_13;
2803 NI colontmp__7;
2804 NI i_14;
2805 i_13 = (NI)0;
2806 colontmp__7 = (NI)0;
2807 colontmp__7 = len__ast_3198(n);
2808 i_14 = ((NI) 1);
2809 {
2810 while (1) {
2811 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch_2;
2812 if (!(i_14 < colontmp__7)) goto LA107;
2813 i_13 = i_14;
2814 branch_2 = (*n)._kind_6.sons->data[i_13];
2815 switch ((*branch_2).kind) {
2816 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87):
2817 {
2818 {
2819 if (!((*(*branch_2)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4))) goto LA111_;
2820 asgnRef((void**) (&(*branch_2)._kind_6.sons->data[((NI) 1)]), convertExprBodyToAsgn__closureiters_469((&(*ctx)), (*branch_2)._kind_6.sons->data[((NI) 1)], tmp_2));
2821 }
2822 goto LA109_;
2823 LA111_: ;
2824 {
2825 asgnRef((void**) (&(*branch_2)._kind_6.sons->data[((NI) 0)]), convertExprBodyToAsgn__closureiters_469((&(*ctx)), (*branch_2)._kind_6.sons->data[((NI) 0)], tmp_2));
2826 }
2827 LA109_: ;
2828 }
2829 break;
2830 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107):
2831 {
2832 }
2833 break;
2834 default:
2835 {
2836 NimStringDesc* T116_;
2837 T116_ = NIM_NIL;
2838 T116_ = rawNewString((reprEnum((NI)(*branch_2).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*branch_2).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 30);
2839 appendString(T116_, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_13));
2840 appendString(T116_, reprEnum((NI)(*branch_2).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)));
2841 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, T116_, TM__slVvvIjx75ivXdMpHiE9c9aQ_14);
2842 }
2843 break;
2844 }
2845 i_14 += ((NI) 1);
2846 } LA107: ;
2847 }
2848 }
2849 add__ast_4797(result, n);
2850 T117_ = NIM_NIL;
2851 T117_ = newEnvVarAccess__closureiters_70((&(*ctx)), tmp_2);
2852 add__ast_4797(result, T117_);
2853 }
2854 LA103_: ;
2855 }
2856 LA98_: ;
2857 }
2858 break;
2859 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97):
2860 {
2861 NIM_BOOL ns_5;
2862 ns_5 = NIM_FALSE;
2863 {
2864 NI i_15;
2865 NI colontmp__8;
2866 NI i_16;
2867 i_15 = (NI)0;
2868 colontmp__8 = (NI)0;
2869 colontmp__8 = len__ast_3198(n);
2870 i_16 = ((NI) 0);
2871 {
2872 while (1) {
2873 if (!(i_16 < colontmp__8)) goto LA121;
2874 i_15 = i_16;
2875 asgnRef((void**) (&(*n)._kind_6.sons->data[i_15]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_15], (&ns_5)));
2876 i_16 += ((NI) 1);
2877 } LA121: ;
2878 }
2879 }
2880 {
2881 NIM_BOOL isExpr_3;
2882 NIM_BOOL T126_;
2883 if (!ns_5) goto LA124_;
2884 (*needsSplit) = NIM_TRUE;
2885 T126_ = (NIM_BOOL)0;
2886 T126_ = isEmptyType__ast_4779((*n).typ);
2887 isExpr_3 = !(T126_);
2888 {
2889 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* tmp_3;
2890 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T145_;
2891 if (!isExpr_3) goto LA129_;
2892 tmp_3 = newTempVar__closureiters_167(ctx, (*n).typ);
2893 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
2894 asgnRef((void**) (&(*result).typ), (*n).typ);
2895 {
2896 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T135_;
2897 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_5;
2898 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_4;
2899 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA133_;
2900 nimZeroMem((void*)(&T135_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
2901 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 0)], (&T135_));
2902 st_5 = NIM_NIL;
2903 st_5 = T135_.Field0;
2904 ex_4 = NIM_NIL;
2905 ex_4 = T135_.Field1;
2906 add__ast_4797(result, st_5);
2907 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), ex_4);
2908 }
2909 LA133_: ;
2910 {
2911 NI i_17;
2912 NI colontmp__9;
2913 NI i_18;
2914 i_17 = (NI)0;
2915 colontmp__9 = (NI)0;
2916 colontmp__9 = len__ast_3198(n);
2917 i_18 = ((NI) 1);
2918 {
2919 while (1) {
2920 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch_3;
2921 if (!(i_18 < colontmp__9)) goto LA138;
2922 i_17 = i_18;
2923 branch_3 = (*n)._kind_6.sons->data[i_17];
2924 switch ((*branch_3).kind) {
2925 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
2926 {
2927 NI T140_;
2928 NI T141_;
2929 T140_ = (NI)0;
2930 T140_ = len__ast_3198(branch_3);
2931 T141_ = (NI)0;
2932 T141_ = len__ast_3198(branch_3);
2933 asgnRef((void**) (&(*branch_3)._kind_6.sons->data[(NI)(T140_ - ((NI) 1))]), convertExprBodyToAsgn__closureiters_469((&(*ctx)), (*branch_3)._kind_6.sons->data[(NI)(T141_ - ((NI) 1))], tmp_3));
2934 }
2935 break;
2936 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
2937 {
2938 asgnRef((void**) (&(*branch_3)._kind_6.sons->data[((NI) 0)]), convertExprBodyToAsgn__closureiters_469((&(*ctx)), (*branch_3)._kind_6.sons->data[((NI) 0)], tmp_3));
2939 }
2940 break;
2941 default:
2942 {
2943 NimStringDesc* T144_;
2944 T144_ = NIM_NIL;
2945 T144_ = rawNewString((reprEnum((NI)(*branch_3).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*branch_3).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 31);
2946 appendString(T144_, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_15));
2947 appendString(T144_, reprEnum((NI)(*branch_3).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)));
2948 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, T144_, TM__slVvvIjx75ivXdMpHiE9c9aQ_16);
2949 }
2950 break;
2951 }
2952 i_18 += ((NI) 1);
2953 } LA138: ;
2954 }
2955 }
2956 add__ast_4797(result, n);
2957 T145_ = NIM_NIL;
2958 T145_ = newEnvVarAccess__closureiters_70((&(*ctx)), tmp_3);
2959 add__ast_4797(result, T145_);
2960 }
2961 goto LA127_;
2962 LA129_: ;
2963 {
2964 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T149_;
2965 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_6;
2966 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_5;
2967 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA147_;
2968 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
2969 nimZeroMem((void*)(&T149_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
2970 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 0)], (&T149_));
2971 st_6 = NIM_NIL;
2972 st_6 = T149_.Field0;
2973 ex_5 = NIM_NIL;
2974 ex_5 = T149_.Field1;
2975 add__ast_4797(result, st_6);
2976 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), ex_5);
2977 add__ast_4797(result, n);
2978 }
2979 goto LA127_;
2980 LA147_: ;
2981 LA127_: ;
2982 }
2983 LA124_: ;
2984 }
2985 break;
2986 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
2987 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 70):
2988 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 68):
2989 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 69):
2990 {
2991 NIM_BOOL ns_6;
2992 ns_6 = NIM_FALSE;
2993 {
2994 NI i_19;
2995 NI colontmp__10;
2996 NI i_20;
2997 i_19 = (NI)0;
2998 colontmp__10 = (NI)0;
2999 colontmp__10 = len__ast_3198(n);
3000 i_20 = ((NI) 0);
3001 {
3002 while (1) {
3003 if (!(i_20 < colontmp__10)) goto LA153;
3004 i_19 = i_20;
3005 asgnRef((void**) (&(*n)._kind_6.sons->data[i_19]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_19], (&ns_6)));
3006 i_20 += ((NI) 1);
3007 } LA153: ;
3008 }
3009 }
3010 {
3011 NIM_BOOL isExpr_4;
3012 NIM_BOOL T158_;
3013 if (!ns_6) goto LA156_;
3014 (*needsSplit) = NIM_TRUE;
3015 T158_ = (NIM_BOOL)0;
3016 T158_ = isEmptyType__ast_4779((*n).typ);
3017 isExpr_4 = !(T158_);
3018 {
3019 if (!isExpr_4) goto LA161_;
3020 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
3021 asgnRef((void**) (&(*result).typ), (*n).typ);
3022 }
3023 goto LA159_;
3024 LA161_: ;
3025 {
3026 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
3027 }
3028 LA159_: ;
3029 {
3030 NIM_BOOL T166_;
3031 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cond;
3032 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* tmp_4;
3033 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T175_;
3034 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* check;
3035 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifBody;
3036 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T185_;
3037 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifBranch;
3038 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T186_;
3039 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifNode;
3040 tyArray__jlWPjgtbdjE069arIWHC9c9bg T187_;
3041 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T188_;
3042 T166_ = (NIM_BOOL)0;
3043 T166_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
3044 if (!(T166_)) goto LA167_;
3045 T166_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 109) || (*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110));
3046 LA167_: ;
3047 if (!T166_) goto LA168_;
3048 cond = (*n)._kind_6.sons->data[((NI) 1)];
3049 {
3050 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T174_;
3051 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_7;
3052 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_6;
3053 if (!((*cond).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA172_;
3054 nimZeroMem((void*)(&T174_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3055 exprToStmtList__closureiters_385(cond, (&T174_));
3056 st_7 = NIM_NIL;
3057 st_7 = T174_.Field0;
3058 ex_6 = NIM_NIL;
3059 ex_6 = T174_.Field1;
3060 add__ast_4797(result, st_7);
3061 cond = ex_6;
3062 }
3063 LA172_: ;
3064 tmp_4 = newTempVar__closureiters_167(ctx, (*cond).typ);
3065 T175_ = NIM_NIL;
3066 T175_ = newEnvVarAsgn__closureiters_441((&(*ctx)), tmp_4, cond);
3067 add__ast_4797(result, T175_);
3068 check = newEnvVarAccess__closureiters_70((&(*ctx)), tmp_4);
3069 {
3070 if (!((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110))) goto LA178_;
3071 check = newNotCall__closureiters_474((*ctx).g, check);
3072 }
3073 LA178_: ;
3074 cond = (*n)._kind_6.sons->data[((NI) 2)];
3075 ifBody = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*cond).info);
3076 {
3077 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T184_;
3078 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_8;
3079 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_7;
3080 if (!((*cond).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA182_;
3081 nimZeroMem((void*)(&T184_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3082 exprToStmtList__closureiters_385(cond, (&T184_));
3083 st_8 = NIM_NIL;
3084 st_8 = T184_.Field0;
3085 ex_7 = NIM_NIL;
3086 ex_7 = T184_.Field1;
3087 add__ast_4797(ifBody, st_8);
3088 cond = ex_7;
3089 }
3090 LA182_: ;
3091 T185_ = NIM_NIL;
3092 T185_ = newEnvVarAsgn__closureiters_441((&(*ctx)), tmp_4, cond);
3093 add__ast_4797(ifBody, T185_);
3094 nimZeroMem((void*)T186_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
3095 T186_[0] = check;
3096 T186_[1] = ifBody;
3097 ifBranch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), T186_, 2);
3098 nimZeroMem((void*)T187_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
3099 T187_[0] = ifBranch;
3100 ifNode = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), T187_, 1);
3101 add__ast_4797(result, ifNode);
3102 T188_ = NIM_NIL;
3103 T188_ = newEnvVarAccess__closureiters_70((&(*ctx)), tmp_4);
3104 add__ast_4797(result, T188_);
3105 }
3106 goto LA164_;
3107 LA168_: ;
3108 {
3109 {
3110 NI i_21;
3111 NI colontmp__11;
3112 NI i_22;
3113 i_21 = (NI)0;
3114 colontmp__11 = (NI)0;
3115 colontmp__11 = len__ast_3198(n);
3116 i_22 = ((NI) 0);
3117 {
3118 while (1) {
3119 if (!(i_22 < colontmp__11)) goto LA192;
3120 i_21 = i_22;
3121 {
3122 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T197_;
3123 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_9;
3124 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_8;
3125 if (!((*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA195_;
3126 nimZeroMem((void*)(&T197_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3127 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[i_21], (&T197_));
3128 st_9 = NIM_NIL;
3129 st_9 = T197_.Field0;
3130 ex_8 = NIM_NIL;
3131 ex_8 = T197_.Field1;
3132 add__ast_4797(result, st_9);
3133 asgnRef((void**) (&(*n)._kind_6.sons->data[i_21]), ex_8);
3134 }
3135 LA195_: ;
3136 {
3137 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* tmp_5;
3138 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T202_;
3139 if (!((*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32))) goto LA200_;
3140 tmp_5 = newTempVar__closureiters_167(ctx, (*(*n)._kind_6.sons->data[i_21]).typ);
3141 T202_ = NIM_NIL;
3142 T202_ = newEnvVarAsgn__closureiters_441((&(*ctx)), tmp_5, (*n)._kind_6.sons->data[i_21]);
3143 add__ast_4797(result, T202_);
3144 asgnRef((void**) (&(*n)._kind_6.sons->data[i_21]), newEnvVarAccess__closureiters_70((&(*ctx)), tmp_5));
3145 }
3146 LA200_: ;
3147 i_22 += ((NI) 1);
3148 } LA192: ;
3149 }
3150 }
3151 add__ast_4797(result, n);
3152 }
3153 LA164_: ;
3154 }
3155 LA156_: ;
3156 }
3157 break;
3158 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99):
3159 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100):
3160 {
3161 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
3162 {
3163 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* c;
3164 c = NIM_NIL;
3165 {
3166 NI i_23;
3167 NI colontmp__12;
3168 NI i_24;
3169 i_23 = (NI)0;
3170 colontmp__12 = (NI)0;
3171 colontmp__12 = safeLen__ast_3191(n);
3172 i_24 = ((NI) 0);
3173 {
3174 while (1) {
3175 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* varSect;
3176 NIM_BOOL ns_7;
3177 NI T208_;
3178 NI T209_;
3179 if (!(i_24 < colontmp__12)) goto LA207;
3180 i_23 = i_24;
3181 c = (*n)._kind_6.sons->data[i_23];
3182 varSect = newNodeI__ast_3356((*n).kind, (*n).info);
3183 add__ast_4797(varSect, c);
3184 ns_7 = NIM_FALSE;
3185 T208_ = (NI)0;
3186 T208_ = len__ast_3198(c);
3187 T209_ = (NI)0;
3188 T209_ = len__ast_3198(c);
3189 asgnRef((void**) (&(*c)._kind_6.sons->data[(NI)(T208_ - ((NI) 1))]), lowerStmtListExprs__closureiters_478(ctx, (*c)._kind_6.sons->data[(NI)(T209_ - ((NI) 1))], (&ns_7)));
3190 {
3191 NI T214_;
3192 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T215_;
3193 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_10;
3194 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_9;
3195 NI T216_;
3196 if (!ns_7) goto LA212_;
3197 (*needsSplit) = NIM_TRUE;
3198 T214_ = (NI)0;
3199 T214_ = len__ast_3198(c);
3200 nimZeroMem((void*)(&T215_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3201 exprToStmtList__closureiters_385((*c)._kind_6.sons->data[(NI)(T214_ - ((NI) 1))], (&T215_));
3202 st_10 = NIM_NIL;
3203 st_10 = T215_.Field0;
3204 ex_9 = NIM_NIL;
3205 ex_9 = T215_.Field1;
3206 add__ast_4797(result, st_10);
3207 T216_ = (NI)0;
3208 T216_ = len__ast_3198(c);
3209 asgnRef((void**) (&(*c)._kind_6.sons->data[(NI)(T216_ - ((NI) 1))]), ex_9);
3210 }
3211 LA212_: ;
3212 add__ast_4797(result, varSect);
3213 i_24 += ((NI) 1);
3214 } LA207: ;
3215 }
3216 }
3217 }
3218 }
3219 break;
3220 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 114):
3221 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109):
3222 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108):
3223 {
3224 NIM_BOOL ns_8;
3225 ns_8 = NIM_FALSE;
3226 {
3227 NI i_25;
3228 NI colontmp__13;
3229 NI i_26;
3230 i_25 = (NI)0;
3231 colontmp__13 = (NI)0;
3232 colontmp__13 = len__ast_3198(n);
3233 i_26 = ((NI) 0);
3234 {
3235 while (1) {
3236 if (!(i_26 < colontmp__13)) goto LA220;
3237 i_25 = i_26;
3238 asgnRef((void**) (&(*n)._kind_6.sons->data[i_25]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_25], (&ns_8)));
3239 i_26 += ((NI) 1);
3240 } LA220: ;
3241 }
3242 }
3243 {
3244 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T225_;
3245 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_11;
3246 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_10;
3247 if (!ns_8) goto LA223_;
3248 (*needsSplit) = NIM_TRUE;
3249 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
3250 nimZeroMem((void*)(&T225_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3251 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 0)], (&T225_));
3252 st_11 = NIM_NIL;
3253 st_11 = T225_.Field0;
3254 ex_10 = NIM_NIL;
3255 ex_10 = T225_.Field1;
3256 add__ast_4797(result, st_11);
3257 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), ex_10);
3258 add__ast_4797(result, n);
3259 }
3260 LA223_: ;
3261 }
3262 break;
3263 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
3264 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
3265 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
3266 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
3267 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
3268 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47):
3269 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65):
3270 {
3271 NIM_BOOL ns_9;
3272 ns_9 = NIM_FALSE;
3273 {
3274 NI i_27;
3275 NI colontmp__14;
3276 NI colontmp__15;
3277 NI i_28;
3278 i_27 = (NI)0;
3279 colontmp__14 = (NI)0;
3280 colontmp__15 = (NI)0;
3281 colontmp__14 = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61));
3282 colontmp__15 = len__ast_3198(n);
3283 i_28 = colontmp__14;
3284 {
3285 while (1) {
3286 if (!(i_28 < colontmp__15)) goto LA229;
3287 i_27 = i_28;
3288 asgnRef((void**) (&(*n)._kind_6.sons->data[i_27]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_27], (&ns_9)));
3289 i_28 += ((NI) 1);
3290 } LA229: ;
3291 }
3292 }
3293 {
3294 NI T234_;
3295 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T235_;
3296 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_12;
3297 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_11;
3298 NI T236_;
3299 if (!ns_9) goto LA232_;
3300 (*needsSplit) = NIM_TRUE;
3301 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
3302 asgnRef((void**) (&(*result).typ), (*n).typ);
3303 T234_ = (NI)0;
3304 T234_ = len__ast_3198(n);
3305 nimZeroMem((void*)(&T235_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3306 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[(NI)(T234_ - ((NI) 1))], (&T235_));
3307 st_12 = NIM_NIL;
3308 st_12 = T235_.Field0;
3309 ex_11 = NIM_NIL;
3310 ex_11 = T235_.Field1;
3311 add__ast_4797(result, st_12);
3312 T236_ = (NI)0;
3313 T236_ = len__ast_3198(n);
3314 asgnRef((void**) (&(*n)._kind_6.sons->data[(NI)(T236_ - ((NI) 1))]), ex_11);
3315 add__ast_4797(result, n);
3316 }
3317 LA232_: ;
3318 }
3319 break;
3320 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73):
3321 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74):
3322 {
3323 NIM_BOOL ns_10;
3324 ns_10 = NIM_FALSE;
3325 {
3326 NI i_29;
3327 NI colontmp__16;
3328 NI i_30;
3329 i_29 = (NI)0;
3330 colontmp__16 = (NI)0;
3331 colontmp__16 = len__ast_3198(n);
3332 i_30 = ((NI) 0);
3333 {
3334 while (1) {
3335 if (!(i_30 < colontmp__16)) goto LA240;
3336 i_29 = i_30;
3337 asgnRef((void**) (&(*n)._kind_6.sons->data[i_29]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_29], (&ns_10)));
3338 i_30 += ((NI) 1);
3339 } LA240: ;
3340 }
3341 }
3342 {
3343 if (!ns_10) goto LA243_;
3344 (*needsSplit) = NIM_TRUE;
3345 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
3346 {
3347 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T249_;
3348 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_13;
3349 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_12;
3350 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA247_;
3351 nimZeroMem((void*)(&T249_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3352 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 0)], (&T249_));
3353 st_13 = NIM_NIL;
3354 st_13 = T249_.Field0;
3355 ex_12 = NIM_NIL;
3356 ex_12 = T249_.Field1;
3357 add__ast_4797(result, st_13);
3358 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), ex_12);
3359 }
3360 LA247_: ;
3361 {
3362 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T254_;
3363 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_14;
3364 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_13;
3365 if (!((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA252_;
3366 nimZeroMem((void*)(&T254_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3367 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 1)], (&T254_));
3368 st_14 = NIM_NIL;
3369 st_14 = T254_.Field0;
3370 ex_13 = NIM_NIL;
3371 ex_13 = T254_.Field1;
3372 add__ast_4797(result, st_14);
3373 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 1)]), ex_13);
3374 }
3375 LA252_: ;
3376 add__ast_4797(result, n);
3377 }
3378 LA243_: ;
3379 }
3380 break;
3381 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42):
3382 {
3383 NIM_BOOL lhsNeedsSplit;
3384 NIM_BOOL rhsNeedsSplit;
3385 lhsNeedsSplit = NIM_FALSE;
3386 rhsNeedsSplit = NIM_FALSE;
3387 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[((NI) 0)], (&lhsNeedsSplit)));
3388 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 1)]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[((NI) 1)], (&rhsNeedsSplit)));
3389 {
3390 NIM_BOOL T258_;
3391 T258_ = (NIM_BOOL)0;
3392 T258_ = lhsNeedsSplit;
3393 if (T258_) goto LA259_;
3394 T258_ = rhsNeedsSplit;
3395 LA259_: ;
3396 if (!T258_) goto LA260_;
3397 (*needsSplit) = NIM_TRUE;
3398 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
3399 {
3400 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T266_;
3401 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_15;
3402 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_14;
3403 if (!lhsNeedsSplit) goto LA264_;
3404 nimZeroMem((void*)(&T266_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3405 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 0)], (&T266_));
3406 st_15 = NIM_NIL;
3407 st_15 = T266_.Field0;
3408 ex_14 = NIM_NIL;
3409 ex_14 = T266_.Field1;
3410 add__ast_4797(result, st_15);
3411 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), ex_14);
3412 }
3413 LA264_: ;
3414 {
3415 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T271_;
3416 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_16;
3417 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_15;
3418 if (!rhsNeedsSplit) goto LA269_;
3419 nimZeroMem((void*)(&T271_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3420 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 1)], (&T271_));
3421 st_16 = NIM_NIL;
3422 st_16 = T271_.Field0;
3423 ex_15 = NIM_NIL;
3424 ex_15 = T271_.Field1;
3425 add__ast_4797(result, st_16);
3426 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 1)]), ex_15);
3427 }
3428 LA269_: ;
3429 add__ast_4797(result, n);
3430 }
3431 LA260_: ;
3432 }
3433 break;
3434 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
3435 {
3436 NIM_BOOL condNeedsSplit;
3437 NIM_BOOL bodyNeedsSplit;
3438 condNeedsSplit = NIM_FALSE;
3439 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[((NI) 0)], (&condNeedsSplit)));
3440 bodyNeedsSplit = NIM_FALSE;
3441 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 1)]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[((NI) 1)], (&bodyNeedsSplit)));
3442 {
3443 NIM_BOOL T275_;
3444 T275_ = (NIM_BOOL)0;
3445 T275_ = condNeedsSplit;
3446 if (T275_) goto LA276_;
3447 T275_ = bodyNeedsSplit;
3448 LA276_: ;
3449 if (!T275_) goto LA277_;
3450 (*needsSplit) = NIM_TRUE;
3451 {
3452 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T283_;
3453 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_17;
3454 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_16;
3455 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* brk;
3456 tyArray__jlWPjgtbdjE069arIWHC9c9bg T284_;
3457 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch_4;
3458 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T285_;
3459 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* check_2;
3460 tyArray__jlWPjgtbdjE069arIWHC9c9bg T286_;
3461 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* newBody;
3462 tyArray__T6RKPw8xfAeNaoei9aZGzXg T287_;
3463 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T288_;
3464 if (!condNeedsSplit) goto LA281_;
3465 nimZeroMem((void*)(&T283_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3466 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 0)], (&T283_));
3467 st_17 = NIM_NIL;
3468 st_17 = T283_.Field0;
3469 ex_16 = NIM_NIL;
3470 ex_16 = T283_.Field1;
3471 nimZeroMem((void*)T284_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
3472 T284_[0] = (*(*ctx).g).emptyNode;
3473 brk = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110), T284_, 1);
3474 nimZeroMem((void*)T285_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
3475 T285_[0] = newNotCall__closureiters_474((*ctx).g, ex_16);
3476 T285_[1] = brk;
3477 branch_4 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), T285_, 2);
3478 nimZeroMem((void*)T286_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
3479 T286_[0] = branch_4;
3480 check_2 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), T286_, 1);
3481 nimZeroMem((void*)T287_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
3482 T287_[0] = st_17;
3483 T287_[1] = check_2;
3484 T287_[2] = (*n)._kind_6.sons->data[((NI) 1)];
3485 newBody = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T287_, 3);
3486 T288_ = NIM_NIL;
3487 T288_ = getSysSym__magicsys_16((*ctx).g, (*(*n)._kind_6.sons->data[((NI) 0)]).info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_18));
3488 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), newSymNode__ast_3716(T288_));
3489 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 1)]), newBody);
3490 }
3491 LA281_: ;
3492 }
3493 LA277_: ;
3494 }
3495 break;
3496 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
3497 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46):
3498 {
3499 NIM_BOOL ns_11;
3500 ns_11 = NIM_FALSE;
3501 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[((NI) 0)], (&ns_11)));
3502 {
3503 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T294_;
3504 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_18;
3505 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_17;
3506 if (!ns_11) goto LA292_;
3507 (*needsSplit) = NIM_TRUE;
3508 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
3509 asgnRef((void**) (&(*result).typ), (*n).typ);
3510 nimZeroMem((void*)(&T294_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3511 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 0)], (&T294_));
3512 st_18 = NIM_NIL;
3513 st_18 = T294_.Field0;
3514 ex_17 = NIM_NIL;
3515 ex_17 = T294_.Field1;
3516 add__ast_4797(result, st_18);
3517 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), ex_17);
3518 add__ast_4797(result, n);
3519 }
3520 LA292_: ;
3521 }
3522 break;
3523 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 127):
3524 {
3525 NIM_BOOL ns_12;
3526 ns_12 = NIM_FALSE;
3527 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 1)]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[((NI) 1)], (&ns_12)));
3528 {
3529 tyTuple__EFqgCXJ4d8PgqOdFJmldsQ T300_;
3530 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* st_19;
3531 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex_18;
3532 if (!ns_12) goto LA298_;
3533 (*needsSplit) = NIM_TRUE;
3534 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126), (*n).info);
3535 asgnRef((void**) (&(*result).typ), (*n).typ);
3536 nimZeroMem((void*)(&T300_), sizeof(tyTuple__EFqgCXJ4d8PgqOdFJmldsQ));
3537 exprToStmtList__closureiters_385((*n)._kind_6.sons->data[((NI) 1)], (&T300_));
3538 st_19 = NIM_NIL;
3539 st_19 = T300_.Field0;
3540 ex_18 = NIM_NIL;
3541 ex_18 = T300_.Field1;
3542 transitionSonsKind__ast_4359(n, ((tyEnum_TNodeKind__Dq0DNfMwTBUf7hLFKKDU7g) 112));
3543 asgnRef((void**) (&(*n).typ), ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
3544 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 1)]), st_19);
3545 add__ast_4797(result, n);
3546 add__ast_4797(result, ex_18);
3547 }
3548 LA298_: ;
3549 }
3550 break;
3551 default:
3552 {
3553 {
3554 NI i_31;
3555 NI colontmp__17;
3556 NI i_32;
3557 i_31 = (NI)0;
3558 colontmp__17 = (NI)0;
3559 colontmp__17 = len__ast_3198(n);
3560 i_32 = ((NI) 0);
3561 {
3562 while (1) {
3563 if (!(i_32 < colontmp__17)) goto LA304;
3564 i_31 = i_32;
3565 asgnRef((void**) (&(*n)._kind_6.sons->data[i_31]), lowerStmtListExprs__closureiters_478(ctx, (*n)._kind_6.sons->data[i_31], needsSplit));
3566 i_32 += ((NI) 1);
3567 } LA304: ;
3568 }
3569 }
3570 }
3571 break;
3572 }
3573 return result;
3574 }
N_NIMCALL(NIM_BOOL,hasYields__closureiters_175)3575 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasYields__closureiters_175)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3576 NIM_BOOL result;
3577 result = (NIM_BOOL)0;
3578 switch ((*n).kind) {
3579 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 104):
3580 {
3581 result = NIM_TRUE;
3582 }
3583 break;
3584 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
3585 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
3586 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
3587 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
3588 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
3589 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
3590 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
3591 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
3592 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
3593 {
3594 }
3595 break;
3596 default:
3597 {
3598 {
3599 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* c;
3600 c = NIM_NIL;
3601 {
3602 NI i;
3603 NI colontmp_;
3604 NI i_2;
3605 i = (NI)0;
3606 colontmp_ = (NI)0;
3607 colontmp_ = safeLen__ast_3191(n);
3608 i_2 = ((NI) 0);
3609 {
3610 while (1) {
3611 if (!(i_2 < colontmp_)) goto LA7;
3612 i = i_2;
3613 c = (*n)._kind_6.sons->data[i];
3614 {
3615 NIM_BOOL T10_;
3616 T10_ = (NIM_BOOL)0;
3617 T10_ = hasYields__closureiters_175(c);
3618 if (!T10_) goto LA11_;
3619 result = NIM_TRUE;
3620 goto LA4;
3621 }
3622 LA11_: ;
3623 i_2 += ((NI) 1);
3624 } LA7: ;
3625 }
3626 }
3627 } LA4: ;
3628 }
3629 break;
3630 }
3631 return result;
3632 }
N_NIMCALL(NIM_BOOL,hasYieldsInExpressions__closureiters_371)3633 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasYieldsInExpressions__closureiters_371)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3634 NIM_BOOL result;
3635 { result = (NIM_BOOL)0;
3636 switch ((*n).kind) {
3637 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
3638 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
3639 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
3640 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
3641 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
3642 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
3643 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
3644 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
3645 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
3646 {
3647 }
3648 break;
3649 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
3650 {
3651 {
3652 NIM_BOOL T5_;
3653 T5_ = (NIM_BOOL)0;
3654 T5_ = isEmptyType__ast_4779((*n).typ);
3655 if (!T5_) goto LA6_;
3656 {
3657 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* c;
3658 c = NIM_NIL;
3659 {
3660 NI i;
3661 NI colontmp_;
3662 NI i_2;
3663 i = (NI)0;
3664 colontmp_ = (NI)0;
3665 colontmp_ = safeLen__ast_3191(n);
3666 i_2 = ((NI) 0);
3667 {
3668 while (1) {
3669 if (!(i_2 < colontmp_)) goto LA11;
3670 i = i_2;
3671 c = (*n)._kind_6.sons->data[i];
3672 {
3673 NIM_BOOL T14_;
3674 T14_ = (NIM_BOOL)0;
3675 T14_ = hasYieldsInExpressions__closureiters_371(c);
3676 if (!T14_) goto LA15_;
3677 result = NIM_TRUE;
3678 goto BeforeRet_;
3679 }
3680 LA15_: ;
3681 i_2 += ((NI) 1);
3682 } LA11: ;
3683 }
3684 }
3685 }
3686 }
3687 goto LA3_;
3688 LA6_: ;
3689 {
3690 result = hasYields__closureiters_175(n);
3691 }
3692 LA3_: ;
3693 }
3694 break;
3695 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
3696 {
3697 {
3698 NI i_3;
3699 NI colontmp__2;
3700 NI i_4;
3701 i_3 = (NI)0;
3702 colontmp__2 = (NI)0;
3703 colontmp__2 = len__ast_3198(n);
3704 i_4 = ((NI) 1);
3705 {
3706 while (1) {
3707 if (!(i_4 < colontmp__2)) goto LA21;
3708 i_3 = i_4;
3709 {
3710 NIM_BOOL T24_;
3711 T24_ = (NIM_BOOL)0;
3712 T24_ = hasYieldsInExpressions__closureiters_371((*n)._kind_6.sons->data[i_3]);
3713 if (!T24_) goto LA25_;
3714 result = NIM_TRUE;
3715 goto BeforeRet_;
3716 }
3717 LA25_: ;
3718 i_4 += ((NI) 1);
3719 } LA21: ;
3720 }
3721 }
3722 }
3723 break;
3724 default:
3725 {
3726 {
3727 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* c_2;
3728 c_2 = NIM_NIL;
3729 {
3730 NI i_5;
3731 NI colontmp__3;
3732 NI i_6;
3733 i_5 = (NI)0;
3734 colontmp__3 = (NI)0;
3735 colontmp__3 = safeLen__ast_3191(n);
3736 i_6 = ((NI) 0);
3737 {
3738 while (1) {
3739 if (!(i_6 < colontmp__3)) goto LA31;
3740 i_5 = i_6;
3741 c_2 = (*n)._kind_6.sons->data[i_5];
3742 {
3743 NIM_BOOL T34_;
3744 T34_ = (NIM_BOOL)0;
3745 T34_ = hasYieldsInExpressions__closureiters_371(c_2);
3746 if (!T34_) goto LA35_;
3747 result = NIM_TRUE;
3748 goto BeforeRet_;
3749 }
3750 LA35_: ;
3751 i_6 += ((NI) 1);
3752 } LA31: ;
3753 }
3754 }
3755 }
3756 }
3757 break;
3758 }
3759 }BeforeRet_: ;
3760 return result;
3761 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,addGotoOut__closureiters_147)3762 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, addGotoOut__closureiters_147)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gotoOut) {
3763 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3764 result = NIM_NIL;
3765 result = toStmtList__closureiters_136(n);
3766 {
3767 NIM_BOOL T3_;
3768 NI T4_;
3769 NI T6_;
3770 T3_ = (NIM_BOOL)0;
3771 T4_ = (NI)0;
3772 T4_ = len__ast_3198(result);
3773 T3_ = (T4_ == ((NI) 0));
3774 if (T3_) goto LA5_;
3775 T6_ = (NI)0;
3776 T6_ = len__ast_3198(result);
3777 T3_ = !(((*(*result)._kind_6.sons->data[(NI)(T6_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156)));
3778 LA5_: ;
3779 if (!T3_) goto LA7_;
3780 add__ast_4797(result, gotoOut);
3781 }
3782 LA7_: ;
3783 return result;
3784 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,transformBreaksAndContinuesInWhile__closureiters_179)3785 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformBreaksAndContinuesInWhile__closureiters_179)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* before, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* after) {
3786 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3787 result = NIM_NIL;
3788 result = n;
3789 switch ((*n).kind) {
3790 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
3791 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
3792 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
3793 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
3794 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
3795 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
3796 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
3797 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
3798 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
3799 {
3800 }
3801 break;
3802 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
3803 {
3804 }
3805 break;
3806 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 111):
3807 {
3808 result = before;
3809 }
3810 break;
3811 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112):
3812 {
3813 (*ctx).blockLevel += ((NI) 1);
3814 asgnRef((void**) (&(*result)._kind_6.sons->data[((NI) 1)]), transformBreaksAndContinuesInWhile__closureiters_179(ctx, (*result)._kind_6.sons->data[((NI) 1)], before, after));
3815 (*ctx).blockLevel -= ((NI) 1);
3816 }
3817 break;
3818 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110):
3819 {
3820 {
3821 if (!((*ctx).blockLevel == ((NI) 0))) goto LA8_;
3822 result = after;
3823 }
3824 LA8_: ;
3825 }
3826 break;
3827 default:
3828 {
3829 {
3830 NI i;
3831 NI colontmp_;
3832 NI i_2;
3833 i = (NI)0;
3834 colontmp_ = (NI)0;
3835 colontmp_ = len__ast_3198(n);
3836 i_2 = ((NI) 0);
3837 {
3838 while (1) {
3839 if (!(i_2 < colontmp_)) goto LA13;
3840 i = i_2;
3841 asgnRef((void**) (&(*n)._kind_6.sons->data[i]), transformBreaksAndContinuesInWhile__closureiters_179(ctx, (*n)._kind_6.sons->data[i], before, after));
3842 i_2 += ((NI) 1);
3843 } LA13: ;
3844 }
3845 }
3846 }
3847 break;
3848 }
3849 return result;
3850 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,transformBreaksInBlock__closureiters_205)3851 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformBreaksInBlock__closureiters_205)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* label, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* after) {
3852 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3853 result = NIM_NIL;
3854 result = n;
3855 switch ((*n).kind) {
3856 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
3857 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
3858 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
3859 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
3860 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
3861 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
3862 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
3863 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
3864 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
3865 {
3866 }
3867 break;
3868 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112):
3869 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
3870 {
3871 (*ctx).blockLevel += ((NI) 1);
3872 asgnRef((void**) (&(*result)._kind_6.sons->data[((NI) 1)]), transformBreaksInBlock__closureiters_205(ctx, (*result)._kind_6.sons->data[((NI) 1)], label, after));
3873 (*ctx).blockLevel -= ((NI) 1);
3874 }
3875 break;
3876 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110):
3877 {
3878 {
3879 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1))) goto LA6_;
3880 {
3881 if (!((*ctx).blockLevel == ((NI) 0))) goto LA10_;
3882 result = after;
3883 }
3884 LA10_: ;
3885 }
3886 goto LA4_;
3887 LA6_: ;
3888 {
3889 {
3890 NIM_BOOL T15_;
3891 T15_ = (NIM_BOOL)0;
3892 T15_ = ((*label).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
3893 if (!(T15_)) goto LA16_;
3894 T15_ = ((*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym == (*label)._kind_4.sym);
3895 LA16_: ;
3896 if (!T15_) goto LA17_;
3897 result = after;
3898 }
3899 LA17_: ;
3900 }
3901 LA4_: ;
3902 }
3903 break;
3904 default:
3905 {
3906 {
3907 NI i;
3908 NI colontmp_;
3909 NI i_2;
3910 i = (NI)0;
3911 colontmp_ = (NI)0;
3912 colontmp_ = len__ast_3198(n);
3913 i_2 = ((NI) 0);
3914 {
3915 while (1) {
3916 if (!(i_2 < colontmp_)) goto LA22;
3917 i = i_2;
3918 asgnRef((void**) (&(*n)._kind_6.sons->data[i]), transformBreaksInBlock__closureiters_205(ctx, (*n)._kind_6.sons->data[i], label, after));
3919 i_2 += ((NI) 1);
3920 } LA22: ;
3921 }
3922 }
3923 }
3924 break;
3925 }
3926 return result;
3927 }
N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newOr__closureiters_251)3928 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newOr__closureiters_251)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
3929 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3930 tyArray__T6RKPw8xfAeNaoei9aZGzXg T1_;
3931 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T2_;
3932 result = NIM_NIL;
3933 nimZeroMem((void*)T1_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
3934 T2_ = NIM_NIL;
3935 T2_ = getSysMagic__magicsys_29(g, (*a).info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_25), ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110));
3936 T1_[0] = newSymNode__ast_3716(T2_);
3937 T1_[1] = a;
3938 T1_[2] = b;
3939 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T1_, 3);
3940 asgnRef((void**) (&(*result).typ), getSysType__magicsys_60(g, (*a).info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1)));
3941 (*result).info = (*a).info;
3942 return result;
3943 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newCurExcAccess__closureiters_91)3944 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newCurExcAccess__closureiters_91)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx) {
3945 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3946 result = NIM_NIL;
3947 {
3948 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_;
3949 if (!((*ctx).curExcSym == 0)) goto LA3_;
3950 T5_ = NIM_NIL;
3951 T5_ = callCodegenProc__lowerings_635((*ctx).g, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_24), unknownLineInfo__lineinfos_280, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
3952 unsureAsgnRef((void**) (&(*ctx).curExcSym), newEnvVar__closureiters_49(ctx, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_26), (*T5_).typ));
3953 }
3954 LA3_: ;
3955 result = newEnvVarAccess__closureiters_70((&(*ctx)), (*ctx).curExcSym);
3956 return result;
3957 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newNullifyCurExc__closureiters_245)3958 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNullifyCurExc__closureiters_245)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
3959 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3960 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* curExc;
3961 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nilnode;
3962 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T1_;
3963 result = NIM_NIL;
3964 curExc = newCurExcAccess__closureiters_91(ctx);
3965 (*curExc).info = info;
3966 nilnode = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
3967 asgnRef((void**) (&(*nilnode).typ), (*curExc).typ);
3968 nimZeroMem((void*)T1_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
3969 T1_[0] = curExc;
3970 T1_[1] = nilnode;
3971 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), T1_, 2);
3972 return result;
3973 }
N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,collectExceptState__closureiters_256)3974 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, collectExceptState__closureiters_256)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3975 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3976 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifStmt;
3977 tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g;
3978 result = NIM_NIL;
3979 ifStmt = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), (*n).info);
3980 g = (*ctx).g;
3981 {
3982 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* c;
3983 c = NIM_NIL;
3984 {
3985 NI i;
3986 NI colontmp_;
3987 NI i_2;
3988 i = (NI)0;
3989 colontmp_ = (NI)0;
3990 colontmp_ = safeLen__ast_3191(n);
3991 i_2 = ((NI) 0);
3992 {
3993 while (1) {
3994 if (!(i_2 < colontmp_)) goto LA4;
3995 i = i_2;
3996 c = (*n)._kind_6.sons->data[i];
3997 {
3998 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifBranch;
3999 NI T32_;
4000 if (!((*c).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87))) goto LA7_;
4001 ifBranch = NIM_NIL;
4002 {
4003 NI T11_;
4004 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cond;
4005 T11_ = (NI)0;
4006 T11_ = len__ast_3198(c);
4007 if (!(((NI) 1) < T11_)) goto LA12_;
4008 cond = NIM_NIL;
4009 {
4010 NI i_3;
4011 NI colontmp__2;
4012 NI T15_;
4013 NI i_4;
4014 i_3 = (NI)0;
4015 colontmp__2 = (NI)0;
4016 T15_ = (NI)0;
4017 T15_ = len__ast_3198(c);
4018 colontmp__2 = (NI)(T15_ - ((NI) 1));
4019 i_4 = ((NI) 0);
4020 {
4021 while (1) {
4022 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nextCond;
4023 tyArray__T6RKPw8xfAeNaoei9aZGzXg T18_;
4024 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T19_;
4025 if (!(i_4 < colontmp__2)) goto LA17;
4026 i_3 = i_4;
4027 nimZeroMem((void*)T18_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
4028 T19_ = NIM_NIL;
4029 T19_ = getSysMagic__magicsys_29(g, (*c).info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_23), ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 15));
4030 T18_[0] = newSymNode__ast_3716(T19_);
4031 T18_[1] = callCodegenProc__lowerings_635(g, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_24), unknownLineInfo__lineinfos_280, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
4032 T18_[2] = (*c)._kind_6.sons->data[i_3];
4033 nextCond = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T18_, 3);
4034 asgnRef((void**) (&(*nextCond).typ), getSysType__magicsys_60((*ctx).g, (*c).info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1)));
4035 (*nextCond).info = (*c).info;
4036 {
4037 if (!(cond == 0)) goto LA22_;
4038 cond = nextCond;
4039 }
4040 goto LA20_;
4041 LA22_: ;
4042 {
4043 cond = newOr__closureiters_251(g, cond, nextCond);
4044 }
4045 LA20_: ;
4046 i_4 += ((NI) 1);
4047 } LA17: ;
4048 }
4049 }
4050 ifBranch = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), (*c).info);
4051 add__ast_4797(ifBranch, cond);
4052 }
4053 goto LA9_;
4054 LA12_: ;
4055 {
4056 {
4057 NI T28_;
4058 T28_ = (NI)0;
4059 T28_ = len__ast_3198(ifStmt);
4060 if (!(T28_ == ((NI) 0))) goto LA29_;
4061 ifStmt = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*c).info);
4062 ifBranch = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*c).info);
4063 }
4064 goto LA26_;
4065 LA29_: ;
4066 {
4067 ifBranch = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88), (*c).info);
4068 }
4069 LA26_: ;
4070 }
4071 LA9_: ;
4072 T32_ = (NI)0;
4073 T32_ = len__ast_3198(c);
4074 add__ast_4797(ifBranch, (*c)._kind_6.sons->data[(NI)(T32_ - ((NI) 1))]);
4075 add__ast_4797(ifStmt, ifBranch);
4076 }
4077 LA7_: ;
4078 i_2 += ((NI) 1);
4079 } LA4: ;
4080 }
4081 }
4082 }
4083 {
4084 NI T35_;
4085 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T38_;
4086 T35_ = (NI)0;
4087 T35_ = len__ast_3198(ifStmt);
4088 if (!!((T35_ == ((NI) 0)))) goto LA36_;
4089 nimZeroMem((void*)T38_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4090 T38_[0] = newNullifyCurExc__closureiters_245(ctx, (*n).info);
4091 T38_[1] = ifStmt;
4092 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T38_, 2);
4093 }
4094 goto LA33_;
4095 LA36_: ;
4096 {
4097 result = (*(*ctx).g).emptyNode;
4098 }
4099 LA33_: ;
4100 return result;
4101 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,getFinallyNode__closureiters_357)4102 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getFinallyNode__closureiters_357)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4103 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4104 NI T1_;
4105 result = NIM_NIL;
4106 T1_ = (NI)0;
4107 T1_ = len__ast_3198(n);
4108 result = (*n)._kind_6.sons->data[(NI)(T1_ - ((NI) 1))];
4109 {
4110 if (!((*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107))) goto LA4_;
4111 result = (*result)._kind_6.sons->data[((NI) 0)];
4112 }
4113 goto LA2_;
4114 LA4_: ;
4115 {
4116 result = (*(*ctx).g).emptyNode;
4117 }
4118 LA2_: ;
4119 return result;
4120 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newUnrollFinallyAccess__closureiters_84)4121 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newUnrollFinallyAccess__closureiters_84)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
4122 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4123 result = NIM_NIL;
4124 {
4125 tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
4126 if (!((*ctx).unrollFinallySym == 0)) goto LA3_;
4127 T5_ = NIM_NIL;
4128 T5_ = getSysType__magicsys_60((*ctx).g, info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1));
4129 unsureAsgnRef((void**) (&(*ctx).unrollFinallySym), newEnvVar__closureiters_49(ctx, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_27), T5_));
4130 }
4131 LA3_: ;
4132 result = newEnvVarAccess__closureiters_70((&(*ctx)), (*ctx).unrollFinallySym);
4133 return result;
4134 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newTmpResultAccess__closureiters_77)4135 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newTmpResultAccess__closureiters_77)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx) {
4136 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4137 result = NIM_NIL;
4138 {
4139 if (!((*ctx).tmpResultSym == 0)) goto LA3_;
4140 unsureAsgnRef((void**) (&(*ctx).tmpResultSym), newEnvVar__closureiters_49(ctx, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_28), (*(*(*ctx).fn).typ).sons->data[((NI) 0)]));
4141 }
4142 LA3_: ;
4143 result = newEnvVarAccess__closureiters_70((&(*ctx)), (*ctx).tmpResultSym);
4144 return result;
4145 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,transformReturnsInTry__closureiters_1107)4146 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformReturnsInTry__closureiters_1107)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4147 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4148 result = NIM_NIL;
4149 result = n;
4150 switch ((*n).kind) {
4151 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109):
4152 {
4153 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T16_;
4154 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* goto_1;
4155 tyArray__jlWPjgtbdjE069arIWHC9c9bg T17_;
4156 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
4157 {
4158 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* asgn;
4159 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T3_;
4160 tyObject_TType__facALICuu8zUj0hjvbTLFg* T4_;
4161 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_;
4162 asgn = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), (*n).info);
4163 T3_ = NIM_NIL;
4164 T3_ = newUnrollFinallyAccess__closureiters_84(ctx, (*n).info);
4165 add__ast_4797(asgn, T3_);
4166 T4_ = NIM_NIL;
4167 T4_ = getSysType__magicsys_60((*ctx).g, (*n).info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1));
4168 T5_ = NIM_NIL;
4169 T5_ = newIntTypeNode__ast_3783(IL64(1), T4_);
4170 add__ast_4797(asgn, T5_);
4171 add__ast_4797(result, asgn);
4172 }
4173 {
4174 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* asgnTmpResult;
4175 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T10_;
4176 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
4177 if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA8_;
4178 asgnTmpResult = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), (*n).info);
4179 T10_ = NIM_NIL;
4180 T10_ = newTmpResultAccess__closureiters_77(ctx);
4181 add__ast_4797(asgnTmpResult, T10_);
4182 {
4183 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73) || (*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74))) goto LA13_;
4184 x = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)];
4185 }
4186 goto LA11_;
4187 LA13_: ;
4188 {
4189 x = (*n)._kind_6.sons->data[((NI) 0)];
4190 }
4191 LA11_: ;
4192 add__ast_4797(asgnTmpResult, x);
4193 add__ast_4797(result, asgnTmpResult);
4194 }
4195 LA8_: ;
4196 T16_ = NIM_NIL;
4197 T16_ = newNullifyCurExc__closureiters_245(ctx, (*n).info);
4198 add__ast_4797(result, T16_);
4199 nimZeroMem((void*)T17_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4200 T17_[0] = newIntLit__lowerings_695((*ctx).g, (*n).info, ((NI64) ((*ctx).nearestFinally)));
4201 goto_1 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), T17_, 1);
4202 add__ast_4797(result, goto_1);
4203 }
4204 break;
4205 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
4206 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
4207 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
4208 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
4209 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
4210 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
4211 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
4212 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
4213 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
4214 {
4215 }
4216 break;
4217 default:
4218 {
4219 {
4220 NI i;
4221 NI colontmp_;
4222 NI i_2;
4223 i = (NI)0;
4224 colontmp_ = (NI)0;
4225 colontmp_ = len__ast_3198(n);
4226 i_2 = ((NI) 0);
4227 {
4228 while (1) {
4229 if (!(i_2 < colontmp_)) goto LA22;
4230 i = i_2;
4231 asgnRef((void**) (&(*n)._kind_6.sons->data[i]), transformReturnsInTry__closureiters_1107(ctx, (*n)._kind_6.sons->data[i]));
4232 i_2 += ((NI) 1);
4233 } LA22: ;
4234 }
4235 }
4236 }
4237 break;
4238 }
4239 return result;
4240 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newEndFinallyNode__closureiters_1092)4241 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newEndFinallyNode__closureiters_1092)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
4242 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4243 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* curExc;
4244 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nilnode;
4245 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cmp;
4246 tyArray__T6RKPw8xfAeNaoei9aZGzXg T1_;
4247 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T2_;
4248 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* asgn;
4249 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T3_;
4250 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T4_;
4251 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* retStmt;
4252 tyArray__jlWPjgtbdjE069arIWHC9c9bg T5_;
4253 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
4254 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T6_;
4255 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nullifyExc;
4256 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T7_;
4257 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T8_;
4258 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* raiseStmt;
4259 tyArray__jlWPjgtbdjE069arIWHC9c9bg T9_;
4260 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elseBranch;
4261 tyArray__jlWPjgtbdjE069arIWHC9c9bg T10_;
4262 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T11_;
4263 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifBody;
4264 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T12_;
4265 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elifBranch;
4266 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T13_;
4267 tyArray__jlWPjgtbdjE069arIWHC9c9bg T14_;
4268 result = NIM_NIL;
4269 curExc = newCurExcAccess__closureiters_91(ctx);
4270 nilnode = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
4271 asgnRef((void**) (&(*nilnode).typ), (*curExc).typ);
4272 nimZeroMem((void*)T1_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
4273 T2_ = NIM_NIL;
4274 T2_ = getSysMagic__magicsys_29((*ctx).g, info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_29), ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 87));
4275 T1_[0] = newSymNode__ast_3719(T2_, info);
4276 T1_[1] = curExc;
4277 T1_[2] = nilnode;
4278 cmp = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T1_, 3);
4279 asgnRef((void**) (&(*cmp).typ), getSysType__magicsys_60((*ctx).g, info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1)));
4280 nimZeroMem((void*)T3_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4281 T4_ = NIM_NIL;
4282 T4_ = getClosureIterResult__lambdalifting_62((*ctx).g, (*ctx).fn, (*ctx).idgen);
4283 T3_[0] = newSymNode__ast_3719(T4_, info);
4284 T3_[1] = newTmpResultAccess__closureiters_77(ctx);
4285 asgn = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74), T3_, 2);
4286 nimZeroMem((void*)T5_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4287 T5_[0] = asgn;
4288 retStmt = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109), T5_, 1);
4289 nimZeroMem((void*)T6_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4290 T6_[0] = cmp;
4291 T6_[1] = retStmt;
4292 branch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), T6_, 2);
4293 nimZeroMem((void*)T7_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4294 T8_ = NIM_NIL;
4295 T8_ = getCompilerProc__magicsys_145((*ctx).g, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_30));
4296 T7_[0] = newSymNode__ast_3716(T8_);
4297 T7_[1] = nilnode;
4298 nullifyExc = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T7_, 2);
4299 (*nullifyExc).info = info;
4300 nimZeroMem((void*)T9_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4301 T9_[0] = curExc;
4302 raiseStmt = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108), T9_, 1);
4303 (*raiseStmt).info = info;
4304 nimZeroMem((void*)T10_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4305 nimZeroMem((void*)T11_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4306 T11_[0] = nullifyExc;
4307 T11_[1] = raiseStmt;
4308 T10_[0] = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T11_, 2);
4309 elseBranch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88), T10_, 1);
4310 nimZeroMem((void*)T12_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4311 T12_[0] = branch;
4312 T12_[1] = elseBranch;
4313 ifBody = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), T12_, 2);
4314 nimZeroMem((void*)T13_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4315 T13_[0] = newUnrollFinallyAccess__closureiters_84(ctx, info);
4316 T13_[1] = ifBody;
4317 elifBranch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), T13_, 2);
4318 (*elifBranch).info = info;
4319 nimZeroMem((void*)T14_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4320 T14_[0] = elifBranch;
4321 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), T14_, 1);
4322 return result;
4323 }
N_NIMCALL(void,addElseToExcept__closureiters_316)4324 N_LIB_PRIVATE N_NIMCALL(void, addElseToExcept__closureiters_316)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4325 {
4326 NIM_BOOL T3_;
4327 NIM_BOOL T4_;
4328 NI T7_;
4329 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branchBody;
4330 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elseBranch;
4331 tyArray__jlWPjgtbdjE069arIWHC9c9bg T20_;
4332 T3_ = (NIM_BOOL)0;
4333 T4_ = (NIM_BOOL)0;
4334 T4_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115));
4335 if (!(T4_)) goto LA5_;
4336 T4_ = ((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92));
4337 LA5_: ;
4338 T3_ = T4_;
4339 if (!(T3_)) goto LA6_;
4340 T7_ = (NI)0;
4341 T7_ = len__ast_3198((*n)._kind_6.sons->data[((NI) 1)]);
4342 T3_ = !(((*(*(*n)._kind_6.sons->data[((NI) 1)])._kind_6.sons->data[(NI)(T7_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88)));
4343 LA6_: ;
4344 if (!T3_) goto LA8_;
4345 branchBody = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
4346 {
4347 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T11_;
4348 tyObject_TType__facALICuu8zUj0hjvbTLFg* T12_;
4349 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T13_;
4350 nimZeroMem((void*)T11_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4351 T11_[0] = newUnrollFinallyAccess__closureiters_84(ctx, (*n).info);
4352 T12_ = NIM_NIL;
4353 T12_ = getSysType__magicsys_60((*ctx).g, (*n).info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1));
4354 T11_[1] = newIntTypeNode__ast_3783(IL64(1), T12_);
4355 T13_ = NIM_NIL;
4356 T13_ = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), T11_, 2);
4357 add__ast_4797(branchBody, T13_);
4358 }
4359 {
4360 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T15_;
4361 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T16_;
4362 nimZeroMem((void*)T15_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4363 T15_[0] = newCurExcAccess__closureiters_91(ctx);
4364 T15_[1] = callCodegenProc__lowerings_635((*ctx).g, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_24), unknownLineInfo__lineinfos_280, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
4365 T16_ = NIM_NIL;
4366 T16_ = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), T15_, 2);
4367 add__ast_4797(branchBody, T16_);
4368 }
4369 {
4370 tyArray__jlWPjgtbdjE069arIWHC9c9bg T18_;
4371 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T19_;
4372 nimZeroMem((void*)T18_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4373 T18_[0] = newIntLit__lowerings_695((*ctx).g, (*n).info, ((NI64) ((*ctx).nearestFinally)));
4374 T19_ = NIM_NIL;
4375 T19_ = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), T18_, 1);
4376 add__ast_4797(branchBody, T19_);
4377 }
4378 nimZeroMem((void*)T20_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4379 T20_[0] = branchBody;
4380 elseBranch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88), T20_, 1);
4381 add__ast_4797((*n)._kind_6.sons->data[((NI) 1)], elseBranch);
4382 }
4383 LA8_: ;
4384 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,transformClosureIteratorBody__closureiters_1173)4385 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformClosureIteratorBody__closureiters_1173)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gotoOut) {
4386 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4387 result = NIM_NIL;
4388 result = n;
4389 switch ((*n).kind) {
4390 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
4391 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
4392 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
4393 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
4394 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
4395 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
4396 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
4397 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
4398 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
4399 {
4400 }
4401 break;
4402 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
4403 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
4404 {
4405 result = addGotoOut__closureiters_147(result, gotoOut);
4406 {
4407 NI i;
4408 NI colontmp_;
4409 NI i_2;
4410 i = (NI)0;
4411 colontmp_ = (NI)0;
4412 colontmp_ = len__ast_3198(n);
4413 i_2 = ((NI) 0);
4414 {
4415 while (1) {
4416 if (!(i_2 < colontmp_)) goto LA5;
4417 i = i_2;
4418 {
4419 NIM_BOOL T8_;
4420 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* go;
4421 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s;
4422 NI T14_;
4423 T8_ = (NIM_BOOL)0;
4424 T8_ = hasYields__closureiters_175((*n)._kind_6.sons->data[i]);
4425 if (!T8_) goto LA9_;
4426 go = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), (*(*n)._kind_6.sons->data[i]).info);
4427 asgnRef((void**) (&(*n)._kind_6.sons->data[i]), transformClosureIteratorBody__closureiters_1173(ctx, (*n)._kind_6.sons->data[i], go));
4428 s = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*(*n)._kind_6.sons->data[(NI)(i + ((NI) 1))]).info);
4429 {
4430 NI j;
4431 NI colontmp__2;
4432 NI colontmp__3;
4433 NI i_3;
4434 j = (NI)0;
4435 colontmp__2 = (NI)0;
4436 colontmp__3 = (NI)0;
4437 colontmp__2 = (NI)(i + ((NI) 1));
4438 colontmp__3 = len__ast_3198(n);
4439 i_3 = colontmp__2;
4440 {
4441 while (1) {
4442 if (!(i_3 < colontmp__3)) goto LA13;
4443 j = i_3;
4444 add__ast_4797(s, (*n)._kind_6.sons->data[j]);
4445 i_3 += ((NI) 1);
4446 } LA13: ;
4447 }
4448 }
4449 asgnRef((void**) (&(*n)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*n)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((NI)(i + ((NI) 1))))));
4450 T14_ = (NI)0;
4451 T14_ = newState__closureiters_97(ctx, s, go);
4452 (void)(T14_);
4453 {
4454 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T17_;
4455 T17_ = NIM_NIL;
4456 T17_ = transformClosureIteratorBody__closureiters_1173(ctx, s, gotoOut);
4457 if (!!((T17_ == s))) goto LA18_;
4458 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_21), TM__slVvvIjx75ivXdMpHiE9c9aQ_22);
4459 }
4460 LA18_: ;
4461 goto LA3;
4462 }
4463 LA9_: ;
4464 i_2 += ((NI) 1);
4465 } LA5: ;
4466 }
4467 } LA3: ;
4468 }
4469 break;
4470 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 104):
4471 {
4472 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
4473 add__ast_4797(result, n);
4474 add__ast_4797(result, gotoOut);
4475 }
4476 break;
4477 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
4478 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 50):
4479 {
4480 asgnRef((void**) (&(*result)._kind_6.sons->data[((NI) 0)]), addGotoOut__closureiters_147((*result)._kind_6.sons->data[((NI) 0)], gotoOut));
4481 asgnRef((void**) (&(*result)._kind_6.sons->data[((NI) 0)]), transformClosureIteratorBody__closureiters_1173(ctx, (*result)._kind_6.sons->data[((NI) 0)], gotoOut));
4482 }
4483 break;
4484 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
4485 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 49):
4486 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
4487 {
4488 NI T23_;
4489 NI T24_;
4490 NI T25_;
4491 NI T26_;
4492 T23_ = (NI)0;
4493 T23_ = len__ast_3198(result);
4494 T24_ = (NI)0;
4495 T24_ = len__ast_3198(result);
4496 asgnRef((void**) (&(*result)._kind_6.sons->data[(NI)(T23_ - ((NI) 1))]), addGotoOut__closureiters_147((*result)._kind_6.sons->data[(NI)(T24_ - ((NI) 1))], gotoOut));
4497 T25_ = (NI)0;
4498 T25_ = len__ast_3198(result);
4499 T26_ = (NI)0;
4500 T26_ = len__ast_3198(result);
4501 asgnRef((void**) (&(*result)._kind_6.sons->data[(NI)(T25_ - ((NI) 1))]), transformClosureIteratorBody__closureiters_1173(ctx, (*result)._kind_6.sons->data[(NI)(T26_ - ((NI) 1))], gotoOut));
4502 }
4503 break;
4504 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92):
4505 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97):
4506 {
4507 {
4508 NI i_4;
4509 NI colontmp__4;
4510 NI i_5;
4511 i_4 = (NI)0;
4512 colontmp__4 = (NI)0;
4513 colontmp__4 = len__ast_3198(n);
4514 i_5 = ((NI) 0);
4515 {
4516 while (1) {
4517 if (!(i_5 < colontmp__4)) goto LA30;
4518 i_4 = i_5;
4519 asgnRef((void**) (&(*n)._kind_6.sons->data[i_4]), transformClosureIteratorBody__closureiters_1173(ctx, (*n)._kind_6.sons->data[i_4], gotoOut));
4520 i_5 += ((NI) 1);
4521 } LA30: ;
4522 }
4523 }
4524 {
4525 NI T33_;
4526 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elseBranch;
4527 tyArray__jlWPjgtbdjE069arIWHC9c9bg T36_;
4528 T33_ = (NI)0;
4529 T33_ = len__ast_3198(n);
4530 if (!!(((*(*n)._kind_6.sons->data[(NI)(T33_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88)))) goto LA34_;
4531 nimZeroMem((void*)T36_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4532 T36_[0] = gotoOut;
4533 elseBranch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88), T36_, 1);
4534 add__ast_4797(n, elseBranch);
4535 }
4536 LA34_: ;
4537 }
4538 break;
4539 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
4540 {
4541 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s_2;
4542 NI T38_;
4543 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifNode;
4544 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elifBranch;
4545 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body;
4546 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elseBranch_2;
4547 tyArray__jlWPjgtbdjE069arIWHC9c9bg T39_;
4548 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), (*n).info);
4549 s_2 = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
4550 T38_ = (NI)0;
4551 T38_ = newState__closureiters_97(ctx, s_2, result);
4552 (void)(T38_);
4553 ifNode = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), (*n).info);
4554 elifBranch = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), (*n).info);
4555 add__ast_4797(elifBranch, (*n)._kind_6.sons->data[((NI) 0)]);
4556 body = addGotoOut__closureiters_147((*n)._kind_6.sons->data[((NI) 1)], result);
4557 body = transformBreaksAndContinuesInWhile__closureiters_179(ctx, body, result, gotoOut);
4558 body = transformClosureIteratorBody__closureiters_1173(ctx, body, result);
4559 add__ast_4797(elifBranch, body);
4560 add__ast_4797(ifNode, elifBranch);
4561 nimZeroMem((void*)T39_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4562 T39_[0] = gotoOut;
4563 elseBranch_2 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88), T39_, 1);
4564 add__ast_4797(ifNode, elseBranch_2);
4565 add__ast_4797(s_2, ifNode);
4566 }
4567 break;
4568 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112):
4569 {
4570 asgnRef((void**) (&(*result)._kind_6.sons->data[((NI) 1)]), addGotoOut__closureiters_147((*result)._kind_6.sons->data[((NI) 1)], gotoOut));
4571 asgnRef((void**) (&(*result)._kind_6.sons->data[((NI) 1)]), transformBreaksInBlock__closureiters_205(ctx, (*result)._kind_6.sons->data[((NI) 1)], (*result)._kind_6.sons->data[((NI) 0)], gotoOut));
4572 asgnRef((void**) (&(*result)._kind_6.sons->data[((NI) 1)]), transformClosureIteratorBody__closureiters_1173(ctx, (*result)._kind_6.sons->data[((NI) 1)], gotoOut));
4573 }
4574 break;
4575 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106):
4576 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 154):
4577 {
4578 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tryBody;
4579 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exceptBody;
4580 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* finallyBody;
4581 tyArray__jlWPjgtbdjE069arIWHC9c9bg T42_;
4582 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T43_;
4583 NI tryIdx;
4584 NI T44_;
4585 NI exceptIdx;
4586 NI finallyIdx;
4587 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* outToFinally;
4588 (*ctx).hasExceptions = NIM_TRUE;
4589 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), (*n).info);
4590 tryBody = toStmtList__closureiters_136((*n)._kind_6.sons->data[((NI) 0)]);
4591 exceptBody = collectExceptState__closureiters_256(ctx, n);
4592 nimZeroMem((void*)T42_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4593 T42_[0] = getFinallyNode__closureiters_357(ctx, n);
4594 finallyBody = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T42_, 1);
4595 finallyBody = transformReturnsInTry__closureiters_1107(ctx, finallyBody);
4596 T43_ = NIM_NIL;
4597 T43_ = newEndFinallyNode__closureiters_1092(ctx, (*finallyBody).info);
4598 add__ast_4797(finallyBody, T43_);
4599 T44_ = ((*ctx).states ? (*ctx).states->Sup.len : 0);
4600 tryIdx = T44_;
4601 exceptIdx = (NI)0;
4602 finallyIdx = (NI)0;
4603 {
4604 if (!!(((*exceptBody).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA47_;
4605 exceptIdx = ((NI64)-((NI)(tryIdx + ((NI) 1))));
4606 finallyIdx = (NI)(tryIdx + ((NI) 2));
4607 }
4608 goto LA45_;
4609 LA47_: ;
4610 {
4611 exceptIdx = (NI)(tryIdx + ((NI) 1));
4612 finallyIdx = (NI)(tryIdx + ((NI) 1));
4613 }
4614 LA45_: ;
4615 outToFinally = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), (*finallyBody).info);
4616 {
4617 NI oldExcHandlingState;
4618 NI realTryIdx;
4619 NI realFinallyIdx;
4620 oldExcHandlingState = (*ctx).curExcHandlingState;
4621 (*ctx).curExcHandlingState = exceptIdx;
4622 realTryIdx = newState__closureiters_97(ctx, tryBody, result);
4623 {
4624 NI realExceptIdx;
4625 if (!!(((*exceptBody).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA53_;
4626 (*ctx).curExcHandlingState = finallyIdx;
4627 realExceptIdx = newState__closureiters_97(ctx, exceptBody, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
4628 }
4629 LA53_: ;
4630 (*ctx).curExcHandlingState = oldExcHandlingState;
4631 realFinallyIdx = newState__closureiters_97(ctx, finallyBody, outToFinally);
4632 }
4633 {
4634 NI oldNearestFinally;
4635 NI oldExcHandlingState_2;
4636 oldNearestFinally = (*ctx).nearestFinally;
4637 (*ctx).nearestFinally = finallyIdx;
4638 oldExcHandlingState_2 = (*ctx).curExcHandlingState;
4639 (*ctx).curExcHandlingState = exceptIdx;
4640 {
4641 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T58_;
4642 T58_ = NIM_NIL;
4643 T58_ = transformReturnsInTry__closureiters_1107(ctx, tryBody);
4644 if (!!((T58_ == tryBody))) goto LA59_;
4645 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_31), TM__slVvvIjx75ivXdMpHiE9c9aQ_32);
4646 }
4647 LA59_: ;
4648 {
4649 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T63_;
4650 T63_ = NIM_NIL;
4651 T63_ = transformClosureIteratorBody__closureiters_1173(ctx, tryBody, outToFinally);
4652 if (!!((T63_ == tryBody))) goto LA64_;
4653 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_33), TM__slVvvIjx75ivXdMpHiE9c9aQ_34);
4654 }
4655 LA64_: ;
4656 (*ctx).curExcHandlingState = finallyIdx;
4657 addElseToExcept__closureiters_316(ctx, exceptBody);
4658 {
4659 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T68_;
4660 T68_ = NIM_NIL;
4661 T68_ = transformReturnsInTry__closureiters_1107(ctx, exceptBody);
4662 if (!!((T68_ == exceptBody))) goto LA69_;
4663 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_35), TM__slVvvIjx75ivXdMpHiE9c9aQ_36);
4664 }
4665 LA69_: ;
4666 {
4667 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T73_;
4668 T73_ = NIM_NIL;
4669 T73_ = transformClosureIteratorBody__closureiters_1173(ctx, exceptBody, outToFinally);
4670 if (!!((T73_ == exceptBody))) goto LA74_;
4671 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_37), TM__slVvvIjx75ivXdMpHiE9c9aQ_38);
4672 }
4673 LA74_: ;
4674 (*ctx).curExcHandlingState = oldExcHandlingState_2;
4675 (*ctx).nearestFinally = oldNearestFinally;
4676 {
4677 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T78_;
4678 T78_ = NIM_NIL;
4679 T78_ = transformClosureIteratorBody__closureiters_1173(ctx, finallyBody, gotoOut);
4680 if (!!((T78_ == finallyBody))) goto LA79_;
4681 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_39), TM__slVvvIjx75ivXdMpHiE9c9aQ_40);
4682 }
4683 LA79_: ;
4684 }
4685 }
4686 break;
4687 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156):
4688 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 94):
4689 {
4690 NimStringDesc* T82_;
4691 T82_ = NIM_NIL;
4692 T82_ = rawNewString((reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 13);
4693 appendString(T82_, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_41));
4694 appendString(T82_, reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)));
4695 internalErrorImpl__msgs_1431((*(*ctx).g).config, unknownLineInfo__lineinfos_280, T82_, TM__slVvvIjx75ivXdMpHiE9c9aQ_42);
4696 }
4697 break;
4698 default:
4699 {
4700 {
4701 NI i_6;
4702 NI colontmp__5;
4703 NI i_7;
4704 i_6 = (NI)0;
4705 colontmp__5 = (NI)0;
4706 colontmp__5 = len__ast_3198(n);
4707 i_7 = ((NI) 0);
4708 {
4709 while (1) {
4710 if (!(i_7 < colontmp__5)) goto LA86;
4711 i_6 = i_7;
4712 asgnRef((void**) (&(*n)._kind_6.sons->data[i_6]), transformClosureIteratorBody__closureiters_1173(ctx, (*n)._kind_6.sons->data[i_6], gotoOut));
4713 i_7 += ((NI) 1);
4714 } LA86: ;
4715 }
4716 }
4717 }
4718 break;
4719 }
4720 return result;
4721 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,skipStmtList__closureiters_1491)4722 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipStmtList__closureiters_1491)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4723 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4724 { result = NIM_NIL;
4725 result = n;
4726 {
4727 while (1) {
4728 if (!((*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115))) goto LA2;
4729 {
4730 NI T5_;
4731 T5_ = (NI)0;
4732 T5_ = len__ast_3198(result);
4733 if (!(T5_ == ((NI) 0))) goto LA6_;
4734 result = (*(*ctx).g).emptyNode;
4735 goto BeforeRet_;
4736 }
4737 LA6_: ;
4738 result = (*result)._kind_6.sons->data[((NI) 0)];
4739 } LA2: ;
4740 }
4741 }BeforeRet_: ;
4742 return result;
4743 }
N_NIMCALL(NI,skipEmptyStates__closureiters_1503)4744 N_LIB_PRIVATE N_NIMCALL(NI, skipEmptyStates__closureiters_1503)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, NI stateIdx) {
4745 NI result;
4746 NI maxJumps;
4747 NI T1_;
4748 NI stateIdx_2;
4749 result = (NI)0;
4750 T1_ = ((*ctx).states ? (*ctx).states->Sup.len : 0);
4751 maxJumps = T1_;
4752 stateIdx_2 = stateIdx;
4753 {
4754 while (1) {
4755 NI label;
4756 NI newLabel;
4757 label = stateIdx_2;
4758 {
4759 if (!(label == (*ctx).exitStateIdx)) goto LA6_;
4760 goto LA2;
4761 }
4762 LA6_: ;
4763 newLabel = label;
4764 {
4765 if (!(label == ((NI) -1))) goto LA10_;
4766 newLabel = (*ctx).exitStateIdx;
4767 }
4768 goto LA8_;
4769 LA10_: ;
4770 {
4771 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fs;
4772 fs = skipStmtList__closureiters_1491(ctx, (*(*ctx).states->data[label])._kind_6.sons->data[((NI) 1)]);
4773 {
4774 if (!((*fs).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156))) goto LA15_;
4775 newLabel = ((NI) ((*(*fs)._kind_6.sons->data[((NI) 0)])._kind_1.intVal));
4776 }
4777 LA15_: ;
4778 }
4779 LA8_: ;
4780 {
4781 if (!(label == newLabel)) goto LA19_;
4782 goto LA2;
4783 }
4784 LA19_: ;
4785 stateIdx_2 = newLabel;
4786 maxJumps -= ((NI) 1);
4787 {
4788 if (!(maxJumps == ((NI) 0))) goto LA23_;
4789 }
4790 LA23_: ;
4791 }
4792 } LA2: ;
4793 result = ((NI) ((*(*(*ctx).states->data[stateIdx_2])._kind_6.sons->data[((NI) 0)])._kind_1.intVal));
4794 return result;
4795 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,skipThroughEmptyStates__closureiters_1529)4796 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipThroughEmptyStates__closureiters_1529)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4797 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4798 result = NIM_NIL;
4799 result = n;
4800 switch ((*n).kind) {
4801 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
4802 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
4803 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
4804 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
4805 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
4806 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
4807 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
4808 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
4809 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
4810 {
4811 }
4812 break;
4813 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156):
4814 {
4815 NI T3_;
4816 result = copyTree__ast_4431(n);
4817 T3_ = (NI)0;
4818 T3_ = skipEmptyStates__closureiters_1503((&(*ctx)), ((NI) ((*(*result)._kind_6.sons->data[((NI) 0)])._kind_1.intVal)));
4819 (*(*result)._kind_6.sons->data[((NI) 0)])._kind_1.intVal = ((NI64) (T3_));
4820 }
4821 break;
4822 default:
4823 {
4824 {
4825 NI i;
4826 NI colontmp_;
4827 NI i_2;
4828 i = (NI)0;
4829 colontmp_ = (NI)0;
4830 colontmp_ = len__ast_3198(n);
4831 i_2 = ((NI) 0);
4832 {
4833 while (1) {
4834 if (!(i_2 < colontmp_)) goto LA7;
4835 i = i_2;
4836 asgnRef((void**) (&(*n)._kind_6.sons->data[i]), skipThroughEmptyStates__closureiters_1529(ctx, (*n)._kind_6.sons->data[i]));
4837 i_2 += ((NI) 1);
4838 } LA7: ;
4839 }
4840 }
4841 }
4842 break;
4843 }
4844 return result;
4845 }
N_NIMCALL(void,delete__closureiters_1709)4846 N_LIB_PRIVATE N_NIMCALL(void, delete__closureiters_1709)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** x, NI i) {
4847 NI xlX60gensym304_;
4848 NI T1_;
4849 T1_ = ((*x) ? (*x)->Sup.len : 0);
4850 xlX60gensym304_ = T1_;
4851 {
4852 NI jX60gensym304_;
4853 NI colontmp_;
4854 NI colontmp__2;
4855 NI res;
4856 jX60gensym304_ = (NI)0;
4857 colontmp_ = (NI)0;
4858 colontmp__2 = (NI)0;
4859 colontmp_ = ((NI) (i));
4860 colontmp__2 = (NI)(xlX60gensym304_ - ((NI) 2));
4861 res = colontmp_;
4862 {
4863 while (1) {
4864 if (!(res <= colontmp__2)) goto LA4;
4865 jX60gensym304_ = res;
4866 asgnRef((void**) (&(*x)->data[jX60gensym304_]), (*x)->data[(NI)(jX60gensym304_ + ((NI) 1))]);
4867 res += ((NI) 1);
4868 } LA4: ;
4869 }
4870 }
4871 unsureAsgnRef((void**) (&(*x)), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*x))->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((NI)(xlX60gensym304_ - ((NI) 1))))));
4872 }
N_NIMCALL(void,delete__closureiters_1746)4873 N_LIB_PRIVATE N_NIMCALL(void, delete__closureiters_1746)(tySequence__qwqHTkRvwhrRyENtudHQ7g** x, NI i) {
4874 NI xlX60gensym306_;
4875 NI T1_;
4876 T1_ = ((*x) ? (*x)->Sup.len : 0);
4877 xlX60gensym306_ = T1_;
4878 {
4879 NI jX60gensym306_;
4880 NI colontmp_;
4881 NI colontmp__2;
4882 NI res;
4883 jX60gensym306_ = (NI)0;
4884 colontmp_ = (NI)0;
4885 colontmp__2 = (NI)0;
4886 colontmp_ = ((NI) (i));
4887 colontmp__2 = (NI)(xlX60gensym306_ - ((NI) 2));
4888 res = colontmp_;
4889 {
4890 while (1) {
4891 if (!(res <= colontmp__2)) goto LA4;
4892 jX60gensym306_ = res;
4893 (*x)->data[jX60gensym306_] = (*x)->data[(NI)(jX60gensym306_ + ((NI) 1))];
4894 res += ((NI) 1);
4895 } LA4: ;
4896 }
4897 }
4898 unsureAsgnRef((void**) (&(*x)), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*x))->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) ((NI)(xlX60gensym306_ - ((NI) 1))))));
4899 }
N_NIMCALL(void,deleteEmptyStates__closureiters_1659)4900 N_LIB_PRIVATE N_NIMCALL(void, deleteEmptyStates__closureiters_1659)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx) {
4901 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* goOut;
4902 tyArray__jlWPjgtbdjE069arIWHC9c9bg T1_;
4903 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T2_;
4904 NI iValid;
4905 NI i_5;
4906 nimZeroMem((void*)T1_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4907 nimZeroMem((void*)(&T2_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
4908 T1_[0] = newIntLit__lowerings_695((*ctx).g, T2_, IL64(-1));
4909 goOut = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), T1_, 1);
4910 (*ctx).exitStateIdx = newState__closureiters_97(ctx, goOut, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
4911 iValid = ((NI) 0);
4912 {
4913 NI i;
4914 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s;
4915 NI i_2;
4916 NI L;
4917 NI T4_;
4918 i = (NI)0;
4919 s = NIM_NIL;
4920 i_2 = ((NI) 0);
4921 T4_ = ((*ctx).states ? (*ctx).states->Sup.len : 0);
4922 L = T4_;
4923 {
4924 while (1) {
4925 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body;
4926 if (!(i_2 < L)) goto LA6;
4927 i = i_2;
4928 s = (*ctx).states->data[i_2];
4929 body = skipStmtList__closureiters_1491((&(*ctx)), (*s)._kind_6.sons->data[((NI) 1)]);
4930 {
4931 NIM_BOOL T9_;
4932 NIM_BOOL T10_;
4933 NI T12_;
4934 T9_ = (NIM_BOOL)0;
4935 T10_ = (NIM_BOOL)0;
4936 T10_ = ((*body).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156));
4937 if (!(T10_)) goto LA11_;
4938 T12_ = ((*ctx).states ? (*ctx).states->Sup.len : 0);
4939 T10_ = !((i == (NI)(T12_ - ((NI) 1))));
4940 LA11_: ;
4941 T9_ = T10_;
4942 if (!(T9_)) goto LA13_;
4943 T9_ = !((i == ((NI) 0)));
4944 LA13_: ;
4945 if (!T9_) goto LA14_;
4946 (*(*s)._kind_6.sons->data[((NI) 0)])._kind_1.intVal = IL64(-1);
4947 }
4948 goto LA7_;
4949 LA14_: ;
4950 {
4951 (*(*s)._kind_6.sons->data[((NI) 0)])._kind_1.intVal = ((NI64) (iValid));
4952 iValid += ((NI) 1);
4953 }
4954 LA7_: ;
4955 i_2 += ((NI) 1);
4956 } LA6: ;
4957 }
4958 }
4959 {
4960 NI i_3;
4961 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s_2;
4962 NI i_4;
4963 NI L_2;
4964 NI T18_;
4965 i_3 = (NI)0;
4966 s_2 = NIM_NIL;
4967 i_4 = ((NI) 0);
4968 T18_ = ((*ctx).states ? (*ctx).states->Sup.len : 0);
4969 L_2 = T18_;
4970 {
4971 while (1) {
4972 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body_2;
4973 if (!(i_4 < L_2)) goto LA20;
4974 i_3 = i_4;
4975 s_2 = (*ctx).states->data[i_4];
4976 body_2 = skipStmtList__closureiters_1491((&(*ctx)), (*s_2)._kind_6.sons->data[((NI) 1)]);
4977 {
4978 NIM_BOOL T23_;
4979 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T27_;
4980 NI excHandlState;
4981 T23_ = (NIM_BOOL)0;
4982 T23_ = !(((*body_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156)));
4983 if (T23_) goto LA24_;
4984 T23_ = (i_3 == ((NI) 0));
4985 LA24_: ;
4986 if (!T23_) goto LA25_;
4987 T27_ = NIM_NIL;
4988 T27_ = skipThroughEmptyStates__closureiters_1529(ctx, s_2);
4989 (void)(T27_);
4990 excHandlState = (*ctx).exceptionTable->data[i_3];
4991 {
4992 NI T32_;
4993 if (!(excHandlState < ((NI) 0))) goto LA30_;
4994 T32_ = (NI)0;
4995 T32_ = skipEmptyStates__closureiters_1503((&(*ctx)), ((NI64)-(excHandlState)));
4996 (*ctx).exceptionTable->data[i_3] = ((NI64)-(T32_));
4997 }
4998 goto LA28_;
4999 LA30_: ;
5000 {
5001 if (!!((excHandlState == ((NI) 0)))) goto LA34_;
5002 (*ctx).exceptionTable->data[i_3] = skipEmptyStates__closureiters_1503((&(*ctx)), excHandlState);
5003 }
5004 goto LA28_;
5005 LA34_: ;
5006 LA28_: ;
5007 }
5008 LA25_: ;
5009 i_4 += ((NI) 1);
5010 } LA20: ;
5011 }
5012 }
5013 i_5 = ((NI) 0);
5014 {
5015 while (1) {
5016 NI T38_;
5017 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fs;
5018 T38_ = ((*ctx).states ? (*ctx).states->Sup.len : 0);
5019 if (!(i_5 < (NI)(T38_ - ((NI) 1)))) goto LA37;
5020 fs = skipStmtList__closureiters_1491((&(*ctx)), (*(*ctx).states->data[i_5])._kind_6.sons->data[((NI) 1)]);
5021 {
5022 NIM_BOOL T41_;
5023 T41_ = (NIM_BOOL)0;
5024 T41_ = ((*fs).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156));
5025 if (!(T41_)) goto LA42_;
5026 T41_ = !((i_5 == ((NI) 0)));
5027 LA42_: ;
5028 if (!T41_) goto LA43_;
5029 delete__closureiters_1709((&(*ctx).states), ((NI) (i_5)));
5030 delete__closureiters_1746((&(*ctx).exceptionTable), ((NI) (i_5)));
5031 }
5032 goto LA39_;
5033 LA43_: ;
5034 {
5035 i_5 += ((NI) 1);
5036 }
5037 LA39_: ;
5038 } LA37: ;
5039 }
5040 }
N_NIMCALL(void,del__closureiters_3571)5041 N_LIB_PRIVATE N_NIMCALL(void, del__closureiters_3571)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** x, NI i) {
5042 NI xl;
5043 NI T1_;
5044 T1_ = ((*x) ? (*x)->Sup.len : 0);
5045 xl = (NI)(T1_ - ((NI) 1));
5046 asgnRef((void**) (&(*x)->data[i]), (*x)->data[xl]);
5047 unsureAsgnRef((void**) (&(*x)), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*x))->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (xl))));
5048 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newStateAccess__closureiters_35)5049 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStateAccess__closureiters_35)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx) {
5050 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5051 result = NIM_NIL;
5052 {
5053 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T5_;
5054 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T6_;
5055 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T7_;
5056 if (!((*ctx).stateVarSym == 0)) goto LA3_;
5057 T5_ = NIM_NIL;
5058 T5_ = getEnvParam__lambdalifting_131((*ctx).fn);
5059 T6_ = NIM_NIL;
5060 T6_ = newSymNode__ast_3716(T5_);
5061 T7_ = NIM_NIL;
5062 T7_ = getStateField__lambdalifting_4660((*ctx).g, (*ctx).fn);
5063 result = rawIndirectAccess__lowerings_326(T6_, T7_, (*(*ctx).fn).info);
5064 }
5065 goto LA1_;
5066 LA3_: ;
5067 {
5068 result = newSymNode__ast_3716((*ctx).stateVarSym);
5069 }
5070 LA1_: ;
5071 return result;
5072 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newStateAssgn__closureiters_41)5073 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStateAssgn__closureiters_41)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* toValue) {
5074 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5075 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T1_;
5076 result = NIM_NIL;
5077 nimZeroMem((void*)T1_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5078 T1_[0] = newStateAccess__closureiters_35(ctx);
5079 T1_[1] = toValue;
5080 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), T1_, 2);
5081 return result;
5082 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newStateAssgn__closureiters_45)5083 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStateAssgn__closureiters_45)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, NI stateNo) {
5084 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5085 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1_;
5086 tyObject_TType__facALICuu8zUj0hjvbTLFg* T2_;
5087 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T3_;
5088 result = NIM_NIL;
5089 nimZeroMem((void*)(&T1_), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
5090 T2_ = NIM_NIL;
5091 T2_ = getSysType__magicsys_60((*ctx).g, T1_, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
5092 T3_ = NIM_NIL;
5093 T3_ = newIntTypeNode__ast_3783(((NI64) (stateNo)), T2_);
5094 result = newStateAssgn__closureiters_41(ctx, T3_);
5095 return result;
5096 }
N_NIMCALL(NI,stateFromGotoState__closureiters_1375)5097 N_LIB_PRIVATE N_NIMCALL(NI, stateFromGotoState__closureiters_1375)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
5098 NI result;
5099 result = (NI)0;
5100 result = ((NI) ((*(*n)._kind_6.sons->data[((NI) 0)])._kind_1.intVal));
5101 return result;
5102 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,transformStateAssignments__closureiters_1386)5103 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformStateAssignments__closureiters_1386)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
5104 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5105 result = NIM_NIL;
5106 result = n;
5107 switch ((*n).kind) {
5108 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
5109 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
5110 {
5111 {
5112 NIM_BOOL T4_;
5113 NI T5_;
5114 NI T9_;
5115 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T10_;
5116 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* retStmt;
5117 T4_ = (NIM_BOOL)0;
5118 T5_ = (NI)0;
5119 T5_ = len__ast_3198(n);
5120 T4_ = !((T5_ == ((NI) 0)));
5121 if (!(T4_)) goto LA6_;
5122 T4_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 104));
5123 LA6_: ;
5124 if (!T4_) goto LA7_;
5125 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
5126 T9_ = (NI)0;
5127 T9_ = stateFromGotoState__closureiters_1375((*n)._kind_6.sons->data[((NI) 1)]);
5128 T10_ = NIM_NIL;
5129 T10_ = newStateAssgn__closureiters_45(ctx, T9_);
5130 add__ast_4797(result, T10_);
5131 retStmt = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109), (*n).info);
5132 {
5133 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
5134 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* retVal;
5135 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T15_;
5136 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T16_;
5137 if (!!(((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA13_;
5138 a = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), (*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)]).info);
5139 retVal = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)];
5140 T15_ = NIM_NIL;
5141 T15_ = getClosureIterResult__lambdalifting_62((*ctx).g, (*ctx).fn, (*ctx).idgen);
5142 T16_ = NIM_NIL;
5143 T16_ = newSymNode__ast_3716(T15_);
5144 add__ast_4797(a, T16_);
5145 add__ast_4797(a, retVal);
5146 add__ast_4797(retStmt, a);
5147 }
5148 goto LA11_;
5149 LA13_: ;
5150 {
5151 add__ast_4797(retStmt, (*(*ctx).g).emptyNode);
5152 }
5153 LA11_: ;
5154 add__ast_4797(result, retStmt);
5155 }
5156 goto LA2_;
5157 LA7_: ;
5158 {
5159 {
5160 NI i;
5161 NI colontmp_;
5162 NI i_2;
5163 i = (NI)0;
5164 colontmp_ = (NI)0;
5165 colontmp_ = len__ast_3198(n);
5166 i_2 = ((NI) 0);
5167 {
5168 while (1) {
5169 if (!(i_2 < colontmp_)) goto LA21;
5170 i = i_2;
5171 asgnRef((void**) (&(*n)._kind_6.sons->data[i]), transformStateAssignments__closureiters_1386(ctx, (*n)._kind_6.sons->data[i]));
5172 i_2 += ((NI) 1);
5173 } LA21: ;
5174 }
5175 }
5176 }
5177 LA2_: ;
5178 }
5179 break;
5180 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
5181 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
5182 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
5183 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
5184 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
5185 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
5186 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
5187 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
5188 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
5189 {
5190 }
5191 break;
5192 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109):
5193 {
5194 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T24_;
5195 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
5196 T24_ = NIM_NIL;
5197 T24_ = newStateAssgn__closureiters_45(ctx, ((NI) -1));
5198 add__ast_4797(result, T24_);
5199 add__ast_4797(result, n);
5200 }
5201 break;
5202 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156):
5203 {
5204 NI T26_;
5205 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T27_;
5206 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* breakState;
5207 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T28_;
5208 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
5209 T26_ = (NI)0;
5210 T26_ = stateFromGotoState__closureiters_1375(n);
5211 T27_ = NIM_NIL;
5212 T27_ = newStateAssgn__closureiters_45(ctx, T26_);
5213 add__ast_4797(result, T27_);
5214 breakState = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110), (*n).info);
5215 T28_ = NIM_NIL;
5216 T28_ = newSymNode__ast_3716((*ctx).stateLoopLabel);
5217 add__ast_4797(breakState, T28_);
5218 add__ast_4797(result, breakState);
5219 }
5220 break;
5221 default:
5222 {
5223 {
5224 NI i_3;
5225 NI colontmp__2;
5226 NI i_4;
5227 i_3 = (NI)0;
5228 colontmp__2 = (NI)0;
5229 colontmp__2 = len__ast_3198(n);
5230 i_4 = ((NI) 0);
5231 {
5232 while (1) {
5233 if (!(i_4 < colontmp__2)) goto LA32;
5234 i_3 = i_4;
5235 asgnRef((void**) (&(*n)._kind_6.sons->data[i_3]), transformStateAssignments__closureiters_1386(ctx, (*n)._kind_6.sons->data[i_3]));
5236 i_4 += ((NI) 1);
5237 } LA32: ;
5238 }
5239 }
5240 }
5241 break;
5242 }
5243 return result;
5244 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextTypeId__ast_3151)5245 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
5246 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
5247 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
5248 (*x).typeId_0 += ((NI) 1);
5249 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
5250 result.module = (*x).module;
5251 result.item = (*x).typeId_0;
5252 return result;
5253 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,newArrayType__closureiters_1545)5254 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, newArrayType__closureiters_1545)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI n, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner) {
5255 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
5256 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T1_;
5257 tyObject_TType__facALICuu8zUj0hjvbTLFg* rng;
5258 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T2_;
5259 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T3_;
5260 result = NIM_NIL;
5261 T1_ = nextTypeId__ast_3151(idgen);
5262 result = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16), T1_, owner);
5263 T2_ = nextTypeId__ast_3151(idgen);
5264 rng = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20), T2_, owner);
5265 nimZeroMem((void*)T3_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5266 T3_[0] = newIntLit__lowerings_695(g, (*owner).info, IL64(0));
5267 T3_[1] = newIntLit__lowerings_695(g, (*owner).info, ((NI64) (n)));
5268 asgnRef((void**) (&(*rng).n), newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44), T3_, 2));
5269 rawAddSon__ast_4288(rng, t, NIM_TRUE);
5270 rawAddSon__ast_4288(result, rng, NIM_TRUE);
5271 rawAddSon__ast_4288(result, t, NIM_TRUE);
5272 return result;
5273 }
N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,createExceptionTable__closureiters_1553)5274 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, createExceptionTable__closureiters_1553)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx) {
5275 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5276 NI T1_;
5277 tyObject_TType__facALICuu8zUj0hjvbTLFg* T2_;
5278 result = NIM_NIL;
5279 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41), (*(*ctx).fn).info);
5280 T1_ = ((*ctx).exceptionTable ? (*ctx).exceptionTable->Sup.len : 0);
5281 T2_ = NIM_NIL;
5282 T2_ = getSysType__magicsys_60((*ctx).g, (*(*ctx).fn).info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 33));
5283 asgnRef((void**) (&(*result).typ), newArrayType__closureiters_1545((*ctx).g, T1_, T2_, (*ctx).idgen, (*ctx).fn));
5284 {
5285 NI* i;
5286 NI i_2;
5287 NI L;
5288 NI T4_;
5289 i = (NI*)0;
5290 i_2 = ((NI) 0);
5291 T4_ = ((*ctx).exceptionTable ? (*ctx).exceptionTable->Sup.len : 0);
5292 L = T4_;
5293 {
5294 while (1) {
5295 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elem;
5296 if (!(i_2 < L)) goto LA6;
5297 i = (&(*ctx).exceptionTable->data[i_2]);
5298 elem = newIntNode__ast_3723(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6), ((NI64) ((*i))));
5299 asgnRef((void**) (&(*elem).typ), getSysType__magicsys_60((*ctx).g, (*(*ctx).fn).info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 33)));
5300 add__ast_4797(result, elem);
5301 i_2 += ((NI) 1);
5302 } LA6: ;
5303 }
5304 }
5305 return result;
5306 }
N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,newCatchBody__closureiters_1568)5307 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newCatchBody__closureiters_1568)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
5308 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5309 tyObject_TType__facALICuu8zUj0hjvbTLFg* intTyp;
5310 tyObject_TType__facALICuu8zUj0hjvbTLFg* boolTyp;
5311 result = NIM_NIL;
5312 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), info);
5313 intTyp = getSysType__magicsys_60((*ctx).g, info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
5314 boolTyp = getSysType__magicsys_60((*ctx).g, info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1));
5315 {
5316 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* getNextState;
5317 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T2_;
5318 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T3_;
5319 nimZeroMem((void*)T2_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5320 T2_[0] = createExceptionTable__closureiters_1553(ctx);
5321 T2_[1] = newStateAccess__closureiters_35(ctx);
5322 getNextState = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42), T2_, 2);
5323 asgnRef((void**) (&(*getNextState).typ), intTyp);
5324 T3_ = NIM_NIL;
5325 T3_ = newStateAssgn__closureiters_41(ctx, getNextState);
5326 add__ast_4797(result, T3_);
5327 }
5328 {
5329 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cond;
5330 tyArray__T6RKPw8xfAeNaoei9aZGzXg T5_;
5331 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T6_;
5332 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* raiseStmt;
5333 tyArray__jlWPjgtbdjE069arIWHC9c9bg T7_;
5334 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifBranch;
5335 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T8_;
5336 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifStmt;
5337 tyArray__jlWPjgtbdjE069arIWHC9c9bg T9_;
5338 nimZeroMem((void*)T5_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
5339 T6_ = NIM_NIL;
5340 T6_ = getSysMagic__magicsys_29((*ctx).g, info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_29), ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 70));
5341 T5_[0] = newSymNode__ast_3716(T6_);
5342 T5_[1] = newStateAccess__closureiters_35(ctx);
5343 T5_[2] = newIntTypeNode__ast_3783(IL64(0), intTyp);
5344 cond = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T5_, 3);
5345 asgnRef((void**) (&(*cond).typ), boolTyp);
5346 nimZeroMem((void*)T7_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
5347 T7_[0] = (*(*ctx).g).emptyNode;
5348 raiseStmt = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108), T7_, 1);
5349 nimZeroMem((void*)T8_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5350 T8_[0] = cond;
5351 T8_[1] = raiseStmt;
5352 ifBranch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), T8_, 2);
5353 nimZeroMem((void*)T9_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
5354 T9_[0] = ifBranch;
5355 ifStmt = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), T9_, 1);
5356 add__ast_4797(result, ifStmt);
5357 }
5358 {
5359 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cond_2;
5360 tyArray__T6RKPw8xfAeNaoei9aZGzXg T11_;
5361 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T12_;
5362 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* asgn;
5363 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T13_;
5364 nimZeroMem((void*)T11_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
5365 T12_ = NIM_NIL;
5366 T12_ = getSysMagic__magicsys_29((*ctx).g, info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_43), ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 72));
5367 T11_[0] = newSymNode__ast_3716(T12_);
5368 T11_[1] = newIntTypeNode__ast_3783(IL64(0), intTyp);
5369 T11_[2] = newStateAccess__closureiters_35(ctx);
5370 cond_2 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T11_, 3);
5371 asgnRef((void**) (&(*cond_2).typ), boolTyp);
5372 nimZeroMem((void*)T13_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5373 T13_[0] = newUnrollFinallyAccess__closureiters_84(ctx, info);
5374 T13_[1] = cond_2;
5375 asgn = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), T13_, 2);
5376 add__ast_4797(result, asgn);
5377 }
5378 {
5379 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cond_3;
5380 tyArray__T6RKPw8xfAeNaoei9aZGzXg T15_;
5381 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T16_;
5382 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* negateState;
5383 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T17_;
5384 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T18_;
5385 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifBranch_2;
5386 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T19_;
5387 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ifStmt_2;
5388 tyArray__jlWPjgtbdjE069arIWHC9c9bg T20_;
5389 nimZeroMem((void*)T15_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
5390 T16_ = NIM_NIL;
5391 T16_ = getSysMagic__magicsys_29((*ctx).g, info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_43), ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 72));
5392 T15_[0] = newSymNode__ast_3716(T16_);
5393 T15_[1] = newStateAccess__closureiters_35(ctx);
5394 T15_[2] = newIntTypeNode__ast_3783(IL64(0), intTyp);
5395 cond_3 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T15_, 3);
5396 asgnRef((void**) (&(*cond_3).typ), boolTyp);
5397 nimZeroMem((void*)T17_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5398 T18_ = NIM_NIL;
5399 T18_ = getSysMagic__magicsys_29((*ctx).g, info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_44), ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 93));
5400 T17_[0] = newSymNode__ast_3716(T18_);
5401 T17_[1] = newStateAccess__closureiters_35(ctx);
5402 negateState = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T17_, 2);
5403 asgnRef((void**) (&(*negateState).typ), intTyp);
5404 nimZeroMem((void*)T19_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5405 T19_[0] = cond_3;
5406 T19_[1] = newStateAssgn__closureiters_41(ctx, negateState);
5407 ifBranch_2 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86), T19_, 2);
5408 nimZeroMem((void*)T20_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
5409 T20_[0] = ifBranch_2;
5410 ifStmt_2 = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92), T20_, 1);
5411 add__ast_4797(result, ifStmt_2);
5412 }
5413 {
5414 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T22_;
5415 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T23_;
5416 nimZeroMem((void*)T22_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5417 T22_[0] = newCurExcAccess__closureiters_91(ctx);
5418 T22_[1] = callCodegenProc__lowerings_635((*ctx).g, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_24), unknownLineInfo__lineinfos_280, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
5419 T23_ = NIM_NIL;
5420 T23_ = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73), T22_, 2);
5421 add__ast_4797(result, T23_);
5422 }
5423 return result;
5424 }
N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,wrapIntoTryExcept__closureiters_1605)5425 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, wrapIntoTryExcept__closureiters_1605)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
5426 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5427 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* setupExc;
5428 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T1_;
5429 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T2_;
5430 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tryBody;
5431 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T3_;
5432 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exceptBranch;
5433 tyArray__jlWPjgtbdjE069arIWHC9c9bg T4_;
5434 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T5_;
5435 result = NIM_NIL;
5436 nimZeroMem((void*)T1_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5437 T2_ = NIM_NIL;
5438 T2_ = getCompilerProc__magicsys_145((*ctx).g, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_30));
5439 T1_[0] = newSymNode__ast_3716(T2_);
5440 T1_[1] = newCurExcAccess__closureiters_91(ctx);
5441 setupExc = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27), T1_, 2);
5442 nimZeroMem((void*)T3_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5443 T3_[0] = setupExc;
5444 T3_[1] = n;
5445 tryBody = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T3_, 2);
5446 nimZeroMem((void*)T4_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
5447 T4_[0] = newCatchBody__closureiters_1568(ctx, (*(*ctx).fn).info);
5448 exceptBranch = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87), T4_, 1);
5449 nimZeroMem((void*)T5_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5450 T5_[0] = tryBody;
5451 T5_[1] = exceptBranch;
5452 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106), T5_, 2);
5453 return result;
5454 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,wrapIntoStateLoop__closureiters_1612)5455 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, wrapIntoStateLoop__closureiters_1612)(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
5456 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5457 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* loopBody;
5458 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T1_;
5459 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T2_;
5460 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* localVars;
5461 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* blockStmt;
5462 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T12_;
5463 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gs;
5464 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T13_;
5465 NI T14_;
5466 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T15_;
5467 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* blockBody;
5468 tyArray__T6RKPw8xfAeNaoei9aZGzXg T16_;
5469 result = NIM_NIL;
5470 loopBody = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
5471 nimZeroMem((void*)T1_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
5472 T2_ = NIM_NIL;
5473 T2_ = getSysSym__magicsys_16((*ctx).g, (*n).info, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_18));
5474 T1_[0] = newSymNode__ast_3716(T2_);
5475 T1_[1] = loopBody;
5476 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96), T1_, 2);
5477 (*result).info = (*n).info;
5478 localVars = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
5479 {
5480 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* varSect;
5481 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T7_;
5482 if (!!(((*ctx).stateVarSym == 0))) goto LA5_;
5483 varSect = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99), (*n).info);
5484 T7_ = NIM_NIL;
5485 T7_ = newSymNode__ast_3716((*ctx).stateVarSym);
5486 addVar__lowerings_63(varSect, T7_);
5487 add__ast_4797(localVars, varSect);
5488 {
5489 if (!!(((*ctx).tempVars == 0))) goto LA10_;
5490 add__ast_4797(localVars, (*ctx).tempVars);
5491 }
5492 LA10_: ;
5493 }
5494 LA5_: ;
5495 blockStmt = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112), (*n).info);
5496 T12_ = NIM_NIL;
5497 T12_ = newSymNode__ast_3716((*ctx).stateLoopLabel);
5498 add__ast_4797(blockStmt, T12_);
5499 gs = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), (*n).info);
5500 T13_ = NIM_NIL;
5501 T13_ = newStateAccess__closureiters_35(ctx);
5502 add__ast_4797(gs, T13_);
5503 T14_ = ((*ctx).states ? (*ctx).states->Sup.len : 0);
5504 T15_ = NIM_NIL;
5505 T15_ = newIntLit__lowerings_695((*ctx).g, (*n).info, ((NI64) ((NI)(T14_ - ((NI) 1)))));
5506 add__ast_4797(gs, T15_);
5507 nimZeroMem((void*)T16_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
5508 T16_[0] = gs;
5509 T16_[1] = localVars;
5510 T16_[2] = n;
5511 blockBody = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T16_, 3);
5512 {
5513 if (!(*ctx).hasExceptions) goto LA19_;
5514 blockBody = wrapIntoTryExcept__closureiters_1605(ctx, blockBody);
5515 }
5516 LA19_: ;
5517 add__ast_4797(blockStmt, blockBody);
5518 add__ast_4797(loopBody, blockStmt);
5519 return result;
5520 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,transformClosureIterator__closureiters_3541)5521 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformClosureIterator__closureiters_3541)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* fn, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
5522 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
5523 tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A ctx;
5524 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T8_;
5525 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T9_;
5526 tyObject_PreprocessContext__ATjkivkWYrBstrMNxiy9cNw pc;
5527 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
5528 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T10_;
5529 NI T11_;
5530 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* gotoOut;
5531 tyArray__jlWPjgtbdjE069arIWHC9c9bg T12_;
5532 NIM_BOOL ns;
5533 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T18_;
5534 result = NIM_NIL;
5535 nimZeroMem((void*)(&ctx), sizeof(tyObject_Ctx__Sws9awoFPhDR7PA2lS1LQ5A));
5536 ctx.g = g;
5537 ctx.fn = fn;
5538 ctx.idgen = idgen;
5539 {
5540 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T3_;
5541 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T6_;
5542 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T7_;
5543 T3_ = NIM_NIL;
5544 T3_ = getEnvParam__lambdalifting_131(fn);
5545 if (!(T3_ == 0)) goto LA4_;
5546 T6_ = NIM_NIL;
5547 T6_ = getIdent__idents_143((*ctx.g).cache, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_2));
5548 T7_ = nextSymId__ast_3132(idgen);
5549 ctx.stateVarSym = newSym__ast_3445(((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8), T6_, T7_, fn, (*fn).info, 0);
5550 asgnRef((void**) (&(*ctx.stateVarSym).typ), createClosureIterStateType__lambdalifting_33(g, fn, idgen));
5551 }
5552 LA4_: ;
5553 T8_ = NIM_NIL;
5554 T8_ = getIdent__idents_143((*ctx.g).cache, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_3));
5555 T9_ = nextSymId__ast_3132(idgen);
5556 ctx.stateLoopLabel = newSym__ast_3445(((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 22), T8_, T9_, fn, (*fn).info, 0);
5557 nimZeroMem((void*)(&pc), sizeof(tyObject_PreprocessContext__ATjkivkWYrBstrMNxiy9cNw));
5558 nimZeroMem((void*)(&pc), sizeof(tyObject_PreprocessContext__ATjkivkWYrBstrMNxiy9cNw));
5559 pc.finallys = NIM_NIL;
5560 pc.config = (*g).config;
5561 pc.idgen = idgen;
5562 T10_ = NIM_NIL;
5563 T10_ = toStmtList__closureiters_136(n);
5564 n_2 = preprocess__closureiters_3362((&pc), T10_);
5565 T11_ = (NI)0;
5566 T11_ = newState__closureiters_97((&ctx), n_2, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
5567 (void)(T11_);
5568 nimZeroMem((void*)T12_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
5569 T12_[0] = newIntLit__lowerings_695(g, (*n_2).info, IL64(-1));
5570 gotoOut = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156), T12_, 1);
5571 ns = NIM_FALSE;
5572 n_2 = lowerStmtListExprs__closureiters_478((&ctx), n_2, (&ns));
5573 {
5574 NIM_BOOL T15_;
5575 T15_ = (NIM_BOOL)0;
5576 T15_ = hasYieldsInExpressions__closureiters_371(n_2);
5577 if (!T15_) goto LA16_;
5578 internalErrorImpl__msgs_1431((*ctx.g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__slVvvIjx75ivXdMpHiE9c9aQ_19), TM__slVvvIjx75ivXdMpHiE9c9aQ_20);
5579 }
5580 LA16_: ;
5581 T18_ = NIM_NIL;
5582 T18_ = transformClosureIteratorBody__closureiters_1173((&ctx), n_2, gotoOut);
5583 (void)(T18_);
5584 deleteEmptyStates__closureiters_1659((&ctx));
5585 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n_2).info);
5586 {
5587 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** s;
5588 NI i;
5589 NI L;
5590 NI T20_;
5591 s = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
5592 i = ((NI) 0);
5593 T20_ = (ctx.states ? ctx.states->Sup.len : 0);
5594 L = T20_;
5595 {
5596 while (1) {
5597 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body;
5598 if (!(i < L)) goto LA22;
5599 s = &ctx.states->data[i];
5600 body = (*(*s))._kind_6.sons->data[((NI) 1)];
5601 del__closureiters_3571((&(*(*s))._kind_6.sons), ((NI) 1));
5602 add__ast_4797(result, (*s));
5603 add__ast_4797(result, body);
5604 i += ((NI) 1);
5605 } LA22: ;
5606 }
5607 }
5608 result = transformStateAssignments__closureiters_1386((&ctx), result);
5609 result = wrapIntoStateLoop__closureiters_1612((&ctx), result);
5610 return result;
5611 }
N_NIMCALL(void,compiler_closureitersDatInit000)5612 N_LIB_PRIVATE N_NIMCALL(void, compiler_closureitersDatInit000)(void) {
5613 static TNimNode* TM__slVvvIjx75ivXdMpHiE9c9aQ_4_3[3];
5614 static TNimNode TM__slVvvIjx75ivXdMpHiE9c9aQ_0[4];
5615 NTIkeyvaluepair__O3AtiO8fwKWfdl6NGmuzhw_.size = sizeof(tyTuple__O3AtiO8fwKWfdl6NGmuzhw);
5616 NTIkeyvaluepair__O3AtiO8fwKWfdl6NGmuzhw_.align = NIM_ALIGNOF(tyTuple__O3AtiO8fwKWfdl6NGmuzhw);
5617 NTIkeyvaluepair__O3AtiO8fwKWfdl6NGmuzhw_.kind = 18;
5618 NTIkeyvaluepair__O3AtiO8fwKWfdl6NGmuzhw_.base = 0;
5619 TM__slVvvIjx75ivXdMpHiE9c9aQ_4_3[0] = &TM__slVvvIjx75ivXdMpHiE9c9aQ_0[1];
5620 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[1].kind = 1;
5621 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[1].offset = offsetof(tyTuple__O3AtiO8fwKWfdl6NGmuzhw, Field0);
5622 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[1].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
5623 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[1].name = "Field0";
5624 TM__slVvvIjx75ivXdMpHiE9c9aQ_4_3[1] = &TM__slVvvIjx75ivXdMpHiE9c9aQ_0[2];
5625 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[2].kind = 1;
5626 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[2].offset = offsetof(tyTuple__O3AtiO8fwKWfdl6NGmuzhw, Field1);
5627 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[2].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
5628 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[2].name = "Field1";
5629 TM__slVvvIjx75ivXdMpHiE9c9aQ_4_3[2] = &TM__slVvvIjx75ivXdMpHiE9c9aQ_0[3];
5630 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[3].kind = 1;
5631 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[3].offset = offsetof(tyTuple__O3AtiO8fwKWfdl6NGmuzhw, Field2);
5632 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[3].typ = (&NTIpsym__dG2QVH5Z69aMUY38zTqWxaA_);
5633 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[3].name = "Field2";
5634 TM__slVvvIjx75ivXdMpHiE9c9aQ_0[0].len = 3; TM__slVvvIjx75ivXdMpHiE9c9aQ_0[0].kind = 2; TM__slVvvIjx75ivXdMpHiE9c9aQ_0[0].sons = &TM__slVvvIjx75ivXdMpHiE9c9aQ_4_3[0];
5635 NTIkeyvaluepair__O3AtiO8fwKWfdl6NGmuzhw_.node = &TM__slVvvIjx75ivXdMpHiE9c9aQ_0[0];
5636 NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_.size = sizeof(tySequence__gVogYzwlGNrCaz6jQnXRzA*);
5637 NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_.align = NIM_ALIGNOF(tySequence__gVogYzwlGNrCaz6jQnXRzA*);
5638 NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_.kind = 24;
5639 NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_.base = (&NTIkeyvaluepair__O3AtiO8fwKWfdl6NGmuzhw_);
5640 NTIkeyvaluepairseq__gVogYzwlGNrCaz6jQnXRzA_.marker = Marker_tySequence__gVogYzwlGNrCaz6jQnXRzA;
5641 }
5642
5643