1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3 
4 #include "nimbase.h"
5 #include <string.h>
6 #include <setjmp.h>
7 #include <stdio.h>
8 #include <glob.h>
9 #undef LANGUAGE_C
10 #undef MIPSEB
11 #undef MIPSEL
12 #undef PPC
13 #undef R3000
14 #undef R4000
15 #undef i386
16 #undef linux
17 #undef mips
18 #undef near
19 #undef far
20 #undef powerpc
21 #undef unix
22 #define nimfr_(x, y)
23 #define nimln_(x, y)
24 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
25 typedef struct NimStringDesc NimStringDesc;
26 typedef struct TGenericSeq TGenericSeq;
27 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
28 typedef struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tyTuple__7q7q3E6Oj24ZNVJb9aonhAg;
29 typedef struct tyTuple__yByxe8FSFNTgs4tcAkTYag tyTuple__yByxe8FSFNTgs4tcAkTYag;
30 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
31 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
32 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
33 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
34 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
35 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
36 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
37 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
38 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
39 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
40 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
41 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
42 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
43 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
44 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
45 typedef struct tyTuple__5L3fCt9bX0gyEcO30ervPLw tyTuple__5L3fCt9bX0gyEcO30ervPLw;
46 typedef struct tyTuple__eCO8mA2VZCpG2fD1wGsc8Q tyTuple__eCO8mA2VZCpG2fD1wGsc8Q;
47 typedef struct TNimType TNimType;
48 typedef struct TNimNode TNimNode;
49 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
50 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
51 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
52 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
53 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
54 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
55 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
56 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
57 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
58 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
59 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
60 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
61 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
62 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
63 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
64 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
65 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
66 typedef struct tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw;
67 typedef struct tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog;
68 typedef struct tySequence__4eQHGndY6XBYpFOH09apV8Q tySequence__4eQHGndY6XBYpFOH09apV8Q;
69 typedef struct Exception Exception;
70 typedef struct RootObj RootObj;
71 typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
72 typedef struct TSafePoint TSafePoint;
73 typedef struct tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q;
74 typedef struct tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ;
75 typedef struct tyTuple__jq7X5k7hWG0tdTZTDkiyGQ tyTuple__jq7X5k7hWG0tdTZTDkiyGQ;
76 typedef struct tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg;
77 typedef struct tySequence__MlAD6nAPq9bHKla9cWiIZP0g tySequence__MlAD6nAPq9bHKla9cWiIZP0g;
78 typedef struct tySequence__oLpBKXzW3hF9aCVMo5EymfQ tySequence__oLpBKXzW3hF9aCVMo5EymfQ;
79 typedef struct tyTuple__d8cOxWret6fRDupvUsyoyw tyTuple__d8cOxWret6fRDupvUsyoyw;
80 typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA;
81 typedef struct tyTuple__awOivLjlO76sGdHY7nQUjQ tyTuple__awOivLjlO76sGdHY7nQUjQ;
82 typedef struct tyTuple__YOdO3R1J4biIW9bY9agwbAQw tyTuple__YOdO3R1J4biIW9bY9agwbAQw;
83 typedef struct tyTuple__XOVT24GHXwqiEj5GCsEGCA tyTuple__XOVT24GHXwqiEj5GCsEGCA;
84 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
85 typedef struct tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg;
86 typedef struct tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg;
87 typedef struct tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg;
88 typedef struct tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA;
89 typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
90 typedef struct tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw;
91 typedef struct tyObject_TimezonecolonObjectType___F8OvqlxXyGXRSiK9c1fCDVw tyObject_TimezonecolonObjectType___F8OvqlxXyGXRSiK9c1fCDVw;
92 typedef struct tyObject_TimeFormat__Nsh4TB3AD6ERMz3D74BTxA tyObject_TimeFormat__Nsh4TB3AD6ERMz3D74BTxA;
93 typedef struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ tySequence__6H5Oh5UUvVCLiakt9aTwtUQ;
94 typedef struct tyObject_DateTimeLocale__uNv3Dc4hHpAREXnLVqGWZQ tyObject_DateTimeLocale__uNv3Dc4hHpAREXnLVqGWZQ;
95 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
96 typedef struct tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ;
97 typedef struct tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg;
98 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
99 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
100 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
101 typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
102 struct TGenericSeq {
103 NI len;
104 NI reserved;
105 };
106 struct NimStringDesc {
107   TGenericSeq Sup;
108 NIM_CHAR data[SEQ_DECL_SIZE];
109 };
110 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
111 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
112 NimStringDesc* nimname;
113 NimStringDesc* cname;
114 NimStringDesc* obj;
115 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
116 NimStringDesc* customArgs;
117 };
118 struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg {
119 NimStringDesc* Field0;
120 NimStringDesc* Field1;
121 NimStringDesc* Field2;
122 };
123 typedef NU8 tySet_tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg;
124 struct tyTuple__yByxe8FSFNTgs4tcAkTYag {
125 NimStringDesc* Field0;
126 NimStringDesc* Field1;
127 NimStringDesc* Field2;
128 NimStringDesc* Field3;
129 NimStringDesc* Field4;
130 NimStringDesc* Field5;
131 NimStringDesc* Field6;
132 NimStringDesc* Field7;
133 NimStringDesc* Field8;
134 NimStringDesc* Field9;
135 NimStringDesc* Field10;
136 NimStringDesc* Field11;
137 NimStringDesc* Field12;
138 NimStringDesc* Field13;
139 NimStringDesc* Field14;
140 NimStringDesc* Field15;
141 NimStringDesc* Field16;
142 NimStringDesc* Field17;
143 NimStringDesc* Field18;
144 NimStringDesc* Field19;
145 NimStringDesc* Field20;
146 tySet_tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg Field21;
147 };
148 typedef tyTuple__yByxe8FSFNTgs4tcAkTYag tyArray__sa9aJ6U8e9b7Bj4Yq8itsR8w[11];
149 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
150 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
151 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
152 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
153 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
154 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
155 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
156 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
157 NI intSize;
158 NI floatSize;
159 NI ptrSize;
160 NimStringDesc* tnl;
161 };
162 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
163 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
164 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
165 NU16 line;
166 NI16 col;
167 NI32 fileIndex;
168 };
169 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
170 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
171 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
172 NI counter;
173 };
174 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
175 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
176 NIM_BOOL trackPosAttached;
177 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
178 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
179 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
180 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
181 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
182 NI32 systemFileIdx;
183 };
184 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
185 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
186 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
187 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
188 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
189 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
190 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
191 NI counter;
192 };
193 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
194 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
195 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
196 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
197 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
198 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
199 NI Field0;
200 NI Field1;
201 NI Field2;
202 };
203 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
204 typedef struct {
205 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
206 void* ClE_0;
207 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
208 typedef struct {
209 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
210 void* ClE_0;
211 } tyProc__k2HFjxisIgDALbEUFojxaQ;
212 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
213 typedef struct {
214 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
215 void* ClE_0;
216 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
217 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
218 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
219 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
220 NI linesCompiled;
221 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
222 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
223 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
224 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
225 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
226 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
227 NimStringDesc* unitSep;
228 NI evalTemplateCounter;
229 NI evalMacroCounter;
230 NI8 exitcode;
231 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
232 NimStringDesc* cmdInput;
233 NIM_BOOL projectIsCmd;
234 NIM_BOOL implicitCmd;
235 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
236 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
237 NIM_BOOL hintProcessingDots;
238 NI verbosity;
239 NI numberOfProcessors;
240 NF lastCmdTime;
241 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
242 NI spellSuggestMax;
243 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
244 NimStringDesc* headerFile;
245 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
246 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
247 NimStringDesc* arguments;
248 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
249 NIM_BOOL oldNewlines;
250 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
251 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
252 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
253 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
254 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
255 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
256 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
257 NI mainPackageId;
258 NI errorCounter;
259 NI hintCounter;
260 NI warnCounter;
261 NI errorMax;
262 NI maxLoopIterationsVM;
263 NIM_BOOL isVmTrace;
264 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
265 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
266 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
267 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
268 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
269 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
270 NimStringDesc* outFile;
271 NimStringDesc* outDir;
272 NimStringDesc* jsonBuildFile;
273 NimStringDesc* prefixDir;
274 NimStringDesc* libpath;
275 NimStringDesc* nimcacheDir;
276 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
277 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
278 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
279 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
280 NimStringDesc* projectName;
281 NimStringDesc* projectPath;
282 NimStringDesc* projectFull;
283 NIM_BOOL projectIsStdin;
284 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
285 NI32 projectMainIdx;
286 NI32 projectMainIdx2;
287 NimStringDesc* command;
288 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
289 NimStringDesc* commandLine;
290 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
291 NIM_BOOL keepComments;
292 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
293 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
294 NimStringDesc* docSeeSrcUrl;
295 NimStringDesc* docRoot;
296 NimStringDesc* docCmd;
297 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
298 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
299 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
300 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
301 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
302 NimStringDesc* linkOptionsCmd;
303 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
304 NimStringDesc* linkOptions;
305 NimStringDesc* compileOptions;
306 NimStringDesc* cCompilerPath;
307 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
308 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
309 NI suggestVersion;
310 NI suggestMaxResults;
311 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
312 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
313 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
314 NimStringDesc* cppCustomNamespace;
315 NimStringDesc* nimMainPrefix;
316 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
317 };
318 typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
319 typedef NU8 tyArray__YtcvxHNKV4YiecPE9ap1mcA[20];
320 typedef NU8 tySet_tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg;
321 struct tyTuple__5L3fCt9bX0gyEcO30ervPLw {
322 NimStringDesc* Field0;
323 NimStringDesc* Field1;
324 NimStringDesc* Field2;
325 NimStringDesc* Field3;
326 NimStringDesc* Field4;
327 NimStringDesc* Field5;
328 NimStringDesc* Field6;
329 NimStringDesc* Field7;
330 NimStringDesc* Field8;
331 NimStringDesc* Field9;
332 NimStringDesc* Field10;
333 NimStringDesc* Field11;
334 tySet_tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg Field12;
335 };
336 typedef tyTuple__5L3fCt9bX0gyEcO30ervPLw tyArray__VbVuAPt8GSIPhx9amVJ0MyA[32];
337 typedef NU8 tyEnum_Endianness__0BVYNY0K9cz7BUPI3AnbEQw;
338 struct tyTuple__eCO8mA2VZCpG2fD1wGsc8Q {
339 NimStringDesc* Field0;
340 NI Field1;
341 tyEnum_Endianness__0BVYNY0K9cz7BUPI3AnbEQw Field2;
342 NI Field3;
343 NI Field4;
344 };
345 typedef tyTuple__eCO8mA2VZCpG2fD1wGsc8Q tyArray__9cwFB2SXj9aw9cyLiDbvSiBEg[26];
346 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
347 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
348 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
349 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
350 struct TNimType {
351 NI size;
352 NI align;
353 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
354 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
355 TNimType* base;
356 TNimNode* node;
357 void* finalizer;
358 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
359 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
360 };
361 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
362 struct TNimNode {
363 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
364 NI offset;
365 TNimType* typ;
366 NCSTRING name;
367 NI len;
368 TNimNode** sons;
369 };
370 typedef NU8 tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
371 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
372 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
373 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
374 NimStringDesc* Field0;
375 NI Field1;
376 NI Field2;
377 };
378 typedef NU8 tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg;
379 typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2];
380 typedef NU8 tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
381 typedef NimStringDesc* tyArray__rmMMhDIqORJzUU5zqeitSQ[16];
382 typedef NimStringDesc* tyArray__68WB4OcBspSFyW4LY9cOceA[18];
383 typedef NU8 tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg;
384 typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
385 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
386 NI refcount;
387 TNimType* typ;
388 };
389 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
390 void* bottom;
391 };
392 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
393 NI len;
394 NI cap;
395 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
396 };
397 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
398 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
399 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
400 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
401 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
402 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
403 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
404 };
405 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
406 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
407 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
408 NI key;
409 NI upperBound;
410 NI level;
411 };
412 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
413 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
414 NI Field1;
415 };
416 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
417 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
418 NI len;
419 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
420 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
421 };
422 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
423 NI minLargeObj;
424 NI maxLargeObj;
425 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
426 NU32 flBitmap;
427 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
428 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
429 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
430 NI currMem;
431 NI maxMem;
432 NI freeMem;
433 NI occ;
434 NI lastSize;
435 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
436 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
437 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
438 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
439 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
440 NIM_BOOL locked;
441 NIM_BOOL blockChunkSizeIncrease;
442 NI nextChunkSize;
443 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
444 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
445 };
446 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
447 NI stackScans;
448 NI cycleCollections;
449 NI maxThreshold;
450 NI maxStackSize;
451 NI maxStackCells;
452 NI cycleTableSize;
453 NI64 maxPause;
454 };
455 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
456 NI counter;
457 NI max;
458 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
459 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
460 };
461 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
462 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
463 NI cycleThreshold;
464 NI zctThreshold;
465 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
466 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
467 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
468 NI recGcLock;
469 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
470 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
471 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
472 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
473 NI gcThreadId;
474 };
475 struct tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw {
476 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ a;
477 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ b;
478 };
479 typedef NU8 tyEnum_TSystemCC__ZeHvrqzZ3PwBFstnv8kDYg;
480 struct tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog {
481 NimStringDesc* cacheVersion;
482 NimStringDesc* outputFile;
483 tySequence__4eQHGndY6XBYpFOH09apV8Q* compile;
484 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* link;
485 NimStringDesc* linkcmd;
486 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
487 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
488 NIM_BOOL stdinInput;
489 NIM_BOOL projectIsCmd;
490 NimStringDesc* cmdInput;
491 NimStringDesc* currentDir;
492 NimStringDesc* cmdline;
493 tySequence__4eQHGndY6XBYpFOH09apV8Q* depfiles;
494 NimStringDesc* nimexe;
495 };
496 struct RootObj {
497 TNimType* m_type;
498 };
499 struct Exception {
500   RootObj Sup;
501 Exception* parent;
502 NCSTRING name;
503 NimStringDesc* message;
504 tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
505 Exception* up;
506 };
507 struct TSafePoint {
508 TSafePoint* prev;
509 NI status;
510 jmp_buf context;
511 };
512 struct tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ {
513 NIM_BOOL allowExtraKeys;
514 NIM_BOOL allowMissingKeys;
515 };
516 struct tyTuple__jq7X5k7hWG0tdTZTDkiyGQ {
517 NimStringDesc* Field0;
518 tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* Field1;
519 };
520 typedef NU8 tyEnum_JsonNodeKind__RUngo7nCHe6O8aBGIcrhtg;
521 struct tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg {
522 tySequence__MlAD6nAPq9bHKla9cWiIZP0g* data;
523 NI counter;
524 NI first;
525 NI last;
526 };
527 struct tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q {
528 NIM_BOOL isUnquoted;
529 tyEnum_JsonNodeKind__RUngo7nCHe6O8aBGIcrhtg kind;
530 union{
531 struct {NimStringDesc* str;
532 } _kind_1;
533 struct {NI64 num;
534 } _kind_2;
535 struct {NF fnum;
536 } _kind_3;
537 struct {NIM_BOOL bval;
538 } _kind_4;
539 struct {tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg fields;
540 } _kind_6;
541 struct {tySequence__oLpBKXzW3hF9aCVMo5EymfQ* elems;
542 } _kind_7;
543 };
544 };
545 struct tyTuple__d8cOxWret6fRDupvUsyoyw {
546 NimStringDesc* Field0;
547 NimStringDesc* Field1;
548 tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* Field2;
549 };
550 struct tyTuple__UV3llMMYFckfui8YMBuUZA {
551 NimStringDesc* Field0;
552 NimStringDesc* Field1;
553 };
554 struct tyTuple__awOivLjlO76sGdHY7nQUjQ {
555 NI Field0;
556 NI Field1;
557 NimStringDesc* Field2;
558 tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* Field3;
559 };
560 struct tyTuple__YOdO3R1J4biIW9bY9agwbAQw {
561 NI Field0;
562 NI Field1;
563 NI Field2;
564 NimStringDesc* Field3;
565 tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* Field4;
566 };
567 struct tyTuple__XOVT24GHXwqiEj5GCsEGCA {
568 NimStringDesc* Field0;
569 NI Field1;
570 };
571 typedef NU8 tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA;
572 struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA {
573   RootObj Sup;
574 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* left;
575 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* right;
576 NI L;
577 NimStringDesc* data;
578 };
579 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__JiWwrsTRC6xqNlGcBthSVA[1];
580 struct tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg {
581   RootObj Sup;
582 NI colonstate_;
583 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* prettyCmds1;
584 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf2;
585 };
586 typedef struct {
587 N_NIMCALL_PTR(void, ClP_0) (NI idx, void* ClE_0);
588 void* ClE_0;
589 } tyProc__SqRJqa5aOiKB4EuKlKh9asA;
590 typedef NU8 tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug;
591 struct tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg {
592   RootObj Sup;
593 NI colonstate_;
594 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf1;
595 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cmds2;
596 };
597 typedef struct {
598 N_NIMCALL_PTR(void, ClP_0) (NI idx, tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p, void* ClE_0);
599 void* ClE_0;
600 } tyProc__oudJckli4GdxAXLVzBBlAw;
601 struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
602   Exception Sup;
603 };
604 struct tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA {
605   tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
606 NI32 errorCode;
607 };
608 typedef NimStringDesc* tyArray__sMpvt1sOxOJ3LFGulnbeMQ[4];
609 typedef NU8 tyEnum_WeekDay__SVfemTA9aCOyua2TJYa6yBg;
610 struct tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw {
611   RootObj Sup;
612 NI nanosecond;
613 NI second;
614 NI minute;
615 NI hour;
616 NI monthdayZero;
617 NI monthZero;
618 NI year;
619 tyEnum_WeekDay__SVfemTA9aCOyua2TJYa6yBg weekday;
620 NI yearday;
621 NIM_BOOL isDst;
622 tyObject_TimezonecolonObjectType___F8OvqlxXyGXRSiK9c1fCDVw* timezone;
623 NI utcOffset;
624 };
625 struct tyObject_TimeFormat__Nsh4TB3AD6ERMz3D74BTxA {
626 tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* patterns;
627 NimStringDesc* formatStr;
628 };
629 typedef NimStringDesc* tyArray__3hurAvNmIXWWeqMzKryr2A[12];
630 typedef NimStringDesc* tyArray__O9c55L7dGQruaGz5nJ2r4rA[7];
631 struct tyObject_DateTimeLocale__uNv3Dc4hHpAREXnLVqGWZQ {
632 tyArray__3hurAvNmIXWWeqMzKryr2A MMM;
633 tyArray__3hurAvNmIXWWeqMzKryr2A MMMM;
634 tyArray__O9c55L7dGQruaGz5nJ2r4rA ddd;
635 tyArray__O9c55L7dGQruaGz5nJ2r4rA dddd;
636 };
637 typedef NCSTRING tyUncheckedArray__nvS6J9clHMUMHfoZd8Ad2zg[1];
638 typedef struct {
639 N_NIMCALL_PTR(NimStringDesc*, ClP_0) (NimStringDesc* x, void* ClE_0);
640 void* ClE_0;
641 } tyProc__oFHfEKFsiYTMAy9a42cSiKw;
642 typedef N_CLOSURE_PTR(NimStringDesc*, TM__OyL9acDBDoBfMwa5zb1Y88w_204) (NimStringDesc* x);
643 typedef N_CLOSURE_PTR(NimStringDesc*, TM__OyL9acDBDoBfMwa5zb1Y88w_206) (NimStringDesc* x, void* ClE_0);
644 typedef NU8 tySet_tyEnum_CopyFlag__pdzel23GjJ9cPFw8c5ldeRA;
645 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
646 NimStringDesc* fullPath;
647 NimStringDesc* projPath;
648 NimStringDesc* shortName;
649 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
650 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
651 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
652 NimStringDesc* dirtyFile;
653 NimStringDesc* hash;
654 NIM_BOOL dirty;
655 };
656 typedef NU8 tyEnum_EnumMode__VBQLiQclXYpinosAjWkfrg;
657 typedef NU8 tyEnum_JsonNodeMode__UTXRaEPTjXpNdVaD9bbN0bQ;
658 struct tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ {
659 tyEnum_EnumMode__VBQLiQclXYpinosAjWkfrg enumMode;
660 tyEnum_JsonNodeMode__UTXRaEPTjXpNdVaD9bbN0bQ jsonNodeMode;
661 };
662 struct tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg {
663   RootObj Sup;
664 NI colonstate_;
665 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* prettyCmds1;
666 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf2;
667 };
668 typedef NimStringDesc* tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
669 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
670 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
671 NimStringDesc* Field1;
672 };
673 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
674 NI Field0;
675 NimStringDesc* Field1;
676 NI32 Field2;
677 };
678 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
679 NI Field0;
680 NimStringDesc* Field1;
681 };
682 struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
683 NCSTRING procname;
684 NI line;
685 NCSTRING filename;
686 };
687 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
688   TGenericSeq Sup;
689   tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
690 };
691 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
692   TGenericSeq Sup;
693   NimStringDesc* data[SEQ_DECL_SIZE];
694 };
695 struct tySequence__4eQHGndY6XBYpFOH09apV8Q {
696   TGenericSeq Sup;
697   tyTuple__UV3llMMYFckfui8YMBuUZA data[SEQ_DECL_SIZE];
698 };
699 struct tySequence__oLpBKXzW3hF9aCVMo5EymfQ {
700   TGenericSeq Sup;
701   tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* data[SEQ_DECL_SIZE];
702 };
703 struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ {
704   TGenericSeq Sup;
705   NU8 data[SEQ_DECL_SIZE];
706 };
707 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
708   TGenericSeq Sup;
709   tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
710 };
711 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
712   TGenericSeq Sup;
713   tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
714 };
715 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
716   TGenericSeq Sup;
717   tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
718 };
719 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
720   TGenericSeq Sup;
721   tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
722 };
723 struct tySequence__uB9b75OUPRENsBAu4AnoePA {
724   TGenericSeq Sup;
725   tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
726 };
727 struct tySequence__MlAD6nAPq9bHKla9cWiIZP0g {
728   TGenericSeq Sup;
729   tyTuple__awOivLjlO76sGdHY7nQUjQ data[SEQ_DECL_SIZE];
730 };
731 static N_INLINE(void, nimZeroMem)(void* p, NI size);
732 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
733 N_LIB_PRIVATE N_NIMCALL(void, splitFile__pathutils_26)(NimStringDesc* x, tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* Result);
734 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
735 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toObjFile__extccomp_718)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename);
736 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
737 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
738 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
739 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
740 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, completeCfilePath__extccomp_713)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile, NIM_BOOL createSubDir);
741 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, completeGeneratedFilePath__options_4240)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* f, NIM_BOOL createSubDir);
742 N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToCompile__extccomp_1066)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* c);
743 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringDesc* filename);
744 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, externalFileChanged__extccomp_1050)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile);
745 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toGeneratedFile__options_4235)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* path, NimStringDesc* ext);
746 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, withPackageName__options_4173)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* path);
747 N_LIB_PRIVATE N_NIMCALL(void, footprint__extccomp_1046)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
748 N_LIB_PRIVATE N_NIMCALL(void, secureHash__stdZsha49_840)(NIM_CHAR* str, NI strLen_0, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
749 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___stdZsha49_879)(tyArray__YtcvxHNKV4YiecPE9ap1mcA self);
750 N_LIB_PRIVATE N_NIMCALL(void, secureHashFile__stdZsha49_871)(NimStringDesc* filename, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
751 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompileCFileCmd__extccomp_997)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile, NIM_BOOL isMainFile, NIM_BOOL produceOutput);
752 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cFileSpecificOptions__extccomp_844)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* nimname, NimStringDesc* fullNimFile);
753 N_LIB_PRIVATE N_NIMCALL(NI, nsuFindStr)(NimStringDesc* s, NimStringDesc* sub, NI start, NI last);
754 N_LIB_PRIVATE N_NIMCALL(void, addOpt__extccomp_687)(NimStringDesc** dest, NimStringDesc* src);
755 static N_INLINE(NIM_CHAR*, X5BX5D___system_7372)(NimStringDesc** s, NI i);
756 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
757 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
758 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, existsConfigVar__options_4015)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* key);
759 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getConfigVar__options_4019)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* key, NimStringDesc* default_0);
760 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getDebug__extccomp_823)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c);
761 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getConfigVar__extccomp_627)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c, NimStringDesc* suffix);
762 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
763 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
764 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOptSpeed__extccomp_819)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c);
765 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOptSize__extccomp_827)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c);
766 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOrDefault__pureZstrtabs_173)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringDesc* key, NimStringDesc* default_0);
767 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, noschangeFileExt)(NimStringDesc* filename, NimStringDesc* ext);
768 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, useCpp__extccomp_906)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile);
769 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringDesc* s, NimStringDesc* suffix);
770 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompilerExe__extccomp_921)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA compiler, NimStringDesc* cfile);
771 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getEnv__pureZos_418)(NimStringDesc* key, NimStringDesc* default_0);
772 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);
773 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
774 static N_INLINE(NIM_BOOL, needsExeExt__extccomp_891)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
775 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosaddFileExt)(NimStringDesc* filename, NimStringDesc* ext);
776 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hcrOn__options_569)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
777 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
778 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nospquoteShell)(NimStringDesc* s);
779 static N_INLINE(NIM_BOOL, noAbsolutePaths__extccomp_831)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
780 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuJoinSep)(NimStringDesc** a, NI aLen_0, NimStringDesc* sep);
781 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosjoinPath)(NimStringDesc* head, NimStringDesc* tail);
782 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosextractFilename)(NimStringDesc* path);
783 static N_INLINE(NIM_BOOL, isEmpty__options_4495)(NimStringDesc* x);
784 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
785 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getPrefixDir__options_4061)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
786 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, envFlags__extccomp_914)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
787 N_LIB_PRIVATE N_NIMCALL(void, nsuAddf)(NimStringDesc** s, NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
788 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, vccplatform__extccomp_872)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
789 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
790 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
791 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
792 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, open__systemZio_391)(FILE** f, NimStringDesc* filename, tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg mode, NI bufSize);
793 N_LIB_PRIVATE N_NIMCALL(void, parseSecureHash__stdZsha49_912)(NimStringDesc* hash, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
794 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, readLine__systemZio_273)(FILE* f);
795 N_LIB_PRIVATE N_NIMCALL(void, close__systemZio_218)(FILE* f);
796 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___stdZsha49_920)(tyArray__YtcvxHNKV4YiecPE9ap1mcA a, tyArray__YtcvxHNKV4YiecPE9ap1mcA b);
797 static N_INLINE(void, writeLine__msgs_432)(FILE* f, NimStringDesc** x, NI xLen_0);
798 N_LIB_PRIVATE N_NIMCALL(void, write__systemZio_205)(FILE* f, NimStringDesc* s);
799 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nostryRemoveFile)(NimStringDesc* file);
800 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
801 static N_INLINE(void, asgnRef)(void** dest, void* src);
802 static N_INLINE(void, incRef__system_5317)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
803 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
804 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5279)(void* usr);
805 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
806 static N_INLINE(void, decRef__system_5324)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
807 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
808 static N_INLINE(void, rtlAddZCT__system_5322)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
809 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5273)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
810 N_LIB_PRIVATE N_NIMCALL(void, genericAssign)(void* dest, void* src, TNimType* mt);
811 N_LIB_PRIVATE N_NIMCALL(void, insert__extccomp_757)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ** x, NimStringDesc* item, NI i);
812 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
813 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src);
814 static N_INLINE(void, nimGCunrefNoCycle)(void* p);
815 static N_INLINE(NIM_BOOL, contains__extccomp_612)(tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw s, tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ value);
816 static N_INLINE(tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw, dotdot___extccomp_591)(tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ a, tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ b);
817 N_LIB_PRIVATE N_NIMCALL(tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA, nameToCC__extccomp_521)(NimStringDesc* name);
818 N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringDesc* a, NimStringDesc* b);
819 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, listCCnames__extccomp_552)(void);
820 N_LIB_PRIVATE N_NIMCALL(void, undefSymbol__condsyms_8)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols, NimStringDesc* symbol);
821 N_LIB_PRIVATE N_NIMCALL(void, defineSymbol__condsyms_4)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols, NimStringDesc* symbol, NimStringDesc* value);
822 N_LIB_PRIVATE N_NIMCALL(void, nstPut)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringDesc* key, NimStringDesc* val);
823 N_LIB_PRIVATE N_NIMCALL(void, addCompileOption__extccomp_693)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option);
824 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, absOutFile__options_4038)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
825 static N_INLINE(void, pushSafePoint)(TSafePoint* s);
826 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_1850)(tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog* a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt);
827 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___pureZjson_2044)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b);
828 N_LIB_PRIVATE N_NOINLINE(void, raiseJsonException__stdZjsonutils_168)(NimStringDesc* condStr, NimStringDesc* msg);
829 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___stdZjsonutils_407)(tyTuple__jq7X5k7hWG0tdTZTDkiyGQ x);
830 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__pureZjson_3152)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node, NimStringDesc* key);
831 N_LIB_PRIVATE N_NIMCALL(void, fromJson__stdZjsonutils_566)(NimStringDesc** a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt);
832 static N_INLINE(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, X5BX5D___pureZjson_3043)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node, NimStringDesc* name);
833 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q**, X5BX5D___pureZjson_2638)(tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg* t, NimStringDesc* key);
834 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___stdZjsonutils_504)(tyTuple__d8cOxWret6fRDupvUsyoyw x);
835 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_1964)(tySequence__4eQHGndY6XBYpFOH09apV8Q** a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt);
836 N_LIB_PRIVATE N_NIMCALL(NI, len__pureZjson_2989)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* n);
837 N_LIB_PRIVATE N_NIMCALL(tySequence__oLpBKXzW3hF9aCVMo5EymfQ*, getElems__pureZjson_207)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* n, tySequence__oLpBKXzW3hF9aCVMo5EymfQ* default_0);
838 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_2016)(tyTuple__UV3llMMYFckfui8YMBuUZA* a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt);
839 static N_INLINE(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, X5BX5D___pureZjson_3118)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node, NI index);
840 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___extccomp_2070)(tyTuple__awOivLjlO76sGdHY7nQUjQ* x);
841 N_LIB_PRIVATE N_NIMCALL(void, addQuoted__extccomp_2090)(NimStringDesc** s, NI x);
842 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
843 N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
844 N_LIB_PRIVATE N_NIMCALL(void, addQuoted__pureZos_449)(NimStringDesc** s, NimStringDesc* x);
845 N_LIB_PRIVATE N_NIMCALL(void, addQuoted__stdZjsonutils_444)(NimStringDesc** s, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* x);
846 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_2152)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ** a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt);
847 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_2272)(NIM_BOOL* a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt);
848 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, to__extccomp_2283)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node);
849 N_LIB_PRIVATE N_NIMCALL(void, initFromJson__pureZjson_5264)(NIM_BOOL* dst, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* jsonNode, NimStringDesc** jsonPath);
850 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___extccomp_2441)(tyTuple__YOdO3R1J4biIW9bY9agwbAQw* x);
851 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, parseFile__pureZjson_5228)(NimStringDesc* filename);
852 static N_INLINE(void, popSafePoint)(void);
853 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isObj)(TNimType* obj, TNimType* subclass);
854 static N_INLINE(Exception*, nimBorrowCurrentException)(void);
855 static N_INLINE(void, popCurrentException)(void);
856 N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void);
857 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosgetCurrentDir)(void);
858 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___extccomp_2553)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* x, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* y);
859 static N_INLINE(void*, seqToPtr__extccomp_2568)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* x);
860 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, newSeq__systemZio_503)(NI len);
861 N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt);
862 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosgetAppFilename)(void);
863 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, slash___pathutils_89)(NimStringDesc* base, NimStringDesc* f);
864 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getNimcacheDir__options_4183)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
865 N_LIB_PRIVATE N_NIMCALL(void, execCmdEx__pureZosproc_1149)(NimStringDesc* command, tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA options, tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* env, NimStringDesc* workingDir, NimStringDesc* input, tyTuple__XOVT24GHXwqiEj5GCsEGCA* Result);
866 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__ropes_109)(NimStringDesc* s);
867 N_LIB_PRIVATE N_NIMCALL(void, add__ropes_159)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* b);
868 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genMappingFiles__extccomp_2640)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tySequence__pK3qSsBZwdXd6qyUMkd5Jw* list);
869 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___extccomp_2648)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
870 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, runtimeFormat__ropes_271)(NimStringDesc* frmt, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
871 N_LIB_PRIVATE N_NIMCALL(void, add__ropes_162)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** a, NimStringDesc* b);
872 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuEscape)(NimStringDesc* s, NimStringDesc* prefix, NimStringDesc* suffix);
873 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompileOptions__extccomp_869)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
874 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getLinkOptions__extccomp_880)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
875 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___extccomp_2670)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
876 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, writeRope__ropes_241)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* head, NimStringDesc* filename);
877 N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
878 static N_NIMCALL(void, Marker_tyRef__CqlAb69bkfxaejoSKDwhYYA)(void* p, NI op);
879 N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
880 N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_1270)(NI idx, void* ClE_0);
881 N_LIB_PRIVATE N_NIMCALL(void, flushDot__msgs_17)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
882 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, displayProgressCC__extccomp_1246)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* path, NimStringDesc* compileCmd);
883 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasHint__options_517)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug note);
884 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, demanglePackageName__options_4170)(NimStringDesc* path);
885 N_LIB_PRIVATE N_NIMCALL(void, nossplitFile)(NimStringDesc* path, tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* Result);
886 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___options_4373)(NimStringDesc* x);
887 N_LIB_PRIVATE N_NIMCALL(void, execCmdsInParallel__extccomp_1167)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cmds, tyProc__SqRJqa5aOiKB4EuKlKh9asA prettyCb);
888 static N_NIMCALL(void, Marker_tyRef__pkCPBZYDmG8KoijaqNdsQw)(void* p, NI op);
889 N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_1173)(NI idx, tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p, void* ClE_0);
890 N_LIB_PRIVATE N_NIMCALL(NI, nosppeekExitCode)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p);
891 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
892 N_LIB_PRIVATE N_NIMCALL(NI, nospcountProcessors)(void);
893 N_LIB_PRIVATE N_NIMCALL(NI, execWithEcho__extccomp_795)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cmd, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg);
894 N_LIB_PRIVATE N_NIMCALL(NI, nospexecCmd)(NimStringDesc* command);
895 static N_INLINE(Exception*, getCurrentException)(void);
896 N_LIB_PRIVATE N_NIMCALL(NI, nospexecProcesses)(NimStringDesc** cmds, NI cmdsLen_0, tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA options, NI n, tyProc__SqRJqa5aOiKB4EuKlKh9asA beforeRunEvent, tyProc__oudJckli4GdxAXLVzBBlAw afterRunEvent);
897 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getObjFilePath__extccomp_1235)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* f);
898 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, hcrLinkTargetName__extccomp_1239)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* objFile, NIM_BOOL isMain);
899 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getLinkCmd__extccomp_1094)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* output, NimStringDesc* objfiles, NIM_BOOL isDllBuild, NIM_BOOL removeStaticFile);
900 N_LIB_PRIVATE N_NIMCALL(void, nosremoveFile)(NimStringDesc* file);
901 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getLinkerExe__extccomp_985)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA compiler);
902 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isVSCompatible__extccomp_575)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
903 N_LIB_PRIVATE N_NIMCALL(void, now__pureZtimes_1475)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* Result);
904 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, format__extccomp_1121)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dt);
905 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, format__pureZtimes_2997)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dt, tyObject_TimeFormat__Nsh4TB3AD6ERMz3D74BTxA f, tyObject_DateTimeLocale__uNv3Dc4hHpAREXnLVqGWZQ* loc);
906 static N_INLINE(NI, nanosecond__pureZtimes_1073)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dt);
907 static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s);
908 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cstrToNimstr)(NCSTRING str);
909 N_LIB_PRIVATE N_NIMCALL(void, nimLeaveFinally)(void);
910 static N_INLINE(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, map__extccomp_1381)(NimStringDesc** s, NI sLen_0, tyProc__oFHfEKFsiYTMAy9a42cSiKw op);
911 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
912 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, colonanonymous___extccomp_1377)(NimStringDesc* curr);
913 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuReplaceStr)(NimStringDesc* s, NimStringDesc* sub, NimStringDesc* by);
914 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, prepareToWriteOutput__options_4058)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
915 N_LIB_PRIVATE N_NIMCALL(void, copyFileWithPermissions__pureZos_1479)(NimStringDesc* source, NimStringDesc* dest, NIM_BOOL ignorePermissionErrors, tySet_tyEnum_CopyFlag__pdzel23GjJ9cPFw8c5ldeRA options);
916 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, getExtraCmds__extccomp_1146)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* output);
917 N_LIB_PRIVATE N_NIMCALL(void, linkViaResponseFile__extccomp_1200)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cmd);
918 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7766)(NimStringDesc* s, NI first);
919 N_LIB_PRIVATE N_NIMCALL(void, writeFile__systemZio_476)(NimStringDesc* filename, NimStringDesc* content);
920 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuReplaceChar)(NimStringDesc* s, NIM_CHAR sub, NIM_CHAR by);
921 N_LIB_PRIVATE N_NIMCALL(void, execLinkCmd__extccomp_1162)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* linkCmd);
922 N_LIB_PRIVATE N_NIMCALL(void, execExternalProgram__extccomp_808)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cmd, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg);
923 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7754)(NimStringDesc* s, NI first, NI last);
924 N_LIB_PRIVATE N_NIMCALL(void, generateScript__extccomp_812)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* script);
925 N_LIB_PRIVATE N_NIMCALL(tySequence__4eQHGndY6XBYpFOH09apV8Q*, newSeq__extccomp_1559)(NI len);
926 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, quoteShellCommand__pureZos_611)(NimStringDesc** args, NI argsLen_0);
927 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefined__options_2279)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* symbol);
928 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosisAbsolute)(NimStringDesc* path);
929 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, jsonBuildInstructionsFile__extccomp_1489)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
930 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, pretty__pureZjson_4461)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node, NI indent);
931 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1687)(tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog* a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt);
932 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, newJObject__pureZjson_92)(void);
933 static N_INLINE(void, X5BX5Deq___pureZjson_1923)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* obj, NimStringDesc* key, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* val);
934 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___pureZjson_287)(tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg* t, NimStringDesc* key, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* val);
935 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__stdZjsonutils_603)(NimStringDesc* a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt);
936 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1708)(tySequence__4eQHGndY6XBYpFOH09apV8Q* a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt);
937 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, newJArray__pureZjson_123)(void);
938 N_LIB_PRIVATE N_NIMCALL(void, add__pureZjson_222)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* father, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* child);
939 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1736)(tyTuple__UV3llMMYFckfui8YMBuUZA a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt);
940 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1757)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt);
941 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1785)(NIM_BOOL a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt);
942 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, percent___pureZjson_1816)(NIM_BOOL b);
943 N_LIB_PRIVATE N_NIMCALL(tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ, initToJsonOptions__stdZjsonutils_33)(void);
944 static N_NIMCALL(void, Marker_tyRef__pVfTg3qma4yzaBk4IsIEzQ)(void* p, NI op);
945 N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__systemZassertions_56)(NimStringDesc* msg);
946 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getStackTrace__system_2521)(Exception* e);
947 N_LIB_PRIVATE N_NIMCALL(void, quit__system_7184)(NimStringDesc* errormsg, NI errorcode) __attribute__((noreturn));
948 N_LIB_PRIVATE N_NIMCALL(void, noscreateDir)(NimStringDesc* dir);
949 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosparentDir)(NimStringDesc* path);
950 N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_2616)(NI idx, void* ClE_0);
951 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_2, ".", 1);
952 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_3, "gcc", 3);
953 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_4, "o", 1);
954 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_5, " -O3 -fno-ident", 15);
955 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_6, " -Os -fno-ident", 15);
956 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_7, "g++", 3);
957 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_8, "-c $options $include -o $objfile $file", 38);
958 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_9, " -mwindows", 10);
959 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_10, " -shared", 8);
960 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_11, "ar rcs $libfile $objfiles", 25);
961 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_12, "$buildgui $builddll -o $exefile $objfiles $options", 50);
962 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_13, " -I", 3);
963 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_14, " -L", 3);
964 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_15, " -l$1", 5);
965 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_16, "-fPIC", 5);
966 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_17, "asm($1);$n", 10);
967 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_18, "$1 $3 $2 ", 9);
968 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_19, "-Wa,-acdl=$asmfile -g -fverbose-asm -masm=intel", 47);
969 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_20, "-std=gnu++14 -funsigned-char", 28);
970 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_21, "switch_gcc", 10);
971 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_22, " -O3 ", 5);
972 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_23, " -Os ", 5);
973 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_24, "aarch64-none-elf-gcc", 20);
974 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_25, "aarch64-none-elf-g++", 20);
975 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_26, "-w -MMD -MP -MF $dfile -c $options $include -o $objfile $file", 61);
976 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_27, "aarch64-none-elf-gcc-ar rcs $libfile $objfiles", 46);
977 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_28, "$buildgui $builddll -Wl,-Map,$mapfile -o $exefile $objfiles $options", 68);
978 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_29, "-fPIE", 5);
979 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_30, "llvm_gcc", 8);
980 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_31, "llvm-gcc", 8);
981 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_32, "llvm-g++", 8);
982 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_33, "clang", 5);
983 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_34, "clang++", 7);
984 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_35, "bcc", 3);
985 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_36, "obj", 3);
986 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_37, " -O3 -6 ", 8);
987 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_38, " -O1 -6 ", 8);
988 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_39, "bcc32c", 6);
989 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_40, "cpp32c", 6);
990 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_41, "-c $options $include -o$objfile $file", 37);
991 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_42, " -tW", 4);
992 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_43, " -tWD", 5);
993 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_44, "bcc32", 5);
994 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_45, "$options $buildgui $builddll -e$exefile $objfiles", 49);
995 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_46, "__asm{$n$1$n}$n", 15);
996 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_47, "$1 $2", 5);
997 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_48, "vcc", 3);
998 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_49, " /Ogityb2 ", 10);
999 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_50, " /O1 ", 5);
1000 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_51, "cl", 2);
1001 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_52, "/c$vccplatform $options $include /nologo /Fo$objfile $file", 58);
1002 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_53, " /SUBSYSTEM:WINDOWS user32.lib ", 31);
1003 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_54, " /LD", 4);
1004 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_55, "lib /OUT:$libfile $objfiles", 27);
1005 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_56, "$builddll$vccplatform /Fe$exefile $objfiles $buildgui /nologo $options", 70);
1006 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_57, " /I", 3);
1007 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_58, " /LIBPATH:", 10);
1008 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_59, " $1.lib", 7);
1009 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_60, " /RTC1 /Z7 ", 11);
1010 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_61, "$3$n$1 $2", 9);
1011 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_62, "/Fa$asmfile", 11);
1012 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_63, "tcc", 3);
1013 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_64, "-Wl,-subsystem=gui", 18);
1014 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_65, "-o $exefile $options $buildgui $builddll $objfiles", 50);
1015 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_66, " -g ", 4);
1016 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_67, "env", 3);
1017 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_68, " -O1 ", 5);
1018 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_69, "-c $ccenvflags $options $include -o $objfile $file", 50);
1019 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_70, " -shared ", 9);
1020 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_71, "-o $exefile $buildgui $builddll $objfiles $options", 50);
1021 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_72, "icl", 3);
1022 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_73, "icc", 3);
1023 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_74, "clang_cl", 8);
1024 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_75, "clang-cl", 8);
1025 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_76, "-fuse-ld=lld $builddll$vccplatform /Fe$exefile $objfiles $buildgui /nologo $options", 83);
1026 N_LIB_PRIVATE NIM_CONST tyArray__sa9aJ6U8e9b7Bj4Yq8itsR8w CC__extccomp_508 = {{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_3),
1027 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
1028 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
1029 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_6),
1030 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_3),
1031 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_7),
1032 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_8),
1033 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
1034 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
1035 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
1036 ((NimStringDesc*) NIM_NIL),
1037 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_12),
1038 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
1039 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
1040 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
1041 ((NimStringDesc*) NIM_NIL),
1042 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
1043 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
1044 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
1045 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
1046 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
1047 183}
1048 ,
1049 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_21),
1050 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
1051 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_22),
1052 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_23),
1053 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_24),
1054 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_25),
1055 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_26),
1056 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
1057 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
1058 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_27),
1059 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_24),
1060 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_28),
1061 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
1062 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
1063 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
1064 ((NimStringDesc*) NIM_NIL),
1065 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_29),
1066 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
1067 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
1068 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
1069 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
1070 183}
1071 ,
1072 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_30),
1073 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
1074 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
1075 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_6),
1076 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_31),
1077 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_32),
1078 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_8),
1079 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
1080 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
1081 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
1082 ((NimStringDesc*) NIM_NIL),
1083 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_12),
1084 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
1085 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
1086 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
1087 ((NimStringDesc*) NIM_NIL),
1088 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
1089 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
1090 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
1091 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
1092 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
1093 183}
1094 ,
1095 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_33),
1096 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
1097 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
1098 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_6),
1099 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_33),
1100 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_34),
1101 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_8),
1102 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
1103 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
1104 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
1105 ((NimStringDesc*) NIM_NIL),
1106 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_12),
1107 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
1108 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
1109 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
1110 ((NimStringDesc*) NIM_NIL),
1111 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
1112 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
1113 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
1114 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
1115 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
1116 183}
1117 ,
1118 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_35),
1119 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_36),
1120 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_37),
1121 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_38),
1122 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_39),
1123 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_40),
1124 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_41),
1125 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_42),
1126 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_43),
1127 ((NimStringDesc*) NIM_NIL),
1128 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_44),
1129 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_45),
1130 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
1131 ((NimStringDesc*) NIM_NIL),
1132 ((NimStringDesc*) NIM_NIL),
1133 ((NimStringDesc*) NIM_NIL),
1134 ((NimStringDesc*) NIM_NIL),
1135 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_46),
1136 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_47),
1137 ((NimStringDesc*) NIM_NIL),
1138 ((NimStringDesc*) NIM_NIL),
1139 151}
1140 ,
1141 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_48),
1142 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_36),
1143 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_49),
1144 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_50),
1145 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_51),
1146 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_51),
1147 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_52),
1148 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_53),
1149 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_54),
1150 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_55),
1151 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_51),
1152 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_56),
1153 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_57),
1154 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_58),
1155 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_59),
1156 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_60),
1157 ((NimStringDesc*) NIM_NIL),
1158 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_46),
1159 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_61),
1160 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_62),
1161 ((NimStringDesc*) NIM_NIL),
1162 76}
1163 ,
1164 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_63),
1165 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
1166 ((NimStringDesc*) NIM_NIL),
1167 ((NimStringDesc*) NIM_NIL),
1168 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_63),
1169 ((NimStringDesc*) NIM_NIL),
1170 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_8),
1171 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_64),
1172 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
1173 ((NimStringDesc*) NIM_NIL),
1174 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_63),
1175 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_65),
1176 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
1177 ((NimStringDesc*) NIM_NIL),
1178 ((NimStringDesc*) NIM_NIL),
1179 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_66),
1180 ((NimStringDesc*) NIM_NIL),
1181 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
1182 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_47),
1183 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
1184 ((NimStringDesc*) NIM_NIL),
1185 35}
1186 ,
1187 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_67),
1188 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
1189 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_22),
1190 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_68),
1191 ((NimStringDesc*) NIM_NIL),
1192 ((NimStringDesc*) NIM_NIL),
1193 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_69),
1194 ((NimStringDesc*) NIM_NIL),
1195 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_70),
1196 ((NimStringDesc*) NIM_NIL),
1197 ((NimStringDesc*) NIM_NIL),
1198 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_71),
1199 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
1200 ((NimStringDesc*) NIM_NIL),
1201 ((NimStringDesc*) NIM_NIL),
1202 ((NimStringDesc*) NIM_NIL),
1203 ((NimStringDesc*) NIM_NIL),
1204 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_46),
1205 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_47),
1206 ((NimStringDesc*) NIM_NIL),
1207 ((NimStringDesc*) NIM_NIL),
1208 32}
1209 ,
1210 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_72),
1211 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_36),
1212 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_49),
1213 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_50),
1214 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_72),
1215 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_51),
1216 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_52),
1217 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_53),
1218 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_54),
1219 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_55),
1220 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_72),
1221 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_56),
1222 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_57),
1223 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_58),
1224 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_59),
1225 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_60),
1226 ((NimStringDesc*) NIM_NIL),
1227 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_46),
1228 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_61),
1229 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_62),
1230 ((NimStringDesc*) NIM_NIL),
1231 76}
1232 ,
1233 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_73),
1234 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
1235 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
1236 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_6),
1237 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_73),
1238 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_7),
1239 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_8),
1240 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
1241 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
1242 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
1243 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_73),
1244 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_12),
1245 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
1246 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
1247 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
1248 ((NimStringDesc*) NIM_NIL),
1249 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
1250 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
1251 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
1252 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
1253 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
1254 183}
1255 ,
1256 {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_74),
1257 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_36),
1258 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_49),
1259 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_50),
1260 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_75),
1261 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_75),
1262 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_52),
1263 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_53),
1264 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_54),
1265 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_55),
1266 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_75),
1267 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_76),
1268 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_57),
1269 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_58),
1270 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_59),
1271 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_60),
1272 ((NimStringDesc*) NIM_NIL),
1273 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_46),
1274 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_61),
1275 ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_62),
1276 ((NimStringDesc*) NIM_NIL),
1277 76}
1278 }
1279 ;
1280 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_77, "sha1", 4);
1281 extern NIM_CONST tyArray__VbVuAPt8GSIPhx9amVJ0MyA OS__platform_504;
1282 extern NIM_CONST tyArray__9cwFB2SXj9aw9cyLiDbvSiBEg CPU__platform_691;
1283 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_78, " ", 1);
1284 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_79, ".debug", 6);
1285 extern TNimType NTItbackend__4OBsgZ9cscH2JLUE5Wcz01g_;
1286 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_80, ".options.debug", 14);
1287 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_81, ".speed", 6);
1288 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_82, ".options.speed", 14);
1289 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_83, ".size", 5);
1290 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_84, ".options.size", 13);
1291 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_85, ".always", 7);
1292 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_86, ".c", 2);
1293 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_87, ".exe", 4);
1294 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_88, "CXX", 3);
1295 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_89, "CC", 2);
1296 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
1297 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_90, "Compiler \'$1\' doesn\'t support the requested target", 50);
1298 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_92, "/home/runner/work/nightlies/nightlies/nim/compiler/extccomp.nim", 63);
1299 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_91 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1300 ((NI) 506),
1301 ((NI) 14)}
1302 ;
1303 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_93, "exe", 3);
1304 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_94, ".d", 2);
1305 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_95, "dfile", 5);
1306 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_96, "file", 4);
1307 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_97, "objfile", 7);
1308 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_98, "options", 7);
1309 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_99, "include", 7);
1310 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_100, "nim", 3);
1311 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_101, "lib", 3);
1312 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_102, "ccenvflags", 10);
1313 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_103, "CXXFLAGS", 8);
1314 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_104, "CFLAGS", 6);
1315 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_105, ".asm", 4);
1316 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_106, "asmfile", 7);
1317 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_107, "Produced assembler here: ", 25);
1318 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_108 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1319 ((NI) 610),
1320 ((NI) 18)}
1321 ;
1322 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_109, "Couldn\'t produce assembler listing for the selected C compiler: ", 64);
1323 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_110 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1324 ((NI) 613),
1325 ((NI) 18)}
1326 ;
1327 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_111, "vccplatform", 11);
1328 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_112, "vccexe.exe", 10);
1329 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_113, " --platform:x86", 15);
1330 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_114, " --platform:arm", 15);
1331 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_115, " --platform:amd64", 17);
1332 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_116, "\012", 1);
1333 extern TNimType NTIcfilelist__pK3qSsBZwdXd6qyUMkd5Jw_;
1334 extern TNimType NTIcfile__i9cKq1ZGd1wgagjUEHLVFtg_;
1335 extern TNimType NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_;
1336 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_117, "unknown C compiler: \'$1\'. Available options are: $2", 51);
1337 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_118, ", ", 2);
1338 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_119 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1339 ((NI) 335),
1340 ((NI) 14)}
1341 ;
1342 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_120, ".options.always", 15);
1343 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_121, ".path", 5);
1344 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_122, "true", 4);
1345 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_124, "\012not (b == nil)", 15);
1346 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_125, "BuildCache", 10);
1347 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_126, "b.kind == JObject", 17);
1348 extern TNimType NTIjsonnodekind__RUngo7nCHe6O8aBGIcrhtg_;
1349 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_127, "cacheVersion", 12);
1350 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_128, "false", 5);
1351 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_129, "outputFile", 10);
1352 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_130, "compile", 7);
1353 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_131, "seq[(string, string)]", 21);
1354 extern TNimType NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_;
1355 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_132, "(string, string)", 16);
1356 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_133, "b.kind == JArray", 16);
1357 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_134, "b.len == i", 10);
1358 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_135, "(", 1);
1359 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_136, "nil", 3);
1360 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_137, ",", 1);
1361 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_138, ")", 1);
1362 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_139, "link", 4);
1363 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_140, "seq[string]", 11);
1364 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_141, "linkcmd", 7);
1365 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_142, "extraCmds", 9);
1366 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_143, "configFiles", 11);
1367 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_144, "stdinInput", 10);
1368 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_145, "bool", 4);
1369 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_146, "projectIsCmd", 12);
1370 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_147, "cmdInput", 8);
1371 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_148, "currentDir", 10);
1372 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_149, "cmdline", 7);
1373 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_150, "depfiles", 8);
1374 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_151, "nimexe", 6);
1375 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_152, "ok`gensym14", 11);
1376 extern TNimType NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_;
1377 extern TNimType NTIoserror__BeJgrOdDsczOwEWOZbRfKA_;
1378 extern TNimType NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_;
1379 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_153, "Warning: JSON processing failed for: $#\012", 40);
1380 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_154, "D20210525T193831", 16);
1381 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_155, "json", 4);
1382 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_157, " --version", 10);
1383 static NIM_CONST tyTuple__XOVT24GHXwqiEj5GCsEGCA TM__OyL9acDBDoBfMwa5zb1Y88w_158 = {((NimStringDesc*) NIM_NIL),
1384 ((NI) 1)}
1385 ;
1386 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_159, "[C_Files]\012", 10);
1387 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_160, "--file:r\"$1\"$N", 14);
1388 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_161, "\012[C_Compiler]\012Flags=", 20);
1389 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_162, "__dummy__", 9);
1390 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_163, "\"", 1);
1391 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_164, "\012[Linker]\012Flags=", 16);
1392 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_165, ".options.linker", 15);
1393 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_166, "\012[Environment]\012libpath=", 23);
1394 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_167, "\012[Symbols]$n$1", 14);
1395 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_168, "mapping.txt", 11);
1396 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_169, "could not write to file: ", 25);
1397 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_170 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1398 ((NI) 1055),
1399 ((NI) 14)}
1400 ;
1401 extern TNimType NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_;
1402 N_LIB_PRIVATE TNimType NTIobject__H6RAoT9avhFKpqIMlTu5GHg_;
1403 extern TNimType NTIint__xHTZrq9aYs6boc9bCba0JbpQ_;
1404 extern TNimType NTIconfigref__a8lycfSA25OQltN3OMeBsA_;
1405 N_LIB_PRIVATE TNimType NTIrefobject__CqlAb69bkfxaejoSKDwhYYA_;
1406 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_172, "CC: $1", 6);
1407 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_173, ": ", 2);
1408 N_LIB_PRIVATE TNimType NTIobject__4Ms6MGgcp8EDnUBSlKFk9bg_;
1409 N_LIB_PRIVATE TNimType NTIrefobject__pkCPBZYDmG8KoijaqNdsQw_;
1410 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_175, "execution of an external compiler program \'", 43);
1411 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_176, "\' failed with exit code: ", 25);
1412 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_177, "\012\012", 2);
1413 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_178 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1414 ((NI) 784),
1415 ((NI) 16)}
1416 ;
1417 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_180 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1418 ((NI) 398),
1419 ((NI) 12)}
1420 ;
1421 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_181, "invocation of external compiler program failed. ", 48);
1422 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_182 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1423 ((NI) 764),
1424 ((NI) 16)}
1425 ;
1426 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_183, "execution of an external program failed: \'$1\'", 45);
1427 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_184 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1428 ((NI) 766),
1429 ((NI) 16)}
1430 ;
1431 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_185 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1432 ((NI) 793),
1433 ((NI) 18)}
1434 ;
1435 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_187 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1436 ((NI) 801),
1437 ((NI) 16)}
1438 ;
1439 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_188, "libfile", 7);
1440 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_189, "objfiles", 8);
1441 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_190, ".linkerexe", 10);
1442 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_191, ".map", 4);
1443 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_192, ".linkTmpl", 9);
1444 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_193, "builddll", 8);
1445 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_194, "mapfile", 7);
1446 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_195, "buildgui", 8);
1447 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_196, "exefile", 7);
1448 extern TNimType NTIdatetime__d9cK9cyKZPJJxFXUmx8dSpPw_;
1449 static NIM_CONST struct {
1450   TGenericSeq Sup;
1451   NU8 data[16];
1452 } TM__OyL9acDBDoBfMwa5zb1Y88w_197 = {{16, 16 | NIM_STRLIT_FLAG}, {((NU8) 13),
1453 ((NU8) 33),
1454 ((NU8) 1),
1455 ((NU8) 45),
1456 ((NU8) 22),
1457 ((NU8) 33),
1458 ((NU8) 1),
1459 ((NU8) 45),
1460 ((NU8) 7),
1461 ((NU8) 33),
1462 ((NU8) 1),
1463 ((NU8) 45),
1464 ((NU8) 9),
1465 ((NU8) 33),
1466 ((NU8) 1),
1467 ((NU8) 45)}};
1468 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_198, "MMMM-yyyy-HH-mm-", 16);
1469 N_LIB_PRIVATE NIM_CONST tyObject_TimeFormat__Nsh4TB3AD6ERMz3D74BTxA f2__extccomp_1126 = {((tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*)&TM__OyL9acDBDoBfMwa5zb1Y88w_197), ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_198)}
1470 ;
1471 extern NIM_CONST tyObject_DateTimeLocale__uNv3Dc4hHpAREXnLVqGWZQ DefaultLocale__pureZtimes_1636;
1472 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_199, ".pdb", 4);
1473 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_200, " /link /PDB:", 12);
1474 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_201, " /Zi /FS /Od", 12);
1475 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_202, ".*.pdb", 6);
1476 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_205, "Link", 4);
1477 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_207, "dsymutil ", 9);
1478 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_208, "_linkerArgs.txt", 15);
1479 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_211 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1480 ((NI) 403),
1481 ((NI) 14)}
1482 ;
1483 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_212, "invocation of external linker program failed. ", 46);
1484 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_213, " @", 2);
1485 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_214, "compile_", 8);
1486 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_215 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1487 ((NI) 411),
1488 ((NI) 14)}
1489 ;
1490 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_216, "nimBetterRun", 12);
1491 N_LIB_PRIVATE TNimType NTIobject__Bm6R75AmpN9bn4rYIfcheUg_;
1492 N_LIB_PRIVATE TNimType NTIrefobject__pVfTg3qma4yzaBk4IsIEzQ_;
1493 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_219, "nimDebug", 8);
1494 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_220, "options.nim(634, 14) `false` ", 29);
1495 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_221, "\012caught exception:\012$#\012stacktrace:\012$#error evaluating JSON file: $#", 66);
1496 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q gCmdLineInfo__msgs_404;
1497 STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_222, "jsonscript command outputFile \'$1\' must match \'$2\' which was specified during --compileOnly, see \"outputFile\" entry in \'$3\' ", 124);
1498 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_223 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_92),
1499 ((NI) 1022),
1500 ((NI) 15)}
1501 ;
1502 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5226;
1503 extern TSafePoint* excHandler__system_2565;
1504 extern TSafePoint* excHandler__system_2565;
1505 extern TSafePoint* excHandler__system_2565;
1506 extern TSafePoint* excHandler__system_2565;
1507 extern Exception* currException__system_2566;
1508 extern Exception* currException__system_2566;
1509 extern Exception* currException__system_2566;
1510 extern Exception* currException__system_2566;
N_INLINE(void,nimSetMem__systemZmemory_7)1511 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
1512 	void* T1_;
1513 	T1_ = (void*)0;
1514 	T1_ = memset(a, v, ((size_t) (size)));
1515 }
N_INLINE(void,nimZeroMem)1516 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
1517 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
1518 }
N_INLINE(void,nimCopyMem)1519 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
1520 	void* T1_;
1521 	T1_ = (void*)0;
1522 	T1_ = memcpy(dest, source, ((size_t) (size)));
1523 }
N_INLINE(void,copyMem__system_1727)1524 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
1525 	nimCopyMem(dest, source, size);
1526 }
N_INLINE(void,appendString)1527 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
1528 	{
1529 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
1530 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
1531 		(*dest).Sup.len += (*src).Sup.len;
1532 	}
1533 	LA3_: ;
1534 }
N_NIMCALL(NimStringDesc *,toObjFile__extccomp_718)1535 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toObjFile__extccomp_718)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename) {
1536 	NimStringDesc* result;
1537 	NimStringDesc* T1_;
1538 	result = NIM_NIL;
1539 	T1_ = NIM_NIL;
1540 	T1_ = rawNewString((filename ? filename->Sup.len : 0) + (CC__extccomp_508[((*conf).cCompiler)- 1].Field1 ? CC__extccomp_508[((*conf).cCompiler)- 1].Field1->Sup.len : 0) + 1);
1541 appendString(T1_, filename);
1542 appendString(T1_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_2));
1543 appendString(T1_, CC__extccomp_508[((*conf).cCompiler)- 1].Field1);
1544 	result = T1_;
1545 	return result;
1546 }
N_NIMCALL(NimStringDesc *,completeCfilePath__extccomp_713)1547 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, completeCfilePath__extccomp_713)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile, NIM_BOOL createSubDir) {
1548 	NimStringDesc* result;
1549 	result = NIM_NIL;
1550 	result = completeGeneratedFilePath__options_4240(conf, cfile, createSubDir);
1551 	return result;
1552 }
N_INLINE(NIM_CHAR *,X5BX5D___system_7372)1553 static N_INLINE(NIM_CHAR*, X5BX5D___system_7372)(NimStringDesc** s, NI i) {
1554 	NIM_CHAR* result;
1555 	result = (NIM_CHAR*)0;
1556 	result = (&(*s)->data[(NI)(((*s) ? (*s)->Sup.len : 0) - i)]);
1557 	return result;
1558 }
N_NIMCALL(void,addOpt__extccomp_687)1559 N_LIB_PRIVATE N_NIMCALL(void, addOpt__extccomp_687)(NimStringDesc** dest, NimStringDesc* src) {
1560 	{
1561 		NIM_BOOL T3_;
1562 		NIM_CHAR* T5_;
1563 		T3_ = (NIM_BOOL)0;
1564 		T3_ = (((*dest) ? (*dest)->Sup.len : 0) == ((NI) 0));
1565 		if (T3_) goto LA4_;
1566 		T5_ = (NIM_CHAR*)0;
1567 		T5_ = X5BX5D___system_7372(dest, ((NI) 1));
1568 		T3_ = !(((NU8)((*T5_)) == (NU8)(32)));
1569 		LA4_: ;
1570 		if (!T3_) goto LA6_;
1571 		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 1));
1572 appendString((*dest), ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
1573 	}
1574 	LA6_: ;
1575 	unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), (src ? src->Sup.len : 0) + 0));
1576 appendString((*dest), src);
1577 }
N_INLINE(void,appendChar)1578 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
1579 	(*dest).data[(*dest).Sup.len] = c;
1580 	(*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
1581 	(*dest).Sup.len += ((NI) 1);
1582 }
N_NIMCALL(NimStringDesc *,getConfigVar__extccomp_627)1583 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getConfigVar__extccomp_627)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c, NimStringDesc* suffix) {
1584 	NimStringDesc* result;
1585 	NimStringDesc* fullSuffix;
1586 {	result = NIM_NIL;
1587 	fullSuffix = copyString(suffix);
1588 	switch ((*conf).backend) {
1589 	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2):
1590 	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 3):
1591 	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 4):
1592 	{
1593 		NimStringDesc* T2_;
1594 		T2_ = NIM_NIL;
1595 		T2_ = rawNewString((reprEnum((NI)(*conf).backend, (&NTItbackend__4OBsgZ9cscH2JLUE5Wcz01g_)) ? reprEnum((NI)(*conf).backend, (&NTItbackend__4OBsgZ9cscH2JLUE5Wcz01g_))->Sup.len : 0) + (suffix ? suffix->Sup.len : 0) + 1);
1596 appendString(T2_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_2));
1597 appendString(T2_, reprEnum((NI)(*conf).backend, (&NTItbackend__4OBsgZ9cscH2JLUE5Wcz01g_)));
1598 appendString(T2_, suffix);
1599 		fullSuffix = T2_;
1600 	}
1601 	break;
1602 	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 1):
1603 	{
1604 	}
1605 	break;
1606 	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 0):
1607 	{
1608 		result = ((NimStringDesc*) NIM_NIL);
1609 		goto BeforeRet_;
1610 	}
1611 	break;
1612 	}
1613 	{
1614 		NIM_BOOL T7_;
1615 		NIM_BOOL T8_;
1616 		NimStringDesc* fullCCname;
1617 		NimStringDesc* T13_;
1618 		T7_ = (NIM_BOOL)0;
1619 		T8_ = (NIM_BOOL)0;
1620 		T8_ = !(((*conf).target.hostOS == (*conf).target.targetOS));
1621 		if (T8_) goto LA9_;
1622 		T8_ = !(((*conf).target.hostCPU == (*conf).target.targetCPU));
1623 		LA9_: ;
1624 		T7_ = T8_;
1625 		if (!(T7_)) goto LA10_;
1626 		T7_ = !((((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 4))&63U)))!=0));
1627 		LA10_: ;
1628 		if (!T7_) goto LA11_;
1629 		T13_ = NIM_NIL;
1630 		T13_ = rawNewString((CPU__platform_691[((*conf).target.targetCPU)- 1].Field0 ? CPU__platform_691[((*conf).target.targetCPU)- 1].Field0->Sup.len : 0) + (OS__platform_504[((*conf).target.targetOS)- 1].Field0 ? OS__platform_504[((*conf).target.targetOS)- 1].Field0->Sup.len : 0) + (CC__extccomp_508[(c)- 1].Field0 ? CC__extccomp_508[(c)- 1].Field0->Sup.len : 0) + (fullSuffix ? fullSuffix->Sup.len : 0) + 2);
1631 appendString(T13_, CPU__platform_691[((*conf).target.targetCPU)- 1].Field0);
1632 appendChar(T13_, 46);
1633 appendString(T13_, OS__platform_504[((*conf).target.targetOS)- 1].Field0);
1634 appendChar(T13_, 46);
1635 appendString(T13_, CC__extccomp_508[(c)- 1].Field0);
1636 appendString(T13_, fullSuffix);
1637 		fullCCname = T13_;
1638 		result = getConfigVar__options_4019(conf, fullCCname, ((NimStringDesc*) NIM_NIL));
1639 		{
1640 			NimStringDesc* T18_;
1641 			if (!((result ? result->Sup.len : 0) == ((NI) 0))) goto LA16_;
1642 			T18_ = NIM_NIL;
1643 			T18_ = rawNewString((CC__extccomp_508[(c)- 1].Field0 ? CC__extccomp_508[(c)- 1].Field0->Sup.len : 0) + (fullSuffix ? fullSuffix->Sup.len : 0) + 0);
1644 appendString(T18_, CC__extccomp_508[(c)- 1].Field0);
1645 appendString(T18_, fullSuffix);
1646 			result = getConfigVar__options_4019(conf, T18_, ((NimStringDesc*) NIM_NIL));
1647 		}
1648 		LA16_: ;
1649 	}
1650 	goto LA5_;
1651 	LA11_: ;
1652 	{
1653 		NimStringDesc* T20_;
1654 		T20_ = NIM_NIL;
1655 		T20_ = rawNewString((CC__extccomp_508[(c)- 1].Field0 ? CC__extccomp_508[(c)- 1].Field0->Sup.len : 0) + (fullSuffix ? fullSuffix->Sup.len : 0) + 0);
1656 appendString(T20_, CC__extccomp_508[(c)- 1].Field0);
1657 appendString(T20_, fullSuffix);
1658 		result = getConfigVar__options_4019(conf, T20_, ((NimStringDesc*) NIM_NIL));
1659 	}
1660 	LA5_: ;
1661 	}BeforeRet_: ;
1662 	return result;
1663 }
N_NIMCALL(NimStringDesc *,getDebug__extccomp_823)1664 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getDebug__extccomp_823)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c) {
1665 	NimStringDesc* result;
1666 	result = NIM_NIL;
1667 	result = getConfigVar__extccomp_627(conf, c, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_80));
1668 	{
1669 		if (!((result ? result->Sup.len : 0) == 0)) goto LA3_;
1670 		result = copyString(CC__extccomp_508[(c)- 1].Field15);
1671 	}
1672 	LA3_: ;
1673 	return result;
1674 }
N_NIMCALL(NimStringDesc *,getOptSpeed__extccomp_819)1675 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOptSpeed__extccomp_819)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c) {
1676 	NimStringDesc* result;
1677 	result = NIM_NIL;
1678 	result = getConfigVar__extccomp_627(conf, c, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_82));
1679 	{
1680 		if (!((result ? result->Sup.len : 0) == 0)) goto LA3_;
1681 		result = copyString(CC__extccomp_508[(c)- 1].Field2);
1682 	}
1683 	LA3_: ;
1684 	return result;
1685 }
N_NIMCALL(NimStringDesc *,getOptSize__extccomp_827)1686 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOptSize__extccomp_827)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c) {
1687 	NimStringDesc* result;
1688 	result = NIM_NIL;
1689 	result = getConfigVar__extccomp_627(conf, c, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_84));
1690 	{
1691 		if (!((result ? result->Sup.len : 0) == 0)) goto LA3_;
1692 		result = copyString(CC__extccomp_508[(c)- 1].Field3);
1693 	}
1694 	LA3_: ;
1695 	return result;
1696 }
N_NIMCALL(NimStringDesc *,cFileSpecificOptions__extccomp_844)1697 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cFileSpecificOptions__extccomp_844)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* nimname, NimStringDesc* fullNimFile) {
1698 	NimStringDesc* result;
1699 	NimStringDesc* key_4;
1700 	NimStringDesc* T48_;
1701 	NimStringDesc* T55_;
1702 	result = NIM_NIL;
1703 	result = copyString((*conf).compileOptions);
1704 	{
1705 		NimStringDesc** option;
1706 		NI i;
1707 		NI L;
1708 		NI T2_;
1709 		option = (NimStringDesc**)0;
1710 		i = ((NI) 0);
1711 		T2_ = ((*conf).compileOptionsCmd ? (*conf).compileOptionsCmd->Sup.len : 0);
1712 		L = T2_;
1713 		{
1714 			while (1) {
1715 				if (!(i < L)) goto LA4;
1716 				option = (&(*conf).compileOptionsCmd->data[i]);
1717 				{
1718 					NI T7_;
1719 					T7_ = (NI)0;
1720 					T7_ = nsuFindStr(result, (*option), ((NI) 0), ((NI) 0));
1721 					if (!(T7_ < ((NI) 0))) goto LA8_;
1722 					addOpt__extccomp_687((&result), (*option));
1723 				}
1724 				LA8_: ;
1725 				i += ((NI) 1);
1726 			} LA4: ;
1727 		}
1728 	}
1729 	{
1730 		NimStringDesc* key;
1731 		NimStringDesc* T14_;
1732 		if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 6))&63U)))!=0)) goto LA12_;
1733 		T14_ = NIM_NIL;
1734 		T14_ = rawNewString((nimname ? nimname->Sup.len : 0) + 6);
1735 appendString(T14_, nimname);
1736 appendString(T14_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_79));
1737 		key = T14_;
1738 		{
1739 			NIM_BOOL T17_;
1740 			NimStringDesc* T20_;
1741 			T17_ = (NIM_BOOL)0;
1742 			T17_ = existsConfigVar__options_4015(conf, key);
1743 			if (!T17_) goto LA18_;
1744 			T20_ = NIM_NIL;
1745 			T20_ = getConfigVar__options_4019(conf, key, ((NimStringDesc*) NIM_NIL));
1746 			addOpt__extccomp_687((&result), T20_);
1747 		}
1748 		goto LA15_;
1749 		LA18_: ;
1750 		{
1751 			NimStringDesc* T22_;
1752 			T22_ = NIM_NIL;
1753 			T22_ = getDebug__extccomp_823(conf, (*conf).cCompiler);
1754 			addOpt__extccomp_687((&result), T22_);
1755 		}
1756 		LA15_: ;
1757 	}
1758 	LA12_: ;
1759 	{
1760 		NimStringDesc* key_2;
1761 		NimStringDesc* T27_;
1762 		if (!(((*conf).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 15))&31U)))!=0)) goto LA25_;
1763 		T27_ = NIM_NIL;
1764 		T27_ = rawNewString((nimname ? nimname->Sup.len : 0) + 6);
1765 appendString(T27_, nimname);
1766 appendString(T27_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_81));
1767 		key_2 = T27_;
1768 		{
1769 			NIM_BOOL T30_;
1770 			NimStringDesc* T33_;
1771 			T30_ = (NIM_BOOL)0;
1772 			T30_ = existsConfigVar__options_4015(conf, key_2);
1773 			if (!T30_) goto LA31_;
1774 			T33_ = NIM_NIL;
1775 			T33_ = getConfigVar__options_4019(conf, key_2, ((NimStringDesc*) NIM_NIL));
1776 			addOpt__extccomp_687((&result), T33_);
1777 		}
1778 		goto LA28_;
1779 		LA31_: ;
1780 		{
1781 			NimStringDesc* T35_;
1782 			T35_ = NIM_NIL;
1783 			T35_ = getOptSpeed__extccomp_819(conf, (*conf).cCompiler);
1784 			addOpt__extccomp_687((&result), T35_);
1785 		}
1786 		LA28_: ;
1787 	}
1788 	goto LA23_;
1789 	LA25_: ;
1790 	{
1791 		NimStringDesc* key_3;
1792 		NimStringDesc* T39_;
1793 		if (!(((*conf).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 16))&31U)))!=0)) goto LA37_;
1794 		T39_ = NIM_NIL;
1795 		T39_ = rawNewString((nimname ? nimname->Sup.len : 0) + 5);
1796 appendString(T39_, nimname);
1797 appendString(T39_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_83));
1798 		key_3 = T39_;
1799 		{
1800 			NIM_BOOL T42_;
1801 			NimStringDesc* T45_;
1802 			T42_ = (NIM_BOOL)0;
1803 			T42_ = existsConfigVar__options_4015(conf, key_3);
1804 			if (!T42_) goto LA43_;
1805 			T45_ = NIM_NIL;
1806 			T45_ = getConfigVar__options_4019(conf, key_3, ((NimStringDesc*) NIM_NIL));
1807 			addOpt__extccomp_687((&result), T45_);
1808 		}
1809 		goto LA40_;
1810 		LA43_: ;
1811 		{
1812 			NimStringDesc* T47_;
1813 			T47_ = NIM_NIL;
1814 			T47_ = getOptSize__extccomp_827(conf, (*conf).cCompiler);
1815 			addOpt__extccomp_687((&result), T47_);
1816 		}
1817 		LA40_: ;
1818 	}
1819 	goto LA23_;
1820 	LA37_: ;
1821 	LA23_: ;
1822 	T48_ = NIM_NIL;
1823 	T48_ = rawNewString((nimname ? nimname->Sup.len : 0) + 7);
1824 appendString(T48_, nimname);
1825 appendString(T48_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_85));
1826 	key_4 = T48_;
1827 	{
1828 		NIM_BOOL T51_;
1829 		NimStringDesc* T54_;
1830 		T51_ = (NIM_BOOL)0;
1831 		T51_ = existsConfigVar__options_4015(conf, key_4);
1832 		if (!T51_) goto LA52_;
1833 		T54_ = NIM_NIL;
1834 		T54_ = getConfigVar__options_4019(conf, key_4, ((NimStringDesc*) NIM_NIL));
1835 		addOpt__extccomp_687((&result), T54_);
1836 	}
1837 	LA52_: ;
1838 	T55_ = NIM_NIL;
1839 	T55_ = getOrDefault__pureZstrtabs_173((*conf).cfileSpecificOptions, fullNimFile, ((NimStringDesc*) NIM_NIL));
1840 	addOpt__extccomp_687((&result), T55_);
1841 	return result;
1842 }
N_NIMCALL(NIM_BOOL,useCpp__extccomp_906)1843 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, useCpp__extccomp_906)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile) {
1844 	NIM_BOOL result;
1845 	NIM_BOOL T1_;
1846 	NIM_BOOL T3_;
1847 	result = (NIM_BOOL)0;
1848 	T1_ = (NIM_BOOL)0;
1849 	T1_ = ((*conf).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
1850 	if (!(T1_)) goto LA2_;
1851 	T3_ = (NIM_BOOL)0;
1852 	T3_ = nsuEndsWith(cfile, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_86));
1853 	T1_ = !(T3_);
1854 	LA2_: ;
1855 	result = T1_;
1856 	return result;
1857 }
N_NIMCALL(NimStringDesc *,getCompilerExe__extccomp_921)1858 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompilerExe__extccomp_921)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA compiler, NimStringDesc* cfile) {
1859 	NimStringDesc* result;
1860 	result = NIM_NIL;
1861 	{
1862 		if (!(compiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 8))) goto LA3_;
1863 		{
1864 			NIM_BOOL T7_;
1865 			T7_ = (NIM_BOOL)0;
1866 			T7_ = useCpp__extccomp_906(conf, cfile);
1867 			if (!T7_) goto LA8_;
1868 			result = getEnv__pureZos_418(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_88), ((NimStringDesc*) NIM_NIL));
1869 		}
1870 		goto LA5_;
1871 		LA8_: ;
1872 		{
1873 			result = getEnv__pureZos_418(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_89), ((NimStringDesc*) NIM_NIL));
1874 		}
1875 		LA5_: ;
1876 	}
1877 	goto LA1_;
1878 	LA3_: ;
1879 	{
1880 		{
1881 			NIM_BOOL T14_;
1882 			T14_ = (NIM_BOOL)0;
1883 			T14_ = useCpp__extccomp_906(conf, cfile);
1884 			if (!T14_) goto LA15_;
1885 			result = copyString(CC__extccomp_508[(compiler)- 1].Field5);
1886 		}
1887 		goto LA12_;
1888 		LA15_: ;
1889 		{
1890 			result = copyString(CC__extccomp_508[(compiler)- 1].Field4);
1891 		}
1892 		LA12_: ;
1893 	}
1894 	LA1_: ;
1895 	{
1896 		NimStringDesc* T22_;
1897 		if (!((result ? result->Sup.len : 0) == ((NI) 0))) goto LA20_;
1898 		T22_ = NIM_NIL;
1899 		T22_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_90), CC__extccomp_508[(compiler)- 1].Field0);
1900 		liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T22_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_91, NIM_FALSE);
1901 	}
1902 	LA20_: ;
1903 	return result;
1904 }
N_INLINE(NIM_BOOL,needsExeExt__extccomp_891)1905 static N_INLINE(NIM_BOOL, needsExeExt__extccomp_891)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
1906 	NIM_BOOL result;
1907 	NIM_BOOL T1_;
1908 	NIM_BOOL T2_;
1909 	result = (NIM_BOOL)0;
1910 	T1_ = (NIM_BOOL)0;
1911 	T2_ = (NIM_BOOL)0;
1912 	T2_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 10))&63U)))!=0);
1913 	if (!(T2_)) goto LA3_;
1914 	T2_ = ((*conf).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
1915 	LA3_: ;
1916 	T1_ = T2_;
1917 	if (T1_) goto LA4_;
1918 	T1_ = ((*conf).target.hostOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
1919 	LA4_: ;
1920 	result = T1_;
1921 	return result;
1922 }
N_INLINE(NIM_BOOL,noAbsolutePaths__extccomp_831)1923 static N_INLINE(NIM_BOOL, noAbsolutePaths__extccomp_831)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
1924 	NIM_BOOL result;
1925 	result = (NIM_BOOL)0;
1926 	result = !((((*conf).globalOptions & 3072) == 0));
1927 	return result;
1928 }
N_INLINE(NIM_BOOL,isEmpty__options_4495)1929 static N_INLINE(NIM_BOOL, isEmpty__options_4495)(NimStringDesc* x) {
1930 	NIM_BOOL result;
1931 	result = (NIM_BOOL)0;
1932 	result = ((x ? x->Sup.len : 0) == ((NI) 0));
1933 	return result;
1934 }
N_NIMCALL(NimStringDesc *,envFlags__extccomp_914)1935 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, envFlags__extccomp_914)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
1936 	NimStringDesc* result;
1937 	result = NIM_NIL;
1938 	{
1939 		if (!((*conf).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2))) goto LA3_;
1940 		result = getEnv__pureZos_418(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_103), ((NimStringDesc*) NIM_NIL));
1941 	}
1942 	goto LA1_;
1943 	LA3_: ;
1944 	{
1945 		result = getEnv__pureZos_418(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_104), ((NimStringDesc*) NIM_NIL));
1946 	}
1947 	LA1_: ;
1948 	return result;
1949 }
N_INLINE(int,nimCmpMem)1950 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
1951 	int result;
1952 	result = (int)0;
1953 	result = memcmp(a, b, ((size_t) (size)));
1954 	return result;
1955 }
N_INLINE(NIM_BOOL,equalMem__system_1735)1956 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
1957 	NIM_BOOL result;
1958 	int T1_;
1959 	result = (NIM_BOOL)0;
1960 	T1_ = (int)0;
1961 	T1_ = nimCmpMem(a, b, size);
1962 	result = (T1_ == ((NI32) 0));
1963 	return result;
1964 }
N_INLINE(NIM_BOOL,eqStrings)1965 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
1966 	NIM_BOOL result;
1967 	NI alen;
1968 	NI blen;
1969 {	result = (NIM_BOOL)0;
1970 	alen = (a ? a->Sup.len : 0);
1971 	blen = (b ? b->Sup.len : 0);
1972 	{
1973 		if (!(alen == blen)) goto LA3_;
1974 		{
1975 			if (!(alen == ((NI) 0))) goto LA7_;
1976 			result = NIM_TRUE;
1977 			goto BeforeRet_;
1978 		}
1979 		LA7_: ;
1980 		result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
1981 		goto BeforeRet_;
1982 	}
1983 	LA3_: ;
1984 	}BeforeRet_: ;
1985 	return result;
1986 }
N_NIMCALL(NimStringDesc *,vccplatform__extccomp_872)1987 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, vccplatform__extccomp_872)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
1988 	NimStringDesc* result;
1989 	result = NIM_NIL;
1990 	{
1991 		NimStringDesc* exe;
1992 		if (!((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 6))) goto LA3_;
1993 		exe = getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_87));
1994 		{
1995 			NimStringDesc* T7_;
1996 			T7_ = NIM_NIL;
1997 			T7_ = nosextractFilename(exe);
1998 			if (!eqStrings(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_112), T7_)) goto LA8_;
1999 			switch ((*conf).target.targetCPU) {
2000 			case ((tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag) 1):
2001 			{
2002 				result = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_113));
2003 			}
2004 			break;
2005 			case ((tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag) 14):
2006 			{
2007 				result = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_114));
2008 			}
2009 			break;
2010 			case ((tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag) 11):
2011 			{
2012 				result = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_115));
2013 			}
2014 			break;
2015 			default:
2016 			{
2017 				result = ((NimStringDesc*) NIM_NIL);
2018 			}
2019 			break;
2020 			}
2021 		}
2022 		LA8_: ;
2023 	}
2024 	LA3_: ;
2025 	return result;
2026 }
N_NIMCALL(NimStringDesc *,getCompileCFileCmd__extccomp_997)2027 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompileCFileCmd__extccomp_997)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile, NIM_BOOL isMainFile, NIM_BOOL produceOutput) {
2028 	NimStringDesc* result;
2029 	tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c;
2030 	NimStringDesc* options;
2031 	NimStringDesc* T1_;
2032 	NimStringDesc* exe;
2033 	NimStringDesc* compilePattern;
2034 	NimStringDesc* includeCmd;
2035 	NimStringDesc* T32_;
2036 	NimStringDesc* T33_;
2037 	tyArray__Re75IspeoxXy2oCZHwcRrA T46_;
2038 	NimStringDesc* T47_;
2039 	NimStringDesc* cf;
2040 	NimStringDesc* objfile;
2041 	NimStringDesc* dfile;
2042 	NimStringDesc* T72_;
2043 	NimStringDesc* cfsh;
2044 	tyArray__rmMMhDIqORJzUU5zqeitSQ T73_;
2045 	NimStringDesc* T74_;
2046 	tyArray__68WB4OcBspSFyW4LY9cOceA T97_;
2047 	NimStringDesc* T98_;
2048 	result = NIM_NIL;
2049 	c = (*conf).cCompiler;
2050 	T1_ = NIM_NIL;
2051 	T1_ = noschangeFileExt((*cfile).cname, ((NimStringDesc*) NIM_NIL));
2052 	options = cFileSpecificOptions__extccomp_844(conf, (*cfile).nimname, T1_);
2053 	{
2054 		NIM_BOOL T4_;
2055 		NimStringDesc* T7_;
2056 		T4_ = (NIM_BOOL)0;
2057 		T4_ = useCpp__extccomp_906(conf, (*cfile).cname);
2058 		if (!T4_) goto LA5_;
2059 		T7_ = NIM_NIL;
2060 		T7_ = rawNewString((CC__extccomp_508[(c)- 1].Field20 ? CC__extccomp_508[(c)- 1].Field20->Sup.len : 0) + (options ? options->Sup.len : 0) + 1);
2061 appendString(T7_, CC__extccomp_508[(c)- 1].Field20);
2062 appendChar(T7_, 32);
2063 appendString(T7_, options);
2064 		options = T7_;
2065 	}
2066 	LA5_: ;
2067 	exe = getConfigVar__extccomp_627(conf, c, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_87));
2068 	{
2069 		if (!((exe ? exe->Sup.len : 0) == ((NI) 0))) goto LA10_;
2070 		exe = getCompilerExe__extccomp_921(conf, c, (*cfile).cname);
2071 	}
2072 	LA10_: ;
2073 	{
2074 		NIM_BOOL T14_;
2075 		T14_ = (NIM_BOOL)0;
2076 		T14_ = needsExeExt__extccomp_891(conf);
2077 		if (!T14_) goto LA15_;
2078 		exe = nosaddFileExt(exe, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_93));
2079 	}
2080 	LA15_: ;
2081 	{
2082 		NIM_BOOL T19_;
2083 		NIM_BOOL T20_;
2084 		NIM_BOOL T22_;
2085 		NimStringDesc* T27_;
2086 		T19_ = (NIM_BOOL)0;
2087 		T20_ = (NIM_BOOL)0;
2088 		T20_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 7))&63U)))!=0);
2089 		if (T20_) goto LA21_;
2090 		T22_ = (NIM_BOOL)0;
2091 		T22_ = hcrOn__options_569(conf);
2092 		if (!(T22_)) goto LA23_;
2093 		T22_ = !(isMainFile);
2094 		LA23_: ;
2095 		T20_ = T22_;
2096 		LA21_: ;
2097 		T19_ = T20_;
2098 		if (!(T19_)) goto LA24_;
2099 		T19_ = ((OS__platform_504[((*conf).target.targetOS)- 1].Field12 &((NU8)1<<((NU)(((tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg) 0))&7U)))!=0);
2100 		LA24_: ;
2101 		if (!T19_) goto LA25_;
2102 		T27_ = NIM_NIL;
2103 		T27_ = rawNewString((CC__extccomp_508[(c)- 1].Field16 ? CC__extccomp_508[(c)- 1].Field16->Sup.len : 0) + 1);
2104 appendChar(T27_, 32);
2105 appendString(T27_, CC__extccomp_508[(c)- 1].Field16);
2106 		options = resizeString(options, (T27_ ? T27_->Sup.len : 0) + 0);
2107 appendString(options, T27_);
2108 	}
2109 	LA25_: ;
2110 	{
2111 		if (!!((((*cfile).customArgs ? (*cfile).customArgs->Sup.len : 0) == 0))) goto LA30_;
2112 		options = addChar(options, 32);
2113 		options = resizeString(options, ((*cfile).customArgs ? (*cfile).customArgs->Sup.len : 0) + 0);
2114 appendString(options, (*cfile).customArgs);
2115 	}
2116 	LA30_: ;
2117 	compilePattern = NIM_NIL;
2118 	T32_ = NIM_NIL;
2119 	T33_ = NIM_NIL;
2120 	T33_ = nospquoteShell((*conf).libpath);
2121 	T32_ = rawNewString((CC__extccomp_508[(c)- 1].Field12 ? CC__extccomp_508[(c)- 1].Field12->Sup.len : 0) + (T33_ ? T33_->Sup.len : 0) + 0);
2122 appendString(T32_, CC__extccomp_508[(c)- 1].Field12);
2123 appendString(T32_, T33_);
2124 	includeCmd = T32_;
2125 	{
2126 		NIM_BOOL T36_;
2127 		T36_ = (NIM_BOOL)0;
2128 		T36_ = noAbsolutePaths__extccomp_831(conf);
2129 		if (!!(T36_)) goto LA37_;
2130 		{
2131 			NimStringDesc** includeDir;
2132 			NI i;
2133 			NI L;
2134 			NI T40_;
2135 			includeDir = (NimStringDesc**)0;
2136 			i = ((NI) 0);
2137 			T40_ = ((*conf).cIncludes ? (*conf).cIncludes->Sup.len : 0);
2138 			L = T40_;
2139 			{
2140 				while (1) {
2141 					tyArray__Re75IspeoxXy2oCZHwcRrA T43_;
2142 					NimStringDesc* T44_;
2143 					if (!(i < L)) goto LA42;
2144 					includeDir = (&(*conf).cIncludes->data[i]);
2145 					nimZeroMem((void*)T43_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
2146 					T43_[0] = copyString(CC__extccomp_508[(c)- 1].Field12);
2147 					T43_[1] = nospquoteShell((*includeDir));
2148 					T44_ = NIM_NIL;
2149 					T44_ = nsuJoinSep(T43_, 2, ((NimStringDesc*) NIM_NIL));
2150 					includeCmd = resizeString(includeCmd, (T44_ ? T44_->Sup.len : 0) + 0);
2151 appendString(includeCmd, T44_);
2152 					i += ((NI) 1);
2153 				} LA42: ;
2154 			}
2155 		}
2156 		compilePattern = nosjoinPath((*conf).cCompilerPath, exe);
2157 	}
2158 	goto LA34_;
2159 	LA37_: ;
2160 	{
2161 		compilePattern = getCompilerExe__extccomp_921(conf, c, (*cfile).cname);
2162 	}
2163 	LA34_: ;
2164 	nimZeroMem((void*)T46_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
2165 	T46_[0] = copyString(CC__extccomp_508[(c)- 1].Field12);
2166 	T46_[1] = nospquoteShell((*conf).projectPath);
2167 	T47_ = NIM_NIL;
2168 	T47_ = nsuJoinSep(T46_, 2, ((NimStringDesc*) NIM_NIL));
2169 	includeCmd = resizeString(includeCmd, (T47_ ? T47_->Sup.len : 0) + 0);
2170 appendString(includeCmd, T47_);
2171 	{
2172 		NIM_BOOL T50_;
2173 		T50_ = (NIM_BOOL)0;
2174 		T50_ = noAbsolutePaths__extccomp_831(conf);
2175 		if (!T50_) goto LA51_;
2176 		cf = nosextractFilename((*cfile).cname);
2177 	}
2178 	goto LA48_;
2179 	LA51_: ;
2180 	{
2181 		cf = (*cfile).cname;
2182 	}
2183 	LA48_: ;
2184 	{
2185 		NIM_BOOL T56_;
2186 		T56_ = (NIM_BOOL)0;
2187 		T56_ = isEmpty__options_4495((*cfile).obj);
2188 		if (!T56_) goto LA57_;
2189 		{
2190 			NIM_BOOL T61_;
2191 			T61_ = (NIM_BOOL)0;
2192 			T61_ = !((((*cfile).flags &((NU8)1<<((NU)(((tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA) 1))&7U)))!=0));
2193 			if (T61_) goto LA62_;
2194 			T61_ = noAbsolutePaths__extccomp_831(conf);
2195 			LA62_: ;
2196 			if (!T61_) goto LA63_;
2197 			objfile = toObjFile__extccomp_718(conf, cf);
2198 		}
2199 		goto LA59_;
2200 		LA63_: ;
2201 		{
2202 			NimStringDesc* T66_;
2203 			T66_ = NIM_NIL;
2204 			T66_ = toObjFile__extccomp_718(conf, cf);
2205 			objfile = completeCfilePath__extccomp_713(conf, T66_, NIM_TRUE);
2206 		}
2207 		LA59_: ;
2208 	}
2209 	goto LA54_;
2210 	LA57_: ;
2211 	{
2212 		NIM_BOOL T68_;
2213 		T68_ = (NIM_BOOL)0;
2214 		T68_ = noAbsolutePaths__extccomp_831(conf);
2215 		if (!T68_) goto LA69_;
2216 		objfile = nosextractFilename((*cfile).obj);
2217 	}
2218 	goto LA54_;
2219 	LA69_: ;
2220 	{
2221 		objfile = (*cfile).obj;
2222 	}
2223 	LA54_: ;
2224 	T72_ = NIM_NIL;
2225 	T72_ = noschangeFileExt(objfile, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_94));
2226 	dfile = nospquoteShell(T72_);
2227 	cfsh = nospquoteShell(cf);
2228 	nimZeroMem((void*)T73_, sizeof(tyArray__rmMMhDIqORJzUU5zqeitSQ));
2229 	T73_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_95));
2230 	T73_[1] = copyString(dfile);
2231 	T73_[2] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_96));
2232 	T73_[3] = copyString(cfsh);
2233 	T73_[4] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_97));
2234 	T73_[5] = nospquoteShell(objfile);
2235 	T73_[6] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_98));
2236 	T73_[7] = copyString(options);
2237 	T73_[8] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_99));
2238 	T73_[9] = copyString(includeCmd);
2239 	T73_[10] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_100));
2240 	T73_[11] = getPrefixDir__options_4061(conf);
2241 	T73_[12] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_101));
2242 	T73_[13] = copyString((*conf).libpath);
2243 	T73_[14] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_102));
2244 	T73_[15] = envFlags__extccomp_914(conf);
2245 	T74_ = NIM_NIL;
2246 	T74_ = nsuFormatOpenArray(compilePattern, T73_, 16);
2247 	result = nospquoteShell(T74_);
2248 	{
2249 		if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 45))&63U)))!=0)) goto LA77_;
2250 		{
2251 			NimStringDesc* asmfile;
2252 			NimStringDesc* T83_;
2253 			tyArray__Re75IspeoxXy2oCZHwcRrA T84_;
2254 			NimStringDesc* T85_;
2255 			if (!(((NI) 0) < (CC__extccomp_508[((*conf).cCompiler)- 1].Field19 ? CC__extccomp_508[((*conf).cCompiler)- 1].Field19->Sup.len : 0))) goto LA81_;
2256 			T83_ = NIM_NIL;
2257 			T83_ = noschangeFileExt(objfile, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_105));
2258 			asmfile = nospquoteShell(T83_);
2259 			nimZeroMem((void*)T84_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
2260 			T84_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_106));
2261 			T84_[1] = copyString(asmfile);
2262 			T85_ = NIM_NIL;
2263 			T85_ = nsuFormatOpenArray(CC__extccomp_508[((*conf).cCompiler)- 1].Field19, T84_, 2);
2264 			addOpt__extccomp_687((&result), T85_);
2265 			{
2266 				NimStringDesc* T90_;
2267 				if (!produceOutput) goto LA88_;
2268 				T90_ = NIM_NIL;
2269 				T90_ = rawNewString((asmfile ? asmfile->Sup.len : 0) + 25);
2270 appendString(T90_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_107));
2271 appendString(T90_, asmfile);
2272 				liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 99), T90_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_108, NIM_FALSE);
2273 			}
2274 			LA88_: ;
2275 		}
2276 		goto LA79_;
2277 		LA81_: ;
2278 		{
2279 			{
2280 				NimStringDesc* T96_;
2281 				if (!produceOutput) goto LA94_;
2282 				T96_ = NIM_NIL;
2283 				T96_ = rawNewString((CC__extccomp_508[((*conf).cCompiler)- 1].Field0 ? CC__extccomp_508[((*conf).cCompiler)- 1].Field0->Sup.len : 0) + 64);
2284 appendString(T96_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_109));
2285 appendString(T96_, CC__extccomp_508[((*conf).cCompiler)- 1].Field0);
2286 				liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 99), T96_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_110, NIM_FALSE);
2287 			}
2288 			LA94_: ;
2289 		}
2290 		LA79_: ;
2291 	}
2292 	LA77_: ;
2293 	result = addChar(result, 32);
2294 	nimZeroMem((void*)T97_, sizeof(tyArray__68WB4OcBspSFyW4LY9cOceA));
2295 	T97_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_95));
2296 	T97_[1] = copyString(dfile);
2297 	T97_[2] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_96));
2298 	T97_[3] = copyString(cfsh);
2299 	T97_[4] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_97));
2300 	T97_[5] = nospquoteShell(objfile);
2301 	T97_[6] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_98));
2302 	T97_[7] = copyString(options);
2303 	T97_[8] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_99));
2304 	T97_[9] = copyString(includeCmd);
2305 	T97_[10] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_100));
2306 	T98_ = NIM_NIL;
2307 	T98_ = getPrefixDir__options_4061(conf);
2308 	T97_[11] = nospquoteShell(T98_);
2309 	T97_[12] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_101));
2310 	T97_[13] = nospquoteShell((*conf).libpath);
2311 	T97_[14] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_111));
2312 	T97_[15] = vccplatform__extccomp_872(conf);
2313 	T97_[16] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_102));
2314 	T97_[17] = envFlags__extccomp_914(conf);
2315 	nsuAddf((&result), CC__extccomp_508[(c)- 1].Field6, T97_, 18);
2316 	return result;
2317 }
N_NIMCALL(void,footprint__extccomp_1046)2318 N_LIB_PRIVATE N_NIMCALL(void, footprint__extccomp_1046)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result) {
2319 	NimStringDesc* T1_;
2320 	tyArray__YtcvxHNKV4YiecPE9ap1mcA T2_;
2321 	NimStringDesc* T3_;
2322 	NimStringDesc* T4_;
2323 	T1_ = NIM_NIL;
2324 	nimZeroMem((void*)T2_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
2325 	secureHashFile__stdZsha49_871((*cfile).cname, T2_);
2326 	T3_ = NIM_NIL;
2327 	T3_ = dollar___stdZsha49_879(T2_);
2328 	T4_ = NIM_NIL;
2329 	T4_ = getCompileCFileCmd__extccomp_997(conf, cfile, NIM_FALSE, NIM_FALSE);
2330 	T1_ = rawNewString((T3_ ? T3_->Sup.len : 0) + (OS__platform_504[((*conf).target.targetOS)- 1].Field0 ? OS__platform_504[((*conf).target.targetOS)- 1].Field0->Sup.len : 0) + (CPU__platform_691[((*conf).target.targetCPU)- 1].Field0 ? CPU__platform_691[((*conf).target.targetCPU)- 1].Field0->Sup.len : 0) + (CC__extccomp_508[((*conf).cCompiler)- 1].Field0 ? CC__extccomp_508[((*conf).cCompiler)- 1].Field0->Sup.len : 0) + (T4_ ? T4_->Sup.len : 0) + 0);
2331 appendString(T1_, T3_);
2332 appendString(T1_, OS__platform_504[((*conf).target.targetOS)- 1].Field0);
2333 appendString(T1_, CPU__platform_691[((*conf).target.targetCPU)- 1].Field0);
2334 appendString(T1_, CC__extccomp_508[((*conf).cCompiler)- 1].Field0);
2335 appendString(T1_, T4_);
2336 	secureHash__stdZsha49_840(T1_->data, (T1_ ? T1_->Sup.len : 0), Result);
2337 }
N_INLINE(void,writeLine__msgs_432)2338 static N_INLINE(void, writeLine__msgs_432)(FILE* f, NimStringDesc** x, NI xLen_0) {
2339 	{
2340 		NimStringDesc** i;
2341 		NI i_2;
2342 		i = (NimStringDesc**)0;
2343 		i_2 = ((NI) 0);
2344 		{
2345 			while (1) {
2346 				if (!(i_2 < xLen_0)) goto LA3;
2347 				i = (&x[i_2]);
2348 				write__systemZio_205(f, (*i));
2349 				i_2 += ((NI) 1);
2350 			} LA3: ;
2351 		}
2352 	}
2353 	write__systemZio_205(f, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_116));
2354 }
N_NIMCALL(NIM_BOOL,externalFileChanged__extccomp_1050)2355 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, externalFileChanged__extccomp_1050)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile) {
2356 	NIM_BOOL result;
2357 	NimStringDesc* hashFile;
2358 	NimStringDesc* T5_;
2359 	tyArray__YtcvxHNKV4YiecPE9ap1mcA currentHash;
2360 	FILE* f;
2361 {	result = (NIM_BOOL)0;
2362 	{
2363 		if (!((*conf).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 3))) goto LA3_;
2364 		result = NIM_FALSE;
2365 		goto BeforeRet_;
2366 	}
2367 	LA3_: ;
2368 	T5_ = NIM_NIL;
2369 	T5_ = withPackageName__options_4173(conf, (*cfile).cname);
2370 	hashFile = toGeneratedFile__options_4235(conf, T5_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_77));
2371 	nimZeroMem((void*)currentHash, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
2372 	footprint__extccomp_1046(conf, cfile, currentHash);
2373 	f = (FILE*)0;
2374 	{
2375 		NIM_BOOL T8_;
2376 		tyArray__YtcvxHNKV4YiecPE9ap1mcA oldHash;
2377 		NimStringDesc* T11_;
2378 		NIM_BOOL T12_;
2379 		T8_ = (NIM_BOOL)0;
2380 		T8_ = open__systemZio_391(&f, hashFile, ((tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg) 0), ((NI) -1));
2381 		if (!T8_) goto LA9_;
2382 		nimZeroMem((void*)oldHash, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
2383 		T11_ = NIM_NIL;
2384 		T11_ = readLine__systemZio_273(f);
2385 		parseSecureHash__stdZsha49_912(T11_, oldHash);
2386 		close__systemZio_218(f);
2387 		T12_ = (NIM_BOOL)0;
2388 		T12_ = eqeq___stdZsha49_920(oldHash, currentHash);
2389 		result = !(T12_);
2390 	}
2391 	goto LA6_;
2392 	LA9_: ;
2393 	{
2394 		result = NIM_TRUE;
2395 	}
2396 	LA6_: ;
2397 	{
2398 		if (!result) goto LA16_;
2399 		{
2400 			NIM_BOOL T20_;
2401 			tyArray__nHXaesL0DJZHyVS07ARPRA T23_;
2402 			T20_ = (NIM_BOOL)0;
2403 			T20_ = open__systemZio_391(&f, hashFile, ((tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg) 1), ((NI) -1));
2404 			if (!T20_) goto LA21_;
2405 			nimZeroMem((void*)T23_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2406 			T23_[0] = dollar___stdZsha49_879(currentHash);
2407 			writeLine__msgs_432(f, T23_, 1);
2408 			close__systemZio_218(f);
2409 		}
2410 		LA21_: ;
2411 	}
2412 	LA16_: ;
2413 	}BeforeRet_: ;
2414 	return result;
2415 }
N_INLINE(NI,pluspercent___system_696)2416 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
2417 	NI result;
2418 	result = (NI)0;
2419 	result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
2420 	return result;
2421 }
N_INLINE(void,incRef__system_5317)2422 static N_INLINE(void, incRef__system_5317)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2423 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
2424 }
N_INLINE(NI,minuspercent___system_716)2425 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
2426 	NI result;
2427 	result = (NI)0;
2428 	result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
2429 	return result;
2430 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5279)2431 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5279)(void* usr) {
2432 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
2433 	NI T1_;
2434 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2435 	T1_ = (NI)0;
2436 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
2437 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
2438 	return result;
2439 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)2440 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
2441 	NIM_BOOL result;
2442 	result = (NIM_BOOL)0;
2443 	result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
2444 	return result;
2445 }
N_INLINE(void,rtlAddZCT__system_5322)2446 static N_INLINE(void, rtlAddZCT__system_5322)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2447 	addZCT__system_5273((&gch__system_5226.zct), c);
2448 }
N_INLINE(void,decRef__system_5324)2449 static N_INLINE(void, decRef__system_5324)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2450 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
2451 	{
2452 		NIM_BOOL T3_;
2453 		T3_ = (NIM_BOOL)0;
2454 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
2455 		if (!T3_) goto LA4_;
2456 		rtlAddZCT__system_5322(c);
2457 	}
2458 	LA4_: ;
2459 }
N_INLINE(void,asgnRef)2460 static N_INLINE(void, asgnRef)(void** dest, void* src) {
2461 	{
2462 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
2463 		if (!!((src == NIM_NIL))) goto LA3_;
2464 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2465 		T5_ = usrToCell__system_5279(src);
2466 		incRef__system_5317(T5_);
2467 	}
2468 	LA3_: ;
2469 	{
2470 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
2471 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
2472 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2473 		T10_ = usrToCell__system_5279((*dest));
2474 		decRef__system_5324(T10_);
2475 	}
2476 	LA8_: ;
2477 	(*dest) = src;
2478 }
N_NIMCALL(void,addExternalFileToCompile__extccomp_1066)2479 N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToCompile__extccomp_1066)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* c) {
2480 	NI T12_;
2481 	{
2482 		NIM_BOOL T3_;
2483 		NIM_BOOL T4_;
2484 		NIM_BOOL T7_;
2485 		T3_ = (NIM_BOOL)0;
2486 		T4_ = (NIM_BOOL)0;
2487 		T4_ = !((((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 1))&63U)))!=0));
2488 		if (!(T4_)) goto LA5_;
2489 		T4_ = nosfileExists((*c).obj);
2490 		LA5_: ;
2491 		T3_ = T4_;
2492 		if (!(T3_)) goto LA6_;
2493 		T7_ = (NIM_BOOL)0;
2494 		T7_ = externalFileChanged__extccomp_1050(conf, (&(*c)));
2495 		T3_ = !(T7_);
2496 		LA6_: ;
2497 		if (!T3_) goto LA8_;
2498 		(*c).flags |= ((NU8)1)<<((((tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA) 0)) & 7);
2499 	}
2500 	goto LA1_;
2501 	LA8_: ;
2502 	{
2503 		NIM_BOOL T11_;
2504 		T11_ = (NIM_BOOL)0;
2505 		T11_ = nostryRemoveFile((*c).obj);
2506 		(void)(T11_);
2507 	}
2508 	LA1_: ;
2509 	asgnRef((void**) (&(*conf).toCompile), (tySequence__pK3qSsBZwdXd6qyUMkd5Jw*) incrSeqV3((TGenericSeq*)((*conf).toCompile), (&NTIcfilelist__pK3qSsBZwdXd6qyUMkd5Jw_)));
2510 	T12_ = (*conf).toCompile->Sup.len++;
2511 	genericAssign((void*)(&(*conf).toCompile->data[T12_]), (void*)(&(*c)), (&NTIcfile__i9cKq1ZGd1wgagjUEHLVFtg_));
2512 }
N_NIMCALL(void,addExternalFileToCompile__extccomp_1081)2513 N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToCompile__extccomp_1081)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename) {
2514 	tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg c;
2515 	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T1_;
2516 	NimStringDesc* T2_;
2517 	nimZeroMem((void*)(&c), sizeof(tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg));
2518 	nimZeroMem((void*)(&c), sizeof(tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg));
2519 	nimZeroMem((void*)(&T1_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
2520 	splitFile__pathutils_26(filename, (&T1_));
2521 	c.nimname = copyString(T1_.Field1);
2522 	c.cname = copyString(filename);
2523 	T2_ = NIM_NIL;
2524 	T2_ = completeCfilePath__extccomp_713(conf, filename, NIM_FALSE);
2525 	c.obj = toObjFile__extccomp_718(conf, T2_);
2526 	c.flags = 2;
2527 	addExternalFileToCompile__extccomp_1066(conf, (&c));
2528 }
N_INLINE(void,nimGCunrefNoCycle)2529 static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
2530 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
2531 	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2532 	T1_ = usrToCell__system_5279(p);
2533 	decRef__system_5324(T1_);
2534 }
N_NIMCALL(void,insert__extccomp_757)2535 N_LIB_PRIVATE N_NIMCALL(void, insert__extccomp_757)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ** x, NimStringDesc* item, NI i) {
2536 	NI xlX60gensym21_;
2537 	NI T1_;
2538 	NI jX60gensym21_;
2539 	NimStringDesc* T4_;
2540 	T1_ = ((*x) ? (*x)->Sup.len : 0);
2541 	xlX60gensym21_ = T1_;
2542 	unsureAsgnRef((void**) (&(*x)), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) setLengthSeqV2(&((*x))->Sup, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), ((NI) ((NI)(xlX60gensym21_ + ((NI) 1))))));
2543 	jX60gensym21_ = (NI)(xlX60gensym21_ - ((NI) 1));
2544 	{
2545 		while (1) {
2546 			if (!(((NI) (i)) <= jX60gensym21_)) goto LA3;
2547 			asgnRef((void**) (&(*x)->data[(NI)(jX60gensym21_ + ((NI) 1))]), (*x)->data[jX60gensym21_]);
2548 			jX60gensym21_ -= ((NI) 1);
2549 		} LA3: ;
2550 	}
2551 	T4_ = NIM_NIL;
2552 	T4_ = (*x)->data[i]; (*x)->data[i] = copyStringRC1(item);
2553 	if (T4_) nimGCunrefNoCycle(T4_);
2554 }
N_NIMCALL(void,addExternalFileToLink__extccomp_754)2555 N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToLink__extccomp_754)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename) {
2556 	insert__extccomp_757((&(*conf).externalToLink), filename, ((NI) 0));
2557 }
N_INLINE(NIM_BOOL,contains__extccomp_612)2558 static N_INLINE(NIM_BOOL, contains__extccomp_612)(tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw s, tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ value) {
2559 	NIM_BOOL result;
2560 	NIM_BOOL T1_;
2561 	result = (NIM_BOOL)0;
2562 	T1_ = (NIM_BOOL)0;
2563 	T1_ = (s.a <= value);
2564 	if (!(T1_)) goto LA2_;
2565 	T1_ = (value <= s.b);
2566 	LA2_: ;
2567 	result = T1_;
2568 	return result;
2569 }
N_INLINE(tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw,dotdot___extccomp_591)2570 static N_INLINE(tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw, dotdot___extccomp_591)(tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ a, tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ b) {
2571 	tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw result;
2572 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw));
2573 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw));
2574 	result.a = a;
2575 	result.b = b;
2576 	return result;
2577 }
N_NIMCALL(NIM_BOOL,isVSCompatible__extccomp_575)2578 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isVSCompatible__extccomp_575)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2579 	NIM_BOOL result;
2580 	NIM_BOOL T1_;
2581 	NIM_BOOL T2_;
2582 	NIM_BOOL T5_;
2583 	tyObject_HSlice__7MLmFrMXlWlXV4VMUMaFZw T7_;
2584 {	result = (NIM_BOOL)0;
2585 	T1_ = (NIM_BOOL)0;
2586 	T2_ = (NIM_BOOL)0;
2587 	T2_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 6));
2588 	if (T2_) goto LA3_;
2589 	T2_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 11));
2590 	LA3_: ;
2591 	T1_ = T2_;
2592 	if (T1_) goto LA4_;
2593 	T5_ = (NIM_BOOL)0;
2594 	T5_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 9));
2595 	if (!(T5_)) goto LA6_;
2596 	T7_ = dotdot___extccomp_591(((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 1), ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
2597 	T5_ = contains__extccomp_612(T7_, (*conf).target.hostOS);
2598 	LA6_: ;
2599 	T1_ = T5_;
2600 	LA4_: ;
2601 	result = T1_;
2602 	goto BeforeRet_;
2603 	}BeforeRet_: ;
2604 	return result;
2605 }
N_NIMCALL(void,addCompileOptionCmd__extccomp_699)2606 N_LIB_PRIVATE N_NIMCALL(void, addCompileOptionCmd__extccomp_699)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option) {
2607 	NI T1_;
2608 	NimStringDesc* T2_;
2609 	asgnRef((void**) (&(*conf).compileOptionsCmd), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)((*conf).compileOptionsCmd), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_)));
2610 	T1_ = (*conf).compileOptionsCmd->Sup.len++;
2611 	T2_ = NIM_NIL;
2612 	T2_ = (*conf).compileOptionsCmd->data[T1_]; (*conf).compileOptionsCmd->data[T1_] = copyStringRC1(option);
2613 	if (T2_) nimGCunrefNoCycle(T2_);
2614 }
N_NIMCALL(void,addLinkOptionCmd__extccomp_696)2615 N_LIB_PRIVATE N_NIMCALL(void, addLinkOptionCmd__extccomp_696)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option) {
2616 	addOpt__extccomp_687((&(*conf).linkOptionsCmd), option);
2617 }
N_NIMCALL(tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA,nameToCC__extccomp_521)2618 N_LIB_PRIVATE N_NIMCALL(tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA, nameToCC__extccomp_521)(NimStringDesc* name) {
2619 	tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA result;
2620 {	result = (tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA)0;
2621 	{
2622 		tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA i;
2623 		NI res;
2624 		i = (tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA)0;
2625 		res = ((NI) 1);
2626 		{
2627 			while (1) {
2628 				if (!(res <= ((NI) 11))) goto LA3;
2629 				i = ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) (res));
2630 				{
2631 					NI T6_;
2632 					T6_ = (NI)0;
2633 					T6_ = nsuCmpIgnoreStyle(name, CC__extccomp_508[(i)- 1].Field0);
2634 					if (!(T6_ == ((NI) 0))) goto LA7_;
2635 					result = i;
2636 					goto BeforeRet_;
2637 				}
2638 				LA7_: ;
2639 				res += ((NI) 1);
2640 			} LA3: ;
2641 		}
2642 	}
2643 	result = ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 0);
2644 	}BeforeRet_: ;
2645 	return result;
2646 }
N_NIMCALL(NimStringDesc *,listCCnames__extccomp_552)2647 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, listCCnames__extccomp_552)(void) {
2648 	NimStringDesc* result;
2649 	result = NIM_NIL;
2650 	result = ((NimStringDesc*) NIM_NIL);
2651 	{
2652 		tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA i;
2653 		NI res;
2654 		i = (tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA)0;
2655 		res = ((NI) 1);
2656 		{
2657 			while (1) {
2658 				if (!(res <= ((NI) 11))) goto LA3;
2659 				i = ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) (res));
2660 				{
2661 					if (!(((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 1) < i)) goto LA6_;
2662 					result = resizeString(result, 2);
2663 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
2664 				}
2665 				LA6_: ;
2666 				result = resizeString(result, (CC__extccomp_508[(i)- 1].Field0 ? CC__extccomp_508[(i)- 1].Field0->Sup.len : 0) + 0);
2667 appendString(result, CC__extccomp_508[(i)- 1].Field0);
2668 				res += ((NI) 1);
2669 			} LA3: ;
2670 		}
2671 	}
2672 	return result;
2673 }
N_NIMCALL(void,setCC__extccomp_649)2674 N_LIB_PRIVATE N_NIMCALL(void, setCC__extccomp_649)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* ccname, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
2675 	(*conf).cCompiler = nameToCC__extccomp_521(ccname);
2676 	{
2677 		tyArray__Re75IspeoxXy2oCZHwcRrA T5_;
2678 		NimStringDesc* T6_;
2679 		if (!((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 0))) goto LA3_;
2680 		nimZeroMem((void*)T5_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
2681 		T5_[0] = copyString(ccname);
2682 		T5_[1] = listCCnames__extccomp_552();
2683 		T6_ = NIM_NIL;
2684 		T6_ = nsuFormatOpenArray(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_117), T5_, 2);
2685 		liMessage__msgs_1118(conf, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T6_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__OyL9acDBDoBfMwa5zb1Y88w_119, NIM_FALSE);
2686 	}
2687 	LA3_: ;
2688 	asgnRef((void**) (&(*conf).compileOptions), getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_120)));
2689 	asgnRef((void**) (&(*conf).linkOptions), ((NimStringDesc*) NIM_NIL));
2690 	asgnRef((void**) (&(*conf).cCompilerPath), getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_121)));
2691 	{
2692 		tyTuple__yByxe8FSFNTgs4tcAkTYag c;
2693 		tyEnum_TSystemCC__ZeHvrqzZ3PwBFstnv8kDYg i;
2694 		nimZeroMem((void*)(&c), sizeof(tyTuple__yByxe8FSFNTgs4tcAkTYag));
2695 		i = ((tyEnum_TSystemCC__ZeHvrqzZ3PwBFstnv8kDYg) 1);
2696 		{
2697 			while (1) {
2698 				nimCopyMem((void*)(&c), (NIM_CONST void*)(&CC__extccomp_508[(i)- 1]), sizeof(c));
2699 				undefSymbol__condsyms_8((*conf).symbols, c.Field0);
2700 				{
2701 					if (!(((tyEnum_TSystemCC__ZeHvrqzZ3PwBFstnv8kDYg) 11) <= i)) goto LA12_;
2702 					goto LA8;
2703 				}
2704 				LA12_: ;
2705 				i += ((NI) 1);
2706 			}
2707 		} LA8: ;
2708 	}
2709 	defineSymbol__condsyms_4((*conf).symbols, CC__extccomp_508[((*conf).cCompiler)- 1].Field0, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_122));
2710 }
N_NIMCALL(void,addLinkOption__extccomp_690)2711 N_LIB_PRIVATE N_NIMCALL(void, addLinkOption__extccomp_690)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option) {
2712 	addOpt__extccomp_687((&(*conf).linkOptions), option);
2713 }
N_NIMCALL(void,addCompileOption__extccomp_693)2714 N_LIB_PRIVATE N_NIMCALL(void, addCompileOption__extccomp_693)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option) {
2715 	{
2716 		NI T3_;
2717 		T3_ = (NI)0;
2718 		T3_ = nsuFindStr((*conf).compileOptions, option, ((NI) 0), ((NI) 0));
2719 		if (!(T3_ < ((NI) 0))) goto LA4_;
2720 		addOpt__extccomp_687((&(*conf).compileOptions), option);
2721 	}
2722 	LA4_: ;
2723 }
N_NIMCALL(void,addLocalCompileOption__extccomp_738)2724 N_LIB_PRIVATE N_NIMCALL(void, addLocalCompileOption__extccomp_738)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option, NimStringDesc* nimfile) {
2725 	NimStringDesc* key;
2726 	NimStringDesc* T1_;
2727 	NimStringDesc* value;
2728 	T1_ = NIM_NIL;
2729 	T1_ = withPackageName__options_4173(conf, nimfile);
2730 	key = completeCfilePath__extccomp_713(conf, T1_, NIM_TRUE);
2731 	value = getOrDefault__pureZstrtabs_173((*conf).cfileSpecificOptions, key, ((NimStringDesc*) NIM_NIL));
2732 	{
2733 		NI T4_;
2734 		T4_ = (NI)0;
2735 		T4_ = nsuFindStr(value, option, ((NI) 0), ((NI) 0));
2736 		if (!(T4_ < ((NI) 0))) goto LA5_;
2737 		addOpt__extccomp_687((&value), option);
2738 		nstPut((*conf).cfileSpecificOptions, key, value);
2739 	}
2740 	LA5_: ;
2741 }
N_NIMCALL(void,initVars__extccomp_706)2742 N_LIB_PRIVATE N_NIMCALL(void, initVars__extccomp_706)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2743 	NimStringDesc* T8_;
2744 	{
2745 		tyTuple__yByxe8FSFNTgs4tcAkTYag c;
2746 		tyEnum_TSystemCC__ZeHvrqzZ3PwBFstnv8kDYg i;
2747 		nimZeroMem((void*)(&c), sizeof(tyTuple__yByxe8FSFNTgs4tcAkTYag));
2748 		i = ((tyEnum_TSystemCC__ZeHvrqzZ3PwBFstnv8kDYg) 1);
2749 		{
2750 			while (1) {
2751 				nimCopyMem((void*)(&c), (NIM_CONST void*)(&CC__extccomp_508[(i)- 1]), sizeof(c));
2752 				undefSymbol__condsyms_8((*conf).symbols, c.Field0);
2753 				{
2754 					if (!(((tyEnum_TSystemCC__ZeHvrqzZ3PwBFstnv8kDYg) 11) <= i)) goto LA6_;
2755 					goto LA2;
2756 				}
2757 				LA6_: ;
2758 				i += ((NI) 1);
2759 			}
2760 		} LA2: ;
2761 	}
2762 	defineSymbol__condsyms_4((*conf).symbols, CC__extccomp_508[((*conf).cCompiler)- 1].Field0, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_122));
2763 	T8_ = NIM_NIL;
2764 	T8_ = getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_120));
2765 	addCompileOption__extccomp_693(conf, T8_);
2766 	{
2767 		if (!(((*conf).cCompilerPath ? (*conf).cCompilerPath->Sup.len : 0) == ((NI) 0))) goto LA11_;
2768 		asgnRef((void**) (&(*conf).cCompilerPath), getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_121)));
2769 	}
2770 	LA11_: ;
2771 }
N_INLINE(void,pushSafePoint)2772 static N_INLINE(void, pushSafePoint)(TSafePoint* s) {
2773 	(*s).prev = excHandler__system_2565;
2774 	excHandler__system_2565 = s;
2775 }
N_INLINE(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q *,X5BX5D___pureZjson_3043)2776 static N_INLINE(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, X5BX5D___pureZjson_3043)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node, NimStringDesc* name) {
2777 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* result;
2778 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q** T1_;
2779 	result = NIM_NIL;
2780 	T1_ = (tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q**)0;
2781 	T1_ = X5BX5D___pureZjson_2638((&(*node)._kind_6.fields), name);
2782 	result = (*T1_);
2783 	return result;
2784 }
N_INLINE(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q *,X5BX5D___pureZjson_3118)2785 static N_INLINE(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, X5BX5D___pureZjson_3118)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node, NI index) {
2786 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* result;
2787 {	result = NIM_NIL;
2788 	result = (*node)._kind_7.elems->data[index];
2789 	goto BeforeRet_;
2790 	}BeforeRet_: ;
2791 	return result;
2792 }
N_INLINE(void,addInt__stdZprivateZdigitsutils_189)2793 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
2794 	addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
2795 }
N_NIMCALL(void,addQuoted__extccomp_2090)2796 N_LIB_PRIVATE N_NIMCALL(void, addQuoted__extccomp_2090)(NimStringDesc** s, NI x) {
2797 	addInt__stdZprivateZdigitsutils_189(s, x);
2798 }
N_NIMCALL(NimStringDesc *,dollar___extccomp_2070)2799 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___extccomp_2070)(tyTuple__awOivLjlO76sGdHY7nQUjQ* x) {
2800 	NimStringDesc* result;
2801 	NI count;
2802 	result = NIM_NIL;
2803 	result = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_135));
2804 	count = ((NI) 0);
2805 	{
2806 		if (!(((NI) 0) < count)) goto LA3_;
2807 		result = resizeString(result, 2);
2808 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
2809 	}
2810 	LA3_: ;
2811 	count += ((NI) 1);
2812 	addQuoted__extccomp_2090((&result), (*x).Field0);
2813 	{
2814 		if (!(((NI) 0) < count)) goto LA7_;
2815 		result = resizeString(result, 2);
2816 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
2817 	}
2818 	LA7_: ;
2819 	count += ((NI) 1);
2820 	addQuoted__extccomp_2090((&result), (*x).Field1);
2821 	{
2822 		if (!(((NI) 0) < count)) goto LA11_;
2823 		result = resizeString(result, 2);
2824 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
2825 	}
2826 	LA11_: ;
2827 	count += ((NI) 1);
2828 	addQuoted__pureZos_449((&result), (*x).Field2);
2829 	{
2830 		if (!(((NI) 0) < count)) goto LA15_;
2831 		result = resizeString(result, 2);
2832 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
2833 	}
2834 	LA15_: ;
2835 	count += ((NI) 1);
2836 	{
2837 		if (!((*x).Field3 == 0)) goto LA19_;
2838 		result = resizeString(result, 3);
2839 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_136));
2840 	}
2841 	goto LA17_;
2842 	LA19_: ;
2843 	{
2844 		addQuoted__stdZjsonutils_444((&result), (*x).Field3);
2845 	}
2846 	LA17_: ;
2847 	{
2848 		if (!(count == ((NI) 1))) goto LA24_;
2849 		result = resizeString(result, 1);
2850 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_137));
2851 	}
2852 	LA24_: ;
2853 	result = resizeString(result, 1);
2854 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_138));
2855 	return result;
2856 }
N_NIMCALL(void,fromJson__extccomp_2016)2857 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_2016)(tyTuple__UV3llMMYFckfui8YMBuUZA* a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt) {
2858 	NI i;
2859 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T12_;
2860 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T13_;
2861 	{
2862 		NIM_BOOL T3_;
2863 		tyTuple__jq7X5k7hWG0tdTZTDkiyGQ T6_;
2864 		NimStringDesc* T7_;
2865 		T3_ = (NIM_BOOL)0;
2866 		T3_ = eqeq___pureZjson_2044(b, ((tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*) NIM_NIL));
2867 		if (!!(!(T3_))) goto LA4_;
2868 		nimZeroMem((void*)(&T6_), sizeof(tyTuple__jq7X5k7hWG0tdTZTDkiyGQ));
2869 		T6_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_132));
2870 		T6_.Field1 = b;
2871 		T7_ = NIM_NIL;
2872 		T7_ = dollar___stdZjsonutils_407(T6_);
2873 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_124), T7_);
2874 	}
2875 	LA4_: ;
2876 	{
2877 		if (!!(((*b).kind == ((tyEnum_JsonNodeKind__RUngo7nCHe6O8aBGIcrhtg) 6)))) goto LA10_;
2878 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_133), reprEnum((NI)(*b).kind, (&NTIjsonnodekind__RUngo7nCHe6O8aBGIcrhtg_)));
2879 	}
2880 	LA10_: ;
2881 	i = ((NI) 0);
2882 	T12_ = NIM_NIL;
2883 	T12_ = X5BX5D___pureZjson_3118(b, i);
2884 	fromJson__stdZjsonutils_566((&(*a).Field0), T12_, opt);
2885 	i += ((NI) 1);
2886 	T13_ = NIM_NIL;
2887 	T13_ = X5BX5D___pureZjson_3118(b, i);
2888 	fromJson__stdZjsonutils_566((&(*a).Field1), T13_, opt);
2889 	i += ((NI) 1);
2890 	{
2891 		NI T16_;
2892 		tyTuple__awOivLjlO76sGdHY7nQUjQ T19_;
2893 		NimStringDesc* T20_;
2894 		T16_ = (NI)0;
2895 		T16_ = len__pureZjson_2989(b);
2896 		if (!!((T16_ == i))) goto LA17_;
2897 		nimZeroMem((void*)(&T19_), sizeof(tyTuple__awOivLjlO76sGdHY7nQUjQ));
2898 		T19_.Field0 = len__pureZjson_2989(b);
2899 		T19_.Field1 = i;
2900 		T19_.Field2 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_132));
2901 		T19_.Field3 = b;
2902 		T20_ = NIM_NIL;
2903 		T20_ = dollar___extccomp_2070((&T19_));
2904 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_134), T20_);
2905 	}
2906 	LA17_: ;
2907 }
N_NIMCALL(void,fromJson__extccomp_1964)2908 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_1964)(tySequence__4eQHGndY6XBYpFOH09apV8Q** a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt) {
2909 	NI T8_;
2910 	{
2911 		NIM_BOOL T3_;
2912 		tyTuple__jq7X5k7hWG0tdTZTDkiyGQ T6_;
2913 		NimStringDesc* T7_;
2914 		T3_ = (NIM_BOOL)0;
2915 		T3_ = eqeq___pureZjson_2044(b, ((tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*) NIM_NIL));
2916 		if (!!(!(T3_))) goto LA4_;
2917 		nimZeroMem((void*)(&T6_), sizeof(tyTuple__jq7X5k7hWG0tdTZTDkiyGQ));
2918 		T6_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_131));
2919 		T6_.Field1 = b;
2920 		T7_ = NIM_NIL;
2921 		T7_ = dollar___stdZjsonutils_407(T6_);
2922 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_124), T7_);
2923 	}
2924 	LA4_: ;
2925 	T8_ = (NI)0;
2926 	T8_ = len__pureZjson_2989(b);
2927 	unsureAsgnRef((void**) (&(*a)), (tySequence__4eQHGndY6XBYpFOH09apV8Q*) setLengthSeqV2(&((*a))->Sup, (&NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_), ((NI) (T8_))));
2928 	{
2929 		NI i;
2930 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* val;
2931 		tySequence__oLpBKXzW3hF9aCVMo5EymfQ* colontmp_;
2932 		tySequence__oLpBKXzW3hF9aCVMo5EymfQ* T10_;
2933 		NI i_2;
2934 		NI L;
2935 		NI T11_;
2936 		i = (NI)0;
2937 		val = NIM_NIL;
2938 		colontmp_ = NIM_NIL;
2939 		T10_ = NIM_NIL;
2940 		T10_ = NIM_NIL;
2941 		colontmp_ = getElems__pureZjson_207(b, T10_);
2942 		i_2 = ((NI) 0);
2943 		T11_ = (colontmp_ ? colontmp_->Sup.len : 0);
2944 		L = T11_;
2945 		{
2946 			while (1) {
2947 				if (!(i_2 < L)) goto LA13;
2948 				i = i_2;
2949 				val = colontmp_->data[i_2];
2950 				fromJson__extccomp_2016((&(*a)->data[i]), val, opt);
2951 				i_2 += ((NI) 1);
2952 			} LA13: ;
2953 		}
2954 	}
2955 }
N_NIMCALL(void,fromJson__extccomp_2152)2956 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_2152)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ** a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt) {
2957 	NI T8_;
2958 	{
2959 		NIM_BOOL T3_;
2960 		tyTuple__jq7X5k7hWG0tdTZTDkiyGQ T6_;
2961 		NimStringDesc* T7_;
2962 		T3_ = (NIM_BOOL)0;
2963 		T3_ = eqeq___pureZjson_2044(b, ((tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*) NIM_NIL));
2964 		if (!!(!(T3_))) goto LA4_;
2965 		nimZeroMem((void*)(&T6_), sizeof(tyTuple__jq7X5k7hWG0tdTZTDkiyGQ));
2966 		T6_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_140));
2967 		T6_.Field1 = b;
2968 		T7_ = NIM_NIL;
2969 		T7_ = dollar___stdZjsonutils_407(T6_);
2970 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_124), T7_);
2971 	}
2972 	LA4_: ;
2973 	T8_ = (NI)0;
2974 	T8_ = len__pureZjson_2989(b);
2975 	unsureAsgnRef((void**) (&(*a)), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) setLengthSeqV2(&((*a))->Sup, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), ((NI) (T8_))));
2976 	{
2977 		NI i;
2978 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* val;
2979 		tySequence__oLpBKXzW3hF9aCVMo5EymfQ* colontmp_;
2980 		tySequence__oLpBKXzW3hF9aCVMo5EymfQ* T10_;
2981 		NI i_2;
2982 		NI L;
2983 		NI T11_;
2984 		i = (NI)0;
2985 		val = NIM_NIL;
2986 		colontmp_ = NIM_NIL;
2987 		T10_ = NIM_NIL;
2988 		T10_ = NIM_NIL;
2989 		colontmp_ = getElems__pureZjson_207(b, T10_);
2990 		i_2 = ((NI) 0);
2991 		T11_ = (colontmp_ ? colontmp_->Sup.len : 0);
2992 		L = T11_;
2993 		{
2994 			while (1) {
2995 				if (!(i_2 < L)) goto LA13;
2996 				i = i_2;
2997 				val = colontmp_->data[i_2];
2998 				fromJson__stdZjsonutils_566((&(*a)->data[i]), val, opt);
2999 				i_2 += ((NI) 1);
3000 			} LA13: ;
3001 		}
3002 	}
3003 }
N_NIMCALL(NIM_BOOL,to__extccomp_2283)3004 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, to__extccomp_2283)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node) {
3005 	NIM_BOOL result;
3006 	NimStringDesc* jsonPath;
3007 	result = (NIM_BOOL)0;
3008 	jsonPath = ((NimStringDesc*) NIM_NIL);
3009 	initFromJson__pureZjson_5264((&result), node, (&jsonPath));
3010 	return result;
3011 }
N_NIMCALL(void,fromJson__extccomp_2272)3012 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_2272)(NIM_BOOL* a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt) {
3013 	{
3014 		NIM_BOOL T3_;
3015 		tyTuple__jq7X5k7hWG0tdTZTDkiyGQ T6_;
3016 		NimStringDesc* T7_;
3017 		T3_ = (NIM_BOOL)0;
3018 		T3_ = eqeq___pureZjson_2044(b, ((tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*) NIM_NIL));
3019 		if (!!(!(T3_))) goto LA4_;
3020 		nimZeroMem((void*)(&T6_), sizeof(tyTuple__jq7X5k7hWG0tdTZTDkiyGQ));
3021 		T6_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_145));
3022 		T6_.Field1 = b;
3023 		T7_ = NIM_NIL;
3024 		T7_ = dollar___stdZjsonutils_407(T6_);
3025 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_124), T7_);
3026 	}
3027 	LA4_: ;
3028 	(*a) = to__extccomp_2283(b);
3029 }
N_NIMCALL(NimStringDesc *,dollar___extccomp_2441)3030 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___extccomp_2441)(tyTuple__YOdO3R1J4biIW9bY9agwbAQw* x) {
3031 	NimStringDesc* result;
3032 	NI count;
3033 	result = NIM_NIL;
3034 	result = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_135));
3035 	count = ((NI) 0);
3036 	{
3037 		if (!(((NI) 0) < count)) goto LA3_;
3038 		result = resizeString(result, 2);
3039 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
3040 	}
3041 	LA3_: ;
3042 	count += ((NI) 1);
3043 	addQuoted__extccomp_2090((&result), (*x).Field0);
3044 	{
3045 		if (!(((NI) 0) < count)) goto LA7_;
3046 		result = resizeString(result, 2);
3047 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
3048 	}
3049 	LA7_: ;
3050 	count += ((NI) 1);
3051 	addQuoted__extccomp_2090((&result), (*x).Field1);
3052 	{
3053 		if (!(((NI) 0) < count)) goto LA11_;
3054 		result = resizeString(result, 2);
3055 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
3056 	}
3057 	LA11_: ;
3058 	count += ((NI) 1);
3059 	addQuoted__extccomp_2090((&result), (*x).Field2);
3060 	{
3061 		if (!(((NI) 0) < count)) goto LA15_;
3062 		result = resizeString(result, 2);
3063 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
3064 	}
3065 	LA15_: ;
3066 	count += ((NI) 1);
3067 	addQuoted__pureZos_449((&result), (*x).Field3);
3068 	{
3069 		if (!(((NI) 0) < count)) goto LA19_;
3070 		result = resizeString(result, 2);
3071 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
3072 	}
3073 	LA19_: ;
3074 	count += ((NI) 1);
3075 	{
3076 		if (!((*x).Field4 == 0)) goto LA23_;
3077 		result = resizeString(result, 3);
3078 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_136));
3079 	}
3080 	goto LA21_;
3081 	LA23_: ;
3082 	{
3083 		addQuoted__stdZjsonutils_444((&result), (*x).Field4);
3084 	}
3085 	LA21_: ;
3086 	{
3087 		if (!(count == ((NI) 1))) goto LA28_;
3088 		result = resizeString(result, 1);
3089 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_137));
3090 	}
3091 	LA28_: ;
3092 	result = resizeString(result, 1);
3093 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_138));
3094 	return result;
3095 }
N_NIMCALL(void,fromJson__extccomp_1850)3096 N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_1850)(tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog* a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt) {
3097 	NI numX60gensym14_;
3098 	NI numMatchedX60gensym14_;
3099 	NIM_BOOL okX60gensym14_;
3100 	{
3101 		NIM_BOOL T3_;
3102 		tyTuple__jq7X5k7hWG0tdTZTDkiyGQ T6_;
3103 		NimStringDesc* T7_;
3104 		T3_ = (NIM_BOOL)0;
3105 		T3_ = eqeq___pureZjson_2044(b, ((tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*) NIM_NIL));
3106 		if (!!(!(T3_))) goto LA4_;
3107 		nimZeroMem((void*)(&T6_), sizeof(tyTuple__jq7X5k7hWG0tdTZTDkiyGQ));
3108 		T6_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3109 		T6_.Field1 = b;
3110 		T7_ = NIM_NIL;
3111 		T7_ = dollar___stdZjsonutils_407(T6_);
3112 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_124), T7_);
3113 	}
3114 	LA4_: ;
3115 	{
3116 		if (!!(((*b).kind == ((tyEnum_JsonNodeKind__RUngo7nCHe6O8aBGIcrhtg) 5)))) goto LA10_;
3117 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_126), reprEnum((NI)(*b).kind, (&NTIjsonnodekind__RUngo7nCHe6O8aBGIcrhtg_)));
3118 	}
3119 	LA10_: ;
3120 	numX60gensym14_ = ((NI) 0);
3121 	numMatchedX60gensym14_ = ((NI) 0);
3122 	numX60gensym14_ += ((NI) 1);
3123 	{
3124 		NIM_BOOL T14_;
3125 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T17_;
3126 		T14_ = (NIM_BOOL)0;
3127 		T14_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_127));
3128 		if (!T14_) goto LA15_;
3129 		numMatchedX60gensym14_ += ((NI) 1);
3130 		T17_ = NIM_NIL;
3131 		T17_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_127));
3132 		fromJson__stdZjsonutils_566((&(*a).cacheVersion), T17_, opt);
3133 	}
3134 	goto LA12_;
3135 	LA15_: ;
3136 	{
3137 		if (!opt.allowMissingKeys) goto LA19_;
3138 	}
3139 	goto LA12_;
3140 	LA19_: ;
3141 	{
3142 		{
3143 			tyTuple__d8cOxWret6fRDupvUsyoyw T26_;
3144 			NimStringDesc* T27_;
3145 			if (!NIM_TRUE) goto LA24_;
3146 			nimZeroMem((void*)(&T26_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3147 			T26_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3148 			T26_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_127));
3149 			T26_.Field2 = b;
3150 			T27_ = NIM_NIL;
3151 			T27_ = dollar___stdZjsonutils_504(T26_);
3152 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T27_);
3153 		}
3154 		LA24_: ;
3155 	}
3156 	LA12_: ;
3157 	numX60gensym14_ += ((NI) 1);
3158 	{
3159 		NIM_BOOL T30_;
3160 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T33_;
3161 		T30_ = (NIM_BOOL)0;
3162 		T30_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_129));
3163 		if (!T30_) goto LA31_;
3164 		numMatchedX60gensym14_ += ((NI) 1);
3165 		T33_ = NIM_NIL;
3166 		T33_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_129));
3167 		fromJson__stdZjsonutils_566((&(*a).outputFile), T33_, opt);
3168 	}
3169 	goto LA28_;
3170 	LA31_: ;
3171 	{
3172 		if (!opt.allowMissingKeys) goto LA35_;
3173 	}
3174 	goto LA28_;
3175 	LA35_: ;
3176 	{
3177 		{
3178 			tyTuple__d8cOxWret6fRDupvUsyoyw T42_;
3179 			NimStringDesc* T43_;
3180 			if (!NIM_TRUE) goto LA40_;
3181 			nimZeroMem((void*)(&T42_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3182 			T42_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3183 			T42_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_129));
3184 			T42_.Field2 = b;
3185 			T43_ = NIM_NIL;
3186 			T43_ = dollar___stdZjsonutils_504(T42_);
3187 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T43_);
3188 		}
3189 		LA40_: ;
3190 	}
3191 	LA28_: ;
3192 	numX60gensym14_ += ((NI) 1);
3193 	{
3194 		NIM_BOOL T46_;
3195 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T49_;
3196 		T46_ = (NIM_BOOL)0;
3197 		T46_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_130));
3198 		if (!T46_) goto LA47_;
3199 		numMatchedX60gensym14_ += ((NI) 1);
3200 		T49_ = NIM_NIL;
3201 		T49_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_130));
3202 		fromJson__extccomp_1964((&(*a).compile), T49_, opt);
3203 	}
3204 	goto LA44_;
3205 	LA47_: ;
3206 	{
3207 		if (!opt.allowMissingKeys) goto LA51_;
3208 	}
3209 	goto LA44_;
3210 	LA51_: ;
3211 	{
3212 		{
3213 			tyTuple__d8cOxWret6fRDupvUsyoyw T58_;
3214 			NimStringDesc* T59_;
3215 			if (!NIM_TRUE) goto LA56_;
3216 			nimZeroMem((void*)(&T58_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3217 			T58_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3218 			T58_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_130));
3219 			T58_.Field2 = b;
3220 			T59_ = NIM_NIL;
3221 			T59_ = dollar___stdZjsonutils_504(T58_);
3222 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T59_);
3223 		}
3224 		LA56_: ;
3225 	}
3226 	LA44_: ;
3227 	numX60gensym14_ += ((NI) 1);
3228 	{
3229 		NIM_BOOL T62_;
3230 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T65_;
3231 		T62_ = (NIM_BOOL)0;
3232 		T62_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_139));
3233 		if (!T62_) goto LA63_;
3234 		numMatchedX60gensym14_ += ((NI) 1);
3235 		T65_ = NIM_NIL;
3236 		T65_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_139));
3237 		fromJson__extccomp_2152((&(*a).link), T65_, opt);
3238 	}
3239 	goto LA60_;
3240 	LA63_: ;
3241 	{
3242 		if (!opt.allowMissingKeys) goto LA67_;
3243 	}
3244 	goto LA60_;
3245 	LA67_: ;
3246 	{
3247 		{
3248 			tyTuple__d8cOxWret6fRDupvUsyoyw T74_;
3249 			NimStringDesc* T75_;
3250 			if (!NIM_TRUE) goto LA72_;
3251 			nimZeroMem((void*)(&T74_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3252 			T74_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3253 			T74_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_139));
3254 			T74_.Field2 = b;
3255 			T75_ = NIM_NIL;
3256 			T75_ = dollar___stdZjsonutils_504(T74_);
3257 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T75_);
3258 		}
3259 		LA72_: ;
3260 	}
3261 	LA60_: ;
3262 	numX60gensym14_ += ((NI) 1);
3263 	{
3264 		NIM_BOOL T78_;
3265 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T81_;
3266 		T78_ = (NIM_BOOL)0;
3267 		T78_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_141));
3268 		if (!T78_) goto LA79_;
3269 		numMatchedX60gensym14_ += ((NI) 1);
3270 		T81_ = NIM_NIL;
3271 		T81_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_141));
3272 		fromJson__stdZjsonutils_566((&(*a).linkcmd), T81_, opt);
3273 	}
3274 	goto LA76_;
3275 	LA79_: ;
3276 	{
3277 		if (!opt.allowMissingKeys) goto LA83_;
3278 	}
3279 	goto LA76_;
3280 	LA83_: ;
3281 	{
3282 		{
3283 			tyTuple__d8cOxWret6fRDupvUsyoyw T90_;
3284 			NimStringDesc* T91_;
3285 			if (!NIM_TRUE) goto LA88_;
3286 			nimZeroMem((void*)(&T90_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3287 			T90_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3288 			T90_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_141));
3289 			T90_.Field2 = b;
3290 			T91_ = NIM_NIL;
3291 			T91_ = dollar___stdZjsonutils_504(T90_);
3292 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T91_);
3293 		}
3294 		LA88_: ;
3295 	}
3296 	LA76_: ;
3297 	numX60gensym14_ += ((NI) 1);
3298 	{
3299 		NIM_BOOL T94_;
3300 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T97_;
3301 		T94_ = (NIM_BOOL)0;
3302 		T94_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_142));
3303 		if (!T94_) goto LA95_;
3304 		numMatchedX60gensym14_ += ((NI) 1);
3305 		T97_ = NIM_NIL;
3306 		T97_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_142));
3307 		fromJson__extccomp_2152((&(*a).extraCmds), T97_, opt);
3308 	}
3309 	goto LA92_;
3310 	LA95_: ;
3311 	{
3312 		if (!opt.allowMissingKeys) goto LA99_;
3313 	}
3314 	goto LA92_;
3315 	LA99_: ;
3316 	{
3317 		{
3318 			tyTuple__d8cOxWret6fRDupvUsyoyw T106_;
3319 			NimStringDesc* T107_;
3320 			if (!NIM_TRUE) goto LA104_;
3321 			nimZeroMem((void*)(&T106_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3322 			T106_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3323 			T106_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_142));
3324 			T106_.Field2 = b;
3325 			T107_ = NIM_NIL;
3326 			T107_ = dollar___stdZjsonutils_504(T106_);
3327 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T107_);
3328 		}
3329 		LA104_: ;
3330 	}
3331 	LA92_: ;
3332 	numX60gensym14_ += ((NI) 1);
3333 	{
3334 		NIM_BOOL T110_;
3335 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T113_;
3336 		T110_ = (NIM_BOOL)0;
3337 		T110_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_143));
3338 		if (!T110_) goto LA111_;
3339 		numMatchedX60gensym14_ += ((NI) 1);
3340 		T113_ = NIM_NIL;
3341 		T113_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_143));
3342 		fromJson__extccomp_2152((&(*a).configFiles), T113_, opt);
3343 	}
3344 	goto LA108_;
3345 	LA111_: ;
3346 	{
3347 		if (!opt.allowMissingKeys) goto LA115_;
3348 	}
3349 	goto LA108_;
3350 	LA115_: ;
3351 	{
3352 		{
3353 			tyTuple__d8cOxWret6fRDupvUsyoyw T122_;
3354 			NimStringDesc* T123_;
3355 			if (!NIM_TRUE) goto LA120_;
3356 			nimZeroMem((void*)(&T122_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3357 			T122_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3358 			T122_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_143));
3359 			T122_.Field2 = b;
3360 			T123_ = NIM_NIL;
3361 			T123_ = dollar___stdZjsonutils_504(T122_);
3362 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T123_);
3363 		}
3364 		LA120_: ;
3365 	}
3366 	LA108_: ;
3367 	numX60gensym14_ += ((NI) 1);
3368 	{
3369 		NIM_BOOL T126_;
3370 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T129_;
3371 		T126_ = (NIM_BOOL)0;
3372 		T126_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_144));
3373 		if (!T126_) goto LA127_;
3374 		numMatchedX60gensym14_ += ((NI) 1);
3375 		T129_ = NIM_NIL;
3376 		T129_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_144));
3377 		fromJson__extccomp_2272((&(*a).stdinInput), T129_, opt);
3378 	}
3379 	goto LA124_;
3380 	LA127_: ;
3381 	{
3382 		if (!opt.allowMissingKeys) goto LA131_;
3383 	}
3384 	goto LA124_;
3385 	LA131_: ;
3386 	{
3387 		{
3388 			tyTuple__d8cOxWret6fRDupvUsyoyw T138_;
3389 			NimStringDesc* T139_;
3390 			if (!NIM_TRUE) goto LA136_;
3391 			nimZeroMem((void*)(&T138_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3392 			T138_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3393 			T138_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_144));
3394 			T138_.Field2 = b;
3395 			T139_ = NIM_NIL;
3396 			T139_ = dollar___stdZjsonutils_504(T138_);
3397 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T139_);
3398 		}
3399 		LA136_: ;
3400 	}
3401 	LA124_: ;
3402 	numX60gensym14_ += ((NI) 1);
3403 	{
3404 		NIM_BOOL T142_;
3405 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T145_;
3406 		T142_ = (NIM_BOOL)0;
3407 		T142_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_146));
3408 		if (!T142_) goto LA143_;
3409 		numMatchedX60gensym14_ += ((NI) 1);
3410 		T145_ = NIM_NIL;
3411 		T145_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_146));
3412 		fromJson__extccomp_2272((&(*a).projectIsCmd), T145_, opt);
3413 	}
3414 	goto LA140_;
3415 	LA143_: ;
3416 	{
3417 		if (!opt.allowMissingKeys) goto LA147_;
3418 	}
3419 	goto LA140_;
3420 	LA147_: ;
3421 	{
3422 		{
3423 			tyTuple__d8cOxWret6fRDupvUsyoyw T154_;
3424 			NimStringDesc* T155_;
3425 			if (!NIM_TRUE) goto LA152_;
3426 			nimZeroMem((void*)(&T154_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3427 			T154_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3428 			T154_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_146));
3429 			T154_.Field2 = b;
3430 			T155_ = NIM_NIL;
3431 			T155_ = dollar___stdZjsonutils_504(T154_);
3432 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T155_);
3433 		}
3434 		LA152_: ;
3435 	}
3436 	LA140_: ;
3437 	numX60gensym14_ += ((NI) 1);
3438 	{
3439 		NIM_BOOL T158_;
3440 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T161_;
3441 		T158_ = (NIM_BOOL)0;
3442 		T158_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_147));
3443 		if (!T158_) goto LA159_;
3444 		numMatchedX60gensym14_ += ((NI) 1);
3445 		T161_ = NIM_NIL;
3446 		T161_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_147));
3447 		fromJson__stdZjsonutils_566((&(*a).cmdInput), T161_, opt);
3448 	}
3449 	goto LA156_;
3450 	LA159_: ;
3451 	{
3452 		if (!opt.allowMissingKeys) goto LA163_;
3453 	}
3454 	goto LA156_;
3455 	LA163_: ;
3456 	{
3457 		{
3458 			tyTuple__d8cOxWret6fRDupvUsyoyw T170_;
3459 			NimStringDesc* T171_;
3460 			if (!NIM_TRUE) goto LA168_;
3461 			nimZeroMem((void*)(&T170_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3462 			T170_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3463 			T170_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_147));
3464 			T170_.Field2 = b;
3465 			T171_ = NIM_NIL;
3466 			T171_ = dollar___stdZjsonutils_504(T170_);
3467 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T171_);
3468 		}
3469 		LA168_: ;
3470 	}
3471 	LA156_: ;
3472 	numX60gensym14_ += ((NI) 1);
3473 	{
3474 		NIM_BOOL T174_;
3475 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T177_;
3476 		T174_ = (NIM_BOOL)0;
3477 		T174_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_148));
3478 		if (!T174_) goto LA175_;
3479 		numMatchedX60gensym14_ += ((NI) 1);
3480 		T177_ = NIM_NIL;
3481 		T177_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_148));
3482 		fromJson__stdZjsonutils_566((&(*a).currentDir), T177_, opt);
3483 	}
3484 	goto LA172_;
3485 	LA175_: ;
3486 	{
3487 		if (!opt.allowMissingKeys) goto LA179_;
3488 	}
3489 	goto LA172_;
3490 	LA179_: ;
3491 	{
3492 		{
3493 			tyTuple__d8cOxWret6fRDupvUsyoyw T186_;
3494 			NimStringDesc* T187_;
3495 			if (!NIM_TRUE) goto LA184_;
3496 			nimZeroMem((void*)(&T186_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3497 			T186_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3498 			T186_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_148));
3499 			T186_.Field2 = b;
3500 			T187_ = NIM_NIL;
3501 			T187_ = dollar___stdZjsonutils_504(T186_);
3502 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T187_);
3503 		}
3504 		LA184_: ;
3505 	}
3506 	LA172_: ;
3507 	numX60gensym14_ += ((NI) 1);
3508 	{
3509 		NIM_BOOL T190_;
3510 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T193_;
3511 		T190_ = (NIM_BOOL)0;
3512 		T190_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_149));
3513 		if (!T190_) goto LA191_;
3514 		numMatchedX60gensym14_ += ((NI) 1);
3515 		T193_ = NIM_NIL;
3516 		T193_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_149));
3517 		fromJson__stdZjsonutils_566((&(*a).cmdline), T193_, opt);
3518 	}
3519 	goto LA188_;
3520 	LA191_: ;
3521 	{
3522 		if (!opt.allowMissingKeys) goto LA195_;
3523 	}
3524 	goto LA188_;
3525 	LA195_: ;
3526 	{
3527 		{
3528 			tyTuple__d8cOxWret6fRDupvUsyoyw T202_;
3529 			NimStringDesc* T203_;
3530 			if (!NIM_TRUE) goto LA200_;
3531 			nimZeroMem((void*)(&T202_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3532 			T202_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3533 			T202_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_149));
3534 			T202_.Field2 = b;
3535 			T203_ = NIM_NIL;
3536 			T203_ = dollar___stdZjsonutils_504(T202_);
3537 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T203_);
3538 		}
3539 		LA200_: ;
3540 	}
3541 	LA188_: ;
3542 	numX60gensym14_ += ((NI) 1);
3543 	{
3544 		NIM_BOOL T206_;
3545 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T209_;
3546 		T206_ = (NIM_BOOL)0;
3547 		T206_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_150));
3548 		if (!T206_) goto LA207_;
3549 		numMatchedX60gensym14_ += ((NI) 1);
3550 		T209_ = NIM_NIL;
3551 		T209_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_150));
3552 		fromJson__extccomp_1964((&(*a).depfiles), T209_, opt);
3553 	}
3554 	goto LA204_;
3555 	LA207_: ;
3556 	{
3557 		if (!opt.allowMissingKeys) goto LA211_;
3558 	}
3559 	goto LA204_;
3560 	LA211_: ;
3561 	{
3562 		{
3563 			tyTuple__d8cOxWret6fRDupvUsyoyw T218_;
3564 			NimStringDesc* T219_;
3565 			if (!NIM_TRUE) goto LA216_;
3566 			nimZeroMem((void*)(&T218_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3567 			T218_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3568 			T218_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_150));
3569 			T218_.Field2 = b;
3570 			T219_ = NIM_NIL;
3571 			T219_ = dollar___stdZjsonutils_504(T218_);
3572 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T219_);
3573 		}
3574 		LA216_: ;
3575 	}
3576 	LA204_: ;
3577 	numX60gensym14_ += ((NI) 1);
3578 	{
3579 		NIM_BOOL T222_;
3580 		tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T225_;
3581 		T222_ = (NIM_BOOL)0;
3582 		T222_ = hasKey__pureZjson_3152(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_151));
3583 		if (!T222_) goto LA223_;
3584 		numMatchedX60gensym14_ += ((NI) 1);
3585 		T225_ = NIM_NIL;
3586 		T225_ = X5BX5D___pureZjson_3043(b, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_151));
3587 		fromJson__stdZjsonutils_566((&(*a).nimexe), T225_, opt);
3588 	}
3589 	goto LA220_;
3590 	LA223_: ;
3591 	{
3592 		if (!opt.allowMissingKeys) goto LA227_;
3593 	}
3594 	goto LA220_;
3595 	LA227_: ;
3596 	{
3597 		{
3598 			tyTuple__d8cOxWret6fRDupvUsyoyw T234_;
3599 			NimStringDesc* T235_;
3600 			if (!NIM_TRUE) goto LA232_;
3601 			nimZeroMem((void*)(&T234_), sizeof(tyTuple__d8cOxWret6fRDupvUsyoyw));
3602 			T234_.Field0 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3603 			T234_.Field1 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_151));
3604 			T234_.Field2 = b;
3605 			T235_ = NIM_NIL;
3606 			T235_ = dollar___stdZjsonutils_504(T234_);
3607 			raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_128), T235_);
3608 		}
3609 		LA232_: ;
3610 	}
3611 	LA220_: ;
3612 	{
3613 		NIM_BOOL T238_;
3614 		T238_ = (NIM_BOOL)0;
3615 		T238_ = opt.allowExtraKeys;
3616 		if (!(T238_)) goto LA239_;
3617 		T238_ = opt.allowMissingKeys;
3618 		LA239_: ;
3619 		if (!T238_) goto LA240_;
3620 		okX60gensym14_ = NIM_TRUE;
3621 	}
3622 	goto LA236_;
3623 	LA240_: ;
3624 	{
3625 		if (!opt.allowExtraKeys) goto LA243_;
3626 		okX60gensym14_ = (numX60gensym14_ == numMatchedX60gensym14_);
3627 	}
3628 	goto LA236_;
3629 	LA243_: ;
3630 	{
3631 		NI T248_;
3632 		if (!opt.allowMissingKeys) goto LA246_;
3633 		T248_ = (NI)0;
3634 		T248_ = len__pureZjson_2989(b);
3635 		okX60gensym14_ = (T248_ == numMatchedX60gensym14_);
3636 	}
3637 	goto LA236_;
3638 	LA246_: ;
3639 	{
3640 		NIM_BOOL T250_;
3641 		NI T251_;
3642 		T250_ = (NIM_BOOL)0;
3643 		T251_ = (NI)0;
3644 		T251_ = len__pureZjson_2989(b);
3645 		T250_ = (T251_ == numX60gensym14_);
3646 		if (!(T250_)) goto LA252_;
3647 		T250_ = (numX60gensym14_ == numMatchedX60gensym14_);
3648 		LA252_: ;
3649 		okX60gensym14_ = T250_;
3650 	}
3651 	LA236_: ;
3652 	{
3653 		tyTuple__YOdO3R1J4biIW9bY9agwbAQw T257_;
3654 		NimStringDesc* T258_;
3655 		if (!!(okX60gensym14_)) goto LA255_;
3656 		nimZeroMem((void*)(&T257_), sizeof(tyTuple__YOdO3R1J4biIW9bY9agwbAQw));
3657 		T257_.Field0 = len__pureZjson_2989(b);
3658 		T257_.Field1 = numX60gensym14_;
3659 		T257_.Field2 = numMatchedX60gensym14_;
3660 		T257_.Field3 = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_125));
3661 		T257_.Field4 = b;
3662 		T258_ = NIM_NIL;
3663 		T258_ = dollar___extccomp_2441((&T257_));
3664 		raiseJsonException__stdZjsonutils_168(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_152), T258_);
3665 	}
3666 	LA255_: ;
3667 }
N_INLINE(void,popSafePoint)3668 static N_INLINE(void, popSafePoint)(void) {
3669 	excHandler__system_2565 = (*excHandler__system_2565).prev;
3670 }
N_INLINE(Exception *,nimBorrowCurrentException)3671 static N_INLINE(Exception*, nimBorrowCurrentException)(void) {
3672 	Exception* result;
3673 	result = NIM_NIL;
3674 	result = currException__system_2566;
3675 	return result;
3676 }
N_INLINE(void,popCurrentException)3677 static N_INLINE(void, popCurrentException)(void) {
3678 	asgnRef((void**) (&currException__system_2566), (*currException__system_2566).up);
3679 }
N_INLINE(void *,seqToPtr__extccomp_2568)3680 static N_INLINE(void*, seqToPtr__extccomp_2568)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* x) {
3681 	void* result;
3682 	result = (void*)0;
3683 	result = ((void*) (x));
3684 	return result;
3685 }
N_NIMCALL(NIM_BOOL,eqeq___extccomp_2553)3686 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___extccomp_2553)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* x, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* y) {
3687 	NIM_BOOL result;
3688 {	result = (NIM_BOOL)0;
3689 	{
3690 		void* T3_;
3691 		void* T4_;
3692 		T3_ = (void*)0;
3693 		T3_ = seqToPtr__extccomp_2568(x);
3694 		T4_ = (void*)0;
3695 		T4_ = seqToPtr__extccomp_2568(y);
3696 		if (!(T3_ == T4_)) goto LA5_;
3697 		result = NIM_TRUE;
3698 		goto BeforeRet_;
3699 	}
3700 	LA5_: ;
3701 	{
3702 		NI T9_;
3703 		NI T10_;
3704 		T9_ = (x ? x->Sup.len : 0);
3705 		T10_ = (y ? y->Sup.len : 0);
3706 		if (!!((T9_ == T10_))) goto LA11_;
3707 		result = NIM_FALSE;
3708 		goto BeforeRet_;
3709 	}
3710 	LA11_: ;
3711 	{
3712 		NI i;
3713 		NI colontmp_;
3714 		NI T14_;
3715 		NI res;
3716 		i = (NI)0;
3717 		colontmp_ = (NI)0;
3718 		T14_ = (x ? x->Sup.len : 0);
3719 		colontmp_ = (NI)(T14_ - ((NI) 1));
3720 		res = ((NI) 0);
3721 		{
3722 			while (1) {
3723 				if (!(res <= colontmp_)) goto LA16;
3724 				i = res;
3725 				{
3726 					if (!!(eqStrings(x->data[i], y->data[i]))) goto LA19_;
3727 					result = NIM_FALSE;
3728 					goto BeforeRet_;
3729 				}
3730 				LA19_: ;
3731 				res += ((NI) 1);
3732 			} LA16: ;
3733 		}
3734 	}
3735 	result = NIM_TRUE;
3736 	goto BeforeRet_;
3737 	}BeforeRet_: ;
3738 	return result;
3739 }
N_NIMCALL(NIM_BOOL,changeDetectedViaJsonBuildInstructions__extccomp_1845)3740 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, changeDetectedViaJsonBuildInstructions__extccomp_1845)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* jsonFile) {
3741 	NIM_BOOL result;
3742 	tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog bcache;
3743 	TSafePoint TM__OyL9acDBDoBfMwa5zb1Y88w_123;
3744 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T10_;
3745 	tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ T11_;
3746 {	result = (NIM_BOOL)0;
3747 	{
3748 		NIM_BOOL T3_;
3749 		NIM_BOOL T4_;
3750 		NimStringDesc* T6_;
3751 		NIM_BOOL T7_;
3752 		T3_ = (NIM_BOOL)0;
3753 		T4_ = (NIM_BOOL)0;
3754 		T4_ = nosfileExists(jsonFile);
3755 		T3_ = !(T4_);
3756 		if (T3_) goto LA5_;
3757 		T6_ = NIM_NIL;
3758 		T6_ = absOutFile__options_4038(conf);
3759 		T7_ = (NIM_BOOL)0;
3760 		T7_ = nosfileExists(T6_);
3761 		T3_ = !(T7_);
3762 		LA5_: ;
3763 		if (!T3_) goto LA8_;
3764 		result = NIM_TRUE;
3765 		goto BeforeRet_;
3766 	}
3767 	LA8_: ;
3768 	nimZeroMem((void*)(&bcache), sizeof(tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog));
3769 	pushSafePoint(&TM__OyL9acDBDoBfMwa5zb1Y88w_123);
3770 	TM__OyL9acDBDoBfMwa5zb1Y88w_123.status = _setjmp(TM__OyL9acDBDoBfMwa5zb1Y88w_123.context);
3771 	if (TM__OyL9acDBDoBfMwa5zb1Y88w_123.status == 0) {
3772 	T10_ = NIM_NIL;
3773 	T10_ = parseFile__pureZjson_5228(jsonFile);
3774 	nimZeroMem((void*)(&T11_), sizeof(tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ));
3775 	fromJson__extccomp_1850((&bcache), T10_, T11_);
3776 	popSafePoint();
3777 	}
3778 	else {
3779 		popSafePoint();
3780 		if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_))||isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIoserror__BeJgrOdDsczOwEWOZbRfKA_))||isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_))) {
3781 			NimStringDesc* T14_;
3782 			TM__OyL9acDBDoBfMwa5zb1Y88w_123.status = 0;
3783 			T14_ = NIM_NIL;
3784 			T14_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_153), jsonFile);
3785 			write__systemZio_205(__stderrp, T14_);
3786 			result = NIM_TRUE;
3787 			popCurrentException();
3788 			goto BeforeRet_;
3789 			popCurrentException();
3790 		}
3791 	}
3792 	if (TM__OyL9acDBDoBfMwa5zb1Y88w_123.status != 0) reraiseException();
3793 	{
3794 		NIM_BOOL T17_;
3795 		NIM_BOOL T18_;
3796 		NIM_BOOL T19_;
3797 		NIM_BOOL T20_;
3798 		NIM_BOOL T21_;
3799 		NIM_BOOL T22_;
3800 		NIM_BOOL T23_;
3801 		NimStringDesc* T24_;
3802 		tySequence__sM4lkSb7zS6F7OVMvW9cffQ* T26_;
3803 		NIM_BOOL T34_;
3804 		NimStringDesc* T37_;
3805 		NimStringDesc* T40_;
3806 		tyArray__YtcvxHNKV4YiecPE9ap1mcA T41_;
3807 		NimStringDesc* T42_;
3808 		T17_ = (NIM_BOOL)0;
3809 		T18_ = (NIM_BOOL)0;
3810 		T19_ = (NIM_BOOL)0;
3811 		T20_ = (NIM_BOOL)0;
3812 		T21_ = (NIM_BOOL)0;
3813 		T22_ = (NIM_BOOL)0;
3814 		T23_ = (NIM_BOOL)0;
3815 		T24_ = NIM_NIL;
3816 		T24_ = nosgetCurrentDir();
3817 		T23_ = !(eqStrings(bcache.currentDir, T24_));
3818 		if (T23_) goto LA25_;
3819 		T26_ = NIM_NIL;
3820 		{
3821 			tySequence__sM4lkSb7zS6F7OVMvW9cffQ* colontmp_;
3822 			NI iX60gensym165_;
3823 			tySequence__sM4lkSb7zS6F7OVMvW9cffQ* resultX60gensym165_;
3824 			NI T28_;
3825 			colontmp_ = (*conf).configFiles;
3826 			iX60gensym165_ = ((NI) 0);
3827 			T28_ = (colontmp_ ? colontmp_->Sup.len : 0);
3828 			resultX60gensym165_ = newSeq__systemZio_503(((NI) (T28_)));
3829 			{
3830 				NimStringDesc** it;
3831 				NI i;
3832 				NI L;
3833 				NI T30_;
3834 				it = (NimStringDesc**)0;
3835 				i = ((NI) 0);
3836 				T30_ = (colontmp_ ? colontmp_->Sup.len : 0);
3837 				L = T30_;
3838 				{
3839 					while (1) {
3840 						NimStringDesc* T33_;
3841 						if (!(i < L)) goto LA32;
3842 						it = (&colontmp_->data[i]);
3843 						T33_ = NIM_NIL;
3844 						T33_ = resultX60gensym165_->data[iX60gensym165_]; resultX60gensym165_->data[iX60gensym165_] = copyStringRC1((*it));
3845 						if (T33_) nimGCunrefNoCycle(T33_);
3846 						iX60gensym165_ += ((NI) 1);
3847 						i += ((NI) 1);
3848 					} LA32: ;
3849 				}
3850 			}
3851 			genericSeqAssign((&T26_), resultX60gensym165_, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
3852 		}
3853 		T34_ = (NIM_BOOL)0;
3854 		T34_ = eqeq___extccomp_2553(bcache.configFiles, T26_);
3855 		T23_ = !(T34_);
3856 		LA25_: ;
3857 		T22_ = T23_;
3858 		if (T22_) goto LA35_;
3859 		T22_ = !(eqStrings(bcache.cacheVersion, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_154)));
3860 		LA35_: ;
3861 		T21_ = T22_;
3862 		if (T21_) goto LA36_;
3863 		T37_ = NIM_NIL;
3864 		T37_ = absOutFile__options_4038(conf);
3865 		T21_ = !(eqStrings(bcache.outputFile, T37_));
3866 		LA36_: ;
3867 		T20_ = T21_;
3868 		if (T20_) goto LA38_;
3869 		T20_ = !(eqStrings(bcache.cmdline, (*conf).commandLine));
3870 		LA38_: ;
3871 		T19_ = T20_;
3872 		if (T19_) goto LA39_;
3873 		T40_ = NIM_NIL;
3874 		T40_ = nosgetAppFilename();
3875 		nimZeroMem((void*)T41_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
3876 		secureHashFile__stdZsha49_871(T40_, T41_);
3877 		T42_ = NIM_NIL;
3878 		T42_ = dollar___stdZsha49_879(T41_);
3879 		T19_ = !(eqStrings(bcache.nimexe, T42_));
3880 		LA39_: ;
3881 		T18_ = T19_;
3882 		if (T18_) goto LA43_;
3883 		T18_ = !((bcache.projectIsCmd == (*conf).projectIsCmd));
3884 		LA43_: ;
3885 		T17_ = T18_;
3886 		if (T17_) goto LA44_;
3887 		T17_ = !(eqStrings((*conf).cmdInput, bcache.cmdInput));
3888 		LA44_: ;
3889 		if (!T17_) goto LA45_;
3890 		result = NIM_TRUE;
3891 		goto BeforeRet_;
3892 	}
3893 	LA45_: ;
3894 	{
3895 		NIM_BOOL T49_;
3896 		T49_ = (NIM_BOOL)0;
3897 		T49_ = bcache.stdinInput;
3898 		if (T49_) goto LA50_;
3899 		T49_ = (*conf).projectIsStdin;
3900 		LA50_: ;
3901 		if (!T49_) goto LA51_;
3902 		result = NIM_TRUE;
3903 		goto BeforeRet_;
3904 	}
3905 	LA51_: ;
3906 	{
3907 		NimStringDesc** file;
3908 		NimStringDesc** hash;
3909 		NI i_2;
3910 		NI L_2;
3911 		NI T54_;
3912 		file = (NimStringDesc**)0;
3913 		hash = (NimStringDesc**)0;
3914 		i_2 = ((NI) 0);
3915 		T54_ = (bcache.depfiles ? bcache.depfiles->Sup.len : 0);
3916 		L_2 = T54_;
3917 		{
3918 			while (1) {
3919 				if (!(i_2 < L_2)) goto LA56;
3920 				file = (&bcache.depfiles->data[i_2].Field0);
3921 				hash = (&bcache.depfiles->data[i_2].Field1);
3922 				{
3923 					tyArray__YtcvxHNKV4YiecPE9ap1mcA T59_;
3924 					NimStringDesc* T60_;
3925 					nimZeroMem((void*)T59_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
3926 					secureHashFile__stdZsha49_871((*file), T59_);
3927 					T60_ = NIM_NIL;
3928 					T60_ = dollar___stdZsha49_879(T59_);
3929 					if (!!(eqStrings(T60_, (*hash)))) goto LA61_;
3930 					result = NIM_TRUE;
3931 					goto BeforeRet_;
3932 				}
3933 				LA61_: ;
3934 				i_2 += ((NI) 1);
3935 			} LA56: ;
3936 		}
3937 	}
3938 	}BeforeRet_: ;
3939 	return result;
3940 }
N_NIMCALL(NimStringDesc *,jsonBuildInstructionsFile__extccomp_1489)3941 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, jsonBuildInstructionsFile__extccomp_1489)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
3942 	NimStringDesc* result;
3943 	NimStringDesc* T1_;
3944 	NimStringDesc* T2_;
3945 	result = NIM_NIL;
3946 	T1_ = NIM_NIL;
3947 	T1_ = getNimcacheDir__options_4183(conf);
3948 	T2_ = NIM_NIL;
3949 	T2_ = noschangeFileExt((*conf).outFile, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_155));
3950 	result = slash___pathutils_89(T1_, T2_);
3951 	return result;
3952 }
N_NIMCALL(NIM_BOOL,ccHasSaneOverflow__extccomp_930)3953 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, ccHasSaneOverflow__extccomp_930)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
3954 	NIM_BOOL result;
3955 	result = (NIM_BOOL)0;
3956 	{
3957 		NimStringDesc* exe;
3958 		tyTuple__XOVT24GHXwqiEj5GCsEGCA T9_;
3959 		TSafePoint TM__OyL9acDBDoBfMwa5zb1Y88w_156;
3960 		NimStringDesc* T10_;
3961 		NimStringDesc* s;
3962 		NI exitCode;
3963 		if (!((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 1))) goto LA3_;
3964 		result = NIM_FALSE;
3965 		exe = getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_87));
3966 		{
3967 			if (!((exe ? exe->Sup.len : 0) == ((NI) 0))) goto LA7_;
3968 			exe = copyString(CC__extccomp_508[((*conf).cCompiler)- 1].Field4);
3969 		}
3970 		LA7_: ;
3971 		nimZeroMem((void*)(&T9_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
3972 		pushSafePoint(&TM__OyL9acDBDoBfMwa5zb1Y88w_156);
3973 		TM__OyL9acDBDoBfMwa5zb1Y88w_156.status = _setjmp(TM__OyL9acDBDoBfMwa5zb1Y88w_156.context);
3974 		if (TM__OyL9acDBDoBfMwa5zb1Y88w_156.status == 0) {
3975 		T10_ = NIM_NIL;
3976 		T10_ = rawNewString((exe ? exe->Sup.len : 0) + 10);
3977 appendString(T10_, exe);
3978 appendString(T10_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_157));
3979 		execCmdEx__pureZosproc_1149(T10_, 10, ((tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg*) NIM_NIL), ((NimStringDesc*) NIM_NIL), ((NimStringDesc*) NIM_NIL), (&T9_));
3980 		popSafePoint();
3981 		}
3982 		else {
3983 			popSafePoint();
3984 			{
3985 				TM__OyL9acDBDoBfMwa5zb1Y88w_156.status = 0;
3986 				T9_.Field0 = copyString(TM__OyL9acDBDoBfMwa5zb1Y88w_158.Field0);
3987 				T9_.Field1 = TM__OyL9acDBDoBfMwa5zb1Y88w_158.Field1;
3988 				popCurrentException();
3989 			}
3990 		}
3991 		if (TM__OyL9acDBDoBfMwa5zb1Y88w_156.status != 0) reraiseException();
3992 		s = NIM_NIL;
3993 		s = copyString(T9_.Field0);
3994 		exitCode = (NI)0;
3995 		exitCode = T9_.Field1;
3996 		{
3997 			NI i;
3998 			NI j;
3999 			if (!(exitCode == ((NI) 0))) goto LA15_;
4000 			i = ((NI) 0);
4001 			j = ((NI) 0);
4002 			{
4003 				while (1) {
4004 					NIM_BOOL T19_;
4005 					T19_ = (NIM_BOOL)0;
4006 					T19_ = (i < (s ? s->Sup.len : 0));
4007 					if (!(T19_)) goto LA20_;
4008 					T19_ = !(((NU8)(s->data[i]) == (NU8)(10)));
4009 					LA20_: ;
4010 					if (!T19_) goto LA18;
4011 					{
4012 						if (!(((NU8)(s->data[i])) == ((NU8)(32)) || ((NU8)(s->data[i])) == ((NU8)(9)))) goto LA23_;
4013 						j = (NI)(i + ((NI) 1));
4014 					}
4015 					LA23_: ;
4016 					i += ((NI) 1);
4017 				} LA18: ;
4018 			}
4019 			{
4020 				NI major;
4021 				if (!(((NI) 0) < j)) goto LA27_;
4022 				major = ((NI) 0);
4023 				{
4024 					while (1) {
4025 						NIM_BOOL T31_;
4026 						T31_ = (NIM_BOOL)0;
4027 						T31_ = (j < (s ? s->Sup.len : 0));
4028 						if (!(T31_)) goto LA32_;
4029 						T31_ = (((NU8)(s->data[j])) >= ((NU8)(48)) && ((NU8)(s->data[j])) <= ((NU8)(57)));
4030 						LA32_: ;
4031 						if (!T31_) goto LA30;
4032 						major = (NI)((NI)(major * ((NI) 10)) + (NI)(((NU8)(s->data[j])) - ((NI) 48)));
4033 						j += ((NI) 1);
4034 					} LA30: ;
4035 				}
4036 				{
4037 					NIM_BOOL T35_;
4038 					T35_ = (NIM_BOOL)0;
4039 					T35_ = (i < (s ? s->Sup.len : 0));
4040 					if (!(T35_)) goto LA36_;
4041 					T35_ = ((NU8)(s->data[j]) == (NU8)(46));
4042 					LA36_: ;
4043 					if (!T35_) goto LA37_;
4044 					j += ((NI) 1);
4045 				}
4046 				LA37_: ;
4047 				{
4048 					while (1) {
4049 						NIM_BOOL T41_;
4050 						T41_ = (NIM_BOOL)0;
4051 						T41_ = (j < (s ? s->Sup.len : 0));
4052 						if (!(T41_)) goto LA42_;
4053 						T41_ = (((NU8)(s->data[j])) >= ((NU8)(48)) && ((NU8)(s->data[j])) <= ((NU8)(57)));
4054 						LA42_: ;
4055 						if (!T41_) goto LA40;
4056 						j += ((NI) 1);
4057 					} LA40: ;
4058 				}
4059 				{
4060 					NIM_BOOL T45_;
4061 					NIM_BOOL T46_;
4062 					T45_ = (NIM_BOOL)0;
4063 					T46_ = (NIM_BOOL)0;
4064 					T46_ = ((NI)(j + ((NI) 1)) < (s ? s->Sup.len : 0));
4065 					if (!(T46_)) goto LA47_;
4066 					T46_ = ((NU8)(s->data[j]) == (NU8)(46));
4067 					LA47_: ;
4068 					T45_ = T46_;
4069 					if (!(T45_)) goto LA48_;
4070 					T45_ = (((NU8)(s->data[(NI)(j + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)(s->data[(NI)(j + ((NI) 1))])) <= ((NU8)(57)));
4071 					LA48_: ;
4072 					if (!T45_) goto LA49_;
4073 					result = (((NI) 5) <= major);
4074 				}
4075 				LA49_: ;
4076 			}
4077 			LA27_: ;
4078 		}
4079 		LA15_: ;
4080 	}
4081 	goto LA1_;
4082 	LA3_: ;
4083 	{
4084 		result = ((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 4));
4085 	}
4086 	LA1_: ;
4087 	return result;
4088 }
N_NIMCALL(void,addFileToCompile__extccomp_722)4089 N_LIB_PRIVATE N_NIMCALL(void, addFileToCompile__extccomp_722)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cf) {
4090 	NI T1_;
4091 	asgnRef((void**) (&(*conf).toCompile), (tySequence__pK3qSsBZwdXd6qyUMkd5Jw*) incrSeqV3((TGenericSeq*)((*conf).toCompile), (&NTIcfilelist__pK3qSsBZwdXd6qyUMkd5Jw_)));
4092 	T1_ = (*conf).toCompile->Sup.len++;
4093 	genericAssign((void*)(&(*conf).toCompile->data[T1_]), (void*)cf, (&NTIcfile__i9cKq1ZGd1wgagjUEHLVFtg_));
4094 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___extccomp_2648)4095 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___extccomp_2648)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
4096 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4097 	result = NIM_NIL;
4098 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_160), args, argsLen_0);
4099 	return result;
4100 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genMappingFiles__extccomp_2640)4101 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genMappingFiles__extccomp_2640)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tySequence__pK3qSsBZwdXd6qyUMkd5Jw* list) {
4102 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4103 	result = NIM_NIL;
4104 	{
4105 		tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* it;
4106 		NI i;
4107 		NI L;
4108 		NI T2_;
4109 		it = (tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg*)0;
4110 		i = ((NI) 0);
4111 		T2_ = (list ? list->Sup.len : 0);
4112 		L = T2_;
4113 		{
4114 			while (1) {
4115 				tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
4116 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
4117 				if (!(i < L)) goto LA4;
4118 				it = (&list->data[i]);
4119 				nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
4120 				T5_[0] = rope__ropes_109((*it).cname);
4121 				T6_ = NIM_NIL;
4122 				T6_ = percent___extccomp_2648(T5_, 1);
4123 				add__ropes_159(&result, T6_);
4124 				i += ((NI) 1);
4125 			} LA4: ;
4126 		}
4127 	}
4128 	return result;
4129 }
N_NIMCALL(NimStringDesc *,getCompileOptions__extccomp_869)4130 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompileOptions__extccomp_869)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
4131 	NimStringDesc* result;
4132 	result = NIM_NIL;
4133 	result = cFileSpecificOptions__extccomp_844(conf, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_162), ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_162));
4134 	return result;
4135 }
N_NIMCALL(NimStringDesc *,getLinkOptions__extccomp_880)4136 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getLinkOptions__extccomp_880)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
4137 	NimStringDesc* result;
4138 	NimStringDesc* T1_;
4139 	result = NIM_NIL;
4140 	T1_ = NIM_NIL;
4141 	T1_ = rawNewString(((*conf).linkOptions ? (*conf).linkOptions->Sup.len : 0) + ((*conf).linkOptionsCmd ? (*conf).linkOptionsCmd->Sup.len : 0) + 2);
4142 appendString(T1_, (*conf).linkOptions);
4143 appendString(T1_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
4144 appendString(T1_, (*conf).linkOptionsCmd);
4145 appendString(T1_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
4146 	result = T1_;
4147 	{
4148 		NimStringDesc** linkedLib;
4149 		NI i;
4150 		NI L;
4151 		NI T3_;
4152 		linkedLib = (NimStringDesc**)0;
4153 		i = ((NI) 0);
4154 		T3_ = ((*conf).cLinkedLibs ? (*conf).cLinkedLibs->Sup.len : 0);
4155 		L = T3_;
4156 		{
4157 			while (1) {
4158 				NimStringDesc* T6_;
4159 				NimStringDesc* T7_;
4160 				if (!(i < L)) goto LA5;
4161 				linkedLib = (&(*conf).cLinkedLibs->data[i]);
4162 				T6_ = NIM_NIL;
4163 				T6_ = nospquoteShell((*linkedLib));
4164 				T7_ = NIM_NIL;
4165 				T7_ = nsuFormatSingleElem(CC__extccomp_508[((*conf).cCompiler)- 1].Field14, T6_);
4166 				result = resizeString(result, (T7_ ? T7_->Sup.len : 0) + 0);
4167 appendString(result, T7_);
4168 				i += ((NI) 1);
4169 			} LA5: ;
4170 		}
4171 	}
4172 	{
4173 		NimStringDesc** libDir;
4174 		NI i_2;
4175 		NI L_2;
4176 		NI T9_;
4177 		libDir = (NimStringDesc**)0;
4178 		i_2 = ((NI) 0);
4179 		T9_ = ((*conf).cLibs ? (*conf).cLibs->Sup.len : 0);
4180 		L_2 = T9_;
4181 		{
4182 			while (1) {
4183 				tyArray__Re75IspeoxXy2oCZHwcRrA T12_;
4184 				NimStringDesc* T13_;
4185 				if (!(i_2 < L_2)) goto LA11;
4186 				libDir = (&(*conf).cLibs->data[i_2]);
4187 				nimZeroMem((void*)T12_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
4188 				T12_[0] = copyString(CC__extccomp_508[((*conf).cCompiler)- 1].Field13);
4189 				T12_[1] = nospquoteShell((*libDir));
4190 				T13_ = NIM_NIL;
4191 				T13_ = nsuJoinSep(T12_, 2, ((NimStringDesc*) NIM_NIL));
4192 				result = resizeString(result, (T13_ ? T13_->Sup.len : 0) + 0);
4193 appendString(result, T13_);
4194 				i_2 += ((NI) 1);
4195 			} LA11: ;
4196 		}
4197 	}
4198 	return result;
4199 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___extccomp_2670)4200 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___extccomp_2670)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
4201 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4202 	result = NIM_NIL;
4203 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_167), args, argsLen_0);
4204 	return result;
4205 }
N_NIMCALL(void,writeMapping__extccomp_2662)4206 N_LIB_PRIVATE N_NIMCALL(void, writeMapping__extccomp_2662)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* symbolMapping) {
4207 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* code;
4208 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
4209 	NimStringDesc* T6_;
4210 	NimStringDesc* T7_;
4211 	NimStringDesc* T8_;
4212 	NimStringDesc* T9_;
4213 	NimStringDesc* T10_;
4214 	NimStringDesc* T11_;
4215 	NimStringDesc* T12_;
4216 	tyArray__JiWwrsTRC6xqNlGcBthSVA T13_;
4217 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
4218 	NimStringDesc* filename;
4219 {	{
4220 		if (!!((((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 11))&63U)))!=0))) goto LA3_;
4221 		goto BeforeRet_;
4222 	}
4223 	LA3_: ;
4224 	code = rope__ropes_109(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_159));
4225 	T5_ = NIM_NIL;
4226 	T5_ = genMappingFiles__extccomp_2640(conf, (*conf).toCompile);
4227 	add__ropes_159(&code, T5_);
4228 	add__ropes_162(&code, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_161));
4229 	T6_ = NIM_NIL;
4230 	T6_ = getCompileOptions__extccomp_869(conf);
4231 	T7_ = NIM_NIL;
4232 	T7_ = nsuEscape(T6_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_163), ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_163));
4233 	add__ropes_162(&code, T7_);
4234 	add__ropes_162(&code, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_164));
4235 	T8_ = NIM_NIL;
4236 	T9_ = NIM_NIL;
4237 	T9_ = getLinkOptions__extccomp_880(conf);
4238 	T10_ = NIM_NIL;
4239 	T10_ = getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_165));
4240 	T8_ = rawNewString((T9_ ? T9_->Sup.len : 0) + (T10_ ? T10_->Sup.len : 0) + 1);
4241 appendString(T8_, T9_);
4242 appendString(T8_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
4243 appendString(T8_, T10_);
4244 	T11_ = NIM_NIL;
4245 	T11_ = nsuEscape(T8_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_163), ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_163));
4246 	add__ropes_162(&code, T11_);
4247 	add__ropes_162(&code, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_166));
4248 	T12_ = NIM_NIL;
4249 	T12_ = nsuEscape((*conf).libpath, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_163), ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_163));
4250 	add__ropes_162(&code, T12_);
4251 	nimZeroMem((void*)T13_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
4252 	T13_[0] = symbolMapping;
4253 	T14_ = NIM_NIL;
4254 	T14_ = percent___extccomp_2670(T13_, 1);
4255 	add__ropes_159(&code, T14_);
4256 	filename = slash___pathutils_89((*conf).projectPath, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_168));
4257 	{
4258 		NIM_BOOL T17_;
4259 		NimStringDesc* T20_;
4260 		T17_ = (NIM_BOOL)0;
4261 		T17_ = writeRope__ropes_241(code, filename);
4262 		if (!!(T17_)) goto LA18_;
4263 		T20_ = NIM_NIL;
4264 		T20_ = rawNewString((filename ? filename->Sup.len : 0) + 25);
4265 appendString(T20_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_169));
4266 appendString(T20_, filename);
4267 		liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T20_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_170, NIM_FALSE);
4268 	}
4269 	LA18_: ;
4270 	}BeforeRet_: ;
4271 }
N_NIMCALL(void,Marker_tyRef__CqlAb69bkfxaejoSKDwhYYA)4272 static N_NIMCALL(void, Marker_tyRef__CqlAb69bkfxaejoSKDwhYYA)(void* p, NI op) {
4273 	tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg* a;
4274 	a = (tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg*)p;
4275 	nimGCvisit((void*)(*a).prettyCmds1, op);
4276 	nimGCvisit((void*)(*a).conf2, op);
4277 }
N_CLOSURE(void,colonanonymous___extccomp_1270)4278 N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_1270)(NI idx, void* ClE_0) {
4279 	tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg* colonenvP_;
4280 	colonenvP_ = (tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg*) ClE_0;
4281 	{
4282 		tyArray__nHXaesL0DJZHyVS07ARPRA T5_;
4283 		if (!(((NI) 0) < ((*colonenvP_).prettyCmds1->data[idx] ? (*colonenvP_).prettyCmds1->data[idx]->Sup.len : 0))) goto LA3_;
4284 		flushDot__msgs_17((*colonenvP_).conf2);
4285 		nimZeroMem((void*)T5_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
4286 		T5_[0] = copyString((*colonenvP_).prettyCmds1->data[idx]);
4287 		writeLine__msgs_432(__stderrp, T5_, 1);
4288 	}
4289 	LA3_: ;
4290 }
N_NIMCALL(NimStringDesc *,displayProgressCC__extccomp_1246)4291 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, displayProgressCC__extccomp_1246)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* path, NimStringDesc* compileCmd) {
4292 	NimStringDesc* result;
4293 	result = NIM_NIL;
4294 	{
4295 		NIM_BOOL T3_;
4296 		T3_ = (NIM_BOOL)0;
4297 		T3_ = hasHint__options_517(conf, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 70));
4298 		if (!T3_) goto LA4_;
4299 		{
4300 			NIM_BOOL T8_;
4301 			NimStringDesc* T12_;
4302 			tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T13_;
4303 			NimStringDesc* T14_;
4304 			T8_ = (NIM_BOOL)0;
4305 			T8_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 3))&63U)))!=0);
4306 			if (T8_) goto LA9_;
4307 			T8_ = (((NI) 1) < (*conf).verbosity);
4308 			LA9_: ;
4309 			if (!T8_) goto LA10_;
4310 			T12_ = NIM_NIL;
4311 			nimZeroMem((void*)(&T13_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
4312 			nossplitFile(path, (&T13_));
4313 			T14_ = NIM_NIL;
4314 			T14_ = demanglePackageName__options_4170(T13_.Field1);
4315 			T12_ = rawNewString((T14_ ? T14_->Sup.len : 0) + (compileCmd ? compileCmd->Sup.len : 0) + 2);
4316 appendString(T12_, T14_);
4317 appendString(T12_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_173));
4318 appendString(T12_, compileCmd);
4319 			result = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_172), T12_);
4320 		}
4321 		goto LA6_;
4322 		LA10_: ;
4323 		{
4324 			tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T16_;
4325 			NimStringDesc* T17_;
4326 			nimZeroMem((void*)(&T16_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
4327 			nossplitFile(path, (&T16_));
4328 			T17_ = NIM_NIL;
4329 			T17_ = demanglePackageName__options_4170(T16_.Field1);
4330 			result = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_172), T17_);
4331 		}
4332 		LA6_: ;
4333 	}
4334 	LA4_: ;
4335 	return result;
4336 }
N_NIMCALL(void,Marker_tyRef__pkCPBZYDmG8KoijaqNdsQw)4337 static N_NIMCALL(void, Marker_tyRef__pkCPBZYDmG8KoijaqNdsQw)(void* p, NI op) {
4338 	tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg* a;
4339 	a = (tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg*)p;
4340 	nimGCvisit((void*)(*a).conf1, op);
4341 	nimGCvisit((void*)(*a).cmds2, op);
4342 }
N_CLOSURE(void,colonanonymous___extccomp_1173)4343 N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_1173)(NI idx, tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p, void* ClE_0) {
4344 	tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg* colonenvP_;
4345 	NI exitCode;
4346 	colonenvP_ = (tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg*) ClE_0;
4347 	exitCode = nosppeekExitCode(p);
4348 	{
4349 		NimStringDesc* T5_;
4350 		NimStringDesc* T6_;
4351 		if (!!((exitCode == ((NI) 0)))) goto LA3_;
4352 		T5_ = NIM_NIL;
4353 		T6_ = NIM_NIL;
4354 		T6_ = dollar___systemZdollars_3(exitCode);
4355 		T5_ = rawNewString(((*colonenvP_).cmds2->data[idx] ? (*colonenvP_).cmds2->data[idx]->Sup.len : 0) + (T6_ ? T6_->Sup.len : 0) + 70);
4356 appendString(T5_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_175));
4357 appendString(T5_, (*colonenvP_).cmds2->data[idx]);
4358 appendString(T5_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_176));
4359 appendString(T5_, T6_);
4360 appendString(T5_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_177));
4361 		liMessage__msgs_1118((*colonenvP_).conf1, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T5_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_178, NIM_FALSE);
4362 	}
4363 	LA3_: ;
4364 }
N_NIMCALL(NI,execWithEcho__extccomp_795)4365 N_LIB_PRIVATE N_NIMCALL(NI, execWithEcho__extccomp_795)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cmd, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg) {
4366 	NI result;
4367 	NimStringDesc* T1_;
4368 	result = (NI)0;
4369 	T1_ = NIM_NIL;
4370 	{
4371 		NIM_BOOL T4_;
4372 		NIM_BOOL T6_;
4373 		T4_ = (NIM_BOOL)0;
4374 		T4_ = (msg == ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 90));
4375 		if (!(T4_)) goto LA5_;
4376 		T6_ = (NIM_BOOL)0;
4377 		T6_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 3))&63U)))!=0);
4378 		if (T6_) goto LA7_;
4379 		T6_ = (((NI) 1) < (*conf).verbosity);
4380 		LA7_: ;
4381 		T4_ = !(T6_);
4382 		LA5_: ;
4383 		if (!T4_) goto LA8_;
4384 		T1_ = ((NimStringDesc*) NIM_NIL);
4385 	}
4386 	goto LA2_;
4387 	LA8_: ;
4388 	{
4389 		T1_ = copyString(cmd);
4390 	}
4391 	LA2_: ;
4392 	liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, msg, T1_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_180, NIM_FALSE);
4393 	result = nospexecCmd(cmd);
4394 	return result;
4395 }
N_INLINE(Exception *,getCurrentException)4396 static N_INLINE(Exception*, getCurrentException)(void) {
4397 	Exception* result;
4398 	result = NIM_NIL;
4399 	result = currException__system_2566;
4400 	return result;
4401 }
N_NIMCALL(void,execCmdsInParallel__extccomp_1167)4402 N_LIB_PRIVATE N_NIMCALL(void, execCmdsInParallel__extccomp_1167)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cmds, tyProc__SqRJqa5aOiKB4EuKlKh9asA prettyCb) {
4403 	tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg* colonenv_;
4404 	tyProc__oudJckli4GdxAXLVzBBlAw runCb;
4405 	tyProc__oudJckli4GdxAXLVzBBlAw T1_;
4406 	NI volatile res;
4407 	colonenv_ = NIM_NIL;
4408 	colonenv_ = (tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg*) newObj((&NTIrefobject__pkCPBZYDmG8KoijaqNdsQw_), sizeof(tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg));
4409 	(*colonenv_).Sup.m_type = (&NTIobject__4Ms6MGgcp8EDnUBSlKFk9bg_);
4410 	asgnRef((void**) (&(*colonenv_).conf1), conf);
4411 	genericSeqAssign((&(*colonenv_).cmds2), cmds, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
4412 	nimZeroMem((void*)(&runCb), sizeof(tyProc__oudJckli4GdxAXLVzBBlAw));
4413 	nimZeroMem((void*)(&T1_), sizeof(tyProc__oudJckli4GdxAXLVzBBlAw));
4414 	T1_.ClP_0 = colonanonymous___extccomp_1173; T1_.ClE_0 = colonenv_;
4415 	runCb.ClE_0 = T1_.ClE_0;
4416 	runCb.ClP_0 = T1_.ClP_0;
4417 	{
4418 		if (!((*(*colonenv_).conf1).numberOfProcessors == ((NI) 0))) goto LA4_;
4419 		(*(*colonenv_).conf1).numberOfProcessors = nospcountProcessors();
4420 	}
4421 	LA4_: ;
4422 	res = ((NI) 0);
4423 	{
4424 		if (!((*(*colonenv_).conf1).numberOfProcessors <= ((NI) 1))) goto LA8_;
4425 		{
4426 			NI i;
4427 			NI colontmp_;
4428 			NI T11_;
4429 			NI res_2;
4430 			i = (NI)0;
4431 			colontmp_ = (NI)0;
4432 			T11_ = (((*colonenv_).cmds2 ? (*colonenv_).cmds2->Sup.len : 0)-1);
4433 			colontmp_ = T11_;
4434 			res_2 = ((NI) 0);
4435 			{
4436 				while (1) {
4437 					TSafePoint TM__OyL9acDBDoBfMwa5zb1Y88w_179;
4438 					if (!(res_2 <= colontmp_)) goto LA13;
4439 					i = res_2;
4440 					pushSafePoint(&TM__OyL9acDBDoBfMwa5zb1Y88w_179);
4441 					TM__OyL9acDBDoBfMwa5zb1Y88w_179.status = _setjmp(TM__OyL9acDBDoBfMwa5zb1Y88w_179.context);
4442 					if (TM__OyL9acDBDoBfMwa5zb1Y88w_179.status == 0) {
4443 					res = execWithEcho__extccomp_795((*colonenv_).conf1, (*colonenv_).cmds2->data[i], ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 89));
4444 					popSafePoint();
4445 					}
4446 					else {
4447 						popSafePoint();
4448 						if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIoserror__BeJgrOdDsczOwEWOZbRfKA_))) {
4449 							tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA* oseX60gensym74_;
4450 							Exception* T16_;
4451 							TM__OyL9acDBDoBfMwa5zb1Y88w_179.status = 0;
4452 							T16_ = NIM_NIL;
4453 							T16_ = getCurrentException();
4454 							oseX60gensym74_ = ((tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA*) (T16_));
4455 							{
4456 								NimStringDesc* T21_;
4457 								NimStringDesc* T22_;
4458 								if (!NIM_TRUE) goto LA19_;
4459 								T21_ = NIM_NIL;
4460 								T22_ = NIM_NIL;
4461 								T22_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym74_).errorCode)));
4462 								T21_ = rawNewString(((*oseX60gensym74_).Sup.Sup.message ? (*oseX60gensym74_).Sup.Sup.message->Sup.len : 0) + (T22_ ? T22_->Sup.len : 0) + 49);
4463 appendString(T21_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_181));
4464 appendString(T21_, (*oseX60gensym74_).Sup.Sup.message);
4465 appendString(T21_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
4466 appendString(T21_, T22_);
4467 								liMessage__msgs_1118((*colonenv_).conf1, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T21_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_182, NIM_FALSE);
4468 							}
4469 							goto LA17_;
4470 							LA19_: ;
4471 							{
4472 								NimStringDesc* T24_;
4473 								NimStringDesc* T25_;
4474 								NimStringDesc* T26_;
4475 								T24_ = NIM_NIL;
4476 								T25_ = NIM_NIL;
4477 								T25_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym74_).errorCode)));
4478 								T24_ = rawNewString(((*oseX60gensym74_).Sup.Sup.message ? (*oseX60gensym74_).Sup.Sup.message->Sup.len : 0) + (T25_ ? T25_->Sup.len : 0) + 1);
4479 appendString(T24_, (*oseX60gensym74_).Sup.Sup.message);
4480 appendString(T24_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
4481 appendString(T24_, T25_);
4482 								T26_ = NIM_NIL;
4483 								T26_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_183), T24_);
4484 								liMessage__msgs_1118((*colonenv_).conf1, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T26_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_184, NIM_FALSE);
4485 							}
4486 							LA17_: ;
4487 							reraiseException();
4488 							popCurrentException();
4489 						}
4490 					}
4491 					if (TM__OyL9acDBDoBfMwa5zb1Y88w_179.status != 0) reraiseException();
4492 					{
4493 						NimStringDesc* T31_;
4494 						if (!!((res == ((NI) 0)))) goto LA29_;
4495 						T31_ = NIM_NIL;
4496 						T31_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_183), (*colonenv_).cmds2->data[i]);
4497 						liMessage__msgs_1118((*colonenv_).conf1, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T31_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_185, NIM_FALSE);
4498 					}
4499 					LA29_: ;
4500 					res_2 += ((NI) 1);
4501 				} LA13: ;
4502 			}
4503 		}
4504 	}
4505 	goto LA6_;
4506 	LA8_: ;
4507 	{
4508 		TSafePoint TM__OyL9acDBDoBfMwa5zb1Y88w_186;
4509 		pushSafePoint(&TM__OyL9acDBDoBfMwa5zb1Y88w_186);
4510 		TM__OyL9acDBDoBfMwa5zb1Y88w_186.status = _setjmp(TM__OyL9acDBDoBfMwa5zb1Y88w_186.context);
4511 		if (TM__OyL9acDBDoBfMwa5zb1Y88w_186.status == 0) {
4512 		res = nospexecProcesses((*colonenv_).cmds2->data, ((*colonenv_).cmds2 ? (*colonenv_).cmds2->Sup.len : 0), 26, (*(*colonenv_).conf1).numberOfProcessors, prettyCb, runCb);
4513 		popSafePoint();
4514 		}
4515 		else {
4516 			popSafePoint();
4517 			if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIoserror__BeJgrOdDsczOwEWOZbRfKA_))) {
4518 				tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA* oseX60gensym83_;
4519 				Exception* T35_;
4520 				TM__OyL9acDBDoBfMwa5zb1Y88w_186.status = 0;
4521 				T35_ = NIM_NIL;
4522 				T35_ = getCurrentException();
4523 				oseX60gensym83_ = ((tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA*) (T35_));
4524 				{
4525 					NimStringDesc* T40_;
4526 					NimStringDesc* T41_;
4527 					if (!NIM_TRUE) goto LA38_;
4528 					T40_ = NIM_NIL;
4529 					T41_ = NIM_NIL;
4530 					T41_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym83_).errorCode)));
4531 					T40_ = rawNewString(((*oseX60gensym83_).Sup.Sup.message ? (*oseX60gensym83_).Sup.Sup.message->Sup.len : 0) + (T41_ ? T41_->Sup.len : 0) + 49);
4532 appendString(T40_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_181));
4533 appendString(T40_, (*oseX60gensym83_).Sup.Sup.message);
4534 appendString(T40_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
4535 appendString(T40_, T41_);
4536 					liMessage__msgs_1118((*colonenv_).conf1, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T40_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_182, NIM_FALSE);
4537 				}
4538 				goto LA36_;
4539 				LA38_: ;
4540 				{
4541 					NimStringDesc* T43_;
4542 					NimStringDesc* T44_;
4543 					NimStringDesc* T45_;
4544 					T43_ = NIM_NIL;
4545 					T44_ = NIM_NIL;
4546 					T44_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym83_).errorCode)));
4547 					T43_ = rawNewString(((*oseX60gensym83_).Sup.Sup.message ? (*oseX60gensym83_).Sup.Sup.message->Sup.len : 0) + (T44_ ? T44_->Sup.len : 0) + 1);
4548 appendString(T43_, (*oseX60gensym83_).Sup.Sup.message);
4549 appendString(T43_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
4550 appendString(T43_, T44_);
4551 					T45_ = NIM_NIL;
4552 					T45_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_183), T43_);
4553 					liMessage__msgs_1118((*colonenv_).conf1, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T45_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_184, NIM_FALSE);
4554 				}
4555 				LA36_: ;
4556 				reraiseException();
4557 				popCurrentException();
4558 			}
4559 		}
4560 		if (TM__OyL9acDBDoBfMwa5zb1Y88w_186.status != 0) reraiseException();
4561 	}
4562 	LA6_: ;
4563 	{
4564 		if (!!((res == ((NI) 0)))) goto LA48_;
4565 		{
4566 			NimStringDesc* T54_;
4567 			NimStringDesc* T55_;
4568 			if (!((*(*colonenv_).conf1).numberOfProcessors <= ((NI) 1))) goto LA52_;
4569 			T54_ = NIM_NIL;
4570 			T54_ = nsuJoinSep((*colonenv_).cmds2->data, ((*colonenv_).cmds2 ? (*colonenv_).cmds2->Sup.len : 0), ((NimStringDesc*) NIM_NIL));
4571 			T55_ = NIM_NIL;
4572 			T55_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_183), T54_);
4573 			liMessage__msgs_1118((*colonenv_).conf1, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T55_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_187, NIM_FALSE);
4574 		}
4575 		LA52_: ;
4576 	}
4577 	LA48_: ;
4578 }
N_NIMCALL(NimStringDesc *,getObjFilePath__extccomp_1235)4579 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getObjFilePath__extccomp_1235)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* f) {
4580 	NimStringDesc* result;
4581 	result = NIM_NIL;
4582 	{
4583 		NIM_BOOL T3_;
4584 		T3_ = (NIM_BOOL)0;
4585 		T3_ = noAbsolutePaths__extccomp_831(conf);
4586 		if (!T3_) goto LA4_;
4587 		result = nosextractFilename((*f).obj);
4588 	}
4589 	goto LA1_;
4590 	LA4_: ;
4591 	{
4592 		result = copyString((*f).obj);
4593 	}
4594 	LA1_: ;
4595 	return result;
4596 }
N_NIMCALL(NimStringDesc *,hcrLinkTargetName__extccomp_1239)4597 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, hcrLinkTargetName__extccomp_1239)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* objFile, NIM_BOOL isMain) {
4598 	NimStringDesc* result;
4599 	NimStringDesc* basename;
4600 	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T1_;
4601 	NimStringDesc* targetName;
4602 	NimStringDesc* T8_;
4603 	result = NIM_NIL;
4604 	nimZeroMem((void*)(&T1_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
4605 	nossplitFile(objFile, (&T1_));
4606 	basename = T1_.Field1;
4607 	{
4608 		NimStringDesc* T6_;
4609 		if (!isMain) goto LA4_;
4610 		T6_ = NIM_NIL;
4611 		T6_ = rawNewString((basename ? basename->Sup.len : 0) + 4);
4612 appendString(T6_, basename);
4613 appendString(T6_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_87));
4614 		targetName = T6_;
4615 	}
4616 	goto LA2_;
4617 	LA4_: ;
4618 	{
4619 		targetName = nsuFormatSingleElem(OS__platform_504[((*conf).target.targetOS)- 1].Field2, basename);
4620 	}
4621 	LA2_: ;
4622 	T8_ = NIM_NIL;
4623 	T8_ = getNimcacheDir__options_4183(conf);
4624 	result = slash___pathutils_89(T8_, targetName);
4625 	return result;
4626 }
N_NIMCALL(NimStringDesc *,getLinkerExe__extccomp_985)4627 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getLinkerExe__extccomp_985)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA compiler) {
4628 	NimStringDesc* result;
4629 	result = NIM_NIL;
4630 	{
4631 		if (!(((NI) 0) < (CC__extccomp_508[(compiler)- 1].Field10 ? CC__extccomp_508[(compiler)- 1].Field10->Sup.len : 0))) goto LA3_;
4632 		result = copyString(CC__extccomp_508[(compiler)- 1].Field10);
4633 	}
4634 	goto LA1_;
4635 	LA3_: ;
4636 	{
4637 		NIM_BOOL T6_;
4638 		T6_ = (NIM_BOOL)0;
4639 		T6_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 35))&63U)))!=0);
4640 		if (!(T6_)) goto LA7_;
4641 		T6_ = !(((*conf).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2)));
4642 		LA7_: ;
4643 		if (!T6_) goto LA8_;
4644 		result = copyString(CC__extccomp_508[(compiler)- 1].Field5);
4645 	}
4646 	goto LA1_;
4647 	LA8_: ;
4648 	{
4649 		result = getCompilerExe__extccomp_921(conf, compiler, ((NimStringDesc*) NIM_NIL));
4650 	}
4651 	LA1_: ;
4652 	return result;
4653 }
N_NIMCALL(NimStringDesc *,format__extccomp_1121)4654 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, format__extccomp_1121)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dt) {
4655 	NimStringDesc* result;
4656 	result = NIM_NIL;
4657 	result = format__pureZtimes_2997(dt, f2__extccomp_1126, (&DefaultLocale__pureZtimes_1636));
4658 	return result;
4659 }
N_INLINE(NI,nanosecond__pureZtimes_1073)4660 static N_INLINE(NI, nanosecond__pureZtimes_1073)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dt) {
4661 	NI result;
4662 	result = (NI)0;
4663 	result = (*dt).nanosecond;
4664 	return result;
4665 }
N_NIMCALL(NimStringDesc *,getLinkCmd__extccomp_1094)4666 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getLinkCmd__extccomp_1094)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* output, NimStringDesc* objfiles, NIM_BOOL isDllBuild, NIM_BOOL removeStaticFile) {
4667 	NimStringDesc* result;
4668 	result = NIM_NIL;
4669 	{
4670 		tyArray__sMpvt1sOxOJ3LFGulnbeMQ T9_;
4671 		if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 8))&63U)))!=0)) goto LA3_;
4672 		{
4673 			if (!removeStaticFile) goto LA7_;
4674 			nosremoveFile(output);
4675 		}
4676 		LA7_: ;
4677 		nimZeroMem((void*)T9_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ));
4678 		T9_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_188));
4679 		T9_[1] = nospquoteShell(output);
4680 		T9_[2] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_189));
4681 		T9_[3] = copyString(objfiles);
4682 		result = nsuFormatOpenArray(CC__extccomp_508[((*conf).cCompiler)- 1].Field9, T9_, 4);
4683 	}
4684 	goto LA1_;
4685 	LA3_: ;
4686 	{
4687 		NimStringDesc* linkerExe;
4688 		NimStringDesc* buildgui;
4689 		NimStringDesc* builddll;
4690 		NimStringDesc* exefile;
4691 		NimStringDesc* mapfile;
4692 		NimStringDesc* T38_;
4693 		NimStringDesc* T39_;
4694 		tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T40_;
4695 		NimStringDesc* T41_;
4696 		NimStringDesc* linkOptions;
4697 		NimStringDesc* T42_;
4698 		NimStringDesc* T43_;
4699 		NimStringDesc* T44_;
4700 		NimStringDesc* linkTmpl;
4701 		tyArray__rmMMhDIqORJzUU5zqeitSQ T49_;
4702 		NimStringDesc* T50_;
4703 		tyArray__68WB4OcBspSFyW4LY9cOceA T51_;
4704 		NimStringDesc* T52_;
4705 		linkerExe = getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_190));
4706 		{
4707 			if (!((linkerExe ? linkerExe->Sup.len : 0) == ((NI) 0))) goto LA13_;
4708 			linkerExe = getLinkerExe__extccomp_985(conf, (*conf).cCompiler);
4709 		}
4710 		LA13_: ;
4711 		{
4712 			NIM_BOOL T17_;
4713 			T17_ = (NIM_BOOL)0;
4714 			T17_ = needsExeExt__extccomp_891(conf);
4715 			if (!T17_) goto LA18_;
4716 			linkerExe = nosaddFileExt(linkerExe, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_93));
4717 		}
4718 		LA18_: ;
4719 		{
4720 			NIM_BOOL T22_;
4721 			T22_ = (NIM_BOOL)0;
4722 			T22_ = noAbsolutePaths__extccomp_831(conf);
4723 			if (!T22_) goto LA23_;
4724 			result = copyString(linkerExe);
4725 		}
4726 		goto LA20_;
4727 		LA23_: ;
4728 		{
4729 			result = nosjoinPath((*conf).cCompilerPath, linkerExe);
4730 		}
4731 		LA20_: ;
4732 		{
4733 			NIM_BOOL T28_;
4734 			T28_ = (NIM_BOOL)0;
4735 			T28_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 9))&63U)))!=0);
4736 			if (!(T28_)) goto LA29_;
4737 			T28_ = ((*conf).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
4738 			LA29_: ;
4739 			if (!T28_) goto LA30_;
4740 			buildgui = copyString(CC__extccomp_508[((*conf).cCompiler)- 1].Field7);
4741 		}
4742 		goto LA26_;
4743 		LA30_: ;
4744 		{
4745 			buildgui = ((NimStringDesc*) NIM_NIL);
4746 		}
4747 		LA26_: ;
4748 		{
4749 			if (!isDllBuild) goto LA35_;
4750 			builddll = copyString(CC__extccomp_508[((*conf).cCompiler)- 1].Field8);
4751 		}
4752 		goto LA33_;
4753 		LA35_: ;
4754 		{
4755 			builddll = ((NimStringDesc*) NIM_NIL);
4756 		}
4757 		LA33_: ;
4758 		exefile = nospquoteShell(output);
4759 		T38_ = NIM_NIL;
4760 		T38_ = getNimcacheDir__options_4183(conf);
4761 		T39_ = NIM_NIL;
4762 		nimZeroMem((void*)(&T40_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
4763 		splitFile__pathutils_26(output, (&T40_));
4764 		T39_ = rawNewString((T40_.Field1 ? T40_.Field1->Sup.len : 0) + 4);
4765 appendString(T39_, T40_.Field1);
4766 appendString(T39_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_191));
4767 		T41_ = NIM_NIL;
4768 		T41_ = slash___pathutils_89(T38_, T39_);
4769 		mapfile = nospquoteShell(T41_);
4770 		T42_ = NIM_NIL;
4771 		T43_ = NIM_NIL;
4772 		T43_ = getLinkOptions__extccomp_880(conf);
4773 		T44_ = NIM_NIL;
4774 		T44_ = getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_165));
4775 		T42_ = rawNewString((T43_ ? T43_->Sup.len : 0) + (T44_ ? T44_->Sup.len : 0) + 1);
4776 appendString(T42_, T43_);
4777 appendString(T42_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
4778 appendString(T42_, T44_);
4779 		linkOptions = T42_;
4780 		linkTmpl = getConfigVar__extccomp_627(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_192));
4781 		{
4782 			if (!((linkTmpl ? linkTmpl->Sup.len : 0) == ((NI) 0))) goto LA47_;
4783 			linkTmpl = copyString(CC__extccomp_508[((*conf).cCompiler)- 1].Field11);
4784 		}
4785 		LA47_: ;
4786 		nimZeroMem((void*)T49_, sizeof(tyArray__rmMMhDIqORJzUU5zqeitSQ));
4787 		T49_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_193));
4788 		T49_[1] = copyString(builddll);
4789 		T49_[2] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_194));
4790 		T49_[3] = copyString(mapfile);
4791 		T49_[4] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_195));
4792 		T49_[5] = copyString(buildgui);
4793 		T49_[6] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_98));
4794 		T49_[7] = copyString(linkOptions);
4795 		T49_[8] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_189));
4796 		T49_[9] = copyString(objfiles);
4797 		T49_[10] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_196));
4798 		T49_[11] = copyString(exefile);
4799 		T49_[12] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_100));
4800 		T49_[13] = getPrefixDir__options_4061(conf);
4801 		T49_[14] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_101));
4802 		T49_[15] = copyString((*conf).libpath);
4803 		T50_ = NIM_NIL;
4804 		T50_ = nsuFormatOpenArray(result, T49_, 16);
4805 		result = nospquoteShell(T50_);
4806 		result = addChar(result, 32);
4807 		nimZeroMem((void*)T51_, sizeof(tyArray__68WB4OcBspSFyW4LY9cOceA));
4808 		T51_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_193));
4809 		T51_[1] = copyString(builddll);
4810 		T51_[2] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_194));
4811 		T51_[3] = copyString(mapfile);
4812 		T51_[4] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_195));
4813 		T51_[5] = copyString(buildgui);
4814 		T51_[6] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_98));
4815 		T51_[7] = copyString(linkOptions);
4816 		T51_[8] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_189));
4817 		T51_[9] = copyString(objfiles);
4818 		T51_[10] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_196));
4819 		T51_[11] = copyString(exefile);
4820 		T51_[12] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_100));
4821 		T52_ = NIM_NIL;
4822 		T52_ = getPrefixDir__options_4061(conf);
4823 		T51_[13] = nospquoteShell(T52_);
4824 		T51_[14] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_101));
4825 		T51_[15] = nospquoteShell((*conf).libpath);
4826 		T51_[16] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_111));
4827 		T51_[17] = vccplatform__extccomp_872(conf);
4828 		nsuAddf((&result), linkTmpl, T51_, 18);
4829 		{
4830 			NIM_BOOL T55_;
4831 			tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw t;
4832 			NimStringDesc* pdb;
4833 			NimStringDesc* T59_;
4834 			NimStringDesc* T60_;
4835 			NI T61_;
4836 			NimStringDesc* T62_;
4837 			NimStringDesc* T63_;
4838 			T55_ = (NIM_BOOL)0;
4839 			T55_ = hcrOn__options_569(conf);
4840 			if (!(T55_)) goto LA56_;
4841 			T55_ = isVSCompatible__extccomp_575(conf);
4842 			LA56_: ;
4843 			if (!T55_) goto LA57_;
4844 			nimZeroMem((void*)(&t), sizeof(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw));
4845 			t.Sup.m_type = (&NTIdatetime__d9cK9cyKZPJJxFXUmx8dSpPw_);
4846 			now__pureZtimes_1475((&t));
4847 			T59_ = NIM_NIL;
4848 			T60_ = NIM_NIL;
4849 			T60_ = format__extccomp_1121((&t));
4850 			T61_ = (NI)0;
4851 			T61_ = nanosecond__pureZtimes_1073((&t));
4852 			T62_ = NIM_NIL;
4853 			T62_ = dollar___systemZdollars_3(((NI) (T61_)));
4854 			T59_ = rawNewString((output ? output->Sup.len : 0) + (T60_ ? T60_->Sup.len : 0) + (T62_ ? T62_->Sup.len : 0) + 5);
4855 appendString(T59_, output);
4856 appendString(T59_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_2));
4857 appendString(T59_, T60_);
4858 appendString(T59_, T62_);
4859 appendString(T59_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_199));
4860 			pdb = T59_;
4861 			T63_ = NIM_NIL;
4862 			T63_ = rawNewString((pdb ? pdb->Sup.len : 0) + 12);
4863 appendString(T63_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_200));
4864 appendString(T63_, pdb);
4865 			result = resizeString(result, (T63_ ? T63_->Sup.len : 0) + 0);
4866 appendString(result, T63_);
4867 		}
4868 		LA57_: ;
4869 	}
4870 	LA1_: ;
4871 	{
4872 		NIM_BOOL T66_;
4873 		T66_ = (NIM_BOOL)0;
4874 		T66_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 6))&63U)))!=0);
4875 		if (!(T66_)) goto LA67_;
4876 		T66_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 6));
4877 		LA67_: ;
4878 		if (!T66_) goto LA68_;
4879 		result = resizeString(result, 12);
4880 appendString(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_201));
4881 	}
4882 	LA68_: ;
4883 	return result;
4884 }
N_INLINE(NCSTRING,nimToCStringConv)4885 static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s) {
4886 	NCSTRING result;
4887 	result = (NCSTRING)0;
4888 	{
4889 		NIM_BOOL T3_;
4890 		T3_ = (NIM_BOOL)0;
4891 		T3_ = (s == ((NimStringDesc*) NIM_NIL));
4892 		if (T3_) goto LA4_;
4893 		T3_ = ((*s).Sup.len == ((NI) 0));
4894 		LA4_: ;
4895 		if (!T3_) goto LA5_;
4896 		result = "";
4897 	}
4898 	goto LA1_;
4899 	LA5_: ;
4900 	{
4901 		result = ((NCSTRING) ((*s).data));
4902 	}
4903 	LA1_: ;
4904 	return result;
4905 }
N_INLINE(tySequence__sM4lkSb7zS6F7OVMvW9cffQ *,map__extccomp_1381)4906 static N_INLINE(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, map__extccomp_1381)(NimStringDesc** s, NI sLen_0, tyProc__oFHfEKFsiYTMAy9a42cSiKw op) {
4907 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* result;
4908 	result = NIM_NIL;
4909 	result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) newSeq((&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), ((NI) (sLen_0)));
4910 	{
4911 		NI i;
4912 		NI colontmp_;
4913 		NI i_2;
4914 		i = (NI)0;
4915 		colontmp_ = (NI)0;
4916 		colontmp_ = sLen_0;
4917 		i_2 = ((NI) 0);
4918 		{
4919 			while (1) {
4920 				if (!(i_2 < colontmp_)) goto LA3;
4921 				i = i_2;
4922 				asgnRef((void**) (&result->data[i]), op.ClE_0? op.ClP_0(s[i], op.ClE_0):((TM__OyL9acDBDoBfMwa5zb1Y88w_204)(op.ClP_0))(s[i]));
4923 				i_2 += ((NI) 1);
4924 			} LA3: ;
4925 		}
4926 	}
4927 	return result;
4928 }
N_NIMCALL(NimStringDesc *,colonanonymous___extccomp_1377)4929 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, colonanonymous___extccomp_1377)(NimStringDesc* curr) {
4930 	NimStringDesc* result;
4931 {	result = NIM_NIL;
4932 	result = nsuReplaceStr(curr, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_89), ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_205));
4933 	goto BeforeRet_;
4934 	}BeforeRet_: ;
4935 	return result;
4936 }
N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ *,getExtraCmds__extccomp_1146)4937 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, getExtraCmds__extccomp_1146)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* output) {
4938 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* result;
4939 	result = NIM_NIL;
4940 	{
4941 		NIM_BOOL T3_;
4942 		NimStringDesc* T7_;
4943 		NimStringDesc* T8_;
4944 		NI T9_;
4945 		NimStringDesc* T10_;
4946 		T3_ = (NIM_BOOL)0;
4947 		T3_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 6))&63U)))!=0);
4948 		if (!(T3_)) goto LA4_;
4949 		T3_ = !((((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 8))&63U)))!=0));
4950 		LA4_: ;
4951 		if (!T3_) goto LA5_;
4952 		T7_ = NIM_NIL;
4953 		T8_ = NIM_NIL;
4954 		T8_ = nospquoteShell(output);
4955 		T7_ = rawNewString((T8_ ? T8_->Sup.len : 0) + 9);
4956 appendString(T7_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_207));
4957 appendString(T7_, T8_);
4958 		result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(result), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
4959 		T9_ = result->Sup.len++;
4960 		T10_ = NIM_NIL;
4961 		T10_ = result->data[T9_]; result->data[T9_] = copyStringRC1(T7_);
4962 		if (T10_) nimGCunrefNoCycle(T10_);
4963 	}
4964 	LA5_: ;
4965 	return result;
4966 }
N_NIMCALL(void,execExternalProgram__extccomp_808)4967 N_LIB_PRIVATE N_NIMCALL(void, execExternalProgram__extccomp_808)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cmd, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg) {
4968 	{
4969 		NI T3_;
4970 		NimStringDesc* T6_;
4971 		T3_ = (NI)0;
4972 		T3_ = execWithEcho__extccomp_795(conf, cmd, msg);
4973 		if (!!((T3_ == ((NI) 0)))) goto LA4_;
4974 		T6_ = NIM_NIL;
4975 		T6_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_183), cmd);
4976 		liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T6_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_211, NIM_FALSE);
4977 	}
4978 	LA4_: ;
4979 }
N_NIMCALL(void,execLinkCmd__extccomp_1162)4980 N_LIB_PRIVATE N_NIMCALL(void, execLinkCmd__extccomp_1162)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* linkCmd) {
4981 	TSafePoint TM__OyL9acDBDoBfMwa5zb1Y88w_210;
4982 	pushSafePoint(&TM__OyL9acDBDoBfMwa5zb1Y88w_210);
4983 	TM__OyL9acDBDoBfMwa5zb1Y88w_210.status = _setjmp(TM__OyL9acDBDoBfMwa5zb1Y88w_210.context);
4984 	if (TM__OyL9acDBDoBfMwa5zb1Y88w_210.status == 0) {
4985 	execExternalProgram__extccomp_808(conf, linkCmd, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 90));
4986 	popSafePoint();
4987 	}
4988 	else {
4989 		popSafePoint();
4990 		if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIoserror__BeJgrOdDsczOwEWOZbRfKA_))) {
4991 			tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA* oseX60gensym65_;
4992 			Exception* T3_;
4993 			TM__OyL9acDBDoBfMwa5zb1Y88w_210.status = 0;
4994 			T3_ = NIM_NIL;
4995 			T3_ = getCurrentException();
4996 			oseX60gensym65_ = ((tyObject_OSError__BeJgrOdDsczOwEWOZbRfKA*) (T3_));
4997 			{
4998 				NimStringDesc* T8_;
4999 				NimStringDesc* T9_;
5000 				if (!NIM_TRUE) goto LA6_;
5001 				T8_ = NIM_NIL;
5002 				T9_ = NIM_NIL;
5003 				T9_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym65_).errorCode)));
5004 				T8_ = rawNewString(((*oseX60gensym65_).Sup.Sup.message ? (*oseX60gensym65_).Sup.Sup.message->Sup.len : 0) + (T9_ ? T9_->Sup.len : 0) + 47);
5005 appendString(T8_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_212));
5006 appendString(T8_, (*oseX60gensym65_).Sup.Sup.message);
5007 appendString(T8_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
5008 appendString(T8_, T9_);
5009 				liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T8_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_182, NIM_FALSE);
5010 			}
5011 			goto LA4_;
5012 			LA6_: ;
5013 			{
5014 				NimStringDesc* T11_;
5015 				NimStringDesc* T12_;
5016 				NimStringDesc* T13_;
5017 				T11_ = NIM_NIL;
5018 				T12_ = NIM_NIL;
5019 				T12_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym65_).errorCode)));
5020 				T11_ = rawNewString(((*oseX60gensym65_).Sup.Sup.message ? (*oseX60gensym65_).Sup.Sup.message->Sup.len : 0) + (T12_ ? T12_->Sup.len : 0) + 1);
5021 appendString(T11_, (*oseX60gensym65_).Sup.Sup.message);
5022 appendString(T11_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
5023 appendString(T11_, T12_);
5024 				T13_ = NIM_NIL;
5025 				T13_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_183), T11_);
5026 				liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T13_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_184, NIM_FALSE);
5027 			}
5028 			LA4_: ;
5029 			reraiseException();
5030 			popCurrentException();
5031 		}
5032 	}
5033 	if (TM__OyL9acDBDoBfMwa5zb1Y88w_210.status != 0) reraiseException();
5034 }
N_NIMCALL(void,linkViaResponseFile__extccomp_1200)5035 N_LIB_PRIVATE N_NIMCALL(void, linkViaResponseFile__extccomp_1200)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cmd) {
5036 	NI i;
5037 	NI last;
5038 	NimStringDesc* linkerArgs;
5039 	NimStringDesc* T20_;
5040 	NimStringDesc* args;
5041 	TSafePoint TM__OyL9acDBDoBfMwa5zb1Y88w_209;
5042 	NimStringDesc* T29_;
5043 	NimStringDesc* T30_;
5044 	i = ((NI) 0);
5045 	last = ((NI) 0);
5046 	{
5047 		NIM_BOOL T3_;
5048 		T3_ = (NIM_BOOL)0;
5049 		T3_ = (((NI) 0) < (cmd ? cmd->Sup.len : 0));
5050 		if (!(T3_)) goto LA4_;
5051 		T3_ = ((NU8)(cmd->data[((NI) 0)]) == (NU8)(34));
5052 		LA4_: ;
5053 		if (!T3_) goto LA5_;
5054 		i += ((NI) 1);
5055 		{
5056 			while (1) {
5057 				NIM_BOOL T9_;
5058 				T9_ = (NIM_BOOL)0;
5059 				T9_ = (i < (cmd ? cmd->Sup.len : 0));
5060 				if (!(T9_)) goto LA10_;
5061 				T9_ = !(((NU8)(cmd->data[i]) == (NU8)(34)));
5062 				LA10_: ;
5063 				if (!T9_) goto LA8;
5064 				i += ((NI) 1);
5065 			} LA8: ;
5066 		}
5067 		last = i;
5068 		i += ((NI) 1);
5069 	}
5070 	goto LA1_;
5071 	LA5_: ;
5072 	{
5073 		{
5074 			while (1) {
5075 				NIM_BOOL T14_;
5076 				T14_ = (NIM_BOOL)0;
5077 				T14_ = (i < (cmd ? cmd->Sup.len : 0));
5078 				if (!(T14_)) goto LA15_;
5079 				T14_ = !(((NU8)(cmd->data[i]) == (NU8)(32)));
5080 				LA15_: ;
5081 				if (!T14_) goto LA13;
5082 				i += ((NI) 1);
5083 			} LA13: ;
5084 		}
5085 		last = i;
5086 	}
5087 	LA1_: ;
5088 	{
5089 		while (1) {
5090 			NIM_BOOL T18_;
5091 			T18_ = (NIM_BOOL)0;
5092 			T18_ = (i < (cmd ? cmd->Sup.len : 0));
5093 			if (!(T18_)) goto LA19_;
5094 			T18_ = ((NU8)(cmd->data[i]) == (NU8)(32));
5095 			LA19_: ;
5096 			if (!T18_) goto LA17;
5097 			i += ((NI) 1);
5098 		} LA17: ;
5099 	}
5100 	T20_ = NIM_NIL;
5101 	T20_ = rawNewString(((*conf).projectName ? (*conf).projectName->Sup.len : 0) + 15);
5102 appendString(T20_, (*conf).projectName);
5103 appendString(T20_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_208));
5104 	linkerArgs = T20_;
5105 	args = substr__system_7766(cmd, i);
5106 	{
5107 		NIM_BOOL T23_;
5108 		NimStringDesc* T27_;
5109 		T23_ = (NIM_BOOL)0;
5110 		T23_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 1));
5111 		if (T23_) goto LA24_;
5112 		T23_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 4));
5113 		LA24_: ;
5114 		if (!T23_) goto LA25_;
5115 		T27_ = NIM_NIL;
5116 		T27_ = nsuReplaceChar(args, 92, 47);
5117 		writeFile__systemZio_476(linkerArgs, T27_);
5118 	}
5119 	goto LA21_;
5120 	LA25_: ;
5121 	{
5122 		writeFile__systemZio_476(linkerArgs, args);
5123 	}
5124 	LA21_: ;
5125 	pushSafePoint(&TM__OyL9acDBDoBfMwa5zb1Y88w_209);
5126 	TM__OyL9acDBDoBfMwa5zb1Y88w_209.status = _setjmp(TM__OyL9acDBDoBfMwa5zb1Y88w_209.context);
5127 	if (TM__OyL9acDBDoBfMwa5zb1Y88w_209.status == 0) {
5128 	T29_ = NIM_NIL;
5129 	T30_ = NIM_NIL;
5130 	T30_ = substr__system_7754(cmd, ((NI) 0), last);
5131 	T29_ = rawNewString((T30_ ? T30_->Sup.len : 0) + (linkerArgs ? linkerArgs->Sup.len : 0) + 2);
5132 appendString(T29_, T30_);
5133 appendString(T29_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_213));
5134 appendString(T29_, linkerArgs);
5135 	execLinkCmd__extccomp_1162(conf, T29_);
5136 	popSafePoint();
5137 	}
5138 	else {
5139 		popSafePoint();
5140 	}
5141 	{
5142 		nosremoveFile(linkerArgs);
5143 		if (TM__OyL9acDBDoBfMwa5zb1Y88w_209.status != 0) nimLeaveFinally();
5144 	}
5145 	if (TM__OyL9acDBDoBfMwa5zb1Y88w_209.status != 0) reraiseException();
5146 }
N_NIMCALL(void,generateScript__extccomp_812)5147 N_LIB_PRIVATE N_NIMCALL(void, generateScript__extccomp_812)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* script) {
5148 	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T1_;
5149 	NimStringDesc* _;
5150 	NimStringDesc* name;
5151 	NimStringDesc* __2;
5152 	NimStringDesc* filename;
5153 	NimStringDesc* T2_;
5154 	NimStringDesc* T3_;
5155 	NimStringDesc* T4_;
5156 	nimZeroMem((void*)(&T1_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
5157 	nossplitFile((*conf).outFile, (&T1_));
5158 	_ = NIM_NIL;
5159 	_ = T1_.Field0;
5160 	name = NIM_NIL;
5161 	name = T1_.Field1;
5162 	__2 = NIM_NIL;
5163 	__2 = T1_.Field2;
5164 	T2_ = NIM_NIL;
5165 	T2_ = getNimcacheDir__options_4183(conf);
5166 	T3_ = NIM_NIL;
5167 	T3_ = rawNewString((name ? name->Sup.len : 0) + 8);
5168 appendString(T3_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_214));
5169 appendString(T3_, name);
5170 	T4_ = NIM_NIL;
5171 	T4_ = nosaddFileExt(T3_, OS__platform_504[((*conf).target.targetOS)- 1].Field8);
5172 	filename = slash___pathutils_89(T2_, T4_);
5173 	{
5174 		NIM_BOOL T7_;
5175 		NimStringDesc* T10_;
5176 		T7_ = (NIM_BOOL)0;
5177 		T7_ = writeRope__ropes_241(script, filename);
5178 		if (!!(T7_)) goto LA8_;
5179 		T10_ = NIM_NIL;
5180 		T10_ = rawNewString((filename ? filename->Sup.len : 0) + 25);
5181 appendString(T10_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_169));
5182 appendString(T10_, filename);
5183 		liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T10_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_215, NIM_FALSE);
5184 	}
5185 	LA8_: ;
5186 }
N_NIMCALL(void,callCCompiler__extccomp_1255)5187 N_LIB_PRIVATE N_NIMCALL(void, callCCompiler__extccomp_1255)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
5188 	tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg* colonenv_;
5189 	NimStringDesc* linkCmd;
5190 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
5191 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* script;
5192 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cmds;
5193 	tyProc__SqRJqa5aOiKB4EuKlKh9asA prettyCb;
5194 	tyProc__SqRJqa5aOiKB4EuKlKh9asA T5_;
5195 {	colonenv_ = NIM_NIL;
5196 	colonenv_ = (tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg*) newObj((&NTIrefobject__CqlAb69bkfxaejoSKDwhYYA_), sizeof(tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg));
5197 	(*colonenv_).Sup.m_type = (&NTIobject__H6RAoT9avhFKpqIMlTu5GHg_);
5198 	asgnRef((void**) (&(*colonenv_).conf2), conf);
5199 	linkCmd = NIM_NIL;
5200 	extraCmds = NIM_NIL;
5201 	{
5202 		if (!(((*(*colonenv_).conf2).globalOptions & 1040) == 16)) goto LA3_;
5203 		goto BeforeRet_;
5204 	}
5205 	LA3_: ;
5206 	script = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
5207 	cmds = NIM_NIL;
5208 	asgnRef((void**) (&(*colonenv_).prettyCmds1), NIM_NIL);
5209 	nimZeroMem((void*)(&prettyCb), sizeof(tyProc__SqRJqa5aOiKB4EuKlKh9asA));
5210 	nimZeroMem((void*)(&T5_), sizeof(tyProc__SqRJqa5aOiKB4EuKlKh9asA));
5211 	T5_.ClP_0 = colonanonymous___extccomp_1270; T5_.ClE_0 = colonenv_;
5212 	prettyCb.ClE_0 = T5_.ClE_0;
5213 	prettyCb.ClP_0 = T5_.ClP_0;
5214 	{
5215 		NI idx;
5216 		tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg it;
5217 		NI i;
5218 		NI L;
5219 		NI T7_;
5220 		idx = (NI)0;
5221 		nimZeroMem((void*)(&it), sizeof(tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg));
5222 		i = ((NI) 0);
5223 		T7_ = ((*(*colonenv_).conf2).toCompile ? (*(*colonenv_).conf2).toCompile->Sup.len : 0);
5224 		L = T7_;
5225 		{
5226 			while (1) {
5227 				if (!(i < L)) goto LA9;
5228 				idx = i;
5229 				nimCopyMem((void*)(&it), (NIM_CONST void*)(&(*(*colonenv_).conf2).toCompile->data[i]), sizeof(it));
5230 				{
5231 					NimStringDesc* compileCmd;
5232 					NI T15_;
5233 					{
5234 						if (!((it.flags &((NU8)1<<((NU)(((tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA) 0))&7U)))!=0)) goto LA13_;
5235 						goto LA10;
5236 					}
5237 					LA13_: ;
5238 					T15_ = ((*(*colonenv_).conf2).toCompile ? (*(*colonenv_).conf2).toCompile->Sup.len : 0);
5239 					compileCmd = getCompileCFileCmd__extccomp_997((*colonenv_).conf2, (&it), (idx == (NI)(T15_ - ((NI) 1))), NIM_TRUE);
5240 					{
5241 						NI T20_;
5242 						NimStringDesc* T21_;
5243 						NimStringDesc* T22_;
5244 						NimStringDesc* T23_;
5245 						NI T24_;
5246 						NimStringDesc* T25_;
5247 						if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 4))&63U)))!=0))) goto LA18_;
5248 						cmds = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(cmds), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
5249 						T20_ = cmds->Sup.len++;
5250 						T21_ = NIM_NIL;
5251 						T21_ = cmds->data[T20_]; cmds->data[T20_] = copyStringRC1(compileCmd);
5252 						if (T21_) nimGCunrefNoCycle(T21_);
5253 						T22_ = NIM_NIL;
5254 						T22_ = dollar___options_4373(it.cname);
5255 						T23_ = NIM_NIL;
5256 						T23_ = displayProgressCC__extccomp_1246((*colonenv_).conf2, T22_, compileCmd);
5257 						asgnRef((void**) (&(*colonenv_).prettyCmds1), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)((*colonenv_).prettyCmds1), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_)));
5258 						T24_ = (*colonenv_).prettyCmds1->Sup.len++;
5259 						T25_ = NIM_NIL;
5260 						T25_ = (*colonenv_).prettyCmds1->data[T24_]; (*colonenv_).prettyCmds1->data[T24_] = copyStringRC1(T23_);
5261 						if (T25_) nimGCunrefNoCycle(T25_);
5262 					}
5263 					LA18_: ;
5264 					{
5265 						if (!(((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 10))&63U)))!=0)) goto LA28_;
5266 						add__ropes_162(&script, compileCmd);
5267 						add__ropes_162(&script, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_116));
5268 					}
5269 					LA28_: ;
5270 				} LA10: ;
5271 				i += ((NI) 1);
5272 			} LA9: ;
5273 		}
5274 	}
5275 	{
5276 		if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 4))&63U)))!=0))) goto LA32_;
5277 		execCmdsInParallel__extccomp_1167((*colonenv_).conf2, cmds, prettyCb);
5278 	}
5279 	LA32_: ;
5280 	{
5281 		NimStringDesc* objfiles;
5282 		if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 5))&63U)))!=0))) goto LA36_;
5283 		objfiles = ((NimStringDesc*) NIM_NIL);
5284 		{
5285 			NimStringDesc** it_2;
5286 			NI i_2;
5287 			NI L_2;
5288 			NI T39_;
5289 			it_2 = (NimStringDesc**)0;
5290 			i_2 = ((NI) 0);
5291 			T39_ = ((*(*colonenv_).conf2).externalToLink ? (*(*colonenv_).conf2).externalToLink->Sup.len : 0);
5292 			L_2 = T39_;
5293 			{
5294 				while (1) {
5295 					NimStringDesc* objFile;
5296 					NimStringDesc* T48_;
5297 					NimStringDesc* T49_;
5298 					if (!(i_2 < L_2)) goto LA41;
5299 					it_2 = (&(*(*colonenv_).conf2).externalToLink->data[i_2]);
5300 					{
5301 						NIM_BOOL T44_;
5302 						T44_ = (NIM_BOOL)0;
5303 						T44_ = noAbsolutePaths__extccomp_831((*colonenv_).conf2);
5304 						if (!T44_) goto LA45_;
5305 						objFile = nosextractFilename((*it_2));
5306 					}
5307 					goto LA42_;
5308 					LA45_: ;
5309 					{
5310 						objFile = (*it_2);
5311 					}
5312 					LA42_: ;
5313 					objfiles = addChar(objfiles, 32);
5314 					T48_ = NIM_NIL;
5315 					T48_ = nosaddFileExt(objFile, CC__extccomp_508[((*(*colonenv_).conf2).cCompiler)- 1].Field1);
5316 					T49_ = NIM_NIL;
5317 					T49_ = nospquoteShell(T48_);
5318 					objfiles = resizeString(objfiles, (T49_ ? T49_->Sup.len : 0) + 0);
5319 appendString(objfiles, T49_);
5320 					i_2 += ((NI) 1);
5321 				} LA41: ;
5322 			}
5323 		}
5324 		{
5325 			NIM_BOOL T52_;
5326 			NI mainFileIdx;
5327 			NI T55_;
5328 			tyProc__oFHfEKFsiYTMAy9a42cSiKw T93_;
5329 			T52_ = (NIM_BOOL)0;
5330 			T52_ = hcrOn__options_569((*colonenv_).conf2);
5331 			if (!T52_) goto LA53_;
5332 			cmds = NIM_NIL;
5333 			T55_ = ((*(*colonenv_).conf2).toCompile ? (*(*colonenv_).conf2).toCompile->Sup.len : 0);
5334 			mainFileIdx = (NI)(T55_ - ((NI) 1));
5335 			{
5336 				NI idx_2;
5337 				tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg x;
5338 				NI i_3;
5339 				NI L_3;
5340 				NI T57_;
5341 				idx_2 = (NI)0;
5342 				nimZeroMem((void*)(&x), sizeof(tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg));
5343 				i_3 = ((NI) 0);
5344 				T57_ = ((*(*colonenv_).conf2).toCompile ? (*(*colonenv_).conf2).toCompile->Sup.len : 0);
5345 				L_3 = T57_;
5346 				{
5347 					while (1) {
5348 						if (!(i_3 < L_3)) goto LA59;
5349 						idx_2 = i_3;
5350 						nimCopyMem((void*)(&x), (NIM_CONST void*)(&(*(*colonenv_).conf2).toCompile->data[i_3]), sizeof(x));
5351 						{
5352 							NimStringDesc* objFile_2;
5353 							NIM_BOOL buildDll;
5354 							NimStringDesc* linkTarget;
5355 							NimStringDesc* T65_;
5356 							NimStringDesc* T66_;
5357 							NimStringDesc* T67_;
5358 							NI T68_;
5359 							NimStringDesc* T69_;
5360 							{
5361 								if (!((x.flags &((NU8)1<<((NU)(((tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA) 0))&7U)))!=0)) goto LA63_;
5362 								goto LA60;
5363 							}
5364 							LA63_: ;
5365 							objFile_2 = getObjFilePath__extccomp_1235((*colonenv_).conf2, (&x));
5366 							buildDll = !((idx_2 == mainFileIdx));
5367 							linkTarget = hcrLinkTargetName__extccomp_1239((*colonenv_).conf2, objFile_2, !(buildDll));
5368 							T65_ = NIM_NIL;
5369 							T66_ = NIM_NIL;
5370 							T66_ = nospquoteShell(objFile_2);
5371 							T65_ = rawNewString((objfiles ? objfiles->Sup.len : 0) + (T66_ ? T66_->Sup.len : 0) + 1);
5372 appendString(T65_, objfiles);
5373 appendString(T65_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78));
5374 appendString(T65_, T66_);
5375 							T67_ = NIM_NIL;
5376 							T67_ = getLinkCmd__extccomp_1094((*colonenv_).conf2, linkTarget, T65_, buildDll, NIM_TRUE);
5377 							cmds = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(cmds), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
5378 							T68_ = cmds->Sup.len++;
5379 							T69_ = NIM_NIL;
5380 							T69_ = cmds->data[T68_]; cmds->data[T68_] = copyStringRC1(T67_);
5381 							if (T69_) nimGCunrefNoCycle(T69_);
5382 							{
5383 								NIM_BOOL T72_;
5384 								T72_ = (NIM_BOOL)0;
5385 								T72_ = isVSCompatible__extccomp_575((*colonenv_).conf2);
5386 								if (!T72_) goto LA73_;
5387 								{
5388 									NimStringDesc* pdb;
5389 									NimStringDesc* colontmp_;
5390 									NimStringDesc* T76_;
5391 									glob_t fX60gensym135_;
5392 									NI resX60gensym135_;
5393 									int T77_;
5394 									TSafePoint TM__OyL9acDBDoBfMwa5zb1Y88w_203;
5395 									pdb = NIM_NIL;
5396 									colontmp_ = NIM_NIL;
5397 									T76_ = NIM_NIL;
5398 									T76_ = rawNewString((objFile_2 ? objFile_2->Sup.len : 0) + 6);
5399 appendString(T76_, objFile_2);
5400 appendString(T76_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_202));
5401 									colontmp_ = T76_;
5402 									nimZeroMem((void*)(&fX60gensym135_), sizeof(glob_t));
5403 									resX60gensym135_ = (NI)0;
5404 									fX60gensym135_.gl_offs = ((NI) 0);
5405 									fX60gensym135_.gl_pathc = ((NI) 0);
5406 									fX60gensym135_.gl_pathv = ((NCSTRING*) NIM_NIL);
5407 									T77_ = (int)0;
5408 									T77_ = glob(nimToCStringConv(colontmp_), ((int) 0), NIM_NIL, (&fX60gensym135_));
5409 									resX60gensym135_ = ((NI) (T77_));
5410 									pushSafePoint(&TM__OyL9acDBDoBfMwa5zb1Y88w_203);
5411 									TM__OyL9acDBDoBfMwa5zb1Y88w_203.status = _setjmp(TM__OyL9acDBDoBfMwa5zb1Y88w_203.context);
5412 									if (TM__OyL9acDBDoBfMwa5zb1Y88w_203.status == 0) {
5413 									{
5414 										if (!(resX60gensym135_ == ((NI) 0))) goto LA80_;
5415 										{
5416 											NI iX60gensym135_;
5417 											NI colontmp__2;
5418 											NI res;
5419 											iX60gensym135_ = (NI)0;
5420 											colontmp__2 = (NI)0;
5421 											colontmp__2 = (NI)(fX60gensym135_.gl_pathc - ((NI) 1));
5422 											res = ((NI) 0);
5423 											{
5424 												while (1) {
5425 													NimStringDesc* pathX60gensym135_;
5426 													if (!(res <= colontmp__2)) goto LA84;
5427 													iX60gensym135_ = res;
5428 													pathX60gensym135_ = cstrToNimstr(fX60gensym135_.gl_pathv[iX60gensym135_]);
5429 													{
5430 														NIM_BOOL T87_;
5431 														NIM_BOOL T90_;
5432 														T87_ = (NIM_BOOL)0;
5433 														T87_ = nosfileExists(pathX60gensym135_);
5434 														if (!T87_) goto LA88_;
5435 														pdb = pathX60gensym135_;
5436 														T90_ = (NIM_BOOL)0;
5437 														T90_ = nostryRemoveFile(pdb);
5438 														(void)(T90_);
5439 													}
5440 													LA88_: ;
5441 													res += ((NI) 1);
5442 												} LA84: ;
5443 											}
5444 										}
5445 									}
5446 									LA80_: ;
5447 									popSafePoint();
5448 									}
5449 									else {
5450 										popSafePoint();
5451 									}
5452 									{
5453 										globfree((&fX60gensym135_));
5454 										if (TM__OyL9acDBDoBfMwa5zb1Y88w_203.status != 0) nimLeaveFinally();
5455 									}
5456 									if (TM__OyL9acDBDoBfMwa5zb1Y88w_203.status != 0) reraiseException();
5457 								}
5458 							}
5459 							LA73_: ;
5460 						} LA60: ;
5461 						i_3 += ((NI) 1);
5462 					} LA59: ;
5463 				}
5464 			}
5465 			nimZeroMem((void*)(&T93_), sizeof(tyProc__oFHfEKFsiYTMAy9a42cSiKw));
5466 			T93_.ClP_0 = ((TM__OyL9acDBDoBfMwa5zb1Y88w_206) (colonanonymous___extccomp_1377)); T93_.ClE_0 = NIM_NIL;
5467 			asgnRef((void**) (&(*colonenv_).prettyCmds1), map__extccomp_1381((*colonenv_).prettyCmds1->data, ((*colonenv_).prettyCmds1 ? (*colonenv_).prettyCmds1->Sup.len : 0), T93_));
5468 			execCmdsInParallel__extccomp_1167((*colonenv_).conf2, cmds, prettyCb);
5469 			{
5470 				NimStringDesc* mainObjFile;
5471 				NimStringDesc* src;
5472 				NimStringDesc* dst;
5473 				if (!!((((*(*colonenv_).conf2).toCompile->data[mainFileIdx].flags &((NU8)1<<((NU)(((tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA) 0))&7U)))!=0))) goto LA96_;
5474 				mainObjFile = getObjFilePath__extccomp_1235((*colonenv_).conf2, (&(*(*colonenv_).conf2).toCompile->data[mainFileIdx]));
5475 				src = hcrLinkTargetName__extccomp_1239((*colonenv_).conf2, mainObjFile, NIM_TRUE);
5476 				dst = prepareToWriteOutput__options_4058((*colonenv_).conf2);
5477 				copyFileWithPermissions__pureZos_1479(src, dst, NIM_TRUE, 2);
5478 			}
5479 			LA96_: ;
5480 		}
5481 		goto LA50_;
5482 		LA53_: ;
5483 		{
5484 			NimStringDesc* mainOutput;
5485 			{
5486 				tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* x_2;
5487 				NI i_4;
5488 				NI L_4;
5489 				NI T100_;
5490 				x_2 = (tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg*)0;
5491 				i_4 = ((NI) 0);
5492 				T100_ = ((*(*colonenv_).conf2).toCompile ? (*(*colonenv_).conf2).toCompile->Sup.len : 0);
5493 				L_4 = T100_;
5494 				{
5495 					while (1) {
5496 						NimStringDesc* objFile_3;
5497 						NimStringDesc* T109_;
5498 						if (!(i_4 < L_4)) goto LA102;
5499 						x_2 = (&(*(*colonenv_).conf2).toCompile->data[i_4]);
5500 						{
5501 							NIM_BOOL T105_;
5502 							T105_ = (NIM_BOOL)0;
5503 							T105_ = noAbsolutePaths__extccomp_831((*colonenv_).conf2);
5504 							if (!T105_) goto LA106_;
5505 							objFile_3 = nosextractFilename((*x_2).obj);
5506 						}
5507 						goto LA103_;
5508 						LA106_: ;
5509 						{
5510 							objFile_3 = (*x_2).obj;
5511 						}
5512 						LA103_: ;
5513 						objfiles = addChar(objfiles, 32);
5514 						T109_ = NIM_NIL;
5515 						T109_ = nospquoteShell(objFile_3);
5516 						objfiles = resizeString(objfiles, (T109_ ? T109_->Sup.len : 0) + 0);
5517 appendString(objfiles, T109_);
5518 						i_4 += ((NI) 1);
5519 					} LA102: ;
5520 				}
5521 			}
5522 			{
5523 				if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 10))&63U)))!=0))) goto LA112_;
5524 				mainOutput = prepareToWriteOutput__options_4058((*colonenv_).conf2);
5525 			}
5526 			goto LA110_;
5527 			LA112_: ;
5528 			{
5529 				mainOutput = (*(*colonenv_).conf2).projectName;
5530 			}
5531 			LA110_: ;
5532 			linkCmd = getLinkCmd__extccomp_1094((*colonenv_).conf2, mainOutput, objfiles, (((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 7))&63U)))!=0), NIM_TRUE);
5533 			extraCmds = getExtraCmds__extccomp_1146((*colonenv_).conf2, mainOutput);
5534 			{
5535 				if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 4))&63U)))!=0))) goto LA117_;
5536 				{
5537 					if (!(((NI) 32000) < (linkCmd ? linkCmd->Sup.len : 0))) goto LA121_;
5538 					linkViaResponseFile__extccomp_1200((*colonenv_).conf2, linkCmd);
5539 				}
5540 				goto LA119_;
5541 				LA121_: ;
5542 				{
5543 					execLinkCmd__extccomp_1162((*colonenv_).conf2, linkCmd);
5544 				}
5545 				LA119_: ;
5546 				{
5547 					NimStringDesc** cmd;
5548 					NI i_5;
5549 					NI L_5;
5550 					NI T125_;
5551 					cmd = (NimStringDesc**)0;
5552 					i_5 = ((NI) 0);
5553 					T125_ = (extraCmds ? extraCmds->Sup.len : 0);
5554 					L_5 = T125_;
5555 					{
5556 						while (1) {
5557 							if (!(i_5 < L_5)) goto LA127;
5558 							cmd = (&extraCmds->data[i_5]);
5559 							execExternalProgram__extccomp_808((*colonenv_).conf2, (*cmd), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 89));
5560 							i_5 += ((NI) 1);
5561 						} LA127: ;
5562 					}
5563 				}
5564 			}
5565 			LA117_: ;
5566 		}
5567 		LA50_: ;
5568 	}
5569 	goto LA34_;
5570 	LA36_: ;
5571 	{
5572 		linkCmd = ((NimStringDesc*) NIM_NIL);
5573 	}
5574 	LA34_: ;
5575 	{
5576 		if (!(((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 10))&63U)))!=0)) goto LA131_;
5577 		add__ropes_162(&script, linkCmd);
5578 		add__ropes_162(&script, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_116));
5579 		generateScript__extccomp_812((*colonenv_).conf2, script);
5580 	}
5581 	LA131_: ;
5582 	}BeforeRet_: ;
5583 }
N_NIMCALL(tySequence__4eQHGndY6XBYpFOH09apV8Q *,newSeq__extccomp_1559)5584 N_LIB_PRIVATE N_NIMCALL(tySequence__4eQHGndY6XBYpFOH09apV8Q*, newSeq__extccomp_1559)(NI len) {
5585 	tySequence__4eQHGndY6XBYpFOH09apV8Q* result;
5586 	result = NIM_NIL;
5587 	result = (tySequence__4eQHGndY6XBYpFOH09apV8Q*) newSeq((&NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_), len);
5588 	return result;
5589 }
N_INLINE(void,X5BX5Deq___pureZjson_1923)5590 static N_INLINE(void, X5BX5Deq___pureZjson_1923)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* obj, NimStringDesc* key, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* val) {
5591 	X5BX5Deq___pureZjson_287((&(*obj)._kind_6.fields), key, val);
5592 }
N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q *,toJson__extccomp_1736)5593 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1736)(tyTuple__UV3llMMYFckfui8YMBuUZA a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt) {
5594 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* result;
5595 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T1_;
5596 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T2_;
5597 	result = NIM_NIL;
5598 	result = newJArray__pureZjson_123();
5599 	T1_ = NIM_NIL;
5600 	T1_ = toJson__stdZjsonutils_603(a.Field0, opt);
5601 	add__pureZjson_222(result, T1_);
5602 	T2_ = NIM_NIL;
5603 	T2_ = toJson__stdZjsonutils_603(a.Field1, opt);
5604 	add__pureZjson_222(result, T2_);
5605 	return result;
5606 }
N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q *,toJson__extccomp_1708)5607 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1708)(tySequence__4eQHGndY6XBYpFOH09apV8Q* a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt) {
5608 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* result;
5609 	result = NIM_NIL;
5610 	result = newJArray__pureZjson_123();
5611 	{
5612 		tyTuple__UV3llMMYFckfui8YMBuUZA* ai;
5613 		NI i;
5614 		NI L;
5615 		NI T2_;
5616 		ai = (tyTuple__UV3llMMYFckfui8YMBuUZA*)0;
5617 		i = ((NI) 0);
5618 		T2_ = (a ? a->Sup.len : 0);
5619 		L = T2_;
5620 		{
5621 			while (1) {
5622 				tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T5_;
5623 				if (!(i < L)) goto LA4;
5624 				ai = (&a->data[i]);
5625 				T5_ = NIM_NIL;
5626 				T5_ = toJson__extccomp_1736((*ai), opt);
5627 				add__pureZjson_222(result, T5_);
5628 				i += ((NI) 1);
5629 			} LA4: ;
5630 		}
5631 	}
5632 	return result;
5633 }
N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q *,toJson__extccomp_1757)5634 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1757)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt) {
5635 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* result;
5636 	result = NIM_NIL;
5637 	result = newJArray__pureZjson_123();
5638 	{
5639 		NimStringDesc** ai;
5640 		NI i;
5641 		NI L;
5642 		NI T2_;
5643 		ai = (NimStringDesc**)0;
5644 		i = ((NI) 0);
5645 		T2_ = (a ? a->Sup.len : 0);
5646 		L = T2_;
5647 		{
5648 			while (1) {
5649 				tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T5_;
5650 				if (!(i < L)) goto LA4;
5651 				ai = (&a->data[i]);
5652 				T5_ = NIM_NIL;
5653 				T5_ = toJson__stdZjsonutils_603((*ai), opt);
5654 				add__pureZjson_222(result, T5_);
5655 				i += ((NI) 1);
5656 			} LA4: ;
5657 		}
5658 	}
5659 	return result;
5660 }
N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q *,toJson__extccomp_1785)5661 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1785)(NIM_BOOL a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt) {
5662 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* result;
5663 	result = NIM_NIL;
5664 	result = percent___pureZjson_1816(a);
5665 	return result;
5666 }
N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q *,toJson__extccomp_1687)5667 N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1687)(tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog* a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt) {
5668 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* result;
5669 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T1_;
5670 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T2_;
5671 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T3_;
5672 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T4_;
5673 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T5_;
5674 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T6_;
5675 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T7_;
5676 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T8_;
5677 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T9_;
5678 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T10_;
5679 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T11_;
5680 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T12_;
5681 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T13_;
5682 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T14_;
5683 	result = NIM_NIL;
5684 	result = newJObject__pureZjson_92();
5685 	T1_ = NIM_NIL;
5686 	T1_ = toJson__stdZjsonutils_603((*a).cacheVersion, opt);
5687 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_127), T1_);
5688 	T2_ = NIM_NIL;
5689 	T2_ = toJson__stdZjsonutils_603((*a).outputFile, opt);
5690 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_129), T2_);
5691 	T3_ = NIM_NIL;
5692 	T3_ = toJson__extccomp_1708((*a).compile, opt);
5693 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_130), T3_);
5694 	T4_ = NIM_NIL;
5695 	T4_ = toJson__extccomp_1757((*a).link, opt);
5696 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_139), T4_);
5697 	T5_ = NIM_NIL;
5698 	T5_ = toJson__stdZjsonutils_603((*a).linkcmd, opt);
5699 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_141), T5_);
5700 	T6_ = NIM_NIL;
5701 	T6_ = toJson__extccomp_1757((*a).extraCmds, opt);
5702 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_142), T6_);
5703 	T7_ = NIM_NIL;
5704 	T7_ = toJson__extccomp_1757((*a).configFiles, opt);
5705 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_143), T7_);
5706 	T8_ = NIM_NIL;
5707 	T8_ = toJson__extccomp_1785((*a).stdinInput, opt);
5708 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_144), T8_);
5709 	T9_ = NIM_NIL;
5710 	T9_ = toJson__extccomp_1785((*a).projectIsCmd, opt);
5711 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_146), T9_);
5712 	T10_ = NIM_NIL;
5713 	T10_ = toJson__stdZjsonutils_603((*a).cmdInput, opt);
5714 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_147), T10_);
5715 	T11_ = NIM_NIL;
5716 	T11_ = toJson__stdZjsonutils_603((*a).currentDir, opt);
5717 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_148), T11_);
5718 	T12_ = NIM_NIL;
5719 	T12_ = toJson__stdZjsonutils_603((*a).cmdline, opt);
5720 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_149), T12_);
5721 	T13_ = NIM_NIL;
5722 	T13_ = toJson__extccomp_1708((*a).depfiles, opt);
5723 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_150), T13_);
5724 	T14_ = NIM_NIL;
5725 	T14_ = toJson__stdZjsonutils_603((*a).nimexe, opt);
5726 	X5BX5Deq___pureZjson_1923(result, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_151), T14_);
5727 	return result;
5728 }
N_NIMCALL(void,writeJsonBuildInstructions__extccomp_1508)5729 N_LIB_PRIVATE N_NIMCALL(void, writeJsonBuildInstructions__extccomp_1508)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
5730 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* linkFiles;
5731 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* collectResult;
5732 	tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog bcache;
5733 	tySequence__4eQHGndY6XBYpFOH09apV8Q* collectResult_2;
5734 	NimStringDesc* T31_;
5735 	NimStringDesc* T32_;
5736 	NimStringDesc* T33_;
5737 	tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ T63_;
5738 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T64_;
5739 	NimStringDesc* T65_;
5740 	collectResult = newSeq__systemZio_503(((NI) 0));
5741 	{
5742 		NimStringDesc** it;
5743 		NI i;
5744 		NI L;
5745 		NI T2_;
5746 		it = (NimStringDesc**)0;
5747 		i = ((NI) 0);
5748 		T2_ = ((*conf).externalToLink ? (*conf).externalToLink->Sup.len : 0);
5749 		L = T2_;
5750 		{
5751 			while (1) {
5752 				NimStringDesc* it_2;
5753 				NimStringDesc* T10_;
5754 				NI T11_;
5755 				NimStringDesc* T12_;
5756 				if (!(i < L)) goto LA4;
5757 				it = (&(*conf).externalToLink->data[i]);
5758 				it_2 = copyString((*it));
5759 				{
5760 					NIM_BOOL T7_;
5761 					T7_ = (NIM_BOOL)0;
5762 					T7_ = noAbsolutePaths__extccomp_831(conf);
5763 					if (!T7_) goto LA8_;
5764 					it_2 = nosextractFilename(it_2);
5765 				}
5766 				LA8_: ;
5767 				T10_ = NIM_NIL;
5768 				T10_ = nosaddFileExt(it_2, CC__extccomp_508[((*conf).cCompiler)- 1].Field1);
5769 				collectResult = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(collectResult), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
5770 				T11_ = collectResult->Sup.len++;
5771 				T12_ = NIM_NIL;
5772 				T12_ = collectResult->data[T11_]; collectResult->data[T11_] = copyStringRC1(T10_);
5773 				if (T12_) nimGCunrefNoCycle(T12_);
5774 				i += ((NI) 1);
5775 			} LA4: ;
5776 		}
5777 	}
5778 	genericSeqAssign((&linkFiles), collectResult, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
5779 	{
5780 		tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* it_3;
5781 		NI i_2;
5782 		NI L_2;
5783 		NI T14_;
5784 		it_3 = (tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg*)0;
5785 		i_2 = ((NI) 0);
5786 		T14_ = ((*conf).toCompile ? (*conf).toCompile->Sup.len : 0);
5787 		L_2 = T14_;
5788 		{
5789 			while (1) {
5790 				NI T17_;
5791 				NimStringDesc* T18_;
5792 				if (!(i_2 < L_2)) goto LA16;
5793 				it_3 = (&(*conf).toCompile->data[i_2]);
5794 				linkFiles = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(linkFiles), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
5795 				T17_ = linkFiles->Sup.len++;
5796 				T18_ = NIM_NIL;
5797 				T18_ = linkFiles->data[T17_]; linkFiles->data[T17_] = copyStringRC1((*it_3).obj);
5798 				if (T18_) nimGCunrefNoCycle(T18_);
5799 				i_2 += ((NI) 1);
5800 			} LA16: ;
5801 		}
5802 	}
5803 	nimZeroMem((void*)(&bcache), sizeof(tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog));
5804 	nimZeroMem((void*)(&bcache), sizeof(tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog));
5805 	bcache.cacheVersion = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_154));
5806 	bcache.outputFile = absOutFile__options_4038(conf);
5807 	collectResult_2 = newSeq__extccomp_1559(((NI) 0));
5808 	{
5809 		NI i_3;
5810 		tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg it_4;
5811 		NI i_4;
5812 		NI L_3;
5813 		NI T20_;
5814 		i_3 = (NI)0;
5815 		nimZeroMem((void*)(&it_4), sizeof(tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg));
5816 		i_4 = ((NI) 0);
5817 		T20_ = ((*conf).toCompile ? (*conf).toCompile->Sup.len : 0);
5818 		L_3 = T20_;
5819 		{
5820 			while (1) {
5821 				if (!(i_4 < L_3)) goto LA22;
5822 				i_3 = i_4;
5823 				nimCopyMem((void*)(&it_4), (NIM_CONST void*)(&(*conf).toCompile->data[i_4]), sizeof(it_4));
5824 				{
5825 					tyTuple__UV3llMMYFckfui8YMBuUZA T27_;
5826 					NI T28_;
5827 					NimStringDesc* T29_;
5828 					NimStringDesc* T30_;
5829 					if (!!(((it_4.flags &((NU8)1<<((NU)(((tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA) 0))&7U)))!=0))) goto LA25_;
5830 					nimZeroMem((void*)(&T27_), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
5831 					T27_.Field0 = copyString(it_4.cname);
5832 					T27_.Field1 = getCompileCFileCmd__extccomp_997(conf, (&it_4), NIM_FALSE, NIM_FALSE);
5833 					collectResult_2 = (tySequence__4eQHGndY6XBYpFOH09apV8Q*) incrSeqV3((TGenericSeq*)(collectResult_2), (&NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_));
5834 					T28_ = collectResult_2->Sup.len++;
5835 					T29_ = NIM_NIL;
5836 					T29_ = collectResult_2->data[T28_].Field0; collectResult_2->data[T28_].Field0 = copyStringRC1(T27_.Field0);
5837 					if (T29_) nimGCunrefNoCycle(T29_);
5838 					T30_ = NIM_NIL;
5839 					T30_ = collectResult_2->data[T28_].Field1; collectResult_2->data[T28_].Field1 = copyStringRC1(T27_.Field1);
5840 					if (T30_) nimGCunrefNoCycle(T30_);
5841 				}
5842 				LA25_: ;
5843 				i_4 += ((NI) 1);
5844 			} LA22: ;
5845 		}
5846 	}
5847 	genericSeqAssign((&bcache.compile), collectResult_2, (&NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_));
5848 	genericSeqAssign((&bcache.link), linkFiles, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
5849 	T31_ = NIM_NIL;
5850 	T31_ = absOutFile__options_4038(conf);
5851 	T32_ = NIM_NIL;
5852 	T32_ = quoteShellCommand__pureZos_611(linkFiles->data, (linkFiles ? linkFiles->Sup.len : 0));
5853 	bcache.linkcmd = getLinkCmd__extccomp_1094(conf, T31_, T32_, (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 7))&63U)))!=0), NIM_FALSE);
5854 	T33_ = NIM_NIL;
5855 	T33_ = absOutFile__options_4038(conf);
5856 	bcache.extraCmds = getExtraCmds__extccomp_1146(conf, T33_);
5857 	bcache.stdinInput = (*conf).projectIsStdin;
5858 	bcache.projectIsCmd = (*conf).projectIsCmd;
5859 	bcache.cmdInput = copyString((*conf).cmdInput);
5860 	{
5861 		tySequence__sM4lkSb7zS6F7OVMvW9cffQ* colontmp_;
5862 		NI iX60gensym123_;
5863 		tySequence__sM4lkSb7zS6F7OVMvW9cffQ* resultX60gensym123_;
5864 		NI T35_;
5865 		colontmp_ = (*conf).configFiles;
5866 		iX60gensym123_ = ((NI) 0);
5867 		T35_ = (colontmp_ ? colontmp_->Sup.len : 0);
5868 		resultX60gensym123_ = newSeq__systemZio_503(((NI) (T35_)));
5869 		{
5870 			NimStringDesc** it_5;
5871 			NI i_5;
5872 			NI L_4;
5873 			NI T37_;
5874 			it_5 = (NimStringDesc**)0;
5875 			i_5 = ((NI) 0);
5876 			T37_ = (colontmp_ ? colontmp_->Sup.len : 0);
5877 			L_4 = T37_;
5878 			{
5879 				while (1) {
5880 					NimStringDesc* T40_;
5881 					if (!(i_5 < L_4)) goto LA39;
5882 					it_5 = (&colontmp_->data[i_5]);
5883 					T40_ = NIM_NIL;
5884 					T40_ = resultX60gensym123_->data[iX60gensym123_]; resultX60gensym123_->data[iX60gensym123_] = copyStringRC1((*it_5));
5885 					if (T40_) nimGCunrefNoCycle(T40_);
5886 					iX60gensym123_ += ((NI) 1);
5887 					i_5 += ((NI) 1);
5888 				} LA39: ;
5889 			}
5890 		}
5891 		genericSeqAssign((&bcache.configFiles), resultX60gensym123_, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
5892 	}
5893 	bcache.currentDir = nosgetCurrentDir();
5894 	{
5895 		NIM_BOOL T43_;
5896 		tySequence__4eQHGndY6XBYpFOH09apV8Q* collectResult_3;
5897 		NimStringDesc* T61_;
5898 		tyArray__YtcvxHNKV4YiecPE9ap1mcA T62_;
5899 		T43_ = (NIM_BOOL)0;
5900 		T43_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 12))&63U)))!=0);
5901 		if (T43_) goto LA44_;
5902 		T43_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_216));
5903 		LA44_: ;
5904 		if (!T43_) goto LA45_;
5905 		bcache.cmdline = copyString((*conf).commandLine);
5906 		collectResult_3 = newSeq__extccomp_1559(((NI) 0));
5907 		{
5908 			tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw* it_6;
5909 			NI i_6;
5910 			NI L_5;
5911 			NI T48_;
5912 			it_6 = (tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw*)0;
5913 			i_6 = ((NI) 0);
5914 			T48_ = ((*conf).m.fileInfos ? (*conf).m.fileInfos->Sup.len : 0);
5915 			L_5 = T48_;
5916 			{
5917 				while (1) {
5918 					NimStringDesc* path;
5919 					if (!(i_6 < L_5)) goto LA50;
5920 					it_6 = (&(*conf).m.fileInfos->data[i_6]);
5921 					path = (*it_6).fullPath;
5922 					{
5923 						NIM_BOOL T53_;
5924 						tyTuple__UV3llMMYFckfui8YMBuUZA T56_;
5925 						tyArray__YtcvxHNKV4YiecPE9ap1mcA T57_;
5926 						NI T58_;
5927 						NimStringDesc* T59_;
5928 						NimStringDesc* T60_;
5929 						T53_ = (NIM_BOOL)0;
5930 						T53_ = nosisAbsolute(path);
5931 						if (!T53_) goto LA54_;
5932 						nimZeroMem((void*)(&T56_), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
5933 						T56_.Field0 = copyString(path);
5934 						nimZeroMem((void*)T57_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
5935 						secureHashFile__stdZsha49_871(path, T57_);
5936 						T56_.Field1 = dollar___stdZsha49_879(T57_);
5937 						collectResult_3 = (tySequence__4eQHGndY6XBYpFOH09apV8Q*) incrSeqV3((TGenericSeq*)(collectResult_3), (&NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_));
5938 						T58_ = collectResult_3->Sup.len++;
5939 						T59_ = NIM_NIL;
5940 						T59_ = collectResult_3->data[T58_].Field0; collectResult_3->data[T58_].Field0 = copyStringRC1(T56_.Field0);
5941 						if (T59_) nimGCunrefNoCycle(T59_);
5942 						T60_ = NIM_NIL;
5943 						T60_ = collectResult_3->data[T58_].Field1; collectResult_3->data[T58_].Field1 = copyStringRC1(T56_.Field1);
5944 						if (T60_) nimGCunrefNoCycle(T60_);
5945 					}
5946 					LA54_: ;
5947 					i_6 += ((NI) 1);
5948 				} LA50: ;
5949 			}
5950 		}
5951 		genericSeqAssign((&bcache.depfiles), collectResult_3, (&NTIseqLtupleLkey58string_value58stringTT__4eQHGndY6XBYpFOH09apV8Q_));
5952 		T61_ = NIM_NIL;
5953 		T61_ = nosgetAppFilename();
5954 		nimZeroMem((void*)T62_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
5955 		secureHashFile__stdZsha49_871(T61_, T62_);
5956 		bcache.nimexe = dollar___stdZsha49_879(T62_);
5957 	}
5958 	LA45_: ;
5959 	asgnRef((void**) (&(*conf).jsonBuildFile), jsonBuildInstructionsFile__extccomp_1489(conf));
5960 	T63_ = initToJsonOptions__stdZjsonutils_33();
5961 	T64_ = NIM_NIL;
5962 	T64_ = toJson__extccomp_1687((&bcache), T63_);
5963 	T65_ = NIM_NIL;
5964 	T65_ = pretty__pureZjson_4461(T64_, ((NI) 2));
5965 	writeFile__systemZio_476((*conf).jsonBuildFile, T65_);
5966 }
N_NIMCALL(void,Marker_tyRef__pVfTg3qma4yzaBk4IsIEzQ)5967 static N_NIMCALL(void, Marker_tyRef__pVfTg3qma4yzaBk4IsIEzQ)(void* p, NI op) {
5968 	tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg* a;
5969 	a = (tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg*)p;
5970 	nimGCvisit((void*)(*a).prettyCmds1, op);
5971 	nimGCvisit((void*)(*a).conf2, op);
5972 }
N_CLOSURE(void,colonanonymous___extccomp_2616)5973 N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_2616)(NI idx, void* ClE_0) {
5974 	tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg* colonenvP_;
5975 	colonenvP_ = (tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg*) ClE_0;
5976 	{
5977 		tyArray__nHXaesL0DJZHyVS07ARPRA T5_;
5978 		if (!(((NI) 0) < ((*colonenvP_).prettyCmds1->data[idx] ? (*colonenvP_).prettyCmds1->data[idx]->Sup.len : 0))) goto LA3_;
5979 		flushDot__msgs_17((*colonenvP_).conf2);
5980 		nimZeroMem((void*)T5_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
5981 		T5_[0] = copyString((*colonenvP_).prettyCmds1->data[idx]);
5982 		writeLine__msgs_432(__stderrp, T5_, 1);
5983 	}
5984 	LA3_: ;
5985 }
N_NIMCALL(void,runJsonBuildInstructions__extccomp_2594)5986 N_LIB_PRIVATE N_NIMCALL(void, runJsonBuildInstructions__extccomp_2594)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* jsonFile) {
5987 	tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg* colonenv_;
5988 	tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog bcache;
5989 	TSafePoint TM__OyL9acDBDoBfMwa5zb1Y88w_218;
5990 	tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T1_;
5991 	tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ T2_;
5992 	NimStringDesc* output;
5993 	NimStringDesc* T20_;
5994 	NimStringDesc* outputCurrent;
5995 	NimStringDesc* T21_;
5996 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cmds;
5997 	tyProc__SqRJqa5aOiKB4EuKlKh9asA prettyCb;
5998 	tyProc__SqRJqa5aOiKB4EuKlKh9asA T30_;
5999 	colonenv_ = NIM_NIL;
6000 	colonenv_ = (tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg*) newObj((&NTIrefobject__pVfTg3qma4yzaBk4IsIEzQ_), sizeof(tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg));
6001 	(*colonenv_).Sup.m_type = (&NTIobject__Bm6R75AmpN9bn4rYIfcheUg_);
6002 	asgnRef((void**) (&(*colonenv_).conf2), conf);
6003 	nimZeroMem((void*)(&bcache), sizeof(tyObject_BuildCache__XHJLjuVXhiJ46Ktee6XNog));
6004 	pushSafePoint(&TM__OyL9acDBDoBfMwa5zb1Y88w_218);
6005 	TM__OyL9acDBDoBfMwa5zb1Y88w_218.status = _setjmp(TM__OyL9acDBDoBfMwa5zb1Y88w_218.context);
6006 	if (TM__OyL9acDBDoBfMwa5zb1Y88w_218.status == 0) {
6007 	T1_ = NIM_NIL;
6008 	T1_ = parseFile__pureZjson_5228(jsonFile);
6009 	nimZeroMem((void*)(&T2_), sizeof(tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ));
6010 	fromJson__extccomp_1850((&bcache), T1_, T2_);
6011 	popSafePoint();
6012 	}
6013 	else {
6014 		popSafePoint();
6015 		{
6016 			Exception* e;
6017 			TM__OyL9acDBDoBfMwa5zb1Y88w_218.status = 0;
6018 			e = getCurrentException();
6019 			{
6020 				NIM_BOOL T7_;
6021 				T7_ = (NIM_BOOL)0;
6022 				T7_ = isDefined__options_2279((*colonenv_).conf2, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_219));
6023 				if (!T7_) goto LA8_;
6024 				{
6025 					NimStringDesc* T14_;
6026 					tyArray__24KAM9afIUgUaqBaEBB6r9bg T15_;
6027 					NimStringDesc* T16_;
6028 					if (!NIM_TRUE) goto LA12_;
6029 					T14_ = NIM_NIL;
6030 					nimZeroMem((void*)T15_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
6031 					T15_[0] = copyString((*e).message);
6032 					T15_[1] = getStackTrace__system_2521(e);
6033 					T15_[2] = copyString(jsonFile);
6034 					T16_ = NIM_NIL;
6035 					T16_ = nsuFormatOpenArray(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_221), T15_, 3);
6036 					T14_ = rawNewString((T16_ ? T16_->Sup.len : 0) + 29);
6037 appendString(T14_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_220));
6038 appendString(T14_, T16_);
6039 					failedAssertImpl__systemZassertions_56(T14_);
6040 				}
6041 				LA12_: ;
6042 			}
6043 			goto LA5_;
6044 			LA8_: ;
6045 			{
6046 				tyArray__24KAM9afIUgUaqBaEBB6r9bg T18_;
6047 				NimStringDesc* T19_;
6048 				nimZeroMem((void*)T18_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
6049 				T18_[0] = copyString((*e).message);
6050 				T18_[1] = getStackTrace__system_2521(e);
6051 				T18_[2] = copyString(jsonFile);
6052 				T19_ = NIM_NIL;
6053 				T19_ = nsuFormatOpenArray(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_221), T18_, 3);
6054 				quit__system_7184(T19_, ((NI) 1));
6055 			}
6056 			LA5_: ;
6057 			popCurrentException();
6058 		}
6059 	}
6060 	if (TM__OyL9acDBDoBfMwa5zb1Y88w_218.status != 0) reraiseException();
6061 	output = bcache.outputFile;
6062 	T20_ = NIM_NIL;
6063 	T20_ = nosparentDir(output);
6064 	noscreateDir(T20_);
6065 	T21_ = NIM_NIL;
6066 	T21_ = absOutFile__options_4038((*colonenv_).conf2);
6067 	outputCurrent = dollar___options_4373(T21_);
6068 	{
6069 		NIM_BOOL T24_;
6070 		tyArray__24KAM9afIUgUaqBaEBB6r9bg T28_;
6071 		NimStringDesc* T29_;
6072 		T24_ = (NIM_BOOL)0;
6073 		T24_ = !(eqStrings(output, outputCurrent));
6074 		if (T24_) goto LA25_;
6075 		T24_ = !(eqStrings(bcache.cacheVersion, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_154)));
6076 		LA25_: ;
6077 		if (!T24_) goto LA26_;
6078 		nimZeroMem((void*)T28_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
6079 		T28_[0] = copyString(outputCurrent);
6080 		T28_[1] = copyString(output);
6081 		T28_[2] = copyString(jsonFile);
6082 		T29_ = NIM_NIL;
6083 		T29_ = nsuFormatOpenArray(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_222), T28_, 3);
6084 		liMessage__msgs_1118((*colonenv_).conf2, gCmdLineInfo__msgs_404, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T29_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__OyL9acDBDoBfMwa5zb1Y88w_223, NIM_FALSE);
6085 	}
6086 	LA26_: ;
6087 	cmds = NIM_NIL;
6088 	asgnRef((void**) (&(*colonenv_).prettyCmds1), NIM_NIL);
6089 	nimZeroMem((void*)(&prettyCb), sizeof(tyProc__SqRJqa5aOiKB4EuKlKh9asA));
6090 	nimZeroMem((void*)(&T30_), sizeof(tyProc__SqRJqa5aOiKB4EuKlKh9asA));
6091 	T30_.ClP_0 = colonanonymous___extccomp_2616; T30_.ClE_0 = colonenv_;
6092 	prettyCb.ClE_0 = T30_.ClE_0;
6093 	prettyCb.ClP_0 = T30_.ClP_0;
6094 	{
6095 		NimStringDesc** name;
6096 		NimStringDesc** cmd;
6097 		NI i;
6098 		NI L;
6099 		NI T32_;
6100 		name = (NimStringDesc**)0;
6101 		cmd = (NimStringDesc**)0;
6102 		i = ((NI) 0);
6103 		T32_ = (bcache.compile ? bcache.compile->Sup.len : 0);
6104 		L = T32_;
6105 		{
6106 			while (1) {
6107 				NI T35_;
6108 				NimStringDesc* T36_;
6109 				NimStringDesc* T37_;
6110 				NI T38_;
6111 				NimStringDesc* T39_;
6112 				if (!(i < L)) goto LA34;
6113 				name = (&bcache.compile->data[i].Field0);
6114 				cmd = (&bcache.compile->data[i].Field1);
6115 				cmds = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(cmds), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
6116 				T35_ = cmds->Sup.len++;
6117 				T36_ = NIM_NIL;
6118 				T36_ = cmds->data[T35_]; cmds->data[T35_] = copyStringRC1((*cmd));
6119 				if (T36_) nimGCunrefNoCycle(T36_);
6120 				T37_ = NIM_NIL;
6121 				T37_ = displayProgressCC__extccomp_1246((*colonenv_).conf2, (*name), (*cmd));
6122 				asgnRef((void**) (&(*colonenv_).prettyCmds1), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)((*colonenv_).prettyCmds1), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_)));
6123 				T38_ = (*colonenv_).prettyCmds1->Sup.len++;
6124 				T39_ = NIM_NIL;
6125 				T39_ = (*colonenv_).prettyCmds1->data[T38_]; (*colonenv_).prettyCmds1->data[T38_] = copyStringRC1(T37_);
6126 				if (T39_) nimGCunrefNoCycle(T39_);
6127 				i += ((NI) 1);
6128 			} LA34: ;
6129 		}
6130 	}
6131 	execCmdsInParallel__extccomp_1167((*colonenv_).conf2, cmds, prettyCb);
6132 	execLinkCmd__extccomp_1162((*colonenv_).conf2, bcache.linkcmd);
6133 	{
6134 		NimStringDesc** cmd_2;
6135 		NI i_2;
6136 		NI L_2;
6137 		NI T41_;
6138 		cmd_2 = (NimStringDesc**)0;
6139 		i_2 = ((NI) 0);
6140 		T41_ = (bcache.extraCmds ? bcache.extraCmds->Sup.len : 0);
6141 		L_2 = T41_;
6142 		{
6143 			while (1) {
6144 				if (!(i_2 < L_2)) goto LA43;
6145 				cmd_2 = (&bcache.extraCmds->data[i_2]);
6146 				execExternalProgram__extccomp_808((*colonenv_).conf2, (*cmd_2), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 89));
6147 				i_2 += ((NI) 1);
6148 			} LA43: ;
6149 		}
6150 	}
6151 }
N_NIMCALL(void,compiler_extccompDatInit000)6152 N_LIB_PRIVATE N_NIMCALL(void, compiler_extccompDatInit000)(void) {
6153 static TNimNode* TM__OyL9acDBDoBfMwa5zb1Y88w_171_3[3];
6154 static TNimNode* TM__OyL9acDBDoBfMwa5zb1Y88w_174_3[3];
6155 static TNimNode* TM__OyL9acDBDoBfMwa5zb1Y88w_217_3[3];
6156 static TNimNode TM__OyL9acDBDoBfMwa5zb1Y88w_0[12];
6157 NTIobject__H6RAoT9avhFKpqIMlTu5GHg_.size = sizeof(tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg);
6158 NTIobject__H6RAoT9avhFKpqIMlTu5GHg_.align = NIM_ALIGNOF(tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg);
6159 NTIobject__H6RAoT9avhFKpqIMlTu5GHg_.kind = 17;
6160 NTIobject__H6RAoT9avhFKpqIMlTu5GHg_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
6161 TM__OyL9acDBDoBfMwa5zb1Y88w_171_3[0] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[1];
6162 TM__OyL9acDBDoBfMwa5zb1Y88w_0[1].kind = 1;
6163 TM__OyL9acDBDoBfMwa5zb1Y88w_0[1].offset = offsetof(tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg, colonstate_);
6164 TM__OyL9acDBDoBfMwa5zb1Y88w_0[1].typ = (&NTIint__xHTZrq9aYs6boc9bCba0JbpQ_);
6165 TM__OyL9acDBDoBfMwa5zb1Y88w_0[1].name = ":state";
6166 TM__OyL9acDBDoBfMwa5zb1Y88w_171_3[1] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[2];
6167 TM__OyL9acDBDoBfMwa5zb1Y88w_0[2].kind = 1;
6168 TM__OyL9acDBDoBfMwa5zb1Y88w_0[2].offset = offsetof(tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg, prettyCmds1);
6169 TM__OyL9acDBDoBfMwa5zb1Y88w_0[2].typ = (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_);
6170 TM__OyL9acDBDoBfMwa5zb1Y88w_0[2].name = "prettyCmds1";
6171 TM__OyL9acDBDoBfMwa5zb1Y88w_171_3[2] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[3];
6172 TM__OyL9acDBDoBfMwa5zb1Y88w_0[3].kind = 1;
6173 TM__OyL9acDBDoBfMwa5zb1Y88w_0[3].offset = offsetof(tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg, conf2);
6174 TM__OyL9acDBDoBfMwa5zb1Y88w_0[3].typ = (&NTIconfigref__a8lycfSA25OQltN3OMeBsA_);
6175 TM__OyL9acDBDoBfMwa5zb1Y88w_0[3].name = "conf2";
6176 TM__OyL9acDBDoBfMwa5zb1Y88w_0[0].len = 3; TM__OyL9acDBDoBfMwa5zb1Y88w_0[0].kind = 2; TM__OyL9acDBDoBfMwa5zb1Y88w_0[0].sons = &TM__OyL9acDBDoBfMwa5zb1Y88w_171_3[0];
6177 NTIobject__H6RAoT9avhFKpqIMlTu5GHg_.node = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[0];
6178 NTIrefobject__CqlAb69bkfxaejoSKDwhYYA_.size = sizeof(tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg*);
6179 NTIrefobject__CqlAb69bkfxaejoSKDwhYYA_.align = NIM_ALIGNOF(tyObject_Env_extccompdotnim_callCCompiler___H6RAoT9avhFKpqIMlTu5GHg*);
6180 NTIrefobject__CqlAb69bkfxaejoSKDwhYYA_.kind = 22;
6181 NTIrefobject__CqlAb69bkfxaejoSKDwhYYA_.base = (&NTIobject__H6RAoT9avhFKpqIMlTu5GHg_);
6182 NTIrefobject__CqlAb69bkfxaejoSKDwhYYA_.marker = Marker_tyRef__CqlAb69bkfxaejoSKDwhYYA;
6183 NTIobject__4Ms6MGgcp8EDnUBSlKFk9bg_.size = sizeof(tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg);
6184 NTIobject__4Ms6MGgcp8EDnUBSlKFk9bg_.align = NIM_ALIGNOF(tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg);
6185 NTIobject__4Ms6MGgcp8EDnUBSlKFk9bg_.kind = 17;
6186 NTIobject__4Ms6MGgcp8EDnUBSlKFk9bg_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
6187 TM__OyL9acDBDoBfMwa5zb1Y88w_174_3[0] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[5];
6188 TM__OyL9acDBDoBfMwa5zb1Y88w_0[5].kind = 1;
6189 TM__OyL9acDBDoBfMwa5zb1Y88w_0[5].offset = offsetof(tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg, colonstate_);
6190 TM__OyL9acDBDoBfMwa5zb1Y88w_0[5].typ = (&NTIint__xHTZrq9aYs6boc9bCba0JbpQ_);
6191 TM__OyL9acDBDoBfMwa5zb1Y88w_0[5].name = ":state";
6192 TM__OyL9acDBDoBfMwa5zb1Y88w_174_3[1] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[6];
6193 TM__OyL9acDBDoBfMwa5zb1Y88w_0[6].kind = 1;
6194 TM__OyL9acDBDoBfMwa5zb1Y88w_0[6].offset = offsetof(tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg, conf1);
6195 TM__OyL9acDBDoBfMwa5zb1Y88w_0[6].typ = (&NTIconfigref__a8lycfSA25OQltN3OMeBsA_);
6196 TM__OyL9acDBDoBfMwa5zb1Y88w_0[6].name = "conf1";
6197 TM__OyL9acDBDoBfMwa5zb1Y88w_174_3[2] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[7];
6198 TM__OyL9acDBDoBfMwa5zb1Y88w_0[7].kind = 1;
6199 TM__OyL9acDBDoBfMwa5zb1Y88w_0[7].offset = offsetof(tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg, cmds2);
6200 TM__OyL9acDBDoBfMwa5zb1Y88w_0[7].typ = (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_);
6201 TM__OyL9acDBDoBfMwa5zb1Y88w_0[7].name = "cmds2";
6202 TM__OyL9acDBDoBfMwa5zb1Y88w_0[4].len = 3; TM__OyL9acDBDoBfMwa5zb1Y88w_0[4].kind = 2; TM__OyL9acDBDoBfMwa5zb1Y88w_0[4].sons = &TM__OyL9acDBDoBfMwa5zb1Y88w_174_3[0];
6203 NTIobject__4Ms6MGgcp8EDnUBSlKFk9bg_.node = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[4];
6204 NTIrefobject__pkCPBZYDmG8KoijaqNdsQw_.size = sizeof(tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg*);
6205 NTIrefobject__pkCPBZYDmG8KoijaqNdsQw_.align = NIM_ALIGNOF(tyObject_Env_extccompdotnim_execCmdsInParallel___4Ms6MGgcp8EDnUBSlKFk9bg*);
6206 NTIrefobject__pkCPBZYDmG8KoijaqNdsQw_.kind = 22;
6207 NTIrefobject__pkCPBZYDmG8KoijaqNdsQw_.base = (&NTIobject__4Ms6MGgcp8EDnUBSlKFk9bg_);
6208 NTIrefobject__pkCPBZYDmG8KoijaqNdsQw_.marker = Marker_tyRef__pkCPBZYDmG8KoijaqNdsQw;
6209 NTIobject__Bm6R75AmpN9bn4rYIfcheUg_.size = sizeof(tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg);
6210 NTIobject__Bm6R75AmpN9bn4rYIfcheUg_.align = NIM_ALIGNOF(tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg);
6211 NTIobject__Bm6R75AmpN9bn4rYIfcheUg_.kind = 17;
6212 NTIobject__Bm6R75AmpN9bn4rYIfcheUg_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
6213 TM__OyL9acDBDoBfMwa5zb1Y88w_217_3[0] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[9];
6214 TM__OyL9acDBDoBfMwa5zb1Y88w_0[9].kind = 1;
6215 TM__OyL9acDBDoBfMwa5zb1Y88w_0[9].offset = offsetof(tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg, colonstate_);
6216 TM__OyL9acDBDoBfMwa5zb1Y88w_0[9].typ = (&NTIint__xHTZrq9aYs6boc9bCba0JbpQ_);
6217 TM__OyL9acDBDoBfMwa5zb1Y88w_0[9].name = ":state";
6218 TM__OyL9acDBDoBfMwa5zb1Y88w_217_3[1] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[10];
6219 TM__OyL9acDBDoBfMwa5zb1Y88w_0[10].kind = 1;
6220 TM__OyL9acDBDoBfMwa5zb1Y88w_0[10].offset = offsetof(tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg, prettyCmds1);
6221 TM__OyL9acDBDoBfMwa5zb1Y88w_0[10].typ = (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_);
6222 TM__OyL9acDBDoBfMwa5zb1Y88w_0[10].name = "prettyCmds1";
6223 TM__OyL9acDBDoBfMwa5zb1Y88w_217_3[2] = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[11];
6224 TM__OyL9acDBDoBfMwa5zb1Y88w_0[11].kind = 1;
6225 TM__OyL9acDBDoBfMwa5zb1Y88w_0[11].offset = offsetof(tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg, conf2);
6226 TM__OyL9acDBDoBfMwa5zb1Y88w_0[11].typ = (&NTIconfigref__a8lycfSA25OQltN3OMeBsA_);
6227 TM__OyL9acDBDoBfMwa5zb1Y88w_0[11].name = "conf2";
6228 TM__OyL9acDBDoBfMwa5zb1Y88w_0[8].len = 3; TM__OyL9acDBDoBfMwa5zb1Y88w_0[8].kind = 2; TM__OyL9acDBDoBfMwa5zb1Y88w_0[8].sons = &TM__OyL9acDBDoBfMwa5zb1Y88w_217_3[0];
6229 NTIobject__Bm6R75AmpN9bn4rYIfcheUg_.node = &TM__OyL9acDBDoBfMwa5zb1Y88w_0[8];
6230 NTIrefobject__pVfTg3qma4yzaBk4IsIEzQ_.size = sizeof(tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg*);
6231 NTIrefobject__pVfTg3qma4yzaBk4IsIEzQ_.align = NIM_ALIGNOF(tyObject_Env_extccompdotnim_runJsonBuildInstructions___Bm6R75AmpN9bn4rYIfcheUg*);
6232 NTIrefobject__pVfTg3qma4yzaBk4IsIEzQ_.kind = 22;
6233 NTIrefobject__pVfTg3qma4yzaBk4IsIEzQ_.base = (&NTIobject__Bm6R75AmpN9bn4rYIfcheUg_);
6234 NTIrefobject__pVfTg3qma4yzaBk4IsIEzQ_.marker = Marker_tyRef__pVfTg3qma4yzaBk4IsIEzQ;
6235 }
6236 
6237