1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3 #define NIM_EmulateOverflowChecks
4 
5 #include "nimbase.h"
6 #include <string.h>
7 #undef LANGUAGE_C
8 #undef MIPSEB
9 #undef MIPSEL
10 #undef PPC
11 #undef R3000
12 #undef R4000
13 #undef i386
14 #undef linux
15 #undef mips
16 #undef near
17 #undef far
18 #undef powerpc
19 #undef unix
20 #define nimfr_(x, y)
21 #define nimln_(x, y)
22 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
23 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
24 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
25 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
26 typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
27 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
28 typedef struct RootObj RootObj;
29 typedef struct TNimType TNimType;
30 typedef struct TNimNode TNimNode;
31 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
32 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
33 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
34 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
35 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
36 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
37 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
38 typedef struct NimStringDesc NimStringDesc;
39 typedef struct TGenericSeq TGenericSeq;
40 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
41 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
42 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
43 typedef struct tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g;
44 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
45 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
46 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
47 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
48 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
49 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
50 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
51 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
52 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
53 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
54 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
55 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
56 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
57 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
58 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
59 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
60 typedef NU16 tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw;
61 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
62 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
63 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
64 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
65 struct TNimType {
66 NI size;
67 NI align;
68 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
69 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
70 TNimType* base;
71 TNimNode* node;
72 void* finalizer;
73 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
74 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
75 };
76 struct RootObj {
77 TNimType* m_type;
78 };
79 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
80 NI32 module;
81 NI32 item;
82 };
83 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
84   RootObj Sup;
85 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
86 };
87 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
88 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
89 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
90 NU16 line;
91 NI16 col;
92 NI32 fileIndex;
93 };
94 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
95 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
96 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
97 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
98 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
99 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
100 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
101 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
102 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
103 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
104 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
105 };
106 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
107   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
108 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
109 union{
110 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
111 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
112 } _kind_1;
113 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
114 NI bitsize;
115 NI alignment;
116 } _kind_2;
117 };
118 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
119 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
120 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
121 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
122 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
123 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
124 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
125 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
126 NI position;
127 NI offset;
128 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
129 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
130 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
131 };
132 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
133 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
134 struct TGenericSeq {
135 NI len;
136 NI reserved;
137 };
138 struct NimStringDesc {
139   TGenericSeq Sup;
140 NIM_CHAR data[SEQ_DECL_SIZE];
141 };
142 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
143 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
144 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
145 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
146 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
147 union{
148 struct {NI64 intVal;
149 } _kind_1;
150 struct {NF floatVal;
151 } _kind_2;
152 struct {NimStringDesc* strVal;
153 } _kind_3;
154 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
155 } _kind_4;
156 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
157 } _kind_5;
158 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
159 } _kind_6;
160 };
161 };
162 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
163 NI id;
164 NimStringDesc* s;
165 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
166 NI h;
167 };
168 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
169 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
170 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
171 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
172   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
173 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
174 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
175 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
176 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
177 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
178 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
179 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
180 NI64 size;
181 NI16 align;
182 NI16 paddingAtEnd;
183 NI16 lockLevel;
184 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
185 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
186 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
187 };
188 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
189 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
190 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
191 NimStringDesc* Field0;
192 NI Field1;
193 NI Field2;
194 };
195 typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2];
196 typedef NU8 tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag[9];
197 typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
198 struct tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g {
199 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* partialParam;
200 tyObject_TType__facALICuu8zUj0hjvbTLFg* objType;
201 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
202 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
203 };
204 typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__jlWPjgtbdjE069arIWHC9c9bg[1];
205 typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
206 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
207 NI refcount;
208 TNimType* typ;
209 };
210 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
211 void* bottom;
212 };
213 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
214 NI len;
215 NI cap;
216 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
217 };
218 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
219 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
220 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
221 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
222 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
223 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
224 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
225 };
226 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
227 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
228 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
229 NI key;
230 NI upperBound;
231 NI level;
232 };
233 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
234 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
235 NI Field1;
236 };
237 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
238 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
239 NI len;
240 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
241 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
242 };
243 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
244 NI minLargeObj;
245 NI maxLargeObj;
246 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
247 NU32 flBitmap;
248 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
249 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
250 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
251 NI currMem;
252 NI maxMem;
253 NI freeMem;
254 NI occ;
255 NI lastSize;
256 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
257 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
258 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
259 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
260 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
261 NIM_BOOL locked;
262 NIM_BOOL blockChunkSizeIncrease;
263 NI nextChunkSize;
264 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
265 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
266 };
267 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
268 NI stackScans;
269 NI cycleCollections;
270 NI maxThreshold;
271 NI maxStackSize;
272 NI maxStackCells;
273 NI cycleTableSize;
274 NI64 maxPause;
275 };
276 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
277 NI counter;
278 NI max;
279 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
280 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
281 };
282 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
283 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
284 NI cycleThreshold;
285 NI zctThreshold;
286 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
287 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
288 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
289 NI recGcLock;
290 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
291 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
292 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
293 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
294 NI gcThreadId;
295 };
296 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
297   TGenericSeq Sup;
298   tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
299 };
300 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
301   TGenericSeq Sup;
302   tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
303 };
304 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getPragmaVal__pragmas_95)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* procAst, tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw name);
305 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupParam__liftlocals_59)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* params, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest);
306 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
307 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);
308 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
309 static N_INLINE(void, nimZeroMem)(void* p, NI size);
310 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
311 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___renderer_2106)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
312 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
313 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipTypes__ast_3735)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kinds);
314 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
315 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newTree__ast_3392)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** children, NI childrenLen_0);
316 N_LIB_PRIVATE N_NIMCALL(void, liftLocals__liftlocals_47)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI i, tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g* c);
317 static N_INLINE(NIM_BOOL, interestingVar__liftlocals_17)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
318 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lookupOrAdd__liftlocals_28)(tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
319 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);
320 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI__ast_3356)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
321 static N_INLINE(void, asgnRef)(void** dest, void* src);
322 static N_INLINE(void, incRef__system_5329)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
323 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
324 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5291)(void* usr);
325 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
326 static N_INLINE(void, decRef__system_5336)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
327 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
328 static N_INLINE(void, rtlAddZCT__system_5334)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
329 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5285)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
330 N_LIB_PRIVATE N_NIMCALL(void, add__ast_4797)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
331 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3719)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
332 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3716)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
333 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
334 STRING_LITERAL(TM__xMgMWEFctBTF9b4zdqZ9bcYg_2, "\'$1\' is not a parameter of \'$2\'", 31);
335 STRING_LITERAL(TM__xMgMWEFctBTF9b4zdqZ9bcYg_4, "/home/runner/work/nightlies/nightlies/nim/compiler/liftlocals.nim", 65);
336 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__xMgMWEFctBTF9b4zdqZ9bcYg_3 = {((NimStringDesc*) &TM__xMgMWEFctBTF9b4zdqZ9bcYg_4),
337 ((NI) 63),
338 ((NI) 14)}
339 ;
340 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__xMgMWEFctBTF9b4zdqZ9bcYg_5 = {
341 0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
342 0x00}
343 ;
344 STRING_LITERAL(TM__xMgMWEFctBTF9b4zdqZ9bcYg_6, "parameter \'$1\' is not a pointer to a partial object", 51);
345 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__xMgMWEFctBTF9b4zdqZ9bcYg_7 = {((NimStringDesc*) &TM__xMgMWEFctBTF9b4zdqZ9bcYg_4),
346 ((NI) 68),
347 ((NI) 14)}
348 ;
349 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5238;
N_INLINE(NI,len__ast_3198)350 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
351 	NI result;
352 	NI T1_;
353 	result = (NI)0;
354 	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
355 	result = T1_;
356 	return result;
357 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,lookupParam__liftlocals_59)358 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupParam__liftlocals_59)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* params, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest) {
359 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
360 {	result = NIM_NIL;
361 	{
362 		if (!!(((*dest).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2)))) goto LA3_;
363 		result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
364 		goto BeforeRet_;
365 	}
366 	LA3_: ;
367 	{
368 		NI i;
369 		NI colontmp_;
370 		NI i_2;
371 		i = (NI)0;
372 		colontmp_ = (NI)0;
373 		colontmp_ = len__ast_3198(params);
374 		i_2 = ((NI) 1);
375 		{
376 			while (1) {
377 				if (!(i_2 < colontmp_)) goto LA7;
378 				i = i_2;
379 				{
380 					NIM_BOOL T10_;
381 					T10_ = (NIM_BOOL)0;
382 					T10_ = ((*(*params)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
383 					if (!(T10_)) goto LA11_;
384 					T10_ = ((*(*(*(*params)._kind_6.sons->data[i])._kind_4.sym).name).id == (*(*dest)._kind_5.ident).id);
385 					LA11_: ;
386 					if (!T10_) goto LA12_;
387 					result = (*(*params)._kind_6.sons->data[i])._kind_4.sym;
388 					goto BeforeRet_;
389 				}
390 				LA12_: ;
391 				i_2 += ((NI) 1);
392 			} LA7: ;
393 		}
394 	}
395 	}BeforeRet_: ;
396 	return result;
397 }
N_INLINE(void,nimSetMem__systemZmemory_7)398 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
399 	void* T1_;
400 	T1_ = (void*)0;
401 	T1_ = memset(a, v, ((size_t) (size)));
402 }
N_INLINE(void,nimZeroMem)403 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
404 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
405 }
N_INLINE(NIM_BOOL,interestingVar__liftlocals_17)406 static N_INLINE(NIM_BOOL, interestingVar__liftlocals_17)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
407 	NIM_BOOL result;
408 	NIM_BOOL T1_;
409 	result = (NIM_BOOL)0;
410 	T1_ = (NIM_BOOL)0;
411 	T1_ = ((2100000 &((NU32)1<<((NU)((*s).kind)&31U)))!=0);
412 	if (!(T1_)) goto LA2_;
413 	T1_ = !((((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 3))&63U)))!=0));
414 	LA2_: ;
415 	result = T1_;
416 	return result;
417 }
N_INLINE(NI,pluspercent___system_696)418 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
419 	NI result;
420 	result = (NI)0;
421 	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
422 	return result;
423 }
N_INLINE(void,incRef__system_5329)424 static N_INLINE(void, incRef__system_5329)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
425 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
426 }
N_INLINE(NI,minuspercent___system_716)427 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
428 	NI result;
429 	result = (NI)0;
430 	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
431 	return result;
432 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5291)433 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5291)(void* usr) {
434 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
435 	NI T1_;
436 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
437 	T1_ = (NI)0;
438 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
439 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
440 	return result;
441 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)442 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
443 	NIM_BOOL result;
444 	result = (NIM_BOOL)0;
445 	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
446 	return result;
447 }
N_INLINE(void,rtlAddZCT__system_5334)448 static N_INLINE(void, rtlAddZCT__system_5334)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
449 	addZCT__system_5285((&gch__system_5238.zct), c);
450 }
N_INLINE(void,decRef__system_5336)451 static N_INLINE(void, decRef__system_5336)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
452 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
453 	{
454 		NIM_BOOL T3_;
455 		T3_ = (NIM_BOOL)0;
456 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
457 		if (!T3_) goto LA4_;
458 		rtlAddZCT__system_5334(c);
459 	}
460 	LA4_: ;
461 }
N_INLINE(void,asgnRef)462 static N_INLINE(void, asgnRef)(void** dest, void* src) {
463 	{
464 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
465 		if (!!((src == NIM_NIL))) goto LA3_;
466 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
467 		T5_ = usrToCell__system_5291(src);
468 		incRef__system_5329(T5_);
469 	}
470 	LA3_: ;
471 	{
472 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
473 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
474 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
475 		T10_ = usrToCell__system_5291((*dest));
476 		decRef__system_5336(T10_);
477 	}
478 	LA8_: ;
479 	(*dest) = src;
480 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,lookupOrAdd__liftlocals_28)481 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lookupOrAdd__liftlocals_28)(tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
482 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
483 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
484 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* deref;
485 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1_;
486 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T2_;
487 	result = NIM_NIL;
488 	field = addUniqueField__lowerings_443((*c).objType, s, (*c).cache, (*c).idgen);
489 	deref = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65), info);
490 	asgnRef((void**) (&(*deref).typ), (*c).objType);
491 	T1_ = NIM_NIL;
492 	T1_ = newSymNode__ast_3719((*c).partialParam, info);
493 	add__ast_4797(deref, T1_);
494 	result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45), info);
495 	add__ast_4797(result, deref);
496 	T2_ = NIM_NIL;
497 	T2_ = newSymNode__ast_3716(field);
498 	add__ast_4797(result, T2_);
499 	asgnRef((void**) (&(*result).typ), (*field).typ);
500 	return result;
501 }
N_INLINE(NI,safeLen__ast_3191)502 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
503 	NI result;
504 	result = (NI)0;
505 	{
506 		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
507 		result = ((NI) 0);
508 	}
509 	goto LA1_;
510 	LA3_: ;
511 	{
512 		result = len__ast_3198(n);
513 	}
514 	LA1_: ;
515 	return result;
516 }
N_NIMCALL(void,liftLocals__liftlocals_47)517 N_LIB_PRIVATE N_NIMCALL(void, liftLocals__liftlocals_47)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI i, tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g* c) {
518 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
519 	it = (*n)._kind_6.sons->data[i];
520 	switch ((*it).kind) {
521 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
522 	{
523 		{
524 			NIM_BOOL T4_;
525 			T4_ = (NIM_BOOL)0;
526 			T4_ = interestingVar__liftlocals_17((*it)._kind_4.sym);
527 			if (!T4_) goto LA5_;
528 			asgnRef((void**) (&(*n)._kind_6.sons->data[i]), lookupOrAdd__liftlocals_28(c, (*it)._kind_4.sym, (*it).info));
529 		}
530 		LA5_: ;
531 	}
532 	break;
533 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
534 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
535 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
536 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122):
537 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
538 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
539 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
540 	{
541 	}
542 	break;
543 	default:
544 	{
545 		{
546 			NI i_2;
547 			NI colontmp_;
548 			NI i_3;
549 			i_2 = (NI)0;
550 			colontmp_ = (NI)0;
551 			colontmp_ = safeLen__ast_3191(it);
552 			i_3 = ((NI) 0);
553 			{
554 				while (1) {
555 					if (!(i_3 < colontmp_)) goto LA11;
556 					i_2 = i_3;
557 					liftLocals__liftlocals_47(it, i_2, c);
558 					i_3 += ((NI) 1);
559 				} LA11: ;
560 			}
561 		}
562 	}
563 	break;
564 	}
565 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,liftLocalsIfRequested__liftlocals_82)566 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, liftLocalsIfRequested__liftlocals_82)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen) {
567 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
568 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* liftDest;
569 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* partialParam;
570 	tyObject_TType__facALICuu8zUj0hjvbTLFg* objType;
571 	tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g c;
572 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* w;
573 	tyArray__jlWPjgtbdjE069arIWHC9c9bg T19_;
574 {	result = NIM_NIL;
575 	liftDest = getPragmaVal__pragmas_95((*prc).ast, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 224));
576 	{
577 		if (!(liftDest == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
578 		result = n;
579 		goto BeforeRet_;
580 	}
581 	LA3_: ;
582 	partialParam = lookupParam__liftlocals_59((*(*prc).typ).n, liftDest);
583 	{
584 		tyArray__Re75IspeoxXy2oCZHwcRrA T9_;
585 		NimStringDesc* T10_;
586 		if (!(partialParam == 0)) goto LA7_;
587 		nimZeroMem((void*)T9_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
588 		T9_[0] = dollar___renderer_2106(liftDest);
589 		T9_[1] = copyString((*(*prc).name).s);
590 		T10_ = NIM_NIL;
591 		T10_ = nsuFormatOpenArray(((NimStringDesc*) &TM__xMgMWEFctBTF9b4zdqZ9bcYg_2), T9_, 2);
592 		liMessage__msgs_1118(conf, (*liftDest).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T10_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__xMgMWEFctBTF9b4zdqZ9bcYg_3, NIM_FALSE);
593 		result = n;
594 		goto BeforeRet_;
595 	}
596 	LA7_: ;
597 	objType = skipTypes__ast_3735((*partialParam).typ, TM__xMgMWEFctBTF9b4zdqZ9bcYg_5);
598 	{
599 		NIM_BOOL T13_;
600 		NimStringDesc* T17_;
601 		NimStringDesc* T18_;
602 		T13_ = (NIM_BOOL)0;
603 		T13_ = !(((*objType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17)));
604 		if (T13_) goto LA14_;
605 		T13_ = !((((*objType).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 16))&63U)))!=0));
606 		LA14_: ;
607 		if (!T13_) goto LA15_;
608 		T17_ = NIM_NIL;
609 		T17_ = dollar___renderer_2106(liftDest);
610 		T18_ = NIM_NIL;
611 		T18_ = nsuFormatSingleElem(((NimStringDesc*) &TM__xMgMWEFctBTF9b4zdqZ9bcYg_6), T17_);
612 		liMessage__msgs_1118(conf, (*liftDest).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T18_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__xMgMWEFctBTF9b4zdqZ9bcYg_7, NIM_FALSE);
613 		result = n;
614 		goto BeforeRet_;
615 	}
616 	LA15_: ;
617 	nimZeroMem((void*)(&c), sizeof(tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g));
618 	nimZeroMem((void*)(&c), sizeof(tyObject_Ctx__A9b2QU9aJFjQJmSPHiXNYt7g));
619 	c.partialParam = partialParam;
620 	c.objType = objType;
621 	c.cache = cache;
622 	c.idgen = idgen;
623 	nimZeroMem((void*)T19_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
624 	T19_[0] = n;
625 	w = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), T19_, 1);
626 	liftLocals__liftlocals_47(w, ((NI) 0), (&c));
627 	result = (*w)._kind_6.sons->data[((NI) 0)];
628 	}BeforeRet_: ;
629 	return result;
630 }
631