1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3
4 #include "nimbase.h"
5 #include <string.h>
6 #undef LANGUAGE_C
7 #undef MIPSEB
8 #undef MIPSEL
9 #undef PPC
10 #undef R3000
11 #undef R4000
12 #undef i386
13 #undef linux
14 #undef mips
15 #undef near
16 #undef far
17 #undef powerpc
18 #undef unix
19 #define nimfr_(x, y)
20 #define nimln_(x, y)
21 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
22 typedef struct TNimType TNimType;
23 typedef struct TNimNode TNimNode;
24 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
25 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
26 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
27 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
28 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
29 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
30 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
31 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
32 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
33 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
34 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
35 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
36 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
37 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
38 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
39 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
40 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
41 typedef struct tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg;
42 typedef struct NimStringDesc NimStringDesc;
43 typedef struct TGenericSeq TGenericSeq;
44 typedef struct tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg;
45 typedef struct RootObj RootObj;
46 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
47 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
48 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
49 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
50 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
51 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
52 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
53 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
54 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
55 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
56 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
57 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
58 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
59 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
60 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
61 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
62 typedef struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ;
63 typedef struct tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw;
64 typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
65 typedef struct Exception Exception;
66 typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
67 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
68 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
69 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
70 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
71 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
72 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
73 typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
74 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
75 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
76 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
77 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
78 struct TNimType {
79 NI size;
80 NI align;
81 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
82 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
83 TNimType* base;
84 TNimNode* node;
85 void* finalizer;
86 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
87 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
88 };
89 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
90 struct TNimNode {
91 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
92 NI offset;
93 TNimType* typ;
94 NCSTRING name;
95 NI len;
96 TNimNode** sons;
97 };
98 typedef N_NIMCALL_PTR(void, tyProc__T4eqaYlFJYZUv9aG9b1TV0bQ) (void);
99 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
100 NI refcount;
101 TNimType* typ;
102 };
103 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
104 void* bottom;
105 };
106 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
107 NI len;
108 NI cap;
109 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
110 };
111 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
112 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
113 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
114 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
115 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
116 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
117 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
118 };
119 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
120 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
121 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
122 NI key;
123 NI upperBound;
124 NI level;
125 };
126 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
127 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
128 NI Field1;
129 };
130 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
131 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
132 NI len;
133 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
134 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
135 };
136 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
137 NI minLargeObj;
138 NI maxLargeObj;
139 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
140 NU32 flBitmap;
141 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
142 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
143 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
144 NI currMem;
145 NI maxMem;
146 NI freeMem;
147 NI occ;
148 NI lastSize;
149 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
150 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
151 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
152 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
153 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
154 NIM_BOOL locked;
155 NIM_BOOL blockChunkSizeIncrease;
156 NI nextChunkSize;
157 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
158 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
159 };
160 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
161 NI stackScans;
162 NI cycleCollections;
163 NI maxThreshold;
164 NI maxStackSize;
165 NI maxStackCells;
166 NI cycleTableSize;
167 NI64 maxPause;
168 };
169 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
170 NI counter;
171 NI max;
172 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
173 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
174 };
175 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
176 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
177 NI cycleThreshold;
178 NI zctThreshold;
179 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
180 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
181 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
182 NI recGcLock;
183 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
184 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
185 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
186 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
187 NI gcThreadId;
188 };
189 typedef NU8 tyEnum_TCmdLinePass__IiBn9cB6WYIMDHOT44O82wA;
190 struct TGenericSeq {
191 NI len;
192 NI reserved;
193 };
194 struct NimStringDesc {
195 TGenericSeq Sup;
196 NIM_CHAR data[SEQ_DECL_SIZE];
197 };
198 typedef struct {
199 N_NIMCALL_PTR(void, ClP_0) (tyEnum_TCmdLinePass__IiBn9cB6WYIMDHOT44O82wA pass, NimStringDesc* cmd, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, void* ClE_0);
200 void* ClE_0;
201 } tyProc__34NX3arOx349cB4sFiTD3uA;
202 struct tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg {
203 NIM_BOOL suggestMode;
204 NIM_BOOL supportsStdinFile;
205 tyProc__34NX3arOx349cB4sFiTD3uA processCmdLine;
206 };
207 struct RootObj {
208 TNimType* m_type;
209 };
210 typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
211 typedef NU8 tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA;
212 struct tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg {
213 RootObj Sup;
214 NI pos;
215 NIM_BOOL inShortState;
216 NIM_BOOL allowWhitespaceAfterColon;
217 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw shortNoVal;
218 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* longNoVal;
219 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cmds;
220 NI idx;
221 tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA kind;
222 NimStringDesc* key;
223 NimStringDesc* val;
224 };
225 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
226 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
227 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
228 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
229 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
230 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
231 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
232 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
233 NI intSize;
234 NI floatSize;
235 NI ptrSize;
236 NimStringDesc* tnl;
237 };
238 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
239 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
240 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
241 NU16 line;
242 NI16 col;
243 NI32 fileIndex;
244 };
245 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
246 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
247 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
248 NI counter;
249 };
250 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
251 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
252 NIM_BOOL trackPosAttached;
253 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
254 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
255 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
256 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
257 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
258 NI32 systemFileIdx;
259 };
260 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
261 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
262 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
263 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
264 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
265 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
266 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
267 NI counter;
268 };
269 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
270 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
271 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
272 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
273 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
274 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
275 NI Field0;
276 NI Field1;
277 NI Field2;
278 };
279 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
280 typedef struct {
281 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
282 void* ClE_0;
283 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
284 typedef struct {
285 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
286 void* ClE_0;
287 } tyProc__k2HFjxisIgDALbEUFojxaQ;
288 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
289 typedef struct {
290 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
291 void* ClE_0;
292 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
293 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
294 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
295 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
296 NI linesCompiled;
297 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
298 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
299 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
300 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
301 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
302 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
303 NimStringDesc* unitSep;
304 NI evalTemplateCounter;
305 NI evalMacroCounter;
306 NI8 exitcode;
307 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
308 NimStringDesc* cmdInput;
309 NIM_BOOL projectIsCmd;
310 NIM_BOOL implicitCmd;
311 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
312 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
313 NIM_BOOL hintProcessingDots;
314 NI verbosity;
315 NI numberOfProcessors;
316 NF lastCmdTime;
317 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
318 NI spellSuggestMax;
319 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
320 NimStringDesc* headerFile;
321 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
322 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
323 NimStringDesc* arguments;
324 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
325 NIM_BOOL oldNewlines;
326 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
327 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
328 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
329 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
330 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
331 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
332 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
333 NI mainPackageId;
334 NI errorCounter;
335 NI hintCounter;
336 NI warnCounter;
337 NI errorMax;
338 NI maxLoopIterationsVM;
339 NIM_BOOL isVmTrace;
340 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
341 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
342 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
343 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
344 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
345 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
346 NimStringDesc* outFile;
347 NimStringDesc* outDir;
348 NimStringDesc* jsonBuildFile;
349 NimStringDesc* prefixDir;
350 NimStringDesc* libpath;
351 NimStringDesc* nimcacheDir;
352 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
353 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
354 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
355 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
356 NimStringDesc* projectName;
357 NimStringDesc* projectPath;
358 NimStringDesc* projectFull;
359 NIM_BOOL projectIsStdin;
360 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
361 NI32 projectMainIdx;
362 NI32 projectMainIdx2;
363 NimStringDesc* command;
364 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
365 NimStringDesc* commandLine;
366 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
367 NIM_BOOL keepComments;
368 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
369 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
370 NimStringDesc* docSeeSrcUrl;
371 NimStringDesc* docRoot;
372 NimStringDesc* docCmd;
373 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
374 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
375 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
376 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
377 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
378 NimStringDesc* linkOptionsCmd;
379 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
380 NimStringDesc* linkOptions;
381 NimStringDesc* compileOptions;
382 NimStringDesc* cCompilerPath;
383 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
384 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
385 NI suggestVersion;
386 NI suggestMaxResults;
387 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
388 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
389 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
390 NimStringDesc* cppCustomNamespace;
391 NimStringDesc* nimMainPrefix;
392 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
393 };
394 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
395 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
396 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
397 NimStringDesc* Field0;
398 NI Field1;
399 NI Field2;
400 };
401 typedef N_CLOSURE_PTR(void, TM__6xNBOpPeN0DsJ34t7RoSng_9) (tyEnum_TCmdLinePass__IiBn9cB6WYIMDHOT44O82wA pass, NimStringDesc* cmd, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, void* ClE_0);
402 typedef NU8 tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug;
403 typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
404 typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
405 typedef NimStringDesc* tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
406 struct Exception {
407 RootObj Sup;
408 Exception* parent;
409 NCSTRING name;
410 NimStringDesc* message;
411 tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
412 Exception* up;
413 };
414 struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
415 Exception Sup;
416 };
417 struct tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw {
418 tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
419 };
420 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
421 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
422 NimStringDesc* Field1;
423 };
424 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
425 NI Field0;
426 NimStringDesc* Field1;
427 NI32 Field2;
428 };
429 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
430 NimStringDesc* fullPath;
431 NimStringDesc* projPath;
432 NimStringDesc* shortName;
433 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
434 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
435 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
436 NimStringDesc* dirtyFile;
437 NimStringDesc* hash;
438 NIM_BOOL dirty;
439 };
440 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
441 NI Field0;
442 NimStringDesc* Field1;
443 };
444 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
445 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
446 NimStringDesc* nimname;
447 NimStringDesc* cname;
448 NimStringDesc* obj;
449 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
450 NimStringDesc* customArgs;
451 };
452 struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
453 NCSTRING procname;
454 NI line;
455 NCSTRING filename;
456 };
457 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
458 TGenericSeq Sup;
459 NimStringDesc* data[SEQ_DECL_SIZE];
460 };
461 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
462 TGenericSeq Sup;
463 tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
464 };
465 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
466 TGenericSeq Sup;
467 tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
468 };
469 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
470 TGenericSeq Sup;
471 tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
472 };
473 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
474 TGenericSeq Sup;
475 tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
476 };
477 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
478 TGenericSeq Sup;
479 tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
480 };
481 struct tySequence__uB9b75OUPRENsBAu4AnoePA {
482 TGenericSeq Sup;
483 tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
484 };
485 N_LIB_PRIVATE N_NIMCALL(void, GC_disableMarkAndSweep__system_2267)(void);
486 N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
487 static N_NIMCALL(void, TM__6xNBOpPeN0DsJ34t7RoSng_2)(void);
488 N_LIB_PRIVATE N_NIMCALL(void, nimRegisterGlobalMarker)(tyProc__T4eqaYlFJYZUv9aG9b1TV0bQ markerProc);
489 N_LIB_PRIVATE N_NIMCALL(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*, newConfigRef__options_2320)(void);
490 static N_INLINE(void, asgnRef)(void** dest, void* src);
491 static N_INLINE(void, incRef__system_5372)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
492 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
493 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5334)(void* usr);
494 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
495 static N_INLINE(void, decRef__system_5379)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
496 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
497 static N_INLINE(void, rtlAddZCT__system_5377)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
498 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5328)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
499 N_LIB_PRIVATE N_NIMCALL(void, handleCmdLine__nim_41)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
500 N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
501 N_LIB_PRIVATE N_NIMCALL(void, processCmdLine__nim_16)(tyEnum_TCmdLinePass__IiBn9cB6WYIMDHOT44O82wA pass, NimStringDesc* cmd, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config);
502 static N_INLINE(void, nimZeroMem)(void* p, NI size);
503 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
504 N_LIB_PRIVATE N_NIMCALL(void, initOptParser__pureZparseopt_51)(NimStringDesc* cmdline, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw shortNoVal, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* longNoVal, NIM_BOOL allowWhitespaceAfterColon, tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* Result);
505 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
506 N_LIB_PRIVATE N_NIMCALL(void, nponext)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p);
507 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
508 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
509 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
510 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
511 N_LIB_PRIVATE N_NIMCALL(void, addCmdPrefix__cmdlinehelper_16)(NimStringDesc** result, tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA kind);
512 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nospquoteShell)(NimStringDesc* s);
513 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
514 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
515 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, processArgument__commands_1508)(tyEnum_TCmdLinePass__IiBn9cB6WYIMDHOT44O82wA pass, tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p, NI* argsCount, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config);
516 N_LIB_PRIVATE N_NIMCALL(void, processSwitch__commands_1501)(tyEnum_TCmdLinePass__IiBn9cB6WYIMDHOT44O82wA pass, tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config);
517 N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1117)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
518 N_LIB_PRIVATE N_NIMCALL(void, initDefinesProg__cmdlinehelper_28)(tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg* self, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* name);
519 N_LIB_PRIVATE N_NIMCALL(NI, nosparamCount)(void);
520 N_LIB_PRIVATE N_NIMCALL(void, writeCommandLineUsage__commands_169)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
521 N_LIB_PRIVATE N_NIMCALL(void, processCmdLineAndProjectPath__cmdlinehelper_32)(tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg* self, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
522 N_LIB_PRIVATE N_NIMCALL(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ*, newModuleGraph__modulegraphs_9074)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config);
523 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, loadConfigsAndProcessCmdLine__cmdlinehelper_43)(tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg* self, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph);
524 N_LIB_PRIVATE N_NIMCALL(void, mainCommand__main_500)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph);
525 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasHint__options_517)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug note);
526 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, GC_getStatistics__system_2268)(void);
527 N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringDesc** args, NI argsLen_0);
528 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, absOutFile__options_4038)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
529 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getNimRunExe__nim_38)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
530 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefined__options_2279)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* symbol);
531 static N_INLINE(NimStringDesc*, findNodeJs__nodejs_2)(void);
532 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, findExe__pureZos_794)(NimStringDesc* exe, NIM_BOOL followSymlinks, NimStringDesc** extensions, NI extensionsLen_0);
533 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
534 N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line);
535 N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__systemZassertions_56)(NimStringDesc* msg);
536 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
537 N_LIB_PRIVATE N_NIMCALL(void, execExternalProgram__extccomp_808)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cmd, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg);
538 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
539 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
540 N_LIB_PRIVATE N_NIMCALL(void, openDefaultBrowser__pureZbrowsers_13)(NimStringDesc* url);
541 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___options_4364)(NimStringDesc* x);
542 N_LIB_PRIVATE N_NIMCALL(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw*, newIdentCache__idents_152)(void);
543 N_LIB_PRIVATE N_NIMCALL(void, msgQuit__msgs_442)(NI8 x);
544 static N_INLINE(void, initStackBottomWith)(void* locals);
545 N_LIB_PRIVATE N_NOINLINE(void, nimGC_setStackBottom)(void* theStackBottom);
546 N_LIB_PRIVATE N_NIMCALL(void, stdlib_widestrsDatInit000)(void);
547 N_LIB_PRIVATE N_NIMCALL(void, stdlib_ioDatInit000)(void);
548 N_LIB_PRIVATE N_NIMCALL(void, stdlib_ioInit000)(void);
549 N_LIB_PRIVATE N_NIMCALL(void, systemDatInit000)(void);
550 N_LIB_PRIVATE N_NIMCALL(void, systemInit000)(void);
551 N_LIB_PRIVATE N_NIMCALL(void, stdlib_strutilsDatInit000)(void);
552 N_LIB_PRIVATE N_NIMCALL(void, stdlib_winleanDatInit000)(void);
553 N_LIB_PRIVATE N_NIMCALL(void, stdlib_winleanInit000)(void);
554 N_LIB_PRIVATE N_NIMCALL(void, stdlib_timesDatInit000)(void);
555 N_LIB_PRIVATE N_NIMCALL(void, stdlib_timesInit000)(void);
556 N_LIB_PRIVATE N_NIMCALL(void, stdlib_win_setenvDatInit000)(void);
557 N_LIB_PRIVATE N_NIMCALL(void, stdlib_osDatInit000)(void);
558 N_LIB_PRIVATE N_NIMCALL(void, stdlib_osInit000)(void);
559 N_LIB_PRIVATE N_NIMCALL(void, stdlib_parseoptDatInit000)(void);
560 N_LIB_PRIVATE N_NIMCALL(void, stdlib_strtabsDatInit000)(void);
561 N_LIB_PRIVATE N_NIMCALL(void, stdlib_terminalDatInit000)(void);
562 N_LIB_PRIVATE N_NIMCALL(void, stdlib_terminalInit000)(void);
563 N_LIB_PRIVATE N_NIMCALL(void, compiler_ropesDatInit000)(void);
564 N_LIB_PRIVATE N_NIMCALL(void, compiler_ropesInit000)(void);
565 N_LIB_PRIVATE N_NIMCALL(void, compiler_lineinfosDatInit000)(void);
566 N_LIB_PRIVATE N_NIMCALL(void, compiler_platformDatInit000)(void);
567 N_LIB_PRIVATE N_NIMCALL(void, compiler_prefixmatchesDatInit000)(void);
568 N_LIB_PRIVATE N_NIMCALL(void, compiler_optionsDatInit000)(void);
569 N_LIB_PRIVATE N_NIMCALL(void, stdlib_streamsDatInit000)(void);
570 N_LIB_PRIVATE N_NIMCALL(void, stdlib_cpuinfoDatInit000)(void);
571 N_LIB_PRIVATE N_NIMCALL(void, stdlib_osprocDatInit000)(void);
572 N_LIB_PRIVATE N_NIMCALL(void, stdlib_lexbaseDatInit000)(void);
573 N_LIB_PRIVATE N_NIMCALL(void, stdlib_parsejsonDatInit000)(void);
574 N_LIB_PRIVATE N_NIMCALL(void, stdlib_jsonDatInit000)(void);
575 N_LIB_PRIVATE N_NIMCALL(void, compiler_extccompDatInit000)(void);
576 N_LIB_PRIVATE N_NIMCALL(void, compiler_wordrecgDatInit000)(void);
577 N_LIB_PRIVATE N_NIMCALL(void, compiler_nimblecmdDatInit000)(void);
578 N_LIB_PRIVATE N_NIMCALL(void, compiler_identsDatInit000)(void);
579 N_LIB_PRIVATE N_NIMCALL(void, compiler_astDatInit000)(void);
580 N_LIB_PRIVATE N_NIMCALL(void, compiler_astInit000)(void);
581 N_LIB_PRIVATE N_NIMCALL(void, compiler_llstreamDatInit000)(void);
582 N_LIB_PRIVATE N_NIMCALL(void, compiler_nimlexbaseDatInit000)(void);
583 N_LIB_PRIVATE N_NIMCALL(void, compiler_lexerDatInit000)(void);
584 N_LIB_PRIVATE N_NIMCALL(void, compiler_parserDatInit000)(void);
585 N_LIB_PRIVATE N_NIMCALL(void, compiler_rendererDatInit000)(void);
586 N_LIB_PRIVATE N_NIMCALL(void, compiler_syntaxesDatInit000)(void);
587 N_LIB_PRIVATE N_NIMCALL(void, stdlib_packedsetsDatInit000)(void);
588 N_LIB_PRIVATE N_NIMCALL(void, compiler_astalgoDatInit000)(void);
589 N_LIB_PRIVATE N_NIMCALL(void, stdlib_md5DatInit000)(void);
590 N_LIB_PRIVATE N_NIMCALL(void, compiler_rodfilesDatInit000)(void);
591 N_LIB_PRIVATE N_NIMCALL(void, compiler_packed_astDatInit000)(void);
592 N_LIB_PRIVATE N_NIMCALL(void, compiler_icDatInit000)(void);
593 N_LIB_PRIVATE N_NIMCALL(void, compiler_modulegraphsDatInit000)(void);
594 N_LIB_PRIVATE N_NIMCALL(void, compiler_typesDatInit000)(void);
595 N_LIB_PRIVATE N_NIMCALL(void, compiler_vmdefDatInit000)(void);
596 N_LIB_PRIVATE N_NIMCALL(void, compiler_semdataDatInit000)(void);
597 N_LIB_PRIVATE N_NIMCALL(void, compiler_lookupsDatInit000)(void);
598 N_LIB_PRIVATE N_NIMCALL(void, compiler_conceptsDatInit000)(void);
599 N_LIB_PRIVATE N_NIMCALL(void, compiler_semtypinstDatInit000)(void);
600 N_LIB_PRIVATE N_NIMCALL(void, compiler_sigmatchDatInit000)(void);
601 N_LIB_PRIVATE N_NIMCALL(void, compiler_importerDatInit000)(void);
602 N_LIB_PRIVATE N_NIMCALL(void, compiler_pragmasDatInit000)(void);
603 N_LIB_PRIVATE N_NIMCALL(void, compiler_reorderDatInit000)(void);
604 N_LIB_PRIVATE N_NIMCALL(void, compiler_guardsDatInit000)(void);
605 N_LIB_PRIVATE N_NIMCALL(void, compiler_varpartitionsDatInit000)(void);
606 N_LIB_PRIVATE N_NIMCALL(void, compiler_nilcheckDatInit000)(void);
607 N_LIB_PRIVATE N_NIMCALL(void, compiler_sighashesDatInit000)(void);
608 N_LIB_PRIVATE N_NIMCALL(void, compiler_ndiDatInit000)(void);
609 N_LIB_PRIVATE N_NIMCALL(void, compiler_cgendataDatInit000)(void);
610 N_LIB_PRIVATE N_NIMCALL(void, compiler_lambdaliftingDatInit000)(void);
611 N_LIB_PRIVATE N_NIMCALL(void, compiler_closureitersDatInit000)(void);
612 N_LIB_PRIVATE N_NIMCALL(void, compiler_transfDatInit000)(void);
613 N_LIB_PRIVATE N_NIMCALL(void, compiler_vmgenDatInit000)(void);
614 N_LIB_PRIVATE N_NIMCALL(void, compiler_vmmarshalDatInit000)(void);
615 N_LIB_PRIVATE N_NIMCALL(void, compiler_vmDatInit000)(void);
616 N_LIB_PRIVATE N_NIMCALL(void, compiler_patternsDatInit000)(void);
617 N_LIB_PRIVATE N_NIMCALL(void, compiler_semDatInit000)(void);
618 N_LIB_PRIVATE N_NIMCALL(void, compiler_dfaDatInit000)(void);
619 N_LIB_PRIVATE N_NIMCALL(void, compiler_injectdestructorsDatInit000)(void);
620 N_LIB_PRIVATE N_NIMCALL(void, compiler_semparallelDatInit000)(void);
621 N_LIB_PRIVATE N_NIMCALL(void, compiler_cgenDatInit000)(void);
622 N_LIB_PRIVATE N_NIMCALL(void, compiler_scriptconfigDatInit000)(void);
623 N_LIB_PRIVATE N_NIMCALL(void, compiler_nimconfDatInit000)(void);
624 N_LIB_PRIVATE N_NIMCALL(void, compiler_passauxDatInit000)(void);
625 N_LIB_PRIVATE N_NIMCALL(void, compiler_dependsDatInit000)(void);
626 N_LIB_PRIVATE N_NIMCALL(void, compiler_dceDatInit000)(void);
627 N_LIB_PRIVATE N_NIMCALL(void, compiler_integrityDatInit000)(void);
628 N_LIB_PRIVATE N_NIMCALL(void, compiler_sourcemapDatInit000)(void);
629 N_LIB_PRIVATE N_NIMCALL(void, compiler_sourcemapInit000)(void);
630 N_LIB_PRIVATE N_NIMCALL(void, compiler_jsgenDatInit000)(void);
631 N_LIB_PRIVATE N_NIMCALL(void, stdlib_rstastDatInit000)(void);
632 N_LIB_PRIVATE N_NIMCALL(void, stdlib_highliteDatInit000)(void);
633 N_LIB_PRIVATE N_NIMCALL(void, stdlib_rstDatInit000)(void);
634 N_LIB_PRIVATE N_NIMCALL(void, stdlib_rstgenDatInit000)(void);
635 N_LIB_PRIVATE N_NIMCALL(void, compiler_docgenDatInit000)(void);
636 N_LIB_PRIVATE N_NIMCALL(void, compiler_docgen2DatInit000)(void);
637 N_LIB_PRIVATE N_NIMCALL(void, compiler_mainDatInit000)(void);
638 N_LIB_PRIVATE N_NIMCALL(void, compiler_cmdlinehelperDatInit000)(void);
639 N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void);
640 extern TNimType NTIconfigref__a8lycfSA25OQltN3OMeBsA_;
641 extern TNimType NTInimprog__oQuE3daAnIJJmmxLCZ80bA_;
642 extern TNimType NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_;
643 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6xNBOpPeN0DsJ34t7RoSng_3 = {
644 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
645 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
646 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
647 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
648 ;
649 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_4, " ", 1);
650 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_5, "-", 1);
651 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
652 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_6, "arguments can only be given if the \'--run\' option is selected", 61);
653 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_8, "/home/runner/work/nightlies/nightlies/nim/compiler/nim.nim", 58);
654 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__6xNBOpPeN0DsJ34t7RoSng_7 = {((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_8),
655 ((NI) 71),
656 ((NI) 16)}
657 ;
658 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_10, "nim_compiler", 12);
659 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_11, "mingw", 5);
660 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_12, "i386", 4);
661 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_13, "wine", 4);
662 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_14, "amd64", 5);
663 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_15, "wine64", 6);
664 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_16, "nodejs", 6);
665 extern NIM_CONST tyArray__24KAM9afIUgUaqBaEBB6r9bg ExeExts__pureZos_793;
666 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_17, "node", 4);
667 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_19, "Please install NodeJS first, see https://nodejs.org/en/download", 63);
668 static NIM_CONST tyArray__nHXaesL0DJZHyVS07ARPRA TM__6xNBOpPeN0DsJ34t7RoSng_18 = {((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_19)}
669 ;
670 extern TNimType NTIrefioerror__HMIVdYjdZYWskTmTQVo5BQ_;
671 extern TNimType NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_;
672 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_20, "NodeJS not found in PATH: ", 26);
673 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_21, " --unhandled-rejections=strict", 30);
674 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_22, "nim.nim(115, 22) `false` ", 25);
675 extern TNimType NTItbackend__4OBsgZ9cscH2JLUE5Wcz01g_;
676 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_23, "\'$1 cannot handle arguments", 27);
677 extern TNimType NTIcommand__0zjcIQ623TIRGPdtjLwTFA_;
678 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__6xNBOpPeN0DsJ34t7RoSng_24 = {((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_8),
679 ((NI) 123),
680 ((NI) 18)}
681 ;
682 STRING_LITERAL(TM__6xNBOpPeN0DsJ34t7RoSng_25, "\'$1 cannot handle --run", 23);
683 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__6xNBOpPeN0DsJ34t7RoSng_26 = {((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_8),
684 ((NI) 127),
685 ((NI) 16)}
686 ;
687 N_LIB_PRIVATE tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf__nim_106;
688 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5281;
N_NIMCALL(void,TM__6xNBOpPeN0DsJ34t7RoSng_2)689 static N_NIMCALL(void, TM__6xNBOpPeN0DsJ34t7RoSng_2)(void) {
690 nimGCvisit((void*)conf__nim_106, 0);
691 }
N_INLINE(NI,pluspercent___system_696)692 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
693 NI result;
694 result = (NI)0;
695 result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
696 return result;
697 }
N_INLINE(void,incRef__system_5372)698 static N_INLINE(void, incRef__system_5372)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
699 (*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
700 }
N_INLINE(NI,minuspercent___system_716)701 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
702 NI result;
703 result = (NI)0;
704 result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
705 return result;
706 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5334)707 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5334)(void* usr) {
708 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
709 NI T1_;
710 result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
711 T1_ = (NI)0;
712 T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
713 result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
714 return result;
715 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)716 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
717 NIM_BOOL result;
718 result = (NIM_BOOL)0;
719 result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
720 return result;
721 }
N_INLINE(void,rtlAddZCT__system_5377)722 static N_INLINE(void, rtlAddZCT__system_5377)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
723 addZCT__system_5328((&gch__system_5281.zct), c);
724 }
N_INLINE(void,decRef__system_5379)725 static N_INLINE(void, decRef__system_5379)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
726 (*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
727 {
728 NIM_BOOL T3_;
729 T3_ = (NIM_BOOL)0;
730 T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
731 if (!T3_) goto LA4_;
732 rtlAddZCT__system_5377(c);
733 }
734 LA4_: ;
735 }
N_INLINE(void,asgnRef)736 static N_INLINE(void, asgnRef)(void** dest, void* src) {
737 {
738 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
739 if (!!((src == NIM_NIL))) goto LA3_;
740 T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
741 T5_ = usrToCell__system_5334(src);
742 incRef__system_5372(T5_);
743 }
744 LA3_: ;
745 {
746 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
747 if (!!(((*dest) == NIM_NIL))) goto LA8_;
748 T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
749 T10_ = usrToCell__system_5334((*dest));
750 decRef__system_5379(T10_);
751 }
752 LA8_: ;
753 (*dest) = src;
754 }
N_INLINE(void,nimSetMem__systemZmemory_7)755 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
756 void* T1_;
757 T1_ = (void*)0;
758 T1_ = memset(a, v, ((size_t) (size)));
759 }
N_INLINE(void,nimZeroMem)760 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
761 nimSetMem__systemZmemory_7(p, ((int) 0), size);
762 }
N_INLINE(void,nimCopyMem)763 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
764 void* T1_;
765 T1_ = (void*)0;
766 T1_ = memcpy(dest, source, ((size_t) (size)));
767 }
N_INLINE(void,copyMem__system_1727)768 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
769 nimCopyMem(dest, source, size);
770 }
N_INLINE(void,appendString)771 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
772 {
773 if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
774 copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
775 (*dest).Sup.len += (*src).Sup.len;
776 }
777 LA3_: ;
778 }
N_NIMCALL(void,processCmdLine__nim_16)779 N_LIB_PRIVATE N_NIMCALL(void, processCmdLine__nim_16)(tyEnum_TCmdLinePass__IiBn9cB6WYIMDHOT44O82wA pass, NimStringDesc* cmd, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config) {
780 tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg p;
781 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* T1_;
782 NI argsCount;
783 nimZeroMem((void*)(&p), sizeof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg));
784 p.Sup.m_type = (&NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_);
785 T1_ = NIM_NIL;
786 T1_ = NIM_NIL;
787 initOptParser__pureZparseopt_51(cmd, TM__6xNBOpPeN0DsJ34t7RoSng_3, T1_, NIM_TRUE, (&p));
788 argsCount = ((NI) 0);
789 asgnRef((void**) (&(*config).commandLine), setLengthStr((*config).commandLine, ((NI) 0)));
790 {
791 while (1) {
792 nponext((&p));
793 switch (p.kind) {
794 case ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 0):
795 {
796 goto LA2;
797 }
798 break;
799 case ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 2):
800 case ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 3):
801 {
802 NimStringDesc* T6_;
803 asgnRef((void**) (&(*config).commandLine), resizeString((*config).commandLine, 1));
804 appendString((*config).commandLine, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_4));
805 addCmdPrefix__cmdlinehelper_16((&(*config).commandLine), p.kind);
806 T6_ = NIM_NIL;
807 T6_ = nospquoteShell(p.key);
808 asgnRef((void**) (&(*config).commandLine), resizeString((*config).commandLine, (T6_ ? T6_->Sup.len : 0) + 0));
809 appendString((*config).commandLine, T6_);
810 {
811 NimStringDesc* T11_;
812 if (!(((NI) 0) < (p.val ? p.val->Sup.len : 0))) goto LA9_;
813 asgnRef((void**) (&(*config).commandLine), addChar((*config).commandLine, 58));
814 T11_ = NIM_NIL;
815 T11_ = nospquoteShell(p.val);
816 asgnRef((void**) (&(*config).commandLine), resizeString((*config).commandLine, (T11_ ? T11_->Sup.len : 0) + 0));
817 appendString((*config).commandLine, T11_);
818 }
819 LA9_: ;
820 {
821 if (!((p.key ? p.key->Sup.len : 0) == 0)) goto LA14_;
822 p.key = copyString(((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_5));
823 {
824 NIM_BOOL T18_;
825 T18_ = (NIM_BOOL)0;
826 T18_ = processArgument__commands_1508(pass, (&p), (&argsCount), config);
827 if (!T18_) goto LA19_;
828 goto LA2;
829 }
830 LA19_: ;
831 }
832 goto LA12_;
833 LA14_: ;
834 {
835 processSwitch__commands_1501(pass, (&p), config);
836 }
837 LA12_: ;
838 }
839 break;
840 case ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 1):
841 {
842 NimStringDesc* T23_;
843 asgnRef((void**) (&(*config).commandLine), resizeString((*config).commandLine, 1));
844 appendString((*config).commandLine, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_4));
845 T23_ = NIM_NIL;
846 T23_ = nospquoteShell(p.key);
847 asgnRef((void**) (&(*config).commandLine), resizeString((*config).commandLine, (T23_ ? T23_->Sup.len : 0) + 0));
848 appendString((*config).commandLine, T23_);
849 {
850 NIM_BOOL T26_;
851 T26_ = (NIM_BOOL)0;
852 T26_ = processArgument__commands_1508(pass, (&p), (&argsCount), config);
853 if (!T26_) goto LA27_;
854 goto LA2;
855 }
856 LA27_: ;
857 }
858 break;
859 }
860 }
861 } LA2: ;
862 {
863 if (!(pass == ((tyEnum_TCmdLinePass__IiBn9cB6WYIMDHOT44O82wA) 1))) goto LA31_;
864 {
865 NIM_BOOL T35_;
866 NIM_BOOL T36_;
867 T35_ = (NIM_BOOL)0;
868 T36_ = (NIM_BOOL)0;
869 T36_ = ((4100 & (*config).globalOptions) == 0);
870 if (!(T36_)) goto LA37_;
871 T36_ = (((NI) 0) < ((*config).arguments ? (*config).arguments->Sup.len : 0));
872 LA37_: ;
873 T35_ = T36_;
874 if (!(T35_)) goto LA38_;
875 T35_ = !(((4288 &((NU32)1<<((NU)((*config).cmd)&31U)))!=0));
876 LA38_: ;
877 if (!T35_) goto LA39_;
878 liMessage__msgs_1117(config, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_6), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__6xNBOpPeN0DsJ34t7RoSng_7, NIM_FALSE);
879 }
880 LA39_: ;
881 }
882 LA31_: ;
883 }
N_NIMCALL(NimStringDesc *,getNimRunExe__nim_38)884 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getNimRunExe__nim_38)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
885 NimStringDesc* result;
886 result = NIM_NIL;
887 {
888 NIM_BOOL T3_;
889 T3_ = (NIM_BOOL)0;
890 T3_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_11));
891 if (!T3_) goto LA4_;
892 {
893 NIM_BOOL T8_;
894 T8_ = (NIM_BOOL)0;
895 T8_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_12));
896 if (!T8_) goto LA9_;
897 result = copyString(((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_13));
898 }
899 goto LA6_;
900 LA9_: ;
901 {
902 NIM_BOOL T12_;
903 T12_ = (NIM_BOOL)0;
904 T12_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_14));
905 if (!T12_) goto LA13_;
906 result = copyString(((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_15));
907 }
908 goto LA6_;
909 LA13_: ;
910 LA6_: ;
911 }
912 LA4_: ;
913 return result;
914 }
N_INLINE(NimStringDesc *,findNodeJs__nodejs_2)915 static N_INLINE(NimStringDesc*, findNodeJs__nodejs_2)(void) {
916 NimStringDesc* result;
917 result = NIM_NIL;
918 result = findExe__pureZos_794(((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_16), NIM_TRUE, ExeExts__pureZos_793, 3);
919 {
920 if (!((result ? result->Sup.len : 0) == ((NI) 0))) goto LA3_;
921 result = findExe__pureZos_794(((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_17), NIM_TRUE, ExeExts__pureZos_793, 3);
922 }
923 LA3_: ;
924 {
925 tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw* T9_;
926 NimStringDesc* T10_;
927 if (!((result ? result->Sup.len : 0) == ((NI) 0))) goto LA7_;
928 echoBinSafe(TM__6xNBOpPeN0DsJ34t7RoSng_18, 1);
929 T9_ = NIM_NIL;
930 T9_ = (tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw*) newObj((&NTIrefioerror__HMIVdYjdZYWskTmTQVo5BQ_), sizeof(tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw));
931 (*T9_).Sup.Sup.Sup.m_type = (&NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_);
932 (*T9_).Sup.Sup.name = "IOError";
933 T10_ = NIM_NIL;
934 T10_ = rawNewString((result ? result->Sup.len : 0) + 26);
935 appendString(T10_, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_20));
936 appendString(T10_, result);
937 asgnRef((void**) (&(*T9_).Sup.Sup.message), T10_);
938 asgnRef((void**) (&(*T9_).Sup.Sup.parent), ((Exception*) NIM_NIL));
939 raiseExceptionEx((Exception*)T9_, "IOError", "findNodeJs", "nodejs.nim", 10);
940 }
941 LA7_: ;
942 return result;
943 }
N_INLINE(void,appendChar)944 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
945 (*dest).data[(*dest).Sup.len] = c;
946 (*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
947 (*dest).Sup.len += ((NI) 1);
948 }
N_NIMCALL(void,handleCmdLine__nim_41)949 N_LIB_PRIVATE N_NIMCALL(void, handleCmdLine__nim_41)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
950 tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg* self;
951 tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg* T1_;
952 tyProc__34NX3arOx349cB4sFiTD3uA T2_;
953 tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph;
954 { T1_ = NIM_NIL;
955 T1_ = (tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg*) newObj((&NTInimprog__oQuE3daAnIJJmmxLCZ80bA_), sizeof(tyObject_NimProgcolonObjectType___bzPe2PlnnyJH4wKrjRuvwg));
956 (*T1_).supportsStdinFile = NIM_TRUE;
957 nimZeroMem((void*)(&T2_), sizeof(tyProc__34NX3arOx349cB4sFiTD3uA));
958 T2_.ClP_0 = ((TM__6xNBOpPeN0DsJ34t7RoSng_9) (processCmdLine__nim_16)); T2_.ClE_0 = NIM_NIL;
959 asgnRef((void**) (&(*T1_).processCmdLine.ClE_0), T2_.ClE_0);
960 (*T1_).processCmdLine.ClP_0 = T2_.ClP_0;
961 self = T1_;
962 initDefinesProg__cmdlinehelper_28(self, conf, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_10));
963 {
964 NI T5_;
965 T5_ = (NI)0;
966 T5_ = nosparamCount();
967 if (!(T5_ == ((NI) 0))) goto LA6_;
968 writeCommandLineUsage__commands_169(conf);
969 goto BeforeRet_;
970 }
971 LA6_: ;
972 processCmdLineAndProjectPath__cmdlinehelper_32(self, conf);
973 graph = newModuleGraph__modulegraphs_9074(cache, conf);
974 {
975 NIM_BOOL T10_;
976 T10_ = (NIM_BOOL)0;
977 T10_ = loadConfigsAndProcessCmdLine__cmdlinehelper_43(self, cache, conf, graph);
978 if (!!(T10_)) goto LA11_;
979 goto BeforeRet_;
980 }
981 LA11_: ;
982 mainCommand__main_500(graph);
983 {
984 NIM_BOOL T15_;
985 tyArray__nHXaesL0DJZHyVS07ARPRA T18_;
986 T15_ = (NIM_BOOL)0;
987 T15_ = hasHint__options_517(conf, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 95));
988 if (!T15_) goto LA16_;
989 nimZeroMem((void*)T18_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
990 T18_[0] = GC_getStatistics__system_2268();
991 echoBinSafe(T18_, 1);
992 }
993 LA16_: ;
994 {
995 if (!!(((*conf).errorCounter == ((NI) 0)))) goto LA21_;
996 goto BeforeRet_;
997 }
998 LA21_: ;
999 {
1000 NimStringDesc* output;
1001 if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 12))&63U)))!=0)) goto LA25_;
1002 output = absOutFile__options_4038(conf);
1003 switch ((*conf).cmd) {
1004 case ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 2) ... ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 6):
1005 case ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 7):
1006 {
1007 NimStringDesc* nimRunExe;
1008 NimStringDesc* cmdPrefix;
1009 NimStringDesc* T50_;
1010 NimStringDesc* T51_;
1011 nimRunExe = getNimRunExe__nim_38(conf);
1012 cmdPrefix = NIM_NIL;
1013 {
1014 NimStringDesc* T32_;
1015 if (!(((NI) 0) < (nimRunExe ? nimRunExe->Sup.len : 0))) goto LA30_;
1016 T32_ = NIM_NIL;
1017 T32_ = nospquoteShell(nimRunExe);
1018 cmdPrefix = resizeString(cmdPrefix, (T32_ ? T32_->Sup.len : 0) + 0);
1019 appendString(cmdPrefix, T32_);
1020 }
1021 LA30_: ;
1022 switch ((*conf).backend) {
1023 case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 1):
1024 case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2):
1025 case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 4):
1026 {
1027 }
1028 break;
1029 case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 3):
1030 {
1031 {
1032 NimStringDesc* T39_;
1033 if (!((cmdPrefix ? cmdPrefix->Sup.len : 0) == ((NI) 0))) goto LA37_;
1034 T39_ = NIM_NIL;
1035 T39_ = findNodeJs__nodejs_2();
1036 cmdPrefix = nospquoteShell(T39_);
1037 }
1038 LA37_: ;
1039 cmdPrefix = resizeString(cmdPrefix, 30);
1040 appendString(cmdPrefix, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_21));
1041 }
1042 break;
1043 default:
1044 {
1045 {
1046 NimStringDesc* T45_;
1047 if (!NIM_TRUE) goto LA43_;
1048 T45_ = NIM_NIL;
1049 T45_ = rawNewString((reprEnum((NI)(*conf).backend, (&NTItbackend__4OBsgZ9cscH2JLUE5Wcz01g_)) ? reprEnum((NI)(*conf).backend, (&NTItbackend__4OBsgZ9cscH2JLUE5Wcz01g_))->Sup.len : 0) + 25);
1050 appendString(T45_, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_22));
1051 appendString(T45_, reprEnum((NI)(*conf).backend, (&NTItbackend__4OBsgZ9cscH2JLUE5Wcz01g_)));
1052 failedAssertImpl__systemZassertions_56(T45_);
1053 }
1054 LA43_: ;
1055 }
1056 break;
1057 }
1058 {
1059 if (!(((NI) 0) < (cmdPrefix ? cmdPrefix->Sup.len : 0))) goto LA48_;
1060 cmdPrefix = resizeString(cmdPrefix, 1);
1061 appendString(cmdPrefix, ((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_4));
1062 }
1063 LA48_: ;
1064 T50_ = NIM_NIL;
1065 T51_ = NIM_NIL;
1066 T51_ = nospquoteShell(output);
1067 T50_ = rawNewString((cmdPrefix ? cmdPrefix->Sup.len : 0) + (T51_ ? T51_->Sup.len : 0) + ((*conf).arguments ? (*conf).arguments->Sup.len : 0) + 1);
1068 appendString(T50_, cmdPrefix);
1069 appendString(T50_, T51_);
1070 appendChar(T50_, 32);
1071 appendString(T50_, (*conf).arguments);
1072 execExternalProgram__extccomp_808(conf, T50_, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 89));
1073 }
1074 break;
1075 case ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 13) ... ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 15):
1076 case ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 16):
1077 case ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 17):
1078 case ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 18) ... ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 21):
1079 {
1080 NimStringDesc* T59_;
1081 {
1082 tyArray__nHXaesL0DJZHyVS07ARPRA T57_;
1083 NimStringDesc* T58_;
1084 if (!(((NI) 0) < ((*conf).arguments ? (*conf).arguments->Sup.len : 0))) goto LA55_;
1085 nimZeroMem((void*)T57_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
1086 T57_[0] = reprEnum((NI)(*conf).cmd, (&NTIcommand__0zjcIQ623TIRGPdtjLwTFA_));
1087 T58_ = NIM_NIL;
1088 T58_ = nsuFormatOpenArray(((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_23), T57_, 1);
1089 liMessage__msgs_1117(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T58_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__6xNBOpPeN0DsJ34t7RoSng_24, NIM_FALSE);
1090 }
1091 LA55_: ;
1092 T59_ = NIM_NIL;
1093 T59_ = dollar___options_4364(output);
1094 openDefaultBrowser__pureZbrowsers_13(T59_);
1095 }
1096 break;
1097 default:
1098 {
1099 tyArray__nHXaesL0DJZHyVS07ARPRA T61_;
1100 NimStringDesc* T62_;
1101 nimZeroMem((void*)T61_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
1102 T61_[0] = reprEnum((NI)(*conf).cmd, (&NTIcommand__0zjcIQ623TIRGPdtjLwTFA_));
1103 T62_ = NIM_NIL;
1104 T62_ = nsuFormatOpenArray(((NimStringDesc*) &TM__6xNBOpPeN0DsJ34t7RoSng_25), T61_, 1);
1105 liMessage__msgs_1117(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T62_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__6xNBOpPeN0DsJ34t7RoSng_26, NIM_FALSE);
1106 }
1107 break;
1108 }
1109 }
1110 LA25_: ;
1111 }BeforeRet_: ;
1112 }
N_INLINE(void,initStackBottomWith)1113 static N_INLINE(void, initStackBottomWith)(void* locals) {
1114 nimGC_setStackBottom(locals);
1115 }
1116
PreMainInner(void)1117 N_LIB_PRIVATE void PreMainInner(void) {
1118 stdlib_ioInit000();
1119 stdlib_winleanInit000();
1120 stdlib_timesInit000();
1121 stdlib_osInit000();
1122 stdlib_terminalInit000();
1123 compiler_ropesInit000();
1124 compiler_astInit000();
1125 compiler_sourcemapInit000();
1126 }
1127
1128 N_LIB_PRIVATE int cmdCount;
1129 N_LIB_PRIVATE char** cmdLine;
1130 N_LIB_PRIVATE char** gEnv;
PreMain(void)1131 N_LIB_PRIVATE void PreMain(void) {
1132 void (*volatile inner)(void);
1133 inner = PreMainInner;
1134 stdlib_widestrsDatInit000();
1135 stdlib_ioDatInit000();
1136 systemDatInit000();
1137 initStackBottomWith((void *)&inner);
1138 systemInit000();
1139 stdlib_strutilsDatInit000();
1140 stdlib_winleanDatInit000();
1141 stdlib_timesDatInit000();
1142 stdlib_win_setenvDatInit000();
1143 stdlib_osDatInit000();
1144 stdlib_parseoptDatInit000();
1145 stdlib_strtabsDatInit000();
1146 stdlib_terminalDatInit000();
1147 compiler_ropesDatInit000();
1148 compiler_lineinfosDatInit000();
1149 compiler_platformDatInit000();
1150 compiler_prefixmatchesDatInit000();
1151 compiler_optionsDatInit000();
1152 stdlib_streamsDatInit000();
1153 stdlib_cpuinfoDatInit000();
1154 stdlib_osprocDatInit000();
1155 stdlib_lexbaseDatInit000();
1156 stdlib_parsejsonDatInit000();
1157 stdlib_jsonDatInit000();
1158 compiler_extccompDatInit000();
1159 compiler_wordrecgDatInit000();
1160 compiler_nimblecmdDatInit000();
1161 compiler_identsDatInit000();
1162 compiler_astDatInit000();
1163 compiler_llstreamDatInit000();
1164 compiler_nimlexbaseDatInit000();
1165 compiler_lexerDatInit000();
1166 compiler_parserDatInit000();
1167 compiler_rendererDatInit000();
1168 compiler_syntaxesDatInit000();
1169 stdlib_packedsetsDatInit000();
1170 compiler_astalgoDatInit000();
1171 stdlib_md5DatInit000();
1172 compiler_rodfilesDatInit000();
1173 compiler_packed_astDatInit000();
1174 compiler_icDatInit000();
1175 compiler_modulegraphsDatInit000();
1176 compiler_typesDatInit000();
1177 compiler_vmdefDatInit000();
1178 compiler_semdataDatInit000();
1179 compiler_lookupsDatInit000();
1180 compiler_conceptsDatInit000();
1181 compiler_semtypinstDatInit000();
1182 compiler_sigmatchDatInit000();
1183 compiler_importerDatInit000();
1184 compiler_pragmasDatInit000();
1185 compiler_reorderDatInit000();
1186 compiler_guardsDatInit000();
1187 compiler_varpartitionsDatInit000();
1188 compiler_nilcheckDatInit000();
1189 compiler_sighashesDatInit000();
1190 compiler_ndiDatInit000();
1191 compiler_cgendataDatInit000();
1192 compiler_lambdaliftingDatInit000();
1193 compiler_closureitersDatInit000();
1194 compiler_transfDatInit000();
1195 compiler_vmgenDatInit000();
1196 compiler_vmmarshalDatInit000();
1197 compiler_vmDatInit000();
1198 compiler_patternsDatInit000();
1199 compiler_semDatInit000();
1200 compiler_dfaDatInit000();
1201 compiler_injectdestructorsDatInit000();
1202 compiler_semparallelDatInit000();
1203 compiler_cgenDatInit000();
1204 compiler_scriptconfigDatInit000();
1205 compiler_nimconfDatInit000();
1206 compiler_passauxDatInit000();
1207 compiler_dependsDatInit000();
1208 compiler_dceDatInit000();
1209 compiler_integrityDatInit000();
1210 compiler_sourcemapDatInit000();
1211 compiler_jsgenDatInit000();
1212 stdlib_rstastDatInit000();
1213 stdlib_highliteDatInit000();
1214 stdlib_rstDatInit000();
1215 stdlib_rstgenDatInit000();
1216 compiler_docgenDatInit000();
1217 compiler_docgen2DatInit000();
1218 compiler_mainDatInit000();
1219 compiler_cmdlinehelperDatInit000();
1220 (*inner)();
1221 }
1222
N_CDECL(void,NimMainInner)1223 N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {
1224 NimMainModule();
1225 }
1226
N_CDECL(void,NimMain)1227 N_CDECL(void, NimMain)(void) {
1228 void (*volatile inner)(void);
1229 PreMain();
1230 inner = NimMainInner;
1231 initStackBottomWith((void *)&inner);
1232 (*inner)();
1233 }
1234
main(int argc,char ** args,char ** env)1235 int main(int argc, char** args, char** env) {
1236 cmdLine = args;
1237 cmdCount = argc;
1238 gEnv = env;
1239 NimMain();
1240 return nim_program_result;
1241 }
1242
N_NIMCALL(void,NimMainModule)1243 N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void) {
1244 {
1245 TFrame FR_; FR_.len = 0;
1246
1247 nimRegisterGlobalMarker(TM__6xNBOpPeN0DsJ34t7RoSng_2);
1248
1249 }/* preInitProc end */
1250 {
1251 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* T1_;
1252 GC_disableMarkAndSweep__system_2267();
1253 asgnRef((void**) (&conf__nim_106), newConfigRef__options_2320());
1254 T1_ = NIM_NIL;
1255 T1_ = newIdentCache__idents_152();
1256 handleCmdLine__nim_41(T1_, conf__nim_106);
1257 msgQuit__msgs_442(((NI8) ((((NI) 0) < (*conf__nim_106).errorCounter))));
1258 }
1259 }
1260
1261