1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
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_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
25 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
26 typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
27 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
28 typedef struct NimStringDesc NimStringDesc;
29 typedef struct TGenericSeq TGenericSeq;
30 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
31 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
32 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
33 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
34 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
35 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
36 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
37 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
38 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
39 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
40 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
41 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
42 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
43 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
44 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
45 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
46 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
47 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
48 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
49 typedef struct RootObj RootObj;
50 typedef struct TNimType TNimType;
51 typedef struct TNimNode TNimNode;
52 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
53 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
54 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
55 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
56 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
57 typedef struct tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q;
58 typedef struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q;
59 typedef struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA tySequence__Mh9agqM29bm9aP5AUL1x7dZGA;
60 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
61 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
62 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
63 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
64 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
65 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
66 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
67 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
68 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
69 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
70 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
71 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
72 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
73 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
74 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
75 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
76 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
77 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
78 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
79 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
80 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
81 typedef struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg;
82 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
83 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
84 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
85 struct TGenericSeq {
86 NI len;
87 NI reserved;
88 };
89 struct NimStringDesc {
90   TGenericSeq Sup;
91 NIM_CHAR data[SEQ_DECL_SIZE];
92 };
93 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
94 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
95 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
96 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
97 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
98 NI intSize;
99 NI floatSize;
100 NI ptrSize;
101 NimStringDesc* tnl;
102 };
103 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
104 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
105 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
106 NU16 line;
107 NI16 col;
108 NI32 fileIndex;
109 };
110 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
111 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
112 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
113 NI counter;
114 };
115 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
116 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
117 NIM_BOOL trackPosAttached;
118 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
119 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
120 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
121 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
122 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
123 NI32 systemFileIdx;
124 };
125 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
126 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
127 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
128 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
129 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
130 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
131 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
132 NI counter;
133 };
134 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
135 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
136 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
137 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
138 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
139 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
140 NI Field0;
141 NI Field1;
142 NI Field2;
143 };
144 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
145 typedef struct {
146 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
147 void* ClE_0;
148 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
149 typedef struct {
150 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
151 void* ClE_0;
152 } tyProc__k2HFjxisIgDALbEUFojxaQ;
153 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
154 typedef struct {
155 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
156 void* ClE_0;
157 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
158 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
159 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
160 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
161 NI linesCompiled;
162 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
163 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
164 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
165 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
166 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
167 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
168 NimStringDesc* unitSep;
169 NI evalTemplateCounter;
170 NI evalMacroCounter;
171 NI8 exitcode;
172 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
173 NimStringDesc* cmdInput;
174 NIM_BOOL projectIsCmd;
175 NIM_BOOL implicitCmd;
176 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
177 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
178 NIM_BOOL hintProcessingDots;
179 NI verbosity;
180 NI numberOfProcessors;
181 NF lastCmdTime;
182 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
183 NI spellSuggestMax;
184 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
185 NimStringDesc* headerFile;
186 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
187 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
188 NimStringDesc* arguments;
189 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
190 NIM_BOOL oldNewlines;
191 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
192 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
193 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
194 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
195 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
196 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
197 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
198 NI mainPackageId;
199 NI errorCounter;
200 NI hintCounter;
201 NI warnCounter;
202 NI errorMax;
203 NI maxLoopIterationsVM;
204 NIM_BOOL isVmTrace;
205 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
206 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
207 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
208 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
209 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
210 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
211 NimStringDesc* outFile;
212 NimStringDesc* outDir;
213 NimStringDesc* jsonBuildFile;
214 NimStringDesc* prefixDir;
215 NimStringDesc* libpath;
216 NimStringDesc* nimcacheDir;
217 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
218 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
219 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
220 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
221 NimStringDesc* projectName;
222 NimStringDesc* projectPath;
223 NimStringDesc* projectFull;
224 NIM_BOOL projectIsStdin;
225 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
226 NI32 projectMainIdx;
227 NI32 projectMainIdx2;
228 NimStringDesc* command;
229 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
230 NimStringDesc* commandLine;
231 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
232 NIM_BOOL keepComments;
233 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
234 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
235 NimStringDesc* docSeeSrcUrl;
236 NimStringDesc* docRoot;
237 NimStringDesc* docCmd;
238 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
239 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
240 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
241 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
242 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
243 NimStringDesc* linkOptionsCmd;
244 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
245 NimStringDesc* linkOptions;
246 NimStringDesc* compileOptions;
247 NimStringDesc* cCompilerPath;
248 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
249 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
250 NI suggestVersion;
251 NI suggestMaxResults;
252 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
253 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
254 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
255 NimStringDesc* cppCustomNamespace;
256 NimStringDesc* nimMainPrefix;
257 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
258 };
259 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
260 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
261 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
262 NimStringDesc* Field0;
263 NI Field1;
264 NI Field2;
265 };
266 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
267 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
268 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
269 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
270 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
271 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
272 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
273 union{
274 struct {NI64 intVal;
275 } _kind_1;
276 struct {NF floatVal;
277 } _kind_2;
278 struct {NimStringDesc* strVal;
279 } _kind_3;
280 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
281 } _kind_4;
282 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
283 } _kind_5;
284 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
285 } _kind_6;
286 };
287 };
288 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
289 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
290 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
291 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
292 struct TNimType {
293 NI size;
294 NI align;
295 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
296 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
297 TNimType* base;
298 TNimNode* node;
299 void* finalizer;
300 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
301 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
302 };
303 struct RootObj {
304 TNimType* m_type;
305 };
306 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
307 NI32 module;
308 NI32 item;
309 };
310 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
311   RootObj Sup;
312 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
313 };
314 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
315 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
316 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
317 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
318 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
319 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
320 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
321 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
322 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
323 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
324 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
325 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
326 };
327 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
328   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
329 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
330 union{
331 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
332 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
333 } _kind_1;
334 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
335 NI bitsize;
336 NI alignment;
337 } _kind_2;
338 };
339 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
340 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
341 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
342 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
343 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
344 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
345 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
346 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
347 NI position;
348 NI offset;
349 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
350 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
351 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
352 };
353 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
354 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
355 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
356 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
357   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
358 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
359 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
360 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
361 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
362 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
363 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
364 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
365 NI64 size;
366 NI16 align;
367 NI16 paddingAtEnd;
368 NI16 lockLevel;
369 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
370 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
371 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
372 };
373 typedef NU16 tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw;
374 struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q {
375 NI counter;
376 tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* data;
377 };
378 struct tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q {
379 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
380 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* genSymOwner;
381 NIM_BOOL instLines;
382 NIM_BOOL isDeclarative;
383 tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q mapping;
384 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
385 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic;
386 NI instID;
387 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
388 };
389 typedef tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* tyArray__O7BaHX6ctEz6BpjFNHWCFQ[8192];
390 struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw {
391 tyArray__O7BaHX6ctEz6BpjFNHWCFQ buckets;
392 NI wordCounter;
393 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* idAnon;
394 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* idDelegator;
395 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* emptyIdent;
396 };
397 struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q {
398 NI32 module;
399 NI32 symId;
400 NI32 typeId_0;
401 NIM_BOOL sealed;
402 };
403 typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
404 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
405 NI refcount;
406 TNimType* typ;
407 };
408 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
409 void* bottom;
410 };
411 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
412 NI len;
413 NI cap;
414 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
415 };
416 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
417 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
418 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
419 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
420 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
421 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
422 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
423 };
424 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
425 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
426 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
427 NI key;
428 NI upperBound;
429 NI level;
430 };
431 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
432 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
433 NI Field1;
434 };
435 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
436 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
437 NI len;
438 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
439 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
440 };
441 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
442 NI minLargeObj;
443 NI maxLargeObj;
444 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
445 NU32 flBitmap;
446 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
447 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
448 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
449 NI currMem;
450 NI maxMem;
451 NI freeMem;
452 NI occ;
453 NI lastSize;
454 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
455 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
456 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
457 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
458 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
459 NIM_BOOL locked;
460 NIM_BOOL blockChunkSizeIncrease;
461 NI nextChunkSize;
462 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
463 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
464 };
465 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
466 NI stackScans;
467 NI cycleCollections;
468 NI maxThreshold;
469 NI maxStackSize;
470 NI maxStackCells;
471 NI cycleTableSize;
472 NI64 maxPause;
473 };
474 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
475 NI counter;
476 NI max;
477 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
478 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
479 };
480 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
481 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
482 NI cycleThreshold;
483 NI zctThreshold;
484 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
485 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
486 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
487 NI recGcLock;
488 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
489 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
490 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
491 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
492 NI gcThreadId;
493 };
494 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
495 NI id;
496 NimStringDesc* s;
497 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
498 NI h;
499 };
500 typedef NU8 tySet_tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw[21];
501 typedef NU8 tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
502 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
503 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
504 NimStringDesc* Field1;
505 };
506 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
507 NI Field0;
508 NimStringDesc* Field1;
509 NI32 Field2;
510 };
511 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
512 NimStringDesc* fullPath;
513 NimStringDesc* projPath;
514 NimStringDesc* shortName;
515 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
516 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
517 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
518 NimStringDesc* dirtyFile;
519 NimStringDesc* hash;
520 NIM_BOOL dirty;
521 };
522 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
523 NI Field0;
524 NimStringDesc* Field1;
525 };
526 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
527 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
528 NimStringDesc* nimname;
529 NimStringDesc* cname;
530 NimStringDesc* obj;
531 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
532 NimStringDesc* customArgs;
533 };
534 struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg {
535 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key;
536 RootObj* val;
537 };
538 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
539   TGenericSeq Sup;
540   tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
541 };
542 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
543   TGenericSeq Sup;
544   tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
545 };
546 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
547   TGenericSeq Sup;
548   tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
549 };
550 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
551   TGenericSeq Sup;
552   tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
553 };
554 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
555   TGenericSeq Sup;
556   NimStringDesc* data[SEQ_DECL_SIZE];
557 };
558 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
559   TGenericSeq Sup;
560   tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
561 };
562 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
563   TGenericSeq Sup;
564   tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
565 };
566 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
567   TGenericSeq Sup;
568   tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
569 };
570 struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA {
571   TGenericSeq Sup;
572   tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg data[SEQ_DECL_SIZE];
573 };
574 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);
575 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalTemplateArgs__evaltempl_197)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NIM_BOOL fromHlo);
576 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
577 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
578 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
579 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderTree__renderer_46)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw renderFlags);
580 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI__ast_3356)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
581 N_LIB_PRIVATE N_NIMCALL(void, add__ast_4797)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
582 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyTree__ast_4431)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
583 static N_INLINE(void, nimZeroMem)(void* p, NI size);
584 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
585 N_LIB_PRIVATE N_NIMCALL(void, initIdTable__ast_4096)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q* x);
586 static N_INLINE(NIM_BOOL, isAtom__ast_4768)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
587 N_LIB_PRIVATE N_NIMCALL(void, evalTemplateAux__evaltempl_24)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* templ, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* actual, tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result);
588 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
589 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info);
590 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
591 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
592 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
593 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
594 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
595 N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
596 N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
597 N_LIB_PRIVATE N_NIMCALL(RootObj*, idTableGet__astalgo_64)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key);
598 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, copySym__ast_4054)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id);
599 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
600 static N_INLINE(void, asgnRef)(void** dest, void* src);
601 static N_INLINE(void, incRef__system_5338)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
602 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
603 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5300)(void* usr);
604 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
605 static N_INLINE(void, decRef__system_5345)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
606 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
607 static N_INLINE(void, rtlAddZCT__system_5343)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
608 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5294)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
609 N_LIB_PRIVATE N_NIMCALL(void, idTablePut__astalgo_70)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q* t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, RootObj* val);
610 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newIdentNode__ast_3712)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
611 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_143)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
612 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
613 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
614 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3719)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
615 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyNode__evaltempl_19)(tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
616 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyNode__ast_4336)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
617 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isRunnableExamples__ast_4698)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
618 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, wrapInComesFrom__evaltempl_260)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* res);
619 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
620 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_2, "template instantiation too nested", 33);
621 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_4, "/home/runner/work/nightlies/nightlies/nim/compiler/evaltempl.nim", 64);
622 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__N0xGjswvcjwwH43PvVNJAg_3 = {((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_4),
623 ((NI) 180),
624 ((NI) 15)}
625 ;
626 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_5, "wrong number of arguments", 25);
627 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__N0xGjswvcjwwH43PvVNJAg_6 = {((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_4),
628 ((NI) 124),
629 ((NI) 15)}
630 ;
631 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_7, "\'$1\' has unspecified generic parameters", 39);
632 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__N0xGjswvcjwwH43PvVNJAg_8 = {((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_4),
633 ((NI) 127),
634 ((NI) 15)}
635 ;
636 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__N0xGjswvcjwwH43PvVNJAg_9 = {((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_4),
637 ((NI) 139),
638 ((NI) 16)}
639 ;
640 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_10, "(", 1);
641 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_11, ", ", 2);
642 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_12, ")", 1);
643 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__N0xGjswvcjwwH43PvVNJAg_13 = {((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_4),
644 ((NI) 49),
645 ((NI) 23)}
646 ;
647 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
648 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_14, "`gensym", 7);
649 static NIM_CONST tySet_tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw TM__N0xGjswvcjwwH43PvVNJAg_15 = {
650 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
651 0x00, 0x80, 0x1f, 0x00, 0x3c, 0x00, 0x00, 0x00,
652 0x00, 0x00, 0x00, 0x80, 0x00}
653 ;
654 STRING_LITERAL(TM__N0xGjswvcjwwH43PvVNJAg_16, "illformed AST: ", 15);
655 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__N0xGjswvcjwwH43PvVNJAg_17 = {((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_4),
656 ((NI) 201),
657 ((NI) 16)}
658 ;
659 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5247;
N_INLINE(NI,len__ast_3198)660 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
661 	NI result;
662 	NI T1_;
663 	result = (NI)0;
664 	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
665 	result = T1_;
666 	return result;
667 }
N_INLINE(NI,len__ast_4002)668 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n) {
669 	NI result;
670 	NI T1_;
671 	result = (NI)0;
672 	T1_ = ((*n).sons ? (*n).sons->Sup.len : 0);
673 	result = T1_;
674 	return result;
675 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,evalTemplateArgs__evaltempl_197)676 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalTemplateArgs__evaltempl_197)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NIM_BOOL fromHlo) {
677 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
678 	NI totalParams;
679 	NI genericParams;
680 	NI expectedRegularParams;
681 	NI T9_;
682 	NI givenRegularParams;
683 	result = NIM_NIL;
684 	switch ((*n).kind) {
685 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
686 	{
687 		NI T2_;
688 		T2_ = (NI)0;
689 		T2_ = len__ast_3198(n);
690 		totalParams = (NI)(T2_ - ((NI) 1));
691 	}
692 	break;
693 	default:
694 	{
695 		totalParams = ((NI) 0);
696 	}
697 	break;
698 	}
699 	{
700 		if (!fromHlo) goto LA6_;
701 		genericParams = ((NI) 0);
702 	}
703 	goto LA4_;
704 	LA6_: ;
705 	{
706 		genericParams = len__ast_3198((*(*s).ast)._kind_6.sons->data[((NI) 2)]);
707 	}
708 	LA4_: ;
709 	T9_ = (NI)0;
710 	T9_ = len__ast_4002((*s).typ);
711 	expectedRegularParams = (NI)(T9_ - ((NI) 1));
712 	givenRegularParams = (NI)(totalParams - genericParams);
713 	{
714 		if (!(givenRegularParams < ((NI) 0))) goto LA12_;
715 		givenRegularParams = ((NI) 0);
716 	}
717 	LA12_: ;
718 	{
719 		if (!((NI)(expectedRegularParams + genericParams) < totalParams)) goto LA16_;
720 		liMessage__msgs_1118(conf, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_5), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__N0xGjswvcjwwH43PvVNJAg_6, NIM_FALSE);
721 	}
722 	LA16_: ;
723 	{
724 		NimStringDesc* T22_;
725 		NimStringDesc* T23_;
726 		if (!(totalParams < genericParams)) goto LA20_;
727 		T22_ = NIM_NIL;
728 		T22_ = renderTree__renderer_46(n, 0);
729 		T23_ = NIM_NIL;
730 		T23_ = nsuFormatSingleElem(((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_7), T22_);
731 		liMessage__msgs_1118(conf, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T23_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__N0xGjswvcjwwH43PvVNJAg_8, NIM_FALSE);
732 	}
733 	LA20_: ;
734 	result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*n).info);
735 	{
736 		NI i;
737 		NI res;
738 		i = (NI)0;
739 		res = ((NI) 1);
740 		{
741 			while (1) {
742 				if (!(res <= givenRegularParams)) goto LA26;
743 				i = res;
744 				add__ast_4797(result, (*n)._kind_6.sons->data[i]);
745 				res += ((NI) 1);
746 			} LA26: ;
747 		}
748 	}
749 	{
750 		NI i_2;
751 		NI colontmp_;
752 		NI res_2;
753 		i_2 = (NI)0;
754 		colontmp_ = (NI)0;
755 		colontmp_ = (NI)(givenRegularParams + ((NI) 1));
756 		res_2 = colontmp_;
757 		{
758 			while (1) {
759 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* default_1;
760 				if (!(res_2 <= expectedRegularParams)) goto LA29;
761 				i_2 = res_2;
762 				default_1 = (*(*(*(*(*s).typ).n)._kind_6.sons->data[i_2])._kind_4.sym).ast;
763 				{
764 					NIM_BOOL T32_;
765 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T36_;
766 					T32_ = (NIM_BOOL)0;
767 					T32_ = (default_1 == 0);
768 					if (T32_) goto LA33_;
769 					T32_ = ((*default_1).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1));
770 					LA33_: ;
771 					if (!T32_) goto LA34_;
772 					liMessage__msgs_1118(conf, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_5), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__N0xGjswvcjwwH43PvVNJAg_9, NIM_FALSE);
773 					T36_ = NIM_NIL;
774 					T36_ = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1), (*n).info);
775 					add__ast_4797(result, T36_);
776 				}
777 				goto LA30_;
778 				LA34_: ;
779 				{
780 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T38_;
781 					T38_ = NIM_NIL;
782 					T38_ = copyTree__ast_4431(default_1);
783 					add__ast_4797(result, T38_);
784 				}
785 				LA30_: ;
786 				res_2 += ((NI) 1);
787 			} LA29: ;
788 		}
789 	}
790 	{
791 		NI i_3;
792 		NI res_3;
793 		i_3 = (NI)0;
794 		res_3 = ((NI) 1);
795 		{
796 			while (1) {
797 				if (!(res_3 <= genericParams)) goto LA41;
798 				i_3 = res_3;
799 				add__ast_4797(result, (*n)._kind_6.sons->data[(NI)(givenRegularParams + i_3)]);
800 				res_3 += ((NI) 1);
801 			} LA41: ;
802 		}
803 	}
804 	return result;
805 }
N_INLINE(void,nimSetMem__systemZmemory_7)806 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
807 	void* T1_;
808 	T1_ = (void*)0;
809 	T1_ = memset(a, v, ((size_t) (size)));
810 }
N_INLINE(void,nimZeroMem)811 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
812 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
813 }
N_INLINE(NIM_BOOL,isAtom__ast_4768)814 static N_INLINE(NIM_BOOL, isAtom__ast_4768)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
815 	NIM_BOOL result;
816 	NIM_BOOL T1_;
817 	result = (NIM_BOOL)0;
818 	T1_ = (NIM_BOOL)0;
819 	T1_ = (((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) <= (*n).kind);
820 	if (!(T1_)) goto LA2_;
821 	T1_ = ((*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
822 	LA2_: ;
823 	result = T1_;
824 	return result;
825 }
N_INLINE(NI,safeLen__ast_3191)826 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
827 	NI result;
828 	result = (NI)0;
829 	{
830 		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
831 		result = ((NI) 0);
832 	}
833 	goto LA1_;
834 	LA3_: ;
835 	{
836 		result = len__ast_3198(n);
837 	}
838 	LA1_: ;
839 	return result;
840 }
N_INLINE(void,nimCopyMem)841 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
842 	void* T1_;
843 	T1_ = (void*)0;
844 	T1_ = memcpy(dest, source, ((size_t) (size)));
845 }
N_INLINE(void,copyMem__system_1727)846 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
847 	nimCopyMem(dest, source, size);
848 }
N_INLINE(void,appendString)849 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
850 	{
851 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
852 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
853 		(*dest).Sup.len += (*src).Sup.len;
854 	}
855 	LA3_: ;
856 }
N_INLINE(void,addInt__stdZprivateZdigitsutils_189)857 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
858 	addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
859 }
N_INLINE(NimStringDesc *,toFileLineCol__msgs_615)860 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info) {
861 	NimStringDesc* result;
862 	result = NIM_NIL;
863 	result = resizeString(result, (info.Field0 ? info.Field0->Sup.len : 0) + 0);
864 appendString(result, info.Field0);
865 	{
866 		if (!(((NI) 0) < info.Field1)) goto LA3_;
867 		result = resizeString(result, 1);
868 appendString(result, ((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_10));
869 		addInt__stdZprivateZdigitsutils_189((&result), info.Field1);
870 		{
871 			if (!(((NI) 0) < (NI)(info.Field2 + ((NI) 1)))) goto LA7_;
872 			result = resizeString(result, 2);
873 appendString(result, ((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_11));
874 			addInt__stdZprivateZdigitsutils_189((&result), (NI)(info.Field2 + ((NI) 1)));
875 		}
876 		LA7_: ;
877 		result = resizeString(result, 1);
878 appendString(result, ((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_12));
879 	}
880 	LA3_: ;
881 	return result;
882 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextSymId__ast_3132)883 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
884 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
885 	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
886 	(*x).symId += ((NI) 1);
887 	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
888 	result.module = (*x).module;
889 	result.item = (*x).symId;
890 	return result;
891 }
N_INLINE(NI,pluspercent___system_696)892 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
893 	NI result;
894 	result = (NI)0;
895 	result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
896 	return result;
897 }
N_INLINE(void,incRef__system_5338)898 static N_INLINE(void, incRef__system_5338)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
899 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
900 }
N_INLINE(NI,minuspercent___system_716)901 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
902 	NI result;
903 	result = (NI)0;
904 	result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
905 	return result;
906 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5300)907 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5300)(void* usr) {
908 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
909 	NI T1_;
910 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
911 	T1_ = (NI)0;
912 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
913 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
914 	return result;
915 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)916 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
917 	NIM_BOOL result;
918 	result = (NIM_BOOL)0;
919 	result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
920 	return result;
921 }
N_INLINE(void,rtlAddZCT__system_5343)922 static N_INLINE(void, rtlAddZCT__system_5343)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
923 	addZCT__system_5294((&gch__system_5247.zct), c);
924 }
N_INLINE(void,decRef__system_5345)925 static N_INLINE(void, decRef__system_5345)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
926 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
927 	{
928 		NIM_BOOL T3_;
929 		T3_ = (NIM_BOOL)0;
930 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
931 		if (!T3_) goto LA4_;
932 		rtlAddZCT__system_5343(c);
933 	}
934 	LA4_: ;
935 }
N_INLINE(void,asgnRef)936 static N_INLINE(void, asgnRef)(void** dest, void* src) {
937 	{
938 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
939 		if (!!((src == NIM_NIL))) goto LA3_;
940 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
941 		T5_ = usrToCell__system_5300(src);
942 		incRef__system_5338(T5_);
943 	}
944 	LA3_: ;
945 	{
946 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
947 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
948 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
949 		T10_ = usrToCell__system_5300((*dest));
950 		decRef__system_5345(T10_);
951 	}
952 	LA8_: ;
953 	(*dest) = src;
954 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,copyNode__evaltempl_19)955 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyNode__evaltempl_19)(tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
956 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
957 	result = NIM_NIL;
958 	result = copyNode__ast_4336(a);
959 	{
960 		if (!(*ctx).instLines) goto LA3_;
961 		(*result).info = (*b).info;
962 	}
963 	LA3_: ;
964 	return result;
965 }
N_NIMCALL(void,evalTemplateAux__evaltempl_24)966 N_LIB_PRIVATE N_NIMCALL(void, evalTemplateAux__evaltempl_24)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* templ, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* actual, tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result) {
967 	switch ((*templ).kind) {
968 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
969 	{
970 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s;
971 		s = (*templ)._kind_4.sym;
972 		{
973 			NIM_BOOL T4_;
974 			NIM_BOOL T5_;
975 			T4_ = (NIM_BOOL)0;
976 			T5_ = (NIM_BOOL)0;
977 			T5_ = ((*s).owner == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
978 			if (!(T5_)) goto LA6_;
979 			T5_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
980 			LA6_: ;
981 			T4_ = T5_;
982 			if (T4_) goto LA7_;
983 			T4_ = ((*s).owner == (*c).owner);
984 			LA7_: ;
985 			if (!T4_) goto LA8_;
986 			{
987 				NIM_BOOL T12_;
988 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* xX60gensym0_;
989 				T12_ = (NIM_BOOL)0;
990 				T12_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
991 				if (!(T12_)) goto LA13_;
992 				T12_ = ((IL64(1236950581248) & (*s).flags) == IL64(1099511627776));
993 				LA13_: ;
994 				if (!T12_) goto LA14_;
995 				xX60gensym0_ = (*actual)._kind_6.sons->data[(*s).position];
996 				{
997 					if (!((*xX60gensym0_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152))) goto LA18_;
998 					{
999 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* yX60gensym0_;
1000 						yX60gensym0_ = NIM_NIL;
1001 						{
1002 							NI i;
1003 							NI colontmp_;
1004 							NI i_2;
1005 							i = (NI)0;
1006 							colontmp_ = (NI)0;
1007 							colontmp_ = safeLen__ast_3191(xX60gensym0_);
1008 							i_2 = ((NI) 0);
1009 							{
1010 								while (1) {
1011 									if (!(i_2 < colontmp_)) goto LA23;
1012 									i = i_2;
1013 									yX60gensym0_ = (*xX60gensym0_)._kind_6.sons->data[i];
1014 									add__ast_4797(result, yX60gensym0_);
1015 									i_2 += ((NI) 1);
1016 								} LA23: ;
1017 							}
1018 						}
1019 					}
1020 				}
1021 				goto LA16_;
1022 				LA18_: ;
1023 				{
1024 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T25_;
1025 					T25_ = NIM_NIL;
1026 					T25_ = copyTree__ast_4431(xX60gensym0_);
1027 					add__ast_4797(result, T25_);
1028 				}
1029 				LA16_: ;
1030 			}
1031 			goto LA10_;
1032 			LA14_: ;
1033 			{
1034 				NIM_BOOL T27_;
1035 				NIM_BOOL T29_;
1036 				NIM_BOOL T31_;
1037 				NIM_BOOL T32_;
1038 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* xX60gensym4_;
1039 				NI T37_;
1040 				T27_ = (NIM_BOOL)0;
1041 				T27_ = !(((*s).owner == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
1042 				if (!(T27_)) goto LA28_;
1043 				T29_ = (NIM_BOOL)0;
1044 				T29_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 4));
1045 				if (T29_) goto LA30_;
1046 				T31_ = (NIM_BOOL)0;
1047 				T32_ = (NIM_BOOL)0;
1048 				T32_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 7));
1049 				if (!(T32_)) goto LA33_;
1050 				T32_ = !(((*s).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
1051 				LA33_: ;
1052 				T31_ = T32_;
1053 				if (!(T31_)) goto LA34_;
1054 				T31_ = ((*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 12));
1055 				LA34_: ;
1056 				T29_ = T31_;
1057 				LA30_: ;
1058 				T27_ = T29_;
1059 				LA28_: ;
1060 				if (!T27_) goto LA35_;
1061 				T37_ = (NI)0;
1062 				T37_ = len__ast_4002((*(*s).owner).typ);
1063 				xX60gensym4_ = (*actual)._kind_6.sons->data[(NI)((NI)(T37_ + (*s).position) - ((NI) 1))];
1064 				{
1065 					if (!((*xX60gensym4_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152))) goto LA40_;
1066 					{
1067 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* yX60gensym4_;
1068 						yX60gensym4_ = NIM_NIL;
1069 						{
1070 							NI i_3;
1071 							NI colontmp__2;
1072 							NI i_4;
1073 							i_3 = (NI)0;
1074 							colontmp__2 = (NI)0;
1075 							colontmp__2 = safeLen__ast_3191(xX60gensym4_);
1076 							i_4 = ((NI) 0);
1077 							{
1078 								while (1) {
1079 									if (!(i_4 < colontmp__2)) goto LA45;
1080 									i_3 = i_4;
1081 									yX60gensym4_ = (*xX60gensym4_)._kind_6.sons->data[i_3];
1082 									add__ast_4797(result, yX60gensym4_);
1083 									i_4 += ((NI) 1);
1084 								} LA45: ;
1085 							}
1086 						}
1087 					}
1088 				}
1089 				goto LA38_;
1090 				LA40_: ;
1091 				{
1092 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T47_;
1093 					T47_ = NIM_NIL;
1094 					T47_ = copyTree__ast_4431(xX60gensym4_);
1095 					add__ast_4797(result, T47_);
1096 				}
1097 				LA38_: ;
1098 			}
1099 			goto LA10_;
1100 			LA35_: ;
1101 			{
1102 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* x;
1103 				RootObj* T55_;
1104 				{
1105 					NIM_BOOL T51_;
1106 					NimStringDesc* argX60gensym7_;
1107 					T51_ = (NIM_BOOL)0;
1108 					T51_ = (((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 37))&63U)))!=0);
1109 					if (T51_) goto LA52_;
1110 					T51_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 7));
1111 					LA52_: ;
1112 					if (!!(T51_)) goto LA53_;
1113 					argX60gensym7_ = toFileLineCol__msgs_615(TM__N0xGjswvcjwwH43PvVNJAg_13);
1114 					internalErrorImpl__msgs_1431((*c).config, unknownLineInfo__lineinfos_280, argX60gensym7_, TM__N0xGjswvcjwwH43PvVNJAg_13);
1115 				}
1116 				LA53_: ;
1117 				T55_ = NIM_NIL;
1118 				T55_ = idTableGet__astalgo_64((*c).mapping, (*((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w**) (&(s)))));
1119 				x = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) (T55_));
1120 				{
1121 					tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T60_;
1122 					if (!(x == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA58_;
1123 					T60_ = nextSymId__ast_3132((*c).idgen);
1124 					x = copySym__ast_4054(s, T60_);
1125 					asgnRef((void**) (&(*x).owner), ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
1126 					idTablePut__astalgo_70((&(*c).mapping), (*((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w**) (&(s)))), (*((RootObj**) (&(x)))));
1127 				}
1128 				LA58_: ;
1129 				{
1130 					NimStringDesc* T65_;
1131 					NimStringDesc* T66_;
1132 					tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T67_;
1133 					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T68_;
1134 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T74_;
1135 					if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 37))&63U)))!=0)) goto LA63_;
1136 					T65_ = NIM_NIL;
1137 					T66_ = NIM_NIL;
1138 					T66_ = dollar___systemZdollars_3((*c).instID);
1139 					T65_ = rawNewString(((*(*x).name).s ? (*(*x).name).s->Sup.len : 0) + (T66_ ? T66_->Sup.len : 0) + 7);
1140 appendString(T65_, (*(*x).name).s);
1141 appendString(T65_, ((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_14));
1142 appendString(T65_, T66_);
1143 					T67_ = NIM_NIL;
1144 					T67_ = getIdent__idents_143((*c).ic, T65_);
1145 					{
1146 						if (!(*c).instLines) goto LA71_;
1147 						T68_ = (*actual).info;
1148 					}
1149 					goto LA69_;
1150 					LA71_: ;
1151 					{
1152 						T68_ = (*templ).info;
1153 					}
1154 					LA69_: ;
1155 					T74_ = NIM_NIL;
1156 					T74_ = newIdentNode__ast_3712(T67_, T68_);
1157 					add__ast_4797(result, T74_);
1158 				}
1159 				goto LA61_;
1160 				LA63_: ;
1161 				{
1162 					tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T76_;
1163 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T82_;
1164 					{
1165 						if (!(*c).instLines) goto LA79_;
1166 						T76_ = (*actual).info;
1167 					}
1168 					goto LA77_;
1169 					LA79_: ;
1170 					{
1171 						T76_ = (*templ).info;
1172 					}
1173 					LA77_: ;
1174 					T82_ = NIM_NIL;
1175 					T82_ = newSymNode__ast_3719(x, T76_);
1176 					add__ast_4797(result, T82_);
1177 				}
1178 				LA61_: ;
1179 			}
1180 			LA10_: ;
1181 		}
1182 		goto LA2_;
1183 		LA8_: ;
1184 		{
1185 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T84_;
1186 			T84_ = NIM_NIL;
1187 			T84_ = copyNode__evaltempl_19((&(*c)), templ, actual);
1188 			add__ast_4797(result, T84_);
1189 		}
1190 		LA2_: ;
1191 	}
1192 	break;
1193 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
1194 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
1195 	{
1196 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T86_;
1197 		T86_ = NIM_NIL;
1198 		T86_ = copyNode__evaltempl_19((&(*c)), templ, actual);
1199 		add__ast_4797(result, T86_);
1200 	}
1201 	break;
1202 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
1203 	{
1204 		{
1205 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* res;
1206 			if (!(*c).isDeclarative) goto LA90_;
1207 			res = copyNode__evaltempl_19((&(*c)), templ, actual);
1208 			{
1209 				NI i_5;
1210 				NI colontmp__3;
1211 				NI i_6;
1212 				i_5 = (NI)0;
1213 				colontmp__3 = (NI)0;
1214 				colontmp__3 = len__ast_3198(templ);
1215 				i_6 = ((NI) 0);
1216 				{
1217 					while (1) {
1218 						if (!(i_6 < colontmp__3)) goto LA94;
1219 						i_5 = i_6;
1220 						evalTemplateAux__evaltempl_24((*templ)._kind_6.sons->data[i_5], actual, c, res);
1221 						i_6 += ((NI) 1);
1222 					} LA94: ;
1223 				}
1224 			}
1225 			add__ast_4797(result, res);
1226 		}
1227 		goto LA88_;
1228 		LA90_: ;
1229 		{
1230 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T96_;
1231 			T96_ = NIM_NIL;
1232 			T96_ = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1), (*templ).info);
1233 			add__ast_4797(result, T96_);
1234 		}
1235 		LA88_: ;
1236 	}
1237 	break;
1238 	default:
1239 	{
1240 		NIM_BOOL isDeclarative;
1241 		isDeclarative = NIM_FALSE;
1242 		{
1243 			NIM_BOOL T100_;
1244 			T100_ = (NIM_BOOL)0;
1245 			T100_ = ((TM__N0xGjswvcjwwH43PvVNJAg_15[(NU)((*templ).kind)>>3] &(1U<<((NU)((*templ).kind)&7U)))!=0);
1246 			if (!(T100_)) goto LA101_;
1247 			T100_ = !((*c).isDeclarative);
1248 			LA101_: ;
1249 			if (!T100_) goto LA102_;
1250 			(*c).isDeclarative = NIM_TRUE;
1251 			isDeclarative = NIM_TRUE;
1252 		}
1253 		LA102_: ;
1254 		{
1255 			NIM_BOOL T106_;
1256 			NIM_BOOL T107_;
1257 			T106_ = (NIM_BOOL)0;
1258 			T107_ = (NIM_BOOL)0;
1259 			T107_ = !((*c).isDeclarative);
1260 			if (!(T107_)) goto LA108_;
1261 			T107_ = ((*templ).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*templ).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*templ).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*templ).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*templ).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*templ).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*templ).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
1262 			LA108_: ;
1263 			T106_ = T107_;
1264 			if (!(T106_)) goto LA109_;
1265 			T106_ = isRunnableExamples__ast_4698((*templ)._kind_6.sons->data[((NI) 0)]);
1266 			LA109_: ;
1267 			if (!T106_) goto LA110_;
1268 		}
1269 		goto LA104_;
1270 		LA110_: ;
1271 		{
1272 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* res_2;
1273 			res_2 = copyNode__evaltempl_19((&(*c)), templ, actual);
1274 			{
1275 				NI i_7;
1276 				NI colontmp__4;
1277 				NI i_8;
1278 				i_7 = (NI)0;
1279 				colontmp__4 = (NI)0;
1280 				colontmp__4 = len__ast_3198(templ);
1281 				i_8 = ((NI) 0);
1282 				{
1283 					while (1) {
1284 						if (!(i_8 < colontmp__4)) goto LA115;
1285 						i_7 = i_8;
1286 						evalTemplateAux__evaltempl_24((*templ)._kind_6.sons->data[i_7], actual, c, res_2);
1287 						i_8 += ((NI) 1);
1288 					} LA115: ;
1289 				}
1290 			}
1291 			add__ast_4797(result, res_2);
1292 		}
1293 		LA104_: ;
1294 		{
1295 			if (!isDeclarative) goto LA118_;
1296 			(*c).isDeclarative = NIM_FALSE;
1297 		}
1298 		LA118_: ;
1299 	}
1300 	break;
1301 	}
1302 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,wrapInComesFrom__evaltempl_260)1303 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, wrapInComesFrom__evaltempl_260)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* res) {
1304 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
1305 	result = NIM_NIL;
1306 	result = res;
1307 	(*result).info = info;
1308 	{
1309 		NIM_BOOL T3_;
1310 		NI T5_;
1311 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T8_;
1312 		T3_ = (NIM_BOOL)0;
1313 		T3_ = ((*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115) || (*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126));
1314 		if (!(T3_)) goto LA4_;
1315 		T5_ = (NI)0;
1316 		T5_ = len__ast_3198(result);
1317 		T3_ = (((NI) 0) < T5_);
1318 		LA4_: ;
1319 		if (!T3_) goto LA6_;
1320 		T8_ = NIM_NIL;
1321 		T8_ = lastSon__ast_4832(result);
1322 		(*T8_).info = info;
1323 	}
1324 	LA6_: ;
1325 	return result;
1326 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,evalTemplate__evaltempl_275)1327 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, evalTemplate__evaltempl_275)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* tmpl, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* genSymOwner, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NI* instID, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, NIM_BOOL fromHlo) {
1328 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
1329 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* args;
1330 	tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q ctx;
1331 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body;
1332 	result = NIM_NIL;
1333 	(*conf).evalTemplateCounter += ((NI) 1);
1334 	{
1335 		if (!(((NI) 1000) < (*conf).evalTemplateCounter)) goto LA3_;
1336 		liMessage__msgs_1118(conf, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_2), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__N0xGjswvcjwwH43PvVNJAg_3, NIM_FALSE);
1337 		result = n;
1338 	}
1339 	LA3_: ;
1340 	args = evalTemplateArgs__evaltempl_197(n, tmpl, conf, fromHlo);
1341 	nimZeroMem((void*)(&ctx), sizeof(tyObject_TemplCtx__og0XwfDLUlsX2HzoVx0s3Q));
1342 	ctx.owner = tmpl;
1343 	ctx.genSymOwner = genSymOwner;
1344 	ctx.config = conf;
1345 	ctx.ic = ic;
1346 	initIdTable__ast_4096((&ctx.mapping));
1347 	ctx.instID = (*instID);
1348 	ctx.idgen = idgen;
1349 	body = (*(*tmpl).ast)._kind_6.sons->data[((NI) 6)];
1350 	{
1351 		NIM_BOOL T7_;
1352 		T7_ = (NIM_BOOL)0;
1353 		T7_ = isAtom__ast_4768(body);
1354 		if (!T7_) goto LA8_;
1355 		result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37), (*body).info);
1356 		evalTemplateAux__evaltempl_24(body, args, (&ctx), result);
1357 		{
1358 			NI T12_;
1359 			T12_ = (NI)0;
1360 			T12_ = len__ast_3198(result);
1361 			if (!(T12_ == ((NI) 1))) goto LA13_;
1362 			result = (*result)._kind_6.sons->data[((NI) 0)];
1363 		}
1364 		goto LA10_;
1365 		LA13_: ;
1366 		{
1367 			NimStringDesc* T16_;
1368 			NimStringDesc* T17_;
1369 			T16_ = NIM_NIL;
1370 			T17_ = NIM_NIL;
1371 			T17_ = renderTree__renderer_46(result, 4);
1372 			T16_ = rawNewString((T17_ ? T17_->Sup.len : 0) + 15);
1373 appendString(T16_, ((NimStringDesc*) &TM__N0xGjswvcjwwH43PvVNJAg_16));
1374 appendString(T16_, T17_);
1375 			liMessage__msgs_1118(conf, (*result).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T16_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__N0xGjswvcjwwH43PvVNJAg_17, NIM_FALSE);
1376 		}
1377 		LA10_: ;
1378 	}
1379 	goto LA5_;
1380 	LA8_: ;
1381 	{
1382 		result = copyNode__ast_4336(body);
1383 		ctx.instLines = (((*tmpl).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 36))&63U)))!=0);
1384 		{
1385 			if (!ctx.instLines) goto LA21_;
1386 			(*result).info = (*n).info;
1387 		}
1388 		LA21_: ;
1389 		{
1390 			NI i;
1391 			NI colontmp_;
1392 			NI i_2;
1393 			i = (NI)0;
1394 			colontmp_ = (NI)0;
1395 			colontmp_ = safeLen__ast_3191(body);
1396 			i_2 = ((NI) 0);
1397 			{
1398 				while (1) {
1399 					if (!(i_2 < colontmp_)) goto LA25;
1400 					i = i_2;
1401 					evalTemplateAux__evaltempl_24((*body)._kind_6.sons->data[i], args, (&ctx), result);
1402 					i_2 += ((NI) 1);
1403 				} LA25: ;
1404 			}
1405 		}
1406 	}
1407 	LA5_: ;
1408 	(*result).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 17)) & 31);
1409 	result = wrapInComesFrom__evaltempl_260((*n).info, tmpl, result);
1410 	(*conf).evalTemplateCounter -= ((NI) 1);
1411 	(*instID) += ((NI) 1);
1412 	return result;
1413 }
1414