1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3 
4 #include "nimbase.h"
5 #include <string.h>
6 #include <stdio.h>
7 #include <setjmp.h>
8 #include <stdlib.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 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
26 typedef struct NimStringDesc NimStringDesc;
27 typedef struct TGenericSeq TGenericSeq;
28 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
29 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
30 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
31 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
32 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
33 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
34 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
35 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
36 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
37 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
38 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
39 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
40 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
41 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
42 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
43 typedef struct tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg;
44 typedef struct TNimType TNimType;
45 typedef struct TNimNode TNimNode;
46 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
47 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
48 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
49 typedef struct Exception Exception;
50 typedef struct RootObj RootObj;
51 typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
52 typedef struct TSafePoint TSafePoint;
53 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
54 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
55 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
56 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
57 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
58 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
59 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
60 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
61 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
62 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
63 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
64 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
65 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
66 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
67 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
68 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
69 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
70 typedef struct tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag;
71 typedef struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw;
72 typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
73 typedef struct tyObject_ESuggestDone__cDtWY9cE7zf8BAC5QcEZZkQ tyObject_ESuggestDone__cDtWY9cE7zf8BAC5QcEZZkQ;
74 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
75 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
76 typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
77 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
78 NU16 line;
79 NI16 col;
80 NI32 fileIndex;
81 };
82 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
83 struct TGenericSeq {
84 NI len;
85 NI reserved;
86 };
87 struct NimStringDesc {
88   TGenericSeq Sup;
89 NIM_CHAR data[SEQ_DECL_SIZE];
90 };
91 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
92 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
93 NimStringDesc* Field0;
94 NI Field1;
95 NI Field2;
96 };
97 typedef NU8 tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg;
98 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
99 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
100 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
101 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
102 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
103 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
104 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
105 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
106 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
107 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
108 NI intSize;
109 NI floatSize;
110 NI ptrSize;
111 NimStringDesc* tnl;
112 };
113 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
114 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
115 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
116 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
117 NI counter;
118 };
119 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
120 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
121 NIM_BOOL trackPosAttached;
122 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
123 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
124 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
125 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
126 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
127 NI32 systemFileIdx;
128 };
129 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
130 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
131 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
132 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
133 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
134 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
135 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
136 NI counter;
137 };
138 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
139 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
140 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
141 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
142 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
143 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
144 NI Field0;
145 NI Field1;
146 NI Field2;
147 };
148 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
149 typedef struct {
150 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
151 void* ClE_0;
152 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
153 typedef struct {
154 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
155 void* ClE_0;
156 } tyProc__k2HFjxisIgDALbEUFojxaQ;
157 typedef struct {
158 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
159 void* ClE_0;
160 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
161 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
162 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
163 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
164 NI linesCompiled;
165 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
166 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
167 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
168 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
169 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
170 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
171 NimStringDesc* unitSep;
172 NI evalTemplateCounter;
173 NI evalMacroCounter;
174 NI8 exitcode;
175 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
176 NimStringDesc* cmdInput;
177 NIM_BOOL projectIsCmd;
178 NIM_BOOL implicitCmd;
179 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
180 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
181 NIM_BOOL hintProcessingDots;
182 NI verbosity;
183 NI numberOfProcessors;
184 NF lastCmdTime;
185 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
186 NI spellSuggestMax;
187 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
188 NimStringDesc* headerFile;
189 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
190 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
191 NimStringDesc* arguments;
192 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
193 NIM_BOOL oldNewlines;
194 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
195 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
196 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
197 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
198 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
199 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
200 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
201 NI mainPackageId;
202 NI errorCounter;
203 NI hintCounter;
204 NI warnCounter;
205 NI errorMax;
206 NI maxLoopIterationsVM;
207 NIM_BOOL isVmTrace;
208 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
209 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
210 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
211 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
212 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
213 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
214 NimStringDesc* outFile;
215 NimStringDesc* outDir;
216 NimStringDesc* jsonBuildFile;
217 NimStringDesc* prefixDir;
218 NimStringDesc* libpath;
219 NimStringDesc* nimcacheDir;
220 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
221 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
222 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
223 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
224 NimStringDesc* projectName;
225 NimStringDesc* projectPath;
226 NimStringDesc* projectFull;
227 NIM_BOOL projectIsStdin;
228 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
229 NI32 projectMainIdx;
230 NI32 projectMainIdx2;
231 NimStringDesc* command;
232 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
233 NimStringDesc* commandLine;
234 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
235 NIM_BOOL keepComments;
236 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
237 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
238 NimStringDesc* docSeeSrcUrl;
239 NimStringDesc* docRoot;
240 NimStringDesc* docCmd;
241 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
242 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
243 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
244 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
245 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
246 NimStringDesc* linkOptionsCmd;
247 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
248 NimStringDesc* linkOptions;
249 NimStringDesc* compileOptions;
250 NimStringDesc* cCompilerPath;
251 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
252 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
253 NI suggestVersion;
254 NI suggestMaxResults;
255 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
256 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
257 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
258 NimStringDesc* cppCustomNamespace;
259 NimStringDesc* nimMainPrefix;
260 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
261 };
262 struct tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg {
263 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w a;
264 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w b;
265 };
266 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
267 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
268 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
269 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
270 struct TNimType {
271 NI size;
272 NI align;
273 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
274 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
275 TNimType* base;
276 TNimNode* node;
277 void* finalizer;
278 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
279 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
280 };
281 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
282 struct TNimNode {
283 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
284 NI offset;
285 TNimType* typ;
286 NCSTRING name;
287 NI len;
288 TNimNode** sons;
289 };
290 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
291 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
292 NimStringDesc* Field1;
293 };
294 typedef N_CLOSURE_PTR(void, TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_4) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity);
295 typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
296 typedef NimStringDesc* tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
297 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
298 NimStringDesc* fullPath;
299 NimStringDesc* projPath;
300 NimStringDesc* shortName;
301 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
302 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
303 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
304 NimStringDesc* dirtyFile;
305 NimStringDesc* hash;
306 NIM_BOOL dirty;
307 };
308 typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
309 typedef N_CLOSURE_PTR(void, TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_13) (NimStringDesc* output);
310 typedef NU8 tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
311 typedef NU8 tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
312 typedef NU16 tySet_tyEnum_Style__NXKayqTLMsAibFwNceBlpA;
313 typedef NU8 tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug;
314 typedef NU8 tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
315 typedef NimStringDesc* tyArray__z9cqFgHiS9ahHOXLmNWEBvBg[103];
316 typedef N_CLOSURE_PTR(void, TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_19) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity);
317 typedef NimStringDesc* tyArray__yt5VDPNtUGx9cBkOVakHwdQ[6];
318 struct RootObj {
319 TNimType* m_type;
320 };
321 struct Exception {
322   RootObj Sup;
323 Exception* parent;
324 NCSTRING name;
325 NimStringDesc* message;
326 tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
327 Exception* up;
328 };
329 struct TSafePoint {
330 TSafePoint* prev;
331 NI status;
332 jmp_buf context;
333 };
334 typedef NU8 tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg;
335 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
336 NI refcount;
337 TNimType* typ;
338 };
339 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
340 void* bottom;
341 };
342 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
343 NI len;
344 NI cap;
345 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
346 };
347 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
348 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
349 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
350 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
351 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
352 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
353 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
354 };
355 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
356 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
357 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
358 NI key;
359 NI upperBound;
360 NI level;
361 };
362 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
363 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
364 NI Field1;
365 };
366 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
367 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
368 NI len;
369 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
370 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
371 };
372 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
373 NI minLargeObj;
374 NI maxLargeObj;
375 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
376 NU32 flBitmap;
377 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
378 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
379 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
380 NI currMem;
381 NI maxMem;
382 NI freeMem;
383 NI occ;
384 NI lastSize;
385 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
386 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
387 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
388 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
389 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
390 NIM_BOOL locked;
391 NIM_BOOL blockChunkSizeIncrease;
392 NI nextChunkSize;
393 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
394 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
395 };
396 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
397 NI stackScans;
398 NI cycleCollections;
399 NI maxThreshold;
400 NI maxStackSize;
401 NI maxStackCells;
402 NI cycleTableSize;
403 NI64 maxPause;
404 };
405 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
406 NI counter;
407 NI max;
408 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
409 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
410 };
411 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
412 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
413 NI cycleThreshold;
414 NI zctThreshold;
415 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
416 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
417 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
418 NI recGcLock;
419 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
420 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
421 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
422 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
423 NI gcThreadId;
424 };
425 typedef N_CLOSURE_PTR(void, TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_24) (NimStringDesc* output);
426 typedef NimStringDesc* tyArray__sMpvt1sOxOJ3LFGulnbeMQ[4];
427 typedef N_CLOSURE_PTR(void, TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_27) (NimStringDesc* output);
428 typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2];
429 typedef N_CLOSURE_PTR(void, TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_33) (NimStringDesc* output);
430 typedef NU8 tySet_tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ;
431 typedef NU8 tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ;
432 typedef N_CLOSURE_PTR(void, TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_34) (NimStringDesc* output);
433 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
434 NI Field0;
435 NimStringDesc* Field1;
436 NI32 Field2;
437 };
438 struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
439   Exception Sup;
440 };
441 struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw {
442   tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
443 };
444 struct tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag {
445   tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw Sup;
446 };
447 struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA {
448   RootObj Sup;
449 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* left;
450 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* right;
451 NI L;
452 NimStringDesc* data;
453 };
454 typedef N_CLOSURE_PTR(void, TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_43) (NimStringDesc* output);
455 struct tyObject_ESuggestDone__cDtWY9cE7zf8BAC5QcEZZkQ {
456   tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw Sup;
457 };
458 typedef NU8 tyEnum_BinaryPrefixMode__nDtrM19b3byM8T9ab2m7BwvA;
459 typedef NU8 tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ;
460 typedef NimStringDesc* tyArray__ucDUDWdKfioXQrN9bCbG29bg[12];
461 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
462 NI Field0;
463 NimStringDesc* Field1;
464 };
465 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
466 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
467 NimStringDesc* nimname;
468 NimStringDesc* cname;
469 NimStringDesc* obj;
470 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
471 NimStringDesc* customArgs;
472 };
473 struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
474 NCSTRING procname;
475 NI line;
476 NCSTRING filename;
477 };
478 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
479   TGenericSeq Sup;
480   NimStringDesc* data[SEQ_DECL_SIZE];
481 };
482 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
483   TGenericSeq Sup;
484   tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
485 };
486 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
487   TGenericSeq Sup;
488   tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
489 };
490 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
491   TGenericSeq Sup;
492   tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
493 };
494 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
495   TGenericSeq Sup;
496   tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
497 };
498 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
499   TGenericSeq Sup;
500   tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
501 };
502 struct tySequence__uB9b75OUPRENsBAu4AnoePA {
503   TGenericSeq Sup;
504   tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
505 };
506 static N_INLINE(NIM_BOOL, contains__msgs_952)(tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg s, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w value);
507 static N_INLINE(tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg, dotdot___msgs_891)(tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w a, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w b);
508 static N_INLINE(void, nimZeroMem)(void* p, NI size);
509 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
510 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
511 N_LIB_PRIVATE N_NIMCALL(void, writeContext__msgs_1001)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastinfo);
512 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___msgs_993)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q a, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q b);
513 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
514 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatVarargs)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
515 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, concat__msgs_405)(NimStringDesc** strings, NI stringsLen_0);
516 N_NIMCALL(NimStringDesc*, rawNewString)(NI cap);
517 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
518 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
519 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
520 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
521 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_619)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
522 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toMsgFilename__msgs_602)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
523 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFilenameOption__msgs_590)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx, tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ opt);
524 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFullPath__msgs_538)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
525 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toProjPath__msgs_530)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
526 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, canonicalImportAux__options_4642)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* file);
527 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, noslastPathPart)(NimStringDesc* path);
528 N_LIB_PRIVATE N_NIMCALL(NI, nsuCountString)(NimStringDesc* s, NimStringDesc* sub, NIM_BOOL overlapping);
529 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
530 N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
531 N_LIB_PRIVATE N_NIMCALL(void, flushDot__msgs_17)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
532 N_LIB_PRIVATE N_NIMCALL(void, write__systemZio_205)(FILE* f, NimStringDesc* s);
533 static N_INLINE(void, writeLine__msgs_432)(FILE* f, NimStringDesc** x, NI xLen_0);
534 N_LIB_PRIVATE N_NIMCALL(void, flushFile__systemZio_226)(FILE* f);
535 N_LIB_PRIVATE N_NIMCALL(void, setStyle__pureZterminal_313)(FILE* f, tySet_tyEnum_Style__NXKayqTLMsAibFwNceBlpA style);
536 N_LIB_PRIVATE N_NIMCALL(void, resetAttributes__pureZterminal_280)(FILE* f);
537 static N_INLINE(NIM_BOOL, hasWarn__options_557)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug note);
538 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasHint__options_517)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug note);
539 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getMessageStr__msgs_775)(tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg);
540 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
541 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, msgKindToString__msgs_772)(tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w kind);
542 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
543 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, ignoreMsgBecauseOfIdeTools__msgs_1066)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg);
544 N_LIB_PRIVATE N_NIMCALL(void, msgWrite__msgs_749)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* s);
545 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getSurroundingSrc__msgs_1106)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
546 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, sourceLine__msgs_1101)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q i);
547 N_LIB_PRIVATE N_NIMCALL(NI, numLines__msgs_1090)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
548 static N_INLINE(void, pushSafePoint)(TSafePoint* s);
549 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFullPathConsiderDirty__msgs_571)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
550 static N_INLINE(NIM_BOOL, isEmpty__options_4495)(NimStringDesc* x);
551 N_LIB_PRIVATE N_NIMCALL(FILE*, open__systemZio_430)(NimStringDesc* filename, tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg mode, NI bufSize);
552 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, readLine__systemZio_238)(FILE* f, NimStringDesc** line);
553 N_LIB_PRIVATE N_NIMCALL(void, addSourceLine__msgs_1082)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx, NimStringDesc* line);
554 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
555 static N_INLINE(void, asgnRef)(void** dest, void* src);
556 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
557 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
558 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr);
559 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
560 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
561 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
562 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
563 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5264)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
564 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src);
565 static N_INLINE(void, nimGCunrefNoCycle)(void* p);
566 static N_INLINE(void, popSafePoint)(void);
567 N_LIB_PRIVATE N_NIMCALL(void, close__systemZio_217)(FILE* f);
568 N_LIB_PRIVATE N_NIMCALL(void, nimLeaveFinally)(void);
569 N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void);
570 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isObj)(TNimType* obj, TNimType* subclass);
571 static N_INLINE(Exception*, nimBorrowCurrentException)(void);
572 static N_INLINE(void, popCurrentException)(void);
573 static N_INLINE(NimStringDesc*, spaces__pureZstrutils_1029)(NI n);
574 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuRepeatChar)(NIM_CHAR c, NI count);
575 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
576 N_LIB_PRIVATE N_NIMCALL(void, setForegroundColor__pureZterminal_387)(FILE* f, tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg fg, NIM_BOOL bright);
577 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info);
578 N_LIB_PRIVATE N_NIMCALL(void, handleError__msgs_870)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, NimStringDesc* s);
579 N_LIB_PRIVATE N_NIMCALL(void, log__msgs_786)(NimStringDesc* s);
580 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, open__systemZio_389)(FILE** f, NimStringDesc* filename, tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg mode, NI bufSize);
581 static N_INLINE(NimStringDesc*, slash___pureZos_121)(NimStringDesc* head, NimStringDesc* tail);
582 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosjoinPath)(NimStringDesc* head, NimStringDesc* tail);
583 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosgetHomeDir)(void);
584 N_LIB_PRIVATE N_NIMCALL(void, quit__msgs_793)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg);
585 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefined__options_2279)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* symbol);
586 N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__systemZassertions_56)(NimStringDesc* msg);
587 N_LIB_PRIVATE N_NIMCALL(void, quit__system_7173)(NimStringDesc* errormsg, NI errorcode) __attribute__((noreturn));
588 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, stackTraceAvailable__system_2747)(void);
589 N_LIB_PRIVATE N_NIMCALL(void, writeStackTrace__system_2161)(void);
590 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, createDocLink__lineinfos_6)(NimStringDesc* urlSuffix);
591 N_LIB_PRIVATE N_NOINLINE(void, raiseRecoverableError__lineinfos_258)(NimStringDesc* msg);
592 N_LIB_PRIVATE N_NIMCALL(void, msgWriteln__msgs_647)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* s, tySet_tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ flags);
593 N_LIB_PRIVATE N_NIMCALL(NI32, fileInfoIdx__msgs_127)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename, NIM_BOOL* isKnownFile);
594 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, canonicalizePath__options_4084)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* path);
595 static N_INLINE(void, shallow__system_7433)(NimStringDesc** s);
596 N_NIMCALL(NimStringDesc*, mnewString)(NI len);
597 N_LIB_PRIVATE N_NIMCALL(void, forceCopy__strutils50_10)(NimStringDesc** result, NimStringDesc* a);
598 N_LIB_PRIVATE N_NIMCALL(void, canonicalCase__msgs_67)(NimStringDesc** path);
599 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__msgs_114)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA t, NimStringDesc* key);
600 static N_INLINE(NI, rawGet__lineinfos_448)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA t, NimStringDesc* key, NI* hc);
601 N_LIB_PRIVATE N_NIMCALL(NI, hash__pureZhashes_279)(NimStringDesc* x);
602 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode);
603 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
604 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
605 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
606 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash);
607 N_LIB_PRIVATE N_NIMCALL(NI32*, X5BX5D___msgs_233)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA* t, NimStringDesc* key);
608 N_LIB_PRIVATE N_NOINLINE(void, raiseKeyError__msgs_300)(NimStringDesc* key) __attribute__((noreturn));
609 N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
610 N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line);
611 N_LIB_PRIVATE N_NIMCALL(void, newFileInfo__msgs_59)(NimStringDesc* fullPath, NimStringDesc* projPath, tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw* Result);
612 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
613 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosextractFilename)(NimStringDesc* path);
614 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, makeCString__msgs_50)(NimStringDesc* s);
615 static N_INLINE(NF, toFloat__system_1702)(NI i);
616 static N_INLINE(void, toCChar__msgs_47)(NIM_CHAR c, NimStringDesc** result);
617 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
618 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuToOctal)(NIM_CHAR c);
619 N_LIB_PRIVATE N_NIMCALL(void, add__ropes_159)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* b);
620 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__ropes_109)(NimStringDesc* s);
621 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, relativeTo__pathutils_132)(NimStringDesc* fullPath, NimStringDesc* baseFilename, NIM_CHAR sep);
622 N_LIB_PRIVATE N_NIMCALL(void, genericAssign)(void* dest, void* src, TNimType* mt);
623 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___lineinfos_387)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA* t, NimStringDesc* key, NI32 val);
624 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
625 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);
626 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuStartsWith)(NimStringDesc* s, NimStringDesc* prefix);
627 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringDesc* s, NimStringDesc* suffix);
628 static N_INLINE(NIM_BOOL, lteqpercent___system_985)(NI x, NI y);
629 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, formatSize__pureZstrutils_1971)(NI64 bytes, NIM_CHAR decimalSep, tyEnum_BinaryPrefixMode__nDtrM19b3byM8T9ab2m7BwvA prefix, NIM_BOOL includeSpace);
630 N_LIB_PRIVATE N_NIMCALL(NI, getMaxMem__system_5242)(void);
631 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
632 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuformatFloat)(NF f, tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ format, NI precision, NIM_CHAR decimalSep);
633 N_LIB_PRIVATE N_NIMCALL(NF, epochTime__pureZtimes_3599)(void);
634 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___options_4373)(NimStringDesc* x);
635 static N_INLINE(NIM_BOOL, isEmpty__options_4049)(NimStringDesc* x);
636 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, absOutFile__options_4038)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
637 extern TNimType NTItmsgkind__29cbg2fC1z5iM1PAI28kR5w_;
638 static NIM_CONST tyProc__oL9coyIA2VDTGdUcur9aL9bew TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_2 = {NIM_NIL,NIM_NIL};
639 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_3, "template/generic instantiation from here", 40);
640 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_5, "template/generic instantiation of `$1` from here", 48);
641 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_6, "command line", 12);
642 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_7, "\?\?\?", 3);
643 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_8, "..", 2);
644 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_9, "(", 1);
645 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_10, ", ", 2);
646 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_11, ")", 1);
647 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12, " ", 1);
648 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_14, "\012", 1);
649 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_15, "Error: ", 7);
650 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
651 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_16, "Warning: ", 9);
652 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_17, "Hint: ", 6);
653 extern NIM_CONST tyArray__z9cqFgHiS9ahHOXLmNWEBvBg MsgKindToStr__lineinfos_116;
654 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_18, " [$1]", 5);
655 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_20, ".", 1);
656 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_21, "\012  ", 3);
657 extern TNimType NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_;
658 extern TNimType NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_;
659 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_25, " compiler msg initiated here", 28);
660 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_26, "MsgOrigin", 9);
661 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_28, "nimsuggest.log", 14);
662 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_29, "nimDebug", 8);
663 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_30, "options.nim(634, 14) `false` ", 29);
664 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_31, "No stack traceback available\012To create a stacktrace, rerun compilation with \'./koch temp $1 <file>\', see $2 for details", 119);
665 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_32, "intern.html#debugging-the-compiler", 34);
666 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_35, "Warnings:", 9);
667 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_36, "  [$1] $2", 9);
668 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_37, "x", 1);
669 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_38, "Hints:", 6);
670 extern TNimType NTIoserror__BeJgrOdDsczOwEWOZbRfKA_;
671 extern TNimType NTIrefkeyerror__8SzoIAgLw9ci2v0yafHj9b6Q_;
672 extern TNimType NTIkeyerror__t7nhKLvXTQS9cS8ByJU9bIag_;
673 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_40, "key not found: ", 15);
674 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_41, "\"", 1);
675 extern TNimType NTIseqLtfileinfoT__Zi9cGbCWofbtABoHJ5RbLNQ_;
676 extern TNimType NTItfileinfo__GE3hAakXKOEpch4ap3zXAw_;
677 N_LIB_PRIVATE NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q gCmdLineInfo__msgs_404 = {((NU16) 1), ((NI16) 1), ((NI32) -3)}
678 ;
679 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_42, ".nim", 4);
680 extern TNimType NTIseqLtupleLinfo58tlineinfo_detail58stringTT__tNFrR3kRuS1FSwuiLGoSSA_;
681 extern TNimType NTIrefesuggestdone__q2mvqo4oBiq6VrjsaIw7rg_;
682 extern TNimType NTIesuggestdone__cDtWY9cE7zf8BAC5QcEZZkQ_;
683 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_44, "suggest done", 12);
684 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_45, " peakmem", 8);
685 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_46, "gc: $#; ", 8);
686 extern TNimType NTItgcmode__tkz389aDYNd8ykeZszCuBSw_;
687 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_47, "threads: on; ", 13);
688 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_48, "opt: ", 5);
689 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_49, "speed", 5);
690 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_50, "size", 4);
691 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_51, "none (DEBUG BUILD, `-d:release` generates faster code)", 54);
692 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_52, "danger", 6);
693 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_53, " -d:danger", 10);
694 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_54, "release", 7);
695 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_55, " -d:release", 11);
696 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_56, "; options:", 10);
697 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_57, "unknownOutput", 13);
698 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_58, "build", 5);
699 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_59, "loc", 3);
700 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_60, "sec", 3);
701 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_61, "mem", 3);
702 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_62, "project", 7);
703 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_63, "output", 6);
704 STRING_LITERAL(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_65, "/home/runner/work/nightlies/nightlies/nim/compiler/msgs.nim", 59);
705 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_64 = {((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_65),
706 ((NI) 708),
707 ((NI) 12)}
708 ;
709 extern TSafePoint* excHandler__system_2565;
710 extern TSafePoint* excHandler__system_2565;
711 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5217;
712 extern TSafePoint* excHandler__system_2565;
713 extern TSafePoint* excHandler__system_2565;
714 extern Exception* currException__system_2566;
715 extern Exception* currException__system_2566;
716 extern Exception* currException__system_2566;
N_INLINE(NIM_BOOL,contains__msgs_952)717 static N_INLINE(NIM_BOOL, contains__msgs_952)(tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg s, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w value) {
718 	NIM_BOOL result;
719 	NIM_BOOL T1_;
720 	result = (NIM_BOOL)0;
721 	T1_ = (NIM_BOOL)0;
722 	T1_ = (s.a <= value);
723 	if (!(T1_)) goto LA2_;
724 	T1_ = (value <= s.b);
725 	LA2_: ;
726 	result = T1_;
727 	return result;
728 }
N_INLINE(void,nimSetMem__systemZmemory_7)729 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
730 	void* T1_;
731 	T1_ = (void*)0;
732 	T1_ = memset(a, v, ((size_t) (size)));
733 }
N_INLINE(void,nimZeroMem)734 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
735 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
736 }
N_INLINE(tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg,dotdot___msgs_891)737 static N_INLINE(tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg, dotdot___msgs_891)(tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w a, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w b) {
738 	tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg result;
739 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg));
740 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg));
741 	result.a = a;
742 	result.b = b;
743 	return result;
744 }
N_NIMCALL(NIM_BOOL,eqeq___msgs_993)745 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___msgs_993)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q a, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q b) {
746 	NIM_BOOL result;
747 	NIM_BOOL T1_;
748 	result = (NIM_BOOL)0;
749 	T1_ = (NIM_BOOL)0;
750 	T1_ = (a.line == b.line);
751 	if (!(T1_)) goto LA2_;
752 	T1_ = (a.fileIndex == b.fileIndex);
753 	LA2_: ;
754 	result = T1_;
755 	return result;
756 }
N_INLINE(void,nimCopyMem)757 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
758 	void* T1_;
759 	T1_ = (void*)0;
760 	T1_ = memcpy(dest, source, ((size_t) (size)));
761 }
N_INLINE(void,copyMem__system_1727)762 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
763 	nimCopyMem(dest, source, size);
764 }
N_INLINE(void,appendString)765 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
766 	{
767 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
768 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
769 		(*dest).Sup.len += (*src).Sup.len;
770 	}
771 	LA3_: ;
772 }
N_NIMCALL(NimStringDesc *,concat__msgs_405)773 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, concat__msgs_405)(NimStringDesc** strings, NI stringsLen_0) {
774 	NimStringDesc* result;
775 	NI totalLen;
776 	result = NIM_NIL;
777 	totalLen = ((NI) 0);
778 	{
779 		NimStringDesc** s;
780 		NI i;
781 		s = (NimStringDesc**)0;
782 		i = ((NI) 0);
783 		{
784 			while (1) {
785 				if (!(i < stringsLen_0)) goto LA3;
786 				s = (&strings[i]);
787 				totalLen += ((*s) ? (*s)->Sup.len : 0);
788 				i += ((NI) 1);
789 			} LA3: ;
790 		}
791 	}
792 	result = rawNewString(((NI) (totalLen)));
793 	{
794 		NimStringDesc** s_2;
795 		NI i_2;
796 		s_2 = (NimStringDesc**)0;
797 		i_2 = ((NI) 0);
798 		{
799 			while (1) {
800 				if (!(i_2 < stringsLen_0)) goto LA6;
801 				s_2 = (&strings[i_2]);
802 				result = resizeString(result, ((*s_2) ? (*s_2)->Sup.len : 0) + 0);
803 appendString(result, (*s_2));
804 				i_2 += ((NI) 1);
805 			} LA6: ;
806 		}
807 	}
808 	return result;
809 }
N_NIMCALL(NimStringDesc *,toFullPath__msgs_538)810 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFullPath__msgs_538)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx) {
811 	NimStringDesc* result;
812 	result = NIM_NIL;
813 	{
814 		NIM_BOOL T3_;
815 		T3_ = (NIM_BOOL)0;
816 		T3_ = (fileIdx < ((NI32) 0));
817 		if (T3_) goto LA4_;
818 		T3_ = (conf == ((tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*) NIM_NIL));
819 		LA4_: ;
820 		if (!T3_) goto LA5_;
821 		{
822 			if (!(fileIdx == ((NI32) -3))) goto LA9_;
823 			result = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_6));
824 		}
825 		goto LA7_;
826 		LA9_: ;
827 		{
828 			result = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_7));
829 		}
830 		LA7_: ;
831 	}
832 	goto LA1_;
833 	LA5_: ;
834 	{
835 		result = copyString((*conf).m.fileInfos->data[fileIdx].fullPath);
836 	}
837 	LA1_: ;
838 	return result;
839 }
N_NIMCALL(NimStringDesc *,toProjPath__msgs_530)840 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toProjPath__msgs_530)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx) {
841 	NimStringDesc* result;
842 	result = NIM_NIL;
843 	{
844 		NIM_BOOL T3_;
845 		T3_ = (NIM_BOOL)0;
846 		T3_ = (fileIdx < ((NI32) 0));
847 		if (T3_) goto LA4_;
848 		T3_ = (conf == ((tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*) NIM_NIL));
849 		LA4_: ;
850 		if (!T3_) goto LA5_;
851 		{
852 			if (!(fileIdx == ((NI32) -3))) goto LA9_;
853 			result = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_6));
854 		}
855 		goto LA7_;
856 		LA9_: ;
857 		{
858 			result = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_7));
859 		}
860 		LA7_: ;
861 	}
862 	goto LA1_;
863 	LA5_: ;
864 	{
865 		result = copyString((*conf).m.fileInfos->data[fileIdx].projPath);
866 	}
867 	LA1_: ;
868 	return result;
869 }
N_NIMCALL(NimStringDesc *,toFilenameOption__msgs_590)870 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFilenameOption__msgs_590)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx, tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ opt) {
871 	NimStringDesc* result;
872 	result = NIM_NIL;
873 	switch (opt) {
874 	case ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 0):
875 	{
876 		result = toFullPath__msgs_538(conf, fileIdx);
877 	}
878 	break;
879 	case ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 1):
880 	{
881 		result = toProjPath__msgs_530(conf, fileIdx);
882 	}
883 	break;
884 	case ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 2):
885 	{
886 		NimStringDesc* absPath;
887 		absPath = toFullPath__msgs_538(conf, fileIdx);
888 		result = canonicalImportAux__options_4642(conf, absPath);
889 	}
890 	break;
891 	case ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 4):
892 	{
893 		NimStringDesc* T5_;
894 		T5_ = NIM_NIL;
895 		T5_ = toProjPath__msgs_530(conf, fileIdx);
896 		result = noslastPathPart(T5_);
897 	}
898 	break;
899 	case ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 3):
900 	{
901 		NimStringDesc* absPath_2;
902 		NimStringDesc* relPath;
903 		absPath_2 = toFullPath__msgs_538(conf, fileIdx);
904 		relPath = toProjPath__msgs_530(conf, fileIdx);
905 		{
906 			NIM_BOOL T9_;
907 			NI T11_;
908 			T9_ = (NIM_BOOL)0;
909 			T9_ = ((absPath_2 ? absPath_2->Sup.len : 0) < (relPath ? relPath->Sup.len : 0));
910 			if (T9_) goto LA10_;
911 			T11_ = (NI)0;
912 			T11_ = nsuCountString(relPath, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_8), NIM_FALSE);
913 			T9_ = (((NI) 2) < T11_);
914 			LA10_: ;
915 			if (!T9_) goto LA12_;
916 			result = copyString(absPath_2);
917 		}
918 		goto LA7_;
919 		LA12_: ;
920 		{
921 			result = copyString(relPath);
922 		}
923 		LA7_: ;
924 	}
925 	break;
926 	case ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 5):
927 	{
928 		{
929 			if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 31))&63U)))!=0)) goto LA18_;
930 			result = toFilenameOption__msgs_590(conf, fileIdx, ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 0));
931 		}
932 		goto LA16_;
933 		LA18_: ;
934 		{
935 			result = toFilenameOption__msgs_590(conf, fileIdx, ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 4));
936 		}
937 		LA16_: ;
938 	}
939 	break;
940 	}
941 	return result;
942 }
N_NIMCALL(NimStringDesc *,toMsgFilename__msgs_602)943 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toMsgFilename__msgs_602)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx) {
944 	NimStringDesc* result;
945 	result = NIM_NIL;
946 	result = toFilenameOption__msgs_590(conf, fileIdx, (*conf).filenameOption);
947 	return result;
948 }
N_INLINE(void,addInt__stdZprivateZdigitsutils_189)949 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
950 	addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
951 }
N_INLINE(NimStringDesc *,toFileLineCol__msgs_619)952 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_619)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
953 	NimStringDesc* result;
954 	NimStringDesc* T1_;
955 	result = NIM_NIL;
956 	T1_ = NIM_NIL;
957 	T1_ = toMsgFilename__msgs_602(conf, info.fileIndex);
958 	result = resizeString(result, (T1_ ? T1_->Sup.len : 0) + 0);
959 appendString(result, T1_);
960 	{
961 		if (!(((NI) 0) < ((NI) (info.line)))) goto LA4_;
962 		result = resizeString(result, 1);
963 appendString(result, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_9));
964 		addInt__stdZprivateZdigitsutils_189((&result), ((NI) (info.line)));
965 		{
966 			if (!(((NI) 0) < (NI)(((NI) (info.col)) + ((NI) 1)))) goto LA8_;
967 			result = resizeString(result, 2);
968 appendString(result, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_10));
969 			addInt__stdZprivateZdigitsutils_189((&result), (NI)(((NI) (info.col)) + ((NI) 1)));
970 		}
971 		LA8_: ;
972 		result = resizeString(result, 1);
973 appendString(result, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_11));
974 	}
975 	LA4_: ;
976 	return result;
977 }
N_NIMCALL(void,flushDot__msgs_17)978 N_LIB_PRIVATE N_NIMCALL(void, flushDot__msgs_17)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
979 	FILE* stdOrr;
980 	tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug stdOrrKind;
981 	{
982 		if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 24))&63U)))!=0)) goto LA3_;
983 		stdOrr = __stdoutp;
984 	}
985 	goto LA1_;
986 	LA3_: ;
987 	{
988 		stdOrr = __stderrp;
989 	}
990 	LA1_: ;
991 	{
992 		if (!(stdOrr == __stdoutp)) goto LA8_;
993 		stdOrrKind = ((tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug) 0);
994 	}
995 	goto LA6_;
996 	LA8_: ;
997 	{
998 		stdOrrKind = ((tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug) 1);
999 	}
1000 	LA6_: ;
1001 	{
1002 		if (!(((*conf).lastMsgWasDot &((NU8)1<<((NU)(stdOrrKind)&7U)))!=0)) goto LA13_;
1003 		(*conf).lastMsgWasDot &= ~(((NU8)1) << ((stdOrrKind) & 7));
1004 		write__systemZio_205(stdOrr, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_14));
1005 	}
1006 	LA13_: ;
1007 }
N_INLINE(void,writeLine__msgs_432)1008 static N_INLINE(void, writeLine__msgs_432)(FILE* f, NimStringDesc** x, NI xLen_0) {
1009 	{
1010 		NimStringDesc** i;
1011 		NI i_2;
1012 		i = (NimStringDesc**)0;
1013 		i_2 = ((NI) 0);
1014 		{
1015 			while (1) {
1016 				if (!(i_2 < xLen_0)) goto LA3;
1017 				i = (&x[i_2]);
1018 				write__systemZio_205(f, (*i));
1019 				i_2 += ((NI) 1);
1020 			} LA3: ;
1021 		}
1022 	}
1023 	write__systemZio_205(f, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_14));
1024 }
N_NIMCALL(void,writeContext__msgs_1001)1025 N_LIB_PRIVATE N_NIMCALL(void, writeContext__msgs_1001)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastinfo) {
1026 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
1027 	info = lastinfo;
1028 	{
1029 		NI i;
1030 		NI colontmp_;
1031 		NI T2_;
1032 		NI i_2;
1033 		i = (NI)0;
1034 		colontmp_ = (NI)0;
1035 		T2_ = ((*conf).m.msgContext ? (*conf).m.msgContext->Sup.len : 0);
1036 		colontmp_ = T2_;
1037 		i_2 = ((NI) 0);
1038 		{
1039 			while (1) {
1040 				tyTuple__z822nu9bFF1AlQnLrHjdwpA context;
1041 				if (!(i_2 < colontmp_)) goto LA4;
1042 				i = i_2;
1043 				nimZeroMem((void*)(&context), sizeof(tyTuple__z822nu9bFF1AlQnLrHjdwpA));
1044 				context.Field0 = (*conf).m.msgContext->data[i].Field0;
1045 				context.Field1 = (*conf).m.msgContext->data[i].Field1;
1046 				{
1047 					NIM_BOOL T7_;
1048 					NIM_BOOL T8_;
1049 					NIM_BOOL T10_;
1050 					T7_ = (NIM_BOOL)0;
1051 					T8_ = (NIM_BOOL)0;
1052 					T8_ = eqeq___msgs_993(context.Field0, lastinfo);
1053 					T7_ = !(T8_);
1054 					if (!(T7_)) goto LA9_;
1055 					T10_ = (NIM_BOOL)0;
1056 					T10_ = eqeq___msgs_993(context.Field0, info);
1057 					T7_ = !(T10_);
1058 					LA9_: ;
1059 					if (!T7_) goto LA11_;
1060 					{
1061 						if (!!(((*conf).structuredErrorHook.ClP_0 == TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_2.ClP_0 && (*conf).structuredErrorHook.ClE_0 == TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_2.ClE_0))) goto LA15_;
1062 						(*conf).structuredErrorHook.ClE_0? (*conf).structuredErrorHook.ClP_0(conf, context.Field0, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_3), ((tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA) 0), (*conf).structuredErrorHook.ClE_0):((TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_4)((*conf).structuredErrorHook.ClP_0))(conf, context.Field0, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_3), ((tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA) 0));
1063 					}
1064 					goto LA13_;
1065 					LA15_: ;
1066 					{
1067 						NimStringDesc* message;
1068 						{
1069 							if (!((context.Field1 ? context.Field1->Sup.len : 0) == 0)) goto LA20_;
1070 							message = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_3));
1071 						}
1072 						goto LA18_;
1073 						LA20_: ;
1074 						{
1075 							tyArray__nHXaesL0DJZHyVS07ARPRA T23_;
1076 							nimZeroMem((void*)T23_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
1077 							T23_[0] = copyString(context.Field1);
1078 							message = nsuFormatVarargs(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_5), T23_, 1);
1079 						}
1080 						LA18_: ;
1081 						{
1082 							tyArray__24KAM9afIUgUaqBaEBB6r9bg T28_;
1083 							NimStringDesc* T29_;
1084 							if (!!(((*conf).writelnHook.ClP_0 == 0))) goto LA26_;
1085 							nimZeroMem((void*)T28_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
1086 							T28_[0] = toFileLineCol__msgs_619(conf, context.Field0);
1087 							T28_[1] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
1088 							T28_[2] = copyString(message);
1089 							T29_ = NIM_NIL;
1090 							T29_ = concat__msgs_405(T28_, 3);
1091 							(*conf).writelnHook.ClE_0? (*conf).writelnHook.ClP_0(T29_, (*conf).writelnHook.ClE_0):((TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_13)((*conf).writelnHook.ClP_0))(T29_);
1092 						}
1093 						goto LA24_;
1094 						LA26_: ;
1095 						{
1096 							if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 24))&63U)))!=0)) goto LA31_;
1097 							{
1098 								tyArray__24KAM9afIUgUaqBaEBB6r9bg T37_;
1099 								if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 0))&7U)))!=0)) goto LA35_;
1100 								flushDot__msgs_17(conf);
1101 								nimZeroMem((void*)T37_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
1102 								T37_[0] = toFileLineCol__msgs_619(conf, context.Field0);
1103 								T37_[1] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
1104 								T37_[2] = copyString(message);
1105 								writeLine__msgs_432(__stdoutp, T37_, 3);
1106 								flushFile__systemZio_226(__stdoutp);
1107 							}
1108 							LA35_: ;
1109 						}
1110 						goto LA24_;
1111 						LA31_: ;
1112 						{
1113 							if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 1))&7U)))!=0)) goto LA39_;
1114 							flushDot__msgs_17(conf);
1115 							{
1116 								NimStringDesc* T45_;
1117 								if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 22))&63U)))!=0)) goto LA43_;
1118 								setStyle__pureZterminal_313(__stderrp, 1);
1119 								T45_ = NIM_NIL;
1120 								T45_ = toFileLineCol__msgs_619(conf, context.Field0);
1121 								write__systemZio_205(__stderrp, T45_);
1122 								write__systemZio_205(__stderrp, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
1123 								resetAttributes__pureZterminal_280(__stderrp);
1124 								write__systemZio_205(__stderrp, message);
1125 								resetAttributes__pureZterminal_280(__stderrp);
1126 								write__systemZio_205(__stderrp, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_14));
1127 							}
1128 							goto LA41_;
1129 							LA43_: ;
1130 							{
1131 								tyArray__24KAM9afIUgUaqBaEBB6r9bg T47_;
1132 								nimZeroMem((void*)T47_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
1133 								T47_[0] = toFileLineCol__msgs_619(conf, context.Field0);
1134 								T47_[1] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
1135 								T47_[2] = copyString(message);
1136 								writeLine__msgs_432(__stderrp, T47_, 3);
1137 							}
1138 							LA41_: ;
1139 						}
1140 						goto LA24_;
1141 						LA39_: ;
1142 						LA24_: ;
1143 					}
1144 					LA13_: ;
1145 				}
1146 				LA11_: ;
1147 				info = context.Field0;
1148 				i_2 += ((NI) 1);
1149 			} LA4: ;
1150 		}
1151 	}
1152 }
N_INLINE(NIM_BOOL,hasWarn__options_557)1153 static N_INLINE(NIM_BOOL, hasWarn__options_557)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug note) {
1154 	NIM_BOOL result;
1155 	NIM_BOOL T1_;
1156 	result = (NIM_BOOL)0;
1157 	T1_ = (NIM_BOOL)0;
1158 	T1_ = (((*conf).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 13))&31U)))!=0);
1159 	if (!(T1_)) goto LA2_;
1160 	T1_ = (((*conf).notes[(NU)((note- 16))>>3] &(1U<<((NU)((note- 16))&7U)))!=0);
1161 	LA2_: ;
1162 	result = T1_;
1163 	return result;
1164 }
N_NIMCALL(NimStringDesc *,msgKindToString__msgs_772)1165 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, msgKindToString__msgs_772)(tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w kind) {
1166 	NimStringDesc* result;
1167 	result = NIM_NIL;
1168 	result = copyString(MsgKindToStr__lineinfos_116[(kind)- 0]);
1169 	return result;
1170 }
N_NIMCALL(NimStringDesc *,getMessageStr__msgs_775)1171 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getMessageStr__msgs_775)(tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg) {
1172 	NimStringDesc* result;
1173 	NimStringDesc* T1_;
1174 	tyArray__nHXaesL0DJZHyVS07ARPRA T2_;
1175 	result = NIM_NIL;
1176 	T1_ = NIM_NIL;
1177 	T1_ = msgKindToString__msgs_772(msg);
1178 	nimZeroMem((void*)T2_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
1179 	T2_[0] = copyString(arg);
1180 	result = nsuFormatOpenArray(T1_, T2_, 1);
1181 	return result;
1182 }
N_NIMCALL(NIM_BOOL,ignoreMsgBecauseOfIdeTools__msgs_1066)1183 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, ignoreMsgBecauseOfIdeTools__msgs_1066)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg) {
1184 	NIM_BOOL result;
1185 	NIM_BOOL T1_;
1186 	NIM_BOOL T2_;
1187 	result = (NIM_BOOL)0;
1188 	T1_ = (NIM_BOOL)0;
1189 	T2_ = (NIM_BOOL)0;
1190 	T2_ = (((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14) <= msg);
1191 	if (!(T2_)) goto LA3_;
1192 	T2_ = ((*conf).cmd == ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 11));
1193 	LA3_: ;
1194 	T1_ = T2_;
1195 	if (!(T1_)) goto LA4_;
1196 	T1_ = !((((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 29))&63U)))!=0));
1197 	LA4_: ;
1198 	result = T1_;
1199 	return result;
1200 }
N_NIMCALL(void,msgWrite__msgs_749)1201 N_LIB_PRIVATE N_NIMCALL(void, msgWrite__msgs_749)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* s) {
1202 	{
1203 		FILE* stdOrr;
1204 		tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug T10_;
1205 		if (!!(((*conf).m.errorOutputs == 0))) goto LA3_;
1206 		{
1207 			if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 24))&63U)))!=0)) goto LA7_;
1208 			stdOrr = __stdoutp;
1209 		}
1210 		goto LA5_;
1211 		LA7_: ;
1212 		{
1213 			stdOrr = __stderrp;
1214 		}
1215 		LA5_: ;
1216 		write__systemZio_205(stdOrr, s);
1217 		flushFile__systemZio_226(stdOrr);
1218 		T10_ = (tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug)0;
1219 		{
1220 			if (!(stdOrr == __stdoutp)) goto LA13_;
1221 			T10_ = ((tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug) 0);
1222 		}
1223 		goto LA11_;
1224 		LA13_: ;
1225 		{
1226 			T10_ = ((tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug) 1);
1227 		}
1228 		LA11_: ;
1229 		(*conf).lastMsgWasDot |= ((NU8)1)<<((T10_) & 7);
1230 	}
1231 	LA3_: ;
1232 }
N_INLINE(void,pushSafePoint)1233 static N_INLINE(void, pushSafePoint)(TSafePoint* s) {
1234 	(*s).prev = excHandler__system_2565;
1235 	excHandler__system_2565 = s;
1236 }
N_INLINE(NIM_BOOL,isEmpty__options_4495)1237 static N_INLINE(NIM_BOOL, isEmpty__options_4495)(NimStringDesc* x) {
1238 	NIM_BOOL result;
1239 	result = (NIM_BOOL)0;
1240 	result = ((x ? x->Sup.len : 0) == ((NI) 0));
1241 	return result;
1242 }
N_NIMCALL(NimStringDesc *,toFullPathConsiderDirty__msgs_571)1243 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFullPathConsiderDirty__msgs_571)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx) {
1244 	NimStringDesc* result;
1245 	result = NIM_NIL;
1246 	{
1247 		if (!(fileIdx < ((NI32) 0))) goto LA3_;
1248 		{
1249 			if (!(fileIdx == ((NI32) -3))) goto LA7_;
1250 			result = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_6));
1251 		}
1252 		goto LA5_;
1253 		LA7_: ;
1254 		{
1255 			result = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_7));
1256 		}
1257 		LA5_: ;
1258 	}
1259 	goto LA1_;
1260 	LA3_: ;
1261 	{
1262 		NIM_BOOL T11_;
1263 		T11_ = (NIM_BOOL)0;
1264 		T11_ = isEmpty__options_4495((*conf).m.fileInfos->data[fileIdx].dirtyFile);
1265 		if (!!(T11_)) goto LA12_;
1266 		result = copyString((*conf).m.fileInfos->data[fileIdx].dirtyFile);
1267 	}
1268 	goto LA1_;
1269 	LA12_: ;
1270 	{
1271 		result = copyString((*conf).m.fileInfos->data[fileIdx].fullPath);
1272 	}
1273 	LA1_: ;
1274 	return result;
1275 }
N_INLINE(NI,pluspercent___system_696)1276 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
1277 	NI result;
1278 	result = (NI)0;
1279 	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
1280 	return result;
1281 }
N_INLINE(void,incRef__system_5308)1282 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1283 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
1284 }
N_INLINE(NI,minuspercent___system_716)1285 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
1286 	NI result;
1287 	result = (NI)0;
1288 	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
1289 	return result;
1290 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5270)1291 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr) {
1292 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
1293 	NI T1_;
1294 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1295 	T1_ = (NI)0;
1296 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
1297 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
1298 	return result;
1299 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)1300 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
1301 	NIM_BOOL result;
1302 	result = (NIM_BOOL)0;
1303 	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
1304 	return result;
1305 }
N_INLINE(void,rtlAddZCT__system_5313)1306 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1307 	addZCT__system_5264((&gch__system_5217.zct), c);
1308 }
N_INLINE(void,decRef__system_5315)1309 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1310 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
1311 	{
1312 		NIM_BOOL T3_;
1313 		T3_ = (NIM_BOOL)0;
1314 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
1315 		if (!T3_) goto LA4_;
1316 		rtlAddZCT__system_5313(c);
1317 	}
1318 	LA4_: ;
1319 }
N_INLINE(void,asgnRef)1320 static N_INLINE(void, asgnRef)(void** dest, void* src) {
1321 	{
1322 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
1323 		if (!!((src == NIM_NIL))) goto LA3_;
1324 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1325 		T5_ = usrToCell__system_5270(src);
1326 		incRef__system_5308(T5_);
1327 	}
1328 	LA3_: ;
1329 	{
1330 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
1331 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
1332 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1333 		T10_ = usrToCell__system_5270((*dest));
1334 		decRef__system_5315(T10_);
1335 	}
1336 	LA8_: ;
1337 	(*dest) = src;
1338 }
N_INLINE(void,nimGCunrefNoCycle)1339 static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
1340 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
1341 	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1342 	T1_ = usrToCell__system_5270(p);
1343 	decRef__system_5315(T1_);
1344 }
N_NIMCALL(void,addSourceLine__msgs_1082)1345 N_LIB_PRIVATE N_NIMCALL(void, addSourceLine__msgs_1082)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx, NimStringDesc* line) {
1346 	NI T1_;
1347 	NimStringDesc* T2_;
1348 	asgnRef((void**) (&(*conf).m.fileInfos->data[fileIdx].lines), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)((*conf).m.fileInfos->data[fileIdx].lines), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_)));
1349 	T1_ = (*conf).m.fileInfos->data[fileIdx].lines->Sup.len++;
1350 	T2_ = NIM_NIL;
1351 	T2_ = (*conf).m.fileInfos->data[fileIdx].lines->data[T1_]; (*conf).m.fileInfos->data[fileIdx].lines->data[T1_] = copyStringRC1(line);
1352 	if (T2_) nimGCunrefNoCycle(T2_);
1353 }
N_INLINE(void,popSafePoint)1354 static N_INLINE(void, popSafePoint)(void) {
1355 	excHandler__system_2565 = (*excHandler__system_2565).prev;
1356 }
N_INLINE(Exception *,nimBorrowCurrentException)1357 static N_INLINE(Exception*, nimBorrowCurrentException)(void) {
1358 	Exception* result;
1359 	result = NIM_NIL;
1360 	result = currException__system_2566;
1361 	return result;
1362 }
N_INLINE(void,popCurrentException)1363 static N_INLINE(void, popCurrentException)(void) {
1364 	asgnRef((void**) (&currException__system_2566), (*currException__system_2566).up);
1365 }
N_NIMCALL(NI,numLines__msgs_1090)1366 N_LIB_PRIVATE N_NIMCALL(NI, numLines__msgs_1090)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx) {
1367 	NI result;
1368 	NI T1_;
1369 	result = (NI)0;
1370 	T1_ = ((*conf).m.fileInfos->data[fileIdx].lines ? (*conf).m.fileInfos->data[fileIdx].lines->Sup.len : 0);
1371 	result = T1_;
1372 	{
1373 		TSafePoint TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_22;
1374 		NI T14_;
1375 		if (!(result == ((NI) 0))) goto LA4_;
1376 		pushSafePoint(&TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_22);
1377 		TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_22.status = _setjmp(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_22.context);
1378 		if (TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_22.status == 0) {
1379 		{
1380 			NimStringDesc* line;
1381 			NimStringDesc* colontmp_;
1382 			FILE* f;
1383 			TSafePoint TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_23;
1384 			NimStringDesc* res;
1385 			line = NIM_NIL;
1386 			colontmp_ = NIM_NIL;
1387 			colontmp_ = toFullPathConsiderDirty__msgs_571(conf, fileIdx);
1388 			f = open__systemZio_430(colontmp_, ((tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg) 0), ((NI) 8000));
1389 			pushSafePoint(&TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_23);
1390 			TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_23.status = _setjmp(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_23.context);
1391 			if (TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_23.status == 0) {
1392 			res = rawNewString(((NI) 80));
1393 			{
1394 				while (1) {
1395 					NIM_BOOL T9_;
1396 					T9_ = (NIM_BOOL)0;
1397 					T9_ = readLine__systemZio_238(f, (&res));
1398 					if (!T9_) goto LA8;
1399 					line = res;
1400 					addSourceLine__msgs_1082(conf, fileIdx, line);
1401 				} LA8: ;
1402 			}
1403 			popSafePoint();
1404 			}
1405 			else {
1406 				popSafePoint();
1407 			}
1408 			{
1409 				close__systemZio_217(f);
1410 				if (TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_23.status != 0) nimLeaveFinally();
1411 			}
1412 			if (TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_23.status != 0) reraiseException();
1413 		}
1414 		popSafePoint();
1415 		}
1416 		else {
1417 			popSafePoint();
1418 			if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_))) {
1419 				TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_22.status = 0;
1420 				popCurrentException();
1421 			}
1422 		}
1423 		if (TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_22.status != 0) reraiseException();
1424 		T14_ = ((*conf).m.fileInfos->data[fileIdx].lines ? (*conf).m.fileInfos->data[fileIdx].lines->Sup.len : 0);
1425 		result = T14_;
1426 	}
1427 	LA4_: ;
1428 	return result;
1429 }
N_NIMCALL(NimStringDesc *,sourceLine__msgs_1101)1430 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, sourceLine__msgs_1101)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q i) {
1431 	NimStringDesc* result;
1432 	NI num;
1433 {	result = NIM_NIL;
1434 	{
1435 		if (!(i.fileIndex < ((NI32) 0))) goto LA3_;
1436 		result = ((NimStringDesc*) NIM_NIL);
1437 		goto BeforeRet_;
1438 	}
1439 	LA3_: ;
1440 	num = numLines__msgs_1090(conf, i.fileIndex);
1441 	{
1442 		if (!(num < ((NI) (i.line)))) goto LA7_;
1443 		result = ((NimStringDesc*) NIM_NIL);
1444 		goto BeforeRet_;
1445 	}
1446 	LA7_: ;
1447 	result = copyString((*conf).m.fileInfos->data[i.fileIndex].lines->data[(NI)(((NI) (i.line)) - ((NI) 1))]);
1448 	}BeforeRet_: ;
1449 	return result;
1450 }
N_INLINE(NimStringDesc *,spaces__pureZstrutils_1029)1451 static N_INLINE(NimStringDesc*, spaces__pureZstrutils_1029)(NI n) {
1452 	NimStringDesc* result;
1453 	result = NIM_NIL;
1454 	result = nsuRepeatChar(32, n);
1455 	return result;
1456 }
N_INLINE(void,appendChar)1457 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
1458 	(*dest).data[(*dest).Sup.len] = c;
1459 	(*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
1460 	(*dest).Sup.len += ((NI) 1);
1461 }
N_NIMCALL(NimStringDesc *,getSurroundingSrc__msgs_1106)1462 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getSurroundingSrc__msgs_1106)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
1463 	NimStringDesc* result;
1464 	result = NIM_NIL;
1465 	{
1466 		NIM_BOOL T3_;
1467 		NIM_BOOL T5_;
1468 		NimStringDesc* T8_;
1469 		NimStringDesc* T9_;
1470 		T3_ = (NIM_BOOL)0;
1471 		T3_ = hasHint__options_517(conf, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 92));
1472 		if (!(T3_)) goto LA4_;
1473 		T5_ = (NIM_BOOL)0;
1474 		T5_ = eqeq___msgs_993(info, unknownLineInfo__lineinfos_280);
1475 		T3_ = !(T5_);
1476 		LA4_: ;
1477 		if (!T3_) goto LA6_;
1478 		T8_ = NIM_NIL;
1479 		T9_ = NIM_NIL;
1480 		T9_ = sourceLine__msgs_1101(conf, info);
1481 		T8_ = rawNewString((T9_ ? T9_->Sup.len : 0) + 3);
1482 appendString(T8_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_21));
1483 appendString(T8_, T9_);
1484 		result = T8_;
1485 		{
1486 			NimStringDesc* T14_;
1487 			NimStringDesc* T15_;
1488 			if (!(((NI16) 0) <= info.col)) goto LA12_;
1489 			T14_ = NIM_NIL;
1490 			T15_ = NIM_NIL;
1491 			T15_ = spaces__pureZstrutils_1029(((NI) (info.col)));
1492 			T14_ = rawNewString((T15_ ? T15_->Sup.len : 0) + 4);
1493 appendString(T14_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_21));
1494 appendString(T14_, T15_);
1495 appendChar(T14_, 94);
1496 			result = resizeString(result, (T14_ ? T14_->Sup.len : 0) + 0);
1497 appendString(result, T14_);
1498 		}
1499 		LA12_: ;
1500 	}
1501 	LA6_: ;
1502 	return result;
1503 }
N_INLINE(NimStringDesc *,toFileLineCol__msgs_615)1504 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info) {
1505 	NimStringDesc* result;
1506 	result = NIM_NIL;
1507 	result = resizeString(result, (info.Field0 ? info.Field0->Sup.len : 0) + 0);
1508 appendString(result, info.Field0);
1509 	{
1510 		if (!(((NI) 0) < info.Field1)) goto LA3_;
1511 		result = resizeString(result, 1);
1512 appendString(result, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_9));
1513 		addInt__stdZprivateZdigitsutils_189((&result), info.Field1);
1514 		{
1515 			if (!(((NI) 0) < (NI)(info.Field2 + ((NI) 1)))) goto LA7_;
1516 			result = resizeString(result, 2);
1517 appendString(result, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_10));
1518 			addInt__stdZprivateZdigitsutils_189((&result), (NI)(info.Field2 + ((NI) 1)));
1519 		}
1520 		LA7_: ;
1521 		result = resizeString(result, 1);
1522 appendString(result, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_11));
1523 	}
1524 	LA3_: ;
1525 	return result;
1526 }
N_INLINE(NimStringDesc *,slash___pureZos_121)1527 static N_INLINE(NimStringDesc*, slash___pureZos_121)(NimStringDesc* head, NimStringDesc* tail) {
1528 	NimStringDesc* result;
1529 	result = NIM_NIL;
1530 	result = nosjoinPath(head, tail);
1531 	return result;
1532 }
N_NIMCALL(void,log__msgs_786)1533 N_LIB_PRIVATE N_NIMCALL(void, log__msgs_786)(NimStringDesc* s) {
1534 	FILE* f;
1535 	f = (FILE*)0;
1536 	{
1537 		NimStringDesc* T3_;
1538 		NimStringDesc* T4_;
1539 		NIM_BOOL T5_;
1540 		tyArray__nHXaesL0DJZHyVS07ARPRA T8_;
1541 		T3_ = NIM_NIL;
1542 		T3_ = nosgetHomeDir();
1543 		T4_ = NIM_NIL;
1544 		T4_ = slash___pureZos_121(T3_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_28));
1545 		T5_ = (NIM_BOOL)0;
1546 		T5_ = open__systemZio_389(&f, T4_, ((tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg) 4), ((NI) -1));
1547 		if (!T5_) goto LA6_;
1548 		nimZeroMem((void*)T8_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
1549 		T8_[0] = copyString(s);
1550 		writeLine__msgs_432(f, T8_, 1);
1551 		close__systemZio_217(f);
1552 	}
1553 	LA6_: ;
1554 }
N_NIMCALL(void,quit__msgs_793)1555 N_LIB_PRIVATE N_NIMCALL(void, quit__msgs_793)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg) {
1556 	{
1557 		NIM_BOOL T3_;
1558 		T3_ = (NIM_BOOL)0;
1559 		T3_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_29));
1560 		if (!T3_) goto LA4_;
1561 		{
1562 			NIM_BOOL T8_;
1563 			T8_ = (NIM_BOOL)0;
1564 			T8_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_29));
1565 			if (!T8_) goto LA9_;
1566 			{
1567 				NimStringDesc* T15_;
1568 				if (!NIM_TRUE) goto LA13_;
1569 				T15_ = NIM_NIL;
1570 				T15_ = rawNewString((reprEnum((NI)msg, (&NTItmsgkind__29cbg2fC1z5iM1PAI28kR5w_)) ? reprEnum((NI)msg, (&NTItmsgkind__29cbg2fC1z5iM1PAI28kR5w_))->Sup.len : 0) + 29);
1571 appendString(T15_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_30));
1572 appendString(T15_, reprEnum((NI)msg, (&NTItmsgkind__29cbg2fC1z5iM1PAI28kR5w_)));
1573 				failedAssertImpl__systemZassertions_56(T15_);
1574 			}
1575 			LA13_: ;
1576 		}
1577 		goto LA6_;
1578 		LA9_: ;
1579 		{
1580 			quit__system_7173(reprEnum((NI)msg, (&NTItmsgkind__29cbg2fC1z5iM1PAI28kR5w_)), ((NI) 1));
1581 		}
1582 		LA6_: ;
1583 	}
1584 	goto LA1_;
1585 	LA4_: ;
1586 	{
1587 		NIM_BOOL T18_;
1588 		NIM_BOOL T19_;
1589 		T18_ = (NIM_BOOL)0;
1590 		T19_ = (NIM_BOOL)0;
1591 		T19_ = NIM_FALSE;
1592 		if (T19_) goto LA20_;
1593 		T19_ = (msg == ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 2));
1594 		LA20_: ;
1595 		T18_ = T19_;
1596 		if (T18_) goto LA21_;
1597 		T18_ = hasHint__options_517(conf, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 94));
1598 		LA21_: ;
1599 		if (!T18_) goto LA22_;
1600 		{
1601 			NIM_BOOL T26_;
1602 			T26_ = (NIM_BOOL)0;
1603 			T26_ = stackTraceAvailable__system_2747();
1604 			if (!(T26_)) goto LA27_;
1605 			T26_ = ((*conf).writelnHook.ClP_0 == 0);
1606 			LA27_: ;
1607 			if (!T26_) goto LA28_;
1608 			writeStackTrace__system_2161();
1609 		}
1610 		goto LA24_;
1611 		LA28_: ;
1612 		{
1613 			{
1614 				tyArray__Re75IspeoxXy2oCZHwcRrA T35_;
1615 				tyArray__Re75IspeoxXy2oCZHwcRrA T36_;
1616 				NimStringDesc* T37_;
1617 				if (!!(((*conf).writelnHook.ClP_0 == 0))) goto LA33_;
1618 				nimZeroMem((void*)T35_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
1619 				nimZeroMem((void*)T36_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
1620 				T36_[0] = copyString((*conf).command);
1621 				T36_[1] = createDocLink__lineinfos_6(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_32));
1622 				T35_[0] = nsuFormatOpenArray(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_31), T36_, 2);
1623 				T35_[1] = copyString((*conf).unitSep);
1624 				T37_ = NIM_NIL;
1625 				T37_ = concat__msgs_405(T35_, 2);
1626 				(*conf).writelnHook.ClE_0? (*conf).writelnHook.ClP_0(T37_, (*conf).writelnHook.ClE_0):((TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_33)((*conf).writelnHook.ClP_0))(T37_);
1627 			}
1628 			goto LA31_;
1629 			LA33_: ;
1630 			{
1631 				if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 24))&63U)))!=0)) goto LA39_;
1632 				{
1633 					tyArray__Re75IspeoxXy2oCZHwcRrA T45_;
1634 					tyArray__Re75IspeoxXy2oCZHwcRrA T46_;
1635 					if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 0))&7U)))!=0)) goto LA43_;
1636 					flushDot__msgs_17(conf);
1637 					nimZeroMem((void*)T45_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
1638 					nimZeroMem((void*)T46_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
1639 					T46_[0] = copyString((*conf).command);
1640 					T46_[1] = createDocLink__lineinfos_6(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_32));
1641 					T45_[0] = nsuFormatOpenArray(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_31), T46_, 2);
1642 					T45_[1] = copyString((*conf).unitSep);
1643 					writeLine__msgs_432(__stdoutp, T45_, 2);
1644 					flushFile__systemZio_226(__stdoutp);
1645 				}
1646 				LA43_: ;
1647 			}
1648 			goto LA31_;
1649 			LA39_: ;
1650 			{
1651 				if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 1))&7U)))!=0)) goto LA48_;
1652 				flushDot__msgs_17(conf);
1653 				{
1654 					tyArray__Re75IspeoxXy2oCZHwcRrA T54_;
1655 					NimStringDesc* T55_;
1656 					if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 22))&63U)))!=0)) goto LA52_;
1657 					setForegroundColor__pureZterminal_387(__stderrp, ((tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg) 31), NIM_FALSE);
1658 					nimZeroMem((void*)T54_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
1659 					T54_[0] = copyString((*conf).command);
1660 					T54_[1] = createDocLink__lineinfos_6(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_32));
1661 					T55_ = NIM_NIL;
1662 					T55_ = nsuFormatOpenArray(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_31), T54_, 2);
1663 					write__systemZio_205(__stderrp, T55_);
1664 					write__systemZio_205(__stderrp, (*conf).unitSep);
1665 					resetAttributes__pureZterminal_280(__stderrp);
1666 					write__systemZio_205(__stderrp, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_14));
1667 				}
1668 				goto LA50_;
1669 				LA52_: ;
1670 				{
1671 					tyArray__Re75IspeoxXy2oCZHwcRrA T57_;
1672 					tyArray__Re75IspeoxXy2oCZHwcRrA T58_;
1673 					nimZeroMem((void*)T57_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
1674 					nimZeroMem((void*)T58_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
1675 					T58_[0] = copyString((*conf).command);
1676 					T58_[1] = createDocLink__lineinfos_6(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_32));
1677 					T57_[0] = nsuFormatOpenArray(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_31), T58_, 2);
1678 					T57_[1] = copyString((*conf).unitSep);
1679 					writeLine__msgs_432(__stderrp, T57_, 2);
1680 				}
1681 				LA50_: ;
1682 			}
1683 			goto LA31_;
1684 			LA48_: ;
1685 			LA31_: ;
1686 		}
1687 		LA24_: ;
1688 	}
1689 	goto LA1_;
1690 	LA22_: ;
1691 	LA1_: ;
1692 	exit(((NI) 1));
1693 }
N_NIMCALL(void,handleError__msgs_870)1694 N_LIB_PRIVATE N_NIMCALL(void, handleError__msgs_870)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, NimStringDesc* s) {
1695 	{
1696 		if (!(msg >= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 0) && msg <= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 2))) goto LA3_;
1697 		{
1698 			if (!((*conf).cmd == ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 11))) goto LA7_;
1699 			log__msgs_786(s);
1700 		}
1701 		LA7_: ;
1702 		quit__msgs_793(conf, msg);
1703 	}
1704 	LA3_: ;
1705 	{
1706 		NIM_BOOL T11_;
1707 		NIM_BOOL T12_;
1708 		NIM_BOOL T15_;
1709 		tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg T16_;
1710 		T11_ = (NIM_BOOL)0;
1711 		T12_ = (NIM_BOOL)0;
1712 		T12_ = (((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 0) <= msg);
1713 		if (!(T12_)) goto LA13_;
1714 		T12_ = (msg <= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 15));
1715 		LA13_: ;
1716 		T11_ = T12_;
1717 		if (T11_) goto LA14_;
1718 		T15_ = (NIM_BOOL)0;
1719 		T16_ = dotdot___msgs_891(((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 16), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 102));
1720 		T15_ = contains__msgs_952(T16_, msg);
1721 		if (!(T15_)) goto LA17_;
1722 		T15_ = (((*conf).warningAsErrors[(NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (msg))- 16))>>3] &(1U<<((NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (msg))- 16))&7U)))!=0);
1723 		LA17_: ;
1724 		T11_ = T15_;
1725 		LA14_: ;
1726 		if (!T11_) goto LA18_;
1727 		(*conf).errorCounter += ((NI) 1);
1728 		(*conf).exitcode = ((NI8) 1);
1729 		{
1730 			if (!((*conf).errorMax <= (*conf).errorCounter)) goto LA22_;
1731 			{
1732 				if (!((*conf).ideCmd == ((tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ) 0))) goto LA26_;
1733 				quit__msgs_793(conf, msg);
1734 			}
1735 			LA26_: ;
1736 		}
1737 		goto LA20_;
1738 		LA22_: ;
1739 		{
1740 			NIM_BOOL T29_;
1741 			T29_ = (NIM_BOOL)0;
1742 			T29_ = (eh == ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1));
1743 			if (!(T29_)) goto LA30_;
1744 			T29_ = !(((*conf).cmd == ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 11)));
1745 			LA30_: ;
1746 			if (!T29_) goto LA31_;
1747 			quit__msgs_793(conf, msg);
1748 		}
1749 		goto LA20_;
1750 		LA31_: ;
1751 		{
1752 			if (!(eh == ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2))) goto LA34_;
1753 			raiseRecoverableError__lineinfos_258(s);
1754 		}
1755 		goto LA20_;
1756 		LA34_: ;
1757 		LA20_: ;
1758 	}
1759 	LA18_: ;
1760 }
N_NOINLINE(void,liMessage__msgs_1118)1761 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) {
1762 	NimStringDesc* title;
1763 	tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg color;
1764 	NIM_BOOL ignoreMsg;
1765 	tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA sev;
1766 	tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputsOld;
1767 	NimStringDesc* kind;
1768 	NimStringDesc* s;
1769 	title = NIM_NIL;
1770 	color = (tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg)0;
1771 	ignoreMsg = NIM_FALSE;
1772 	sev = (tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA)0;
1773 	errorOutputsOld = (*conf).m.errorOutputs;
1774 	{
1775 		if (!(msg >= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 0) && msg <= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 2))) goto LA3_;
1776 		(*conf).m.errorOutputs = 3;
1777 	}
1778 	LA3_: ;
1779 	{
1780 		NIM_BOOL T7_;
1781 		tyObject_HSlice__9a7LZzxhxaoaVRy8OcVBd9cg T8_;
1782 		T7_ = (NIM_BOOL)0;
1783 		T8_ = dotdot___msgs_891(((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 16), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 102));
1784 		T7_ = contains__msgs_952(T8_, msg);
1785 		if (!(T7_)) goto LA9_;
1786 		T7_ = !((msg == ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 99)));
1787 		LA9_: ;
1788 		if (!T7_) goto LA10_;
1789 		kind = reprEnum((NI)msg, (&NTItmsgkind__29cbg2fC1z5iM1PAI28kR5w_));
1790 	}
1791 	goto LA5_;
1792 	LA10_: ;
1793 	{
1794 		kind = ((NimStringDesc*) NIM_NIL);
1795 	}
1796 	LA5_: ;
1797 	switch (msg) {
1798 	case ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 0) ... ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 15):
1799 	{
1800 		sev = ((tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA) 2);
1801 		writeContext__msgs_1001(conf, info);
1802 		title = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_15));
1803 		color = ((tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg) 31);
1804 		{
1805 			NIM_BOOL T16_;
1806 			T16_ = (NIM_BOOL)0;
1807 			T16_ = eqeq___msgs_993(info, unknownLineInfo__lineinfos_280);
1808 			if (!!(T16_)) goto LA17_;
1809 			(*conf).m.lastError = info;
1810 		}
1811 		LA17_: ;
1812 	}
1813 	break;
1814 	case ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 16) ... ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 67):
1815 	{
1816 		NIM_BOOL T20_;
1817 		sev = ((tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA) 1);
1818 		T20_ = (NIM_BOOL)0;
1819 		T20_ = hasWarn__options_557(conf, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (msg)));
1820 		ignoreMsg = !(T20_);
1821 		{
1822 			if (!(((*conf).warningAsErrors[(NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (msg))- 16))>>3] &(1U<<((NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (msg))- 16))&7U)))!=0)) goto LA23_;
1823 			ignoreMsg = NIM_FALSE;
1824 			title = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_15));
1825 		}
1826 		goto LA21_;
1827 		LA23_: ;
1828 		{
1829 			title = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_16));
1830 		}
1831 		LA21_: ;
1832 		{
1833 			if (!!(ignoreMsg)) goto LA28_;
1834 			writeContext__msgs_1001(conf, info);
1835 		}
1836 		LA28_: ;
1837 		color = ((tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg) 33);
1838 		(*conf).warnCounter += ((NI) 1);
1839 	}
1840 	break;
1841 	case ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 68) ... ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 102):
1842 	{
1843 		NIM_BOOL T31_;
1844 		sev = ((tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA) 0);
1845 		T31_ = (NIM_BOOL)0;
1846 		T31_ = hasHint__options_517(conf, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (msg)));
1847 		ignoreMsg = !(T31_);
1848 		{
1849 			if (!(((*conf).warningAsErrors[(NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (msg))- 16))>>3] &(1U<<((NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (msg))- 16))&7U)))!=0)) goto LA34_;
1850 			ignoreMsg = NIM_FALSE;
1851 			title = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_15));
1852 		}
1853 		goto LA32_;
1854 		LA34_: ;
1855 		{
1856 			title = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_17));
1857 		}
1858 		LA32_: ;
1859 		color = ((tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg) 32);
1860 		(*conf).hintCounter += ((NI) 1);
1861 	}
1862 	break;
1863 	}
1864 	{
1865 		if (!isRaw) goto LA39_;
1866 		s = arg;
1867 	}
1868 	goto LA37_;
1869 	LA39_: ;
1870 	{
1871 		s = getMessageStr__msgs_775(msg, arg);
1872 	}
1873 	LA37_: ;
1874 	{
1875 		NimStringDesc* loc;
1876 		NimStringDesc* kindmsg;
1877 		if (!!(ignoreMsg)) goto LA44_;
1878 		{
1879 			NIM_BOOL T48_;
1880 			NimStringDesc* T51_;
1881 			NimStringDesc* T52_;
1882 			T48_ = (NIM_BOOL)0;
1883 			T48_ = eqeq___msgs_993(info, unknownLineInfo__lineinfos_280);
1884 			if (!!(T48_)) goto LA49_;
1885 			T51_ = NIM_NIL;
1886 			T52_ = NIM_NIL;
1887 			T52_ = toFileLineCol__msgs_619(conf, info);
1888 			T51_ = rawNewString((T52_ ? T52_->Sup.len : 0) + 1);
1889 appendString(T51_, T52_);
1890 appendString(T51_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
1891 			loc = T51_;
1892 		}
1893 		goto LA46_;
1894 		LA49_: ;
1895 		{
1896 			loc = ((NimStringDesc*) NIM_NIL);
1897 		}
1898 		LA46_: ;
1899 		{
1900 			if (!(((NI) 0) < (kind ? kind->Sup.len : 0))) goto LA56_;
1901 			kindmsg = nsuFormatSingleElem(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_18), kind);
1902 		}
1903 		goto LA54_;
1904 		LA56_: ;
1905 		{
1906 			kindmsg = ((NimStringDesc*) NIM_NIL);
1907 		}
1908 		LA54_: ;
1909 		{
1910 			NimStringDesc* T63_;
1911 			if (!!(((*conf).structuredErrorHook.ClP_0 == TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_2.ClP_0 && (*conf).structuredErrorHook.ClE_0 == TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_2.ClE_0))) goto LA61_;
1912 			T63_ = NIM_NIL;
1913 			T63_ = rawNewString((s ? s->Sup.len : 0) + (kindmsg ? kindmsg->Sup.len : 0) + 0);
1914 appendString(T63_, s);
1915 appendString(T63_, kindmsg);
1916 			(*conf).structuredErrorHook.ClE_0? (*conf).structuredErrorHook.ClP_0(conf, info, T63_, sev, (*conf).structuredErrorHook.ClE_0):((TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_19)((*conf).structuredErrorHook.ClP_0))(conf, info, T63_, sev);
1917 		}
1918 		LA61_: ;
1919 		{
1920 			NIM_BOOL T66_;
1921 			T66_ = (NIM_BOOL)0;
1922 			T66_ = ignoreMsgBecauseOfIdeTools__msgs_1066(conf, msg);
1923 			if (!!(T66_)) goto LA67_;
1924 			{
1925 				NIM_BOOL T71_;
1926 				T71_ = (NIM_BOOL)0;
1927 				T71_ = (msg == ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 79));
1928 				if (!(T71_)) goto LA72_;
1929 				T71_ = (*conf).hintProcessingDots;
1930 				LA72_: ;
1931 				if (!T71_) goto LA73_;
1932 				msgWrite__msgs_749(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_20));
1933 			}
1934 			goto LA69_;
1935 			LA73_: ;
1936 			{
1937 				{
1938 					tyArray__yt5VDPNtUGx9cBkOVakHwdQ T80_;
1939 					NimStringDesc* T81_;
1940 					if (!!(((*conf).writelnHook.ClP_0 == 0))) goto LA78_;
1941 					nimZeroMem((void*)T80_, sizeof(tyArray__yt5VDPNtUGx9cBkOVakHwdQ));
1942 					T80_[0] = copyString(loc);
1943 					T80_[1] = copyString(title);
1944 					T80_[2] = copyString(s);
1945 					T80_[3] = copyString(kindmsg);
1946 					T80_[4] = getSurroundingSrc__msgs_1106(conf, info);
1947 					T80_[5] = copyString((*conf).unitSep);
1948 					T81_ = NIM_NIL;
1949 					T81_ = concat__msgs_405(T80_, 6);
1950 					(*conf).writelnHook.ClE_0? (*conf).writelnHook.ClP_0(T81_, (*conf).writelnHook.ClE_0):((TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_24)((*conf).writelnHook.ClP_0))(T81_);
1951 				}
1952 				goto LA76_;
1953 				LA78_: ;
1954 				{
1955 					if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 24))&63U)))!=0)) goto LA83_;
1956 					{
1957 						tyArray__yt5VDPNtUGx9cBkOVakHwdQ T89_;
1958 						if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 0))&7U)))!=0)) goto LA87_;
1959 						flushDot__msgs_17(conf);
1960 						nimZeroMem((void*)T89_, sizeof(tyArray__yt5VDPNtUGx9cBkOVakHwdQ));
1961 						T89_[0] = copyString(loc);
1962 						T89_[1] = copyString(title);
1963 						T89_[2] = copyString(s);
1964 						T89_[3] = copyString(kindmsg);
1965 						T89_[4] = getSurroundingSrc__msgs_1106(conf, info);
1966 						T89_[5] = copyString((*conf).unitSep);
1967 						writeLine__msgs_432(__stdoutp, T89_, 6);
1968 						flushFile__systemZio_226(__stdoutp);
1969 					}
1970 					LA87_: ;
1971 				}
1972 				goto LA76_;
1973 				LA83_: ;
1974 				{
1975 					if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 1))&7U)))!=0)) goto LA91_;
1976 					flushDot__msgs_17(conf);
1977 					{
1978 						NimStringDesc* T97_;
1979 						if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 22))&63U)))!=0)) goto LA95_;
1980 						setStyle__pureZterminal_313(__stderrp, 1);
1981 						write__systemZio_205(__stderrp, loc);
1982 						resetAttributes__pureZterminal_280(__stderrp);
1983 						setForegroundColor__pureZterminal_387(__stderrp, color, NIM_FALSE);
1984 						write__systemZio_205(__stderrp, title);
1985 						resetAttributes__pureZterminal_280(__stderrp);
1986 						write__systemZio_205(__stderrp, s);
1987 						setForegroundColor__pureZterminal_387(__stderrp, ((tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg) 36), NIM_FALSE);
1988 						write__systemZio_205(__stderrp, kindmsg);
1989 						resetAttributes__pureZterminal_280(__stderrp);
1990 						T97_ = NIM_NIL;
1991 						T97_ = getSurroundingSrc__msgs_1106(conf, info);
1992 						write__systemZio_205(__stderrp, T97_);
1993 						write__systemZio_205(__stderrp, (*conf).unitSep);
1994 						resetAttributes__pureZterminal_280(__stderrp);
1995 						write__systemZio_205(__stderrp, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_14));
1996 					}
1997 					goto LA93_;
1998 					LA95_: ;
1999 					{
2000 						tyArray__yt5VDPNtUGx9cBkOVakHwdQ T99_;
2001 						nimZeroMem((void*)T99_, sizeof(tyArray__yt5VDPNtUGx9cBkOVakHwdQ));
2002 						T99_[0] = copyString(loc);
2003 						T99_[1] = copyString(title);
2004 						T99_[2] = copyString(s);
2005 						T99_[3] = copyString(kindmsg);
2006 						T99_[4] = getSurroundingSrc__msgs_1106(conf, info);
2007 						T99_[5] = copyString((*conf).unitSep);
2008 						writeLine__msgs_432(__stderrp, T99_, 6);
2009 					}
2010 					LA93_: ;
2011 				}
2012 				goto LA76_;
2013 				LA91_: ;
2014 				LA76_: ;
2015 				{
2016 					if (!(((*conf).mainPackageNotes[(NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 101)- 16))>>3] &(1U<<((NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 101)- 16))&7U)))!=0)) goto LA102_;
2017 					{
2018 						tyArray__sMpvt1sOxOJ3LFGulnbeMQ T108_;
2019 						NimStringDesc* T109_;
2020 						if (!!(((*conf).writelnHook.ClP_0 == 0))) goto LA106_;
2021 						nimZeroMem((void*)T108_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ));
2022 						T108_[0] = toFileLineCol__msgs_615(info2);
2023 						T108_[1] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_25));
2024 						T108_[2] = nsuFormatSingleElem(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_18), ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_26));
2025 						T108_[3] = copyString((*conf).unitSep);
2026 						T109_ = NIM_NIL;
2027 						T109_ = concat__msgs_405(T108_, 4);
2028 						(*conf).writelnHook.ClE_0? (*conf).writelnHook.ClP_0(T109_, (*conf).writelnHook.ClE_0):((TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_27)((*conf).writelnHook.ClP_0))(T109_);
2029 					}
2030 					goto LA104_;
2031 					LA106_: ;
2032 					{
2033 						if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 24))&63U)))!=0)) goto LA111_;
2034 						{
2035 							tyArray__sMpvt1sOxOJ3LFGulnbeMQ T117_;
2036 							if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 0))&7U)))!=0)) goto LA115_;
2037 							flushDot__msgs_17(conf);
2038 							nimZeroMem((void*)T117_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ));
2039 							T117_[0] = toFileLineCol__msgs_615(info2);
2040 							T117_[1] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_25));
2041 							T117_[2] = nsuFormatSingleElem(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_18), ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_26));
2042 							T117_[3] = copyString((*conf).unitSep);
2043 							writeLine__msgs_432(__stdoutp, T117_, 4);
2044 							flushFile__systemZio_226(__stdoutp);
2045 						}
2046 						LA115_: ;
2047 					}
2048 					goto LA104_;
2049 					LA111_: ;
2050 					{
2051 						if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 1))&7U)))!=0)) goto LA119_;
2052 						flushDot__msgs_17(conf);
2053 						{
2054 							NimStringDesc* T125_;
2055 							NimStringDesc* T126_;
2056 							if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 22))&63U)))!=0)) goto LA123_;
2057 							setStyle__pureZterminal_313(__stderrp, 1);
2058 							T125_ = NIM_NIL;
2059 							T125_ = toFileLineCol__msgs_615(info2);
2060 							write__systemZio_205(__stderrp, T125_);
2061 							resetAttributes__pureZterminal_280(__stderrp);
2062 							write__systemZio_205(__stderrp, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_25));
2063 							setForegroundColor__pureZterminal_387(__stderrp, ((tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg) 36), NIM_FALSE);
2064 							T126_ = NIM_NIL;
2065 							T126_ = nsuFormatSingleElem(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_18), ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_26));
2066 							write__systemZio_205(__stderrp, T126_);
2067 							resetAttributes__pureZterminal_280(__stderrp);
2068 							write__systemZio_205(__stderrp, (*conf).unitSep);
2069 							resetAttributes__pureZterminal_280(__stderrp);
2070 							write__systemZio_205(__stderrp, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_14));
2071 						}
2072 						goto LA121_;
2073 						LA123_: ;
2074 						{
2075 							tyArray__sMpvt1sOxOJ3LFGulnbeMQ T128_;
2076 							nimZeroMem((void*)T128_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ));
2077 							T128_[0] = toFileLineCol__msgs_615(info2);
2078 							T128_[1] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_25));
2079 							T128_[2] = nsuFormatSingleElem(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_18), ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_26));
2080 							T128_[3] = copyString((*conf).unitSep);
2081 							writeLine__msgs_432(__stderrp, T128_, 4);
2082 						}
2083 						LA121_: ;
2084 					}
2085 					goto LA104_;
2086 					LA119_: ;
2087 					LA104_: ;
2088 				}
2089 				LA102_: ;
2090 			}
2091 			LA69_: ;
2092 		}
2093 		LA67_: ;
2094 	}
2095 	LA44_: ;
2096 	handleError__msgs_870(conf, msg, eh, s);
2097 	{
2098 		if (!(msg >= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 0) && msg <= ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 2))) goto LA131_;
2099 		(*conf).m.errorOutputs = errorOutputsOld;
2100 	}
2101 	LA131_: ;
2102 }
N_NIMCALL(void,msgWriteln__msgs_647)2103 N_LIB_PRIVATE N_NIMCALL(void, msgWriteln__msgs_647)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* s, tySet_tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ flags) {
2104 	NimStringDesc* sep;
2105 	{
2106 		if (!!(((flags &((NU8)1<<((NU)(((tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ) 2))&7U)))!=0))) goto LA3_;
2107 		sep = (*conf).unitSep;
2108 	}
2109 	goto LA1_;
2110 	LA3_: ;
2111 	{
2112 		sep = ((NimStringDesc*) NIM_NIL);
2113 	}
2114 	LA1_: ;
2115 	{
2116 		NIM_BOOL T8_;
2117 		NimStringDesc* T12_;
2118 		T8_ = (NIM_BOOL)0;
2119 		T8_ = !(((*conf).writelnHook.ClP_0 == 0));
2120 		if (!(T8_)) goto LA9_;
2121 		T8_ = !(((flags &((NU8)1<<((NU)(((tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ) 1))&7U)))!=0));
2122 		LA9_: ;
2123 		if (!T8_) goto LA10_;
2124 		T12_ = NIM_NIL;
2125 		T12_ = rawNewString((s ? s->Sup.len : 0) + (sep ? sep->Sup.len : 0) + 0);
2126 appendString(T12_, s);
2127 appendString(T12_, sep);
2128 		(*conf).writelnHook.ClE_0? (*conf).writelnHook.ClP_0(T12_, (*conf).writelnHook.ClE_0):((TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_34)((*conf).writelnHook.ClP_0))(T12_);
2129 	}
2130 	goto LA6_;
2131 	LA10_: ;
2132 	{
2133 		NIM_BOOL T14_;
2134 		T14_ = (NIM_BOOL)0;
2135 		T14_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 24))&63U)))!=0);
2136 		if (T14_) goto LA15_;
2137 		T14_ = ((flags &((NU8)1<<((NU)(((tyEnum_MsgFlag__BzRTaQ6LrPDZKEKt9bswkOQ) 0))&7U)))!=0);
2138 		LA15_: ;
2139 		if (!T14_) goto LA16_;
2140 		{
2141 			tyArray__nHXaesL0DJZHyVS07ARPRA T22_;
2142 			if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 0))&7U)))!=0)) goto LA20_;
2143 			flushDot__msgs_17(conf);
2144 			write__systemZio_205(__stdoutp, s);
2145 			nimZeroMem((void*)T22_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2146 			T22_[0] = copyString(sep);
2147 			writeLine__msgs_432(__stdoutp, T22_, 1);
2148 			flushFile__systemZio_226(__stdoutp);
2149 		}
2150 		LA20_: ;
2151 	}
2152 	goto LA6_;
2153 	LA16_: ;
2154 	{
2155 		{
2156 			tyArray__nHXaesL0DJZHyVS07ARPRA T28_;
2157 			if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 1))&7U)))!=0)) goto LA26_;
2158 			flushDot__msgs_17(conf);
2159 			write__systemZio_205(__stderrp, s);
2160 			nimZeroMem((void*)T28_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2161 			T28_[0] = copyString(sep);
2162 			writeLine__msgs_432(__stderrp, T28_, 1);
2163 		}
2164 		LA26_: ;
2165 	}
2166 	LA6_: ;
2167 }
N_NIMCALL(void,listWarnings__msgs_1476)2168 N_LIB_PRIVATE N_NIMCALL(void, listWarnings__msgs_1476)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2169 	msgWriteln__msgs_647(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_35), 4);
2170 	{
2171 		tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w aX60gensym129_;
2172 		NI res;
2173 		aX60gensym129_ = (tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w)0;
2174 		res = ((NI) 16);
2175 		{
2176 			while (1) {
2177 				tyArray__Re75IspeoxXy2oCZHwcRrA T4_;
2178 				NimStringDesc* T10_;
2179 				if (!(res <= ((NI) 67))) goto LA3;
2180 				aX60gensym129_ = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) (res));
2181 				nimZeroMem((void*)T4_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
2182 				{
2183 					if (!(((*conf).notes[(NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (aX60gensym129_))- 16))>>3] &(1U<<((NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (aX60gensym129_))- 16))&7U)))!=0)) goto LA7_;
2184 					T4_[0] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_37));
2185 				}
2186 				goto LA5_;
2187 				LA7_: ;
2188 				{
2189 					T4_[0] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
2190 				}
2191 				LA5_: ;
2192 				T4_[1] = reprEnum((NI)aX60gensym129_, (&NTItmsgkind__29cbg2fC1z5iM1PAI28kR5w_));
2193 				T10_ = NIM_NIL;
2194 				T10_ = nsuFormatOpenArray(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_36), T4_, 2);
2195 				msgWriteln__msgs_647(conf, T10_, 4);
2196 				res += ((NI) 1);
2197 			} LA3: ;
2198 		}
2199 	}
2200 }
N_NIMCALL(void,listHints__msgs_1497)2201 N_LIB_PRIVATE N_NIMCALL(void, listHints__msgs_1497)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2202 	msgWriteln__msgs_647(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_38), 4);
2203 	{
2204 		tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w aX60gensym131_;
2205 		NI res;
2206 		aX60gensym131_ = (tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w)0;
2207 		res = ((NI) 68);
2208 		{
2209 			while (1) {
2210 				tyArray__Re75IspeoxXy2oCZHwcRrA T4_;
2211 				NimStringDesc* T10_;
2212 				if (!(res <= ((NI) 102))) goto LA3;
2213 				aX60gensym131_ = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) (res));
2214 				nimZeroMem((void*)T4_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
2215 				{
2216 					if (!(((*conf).notes[(NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (aX60gensym131_))- 16))>>3] &(1U<<((NU)((((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) (aX60gensym131_))- 16))&7U)))!=0)) goto LA7_;
2217 					T4_[0] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_37));
2218 				}
2219 				goto LA5_;
2220 				LA7_: ;
2221 				{
2222 					T4_[0] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
2223 				}
2224 				LA5_: ;
2225 				T4_[1] = reprEnum((NI)aX60gensym131_, (&NTItmsgkind__29cbg2fC1z5iM1PAI28kR5w_));
2226 				T10_ = NIM_NIL;
2227 				T10_ = nsuFormatOpenArray(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_36), T4_, 2);
2228 				msgWriteln__msgs_647(conf, T10_, 4);
2229 				res += ((NI) 1);
2230 			} LA3: ;
2231 		}
2232 	}
2233 }
N_NIMCALL(void,msgQuit__msgs_442)2234 N_LIB_PRIVATE N_NIMCALL(void, msgQuit__msgs_442)(NI8 x) {
2235 	exit(((NI) (x)));
2236 }
N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q,newLineInfo__msgs_381)2237 N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q, newLineInfo__msgs_381)(NI32 fileInfoIdx, NI line, NI col) {
2238 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q result;
2239 	nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
2240 	result.fileIndex = fileInfoIdx;
2241 	{
2242 		if (!(line < ((NI) 65535))) goto LA3_;
2243 		result.line = ((NU16) (line));
2244 	}
2245 	goto LA1_;
2246 	LA3_: ;
2247 	{
2248 		result.line = ((NU16) 65535);
2249 	}
2250 	LA1_: ;
2251 	{
2252 		if (!(col < ((NI) 32767))) goto LA8_;
2253 		result.col = ((NI16) (col));
2254 	}
2255 	goto LA6_;
2256 	LA8_: ;
2257 	{
2258 		result.col = ((NI16) -1);
2259 	}
2260 	LA6_: ;
2261 	return result;
2262 }
N_INLINE(void,shallow__system_7433)2263 static N_INLINE(void, shallow__system_7433)(NimStringDesc** s) {
2264 	TGenericSeq* s_2;
2265 	s_2 = ((TGenericSeq*) ((*s)));
2266 	{
2267 		NimStringDesc* T5_;
2268 		if (!(s_2 == ((TGenericSeq*) NIM_NIL))) goto LA3_;
2269 		T5_ = NIM_NIL;
2270 		T5_ = mnewString(((NI) 0));
2271 		s_2 = ((TGenericSeq*) (T5_));
2272 	}
2273 	LA3_: ;
2274 	{
2275 		if (!((NI)((*s_2).reserved & ((NI) 1073741824)) == ((NI) 0))) goto LA8_;
2276 		(*s_2).reserved = (NI)((*s_2).reserved | ((NI) (-2147483647 -1)));
2277 	}
2278 	LA8_: ;
2279 }
N_NIMCALL(void,canonicalCase__msgs_67)2280 N_LIB_PRIVATE N_NIMCALL(void, canonicalCase__msgs_67)(NimStringDesc** path) {
2281 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZtables_31)2282 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) {
2283 	NIM_BOOL result;
2284 	result = (NIM_BOOL)0;
2285 	result = !((hcode == ((NI) 0)));
2286 	return result;
2287 }
N_INLINE(int,nimCmpMem)2288 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
2289 	int result;
2290 	result = (int)0;
2291 	result = memcmp(a, b, ((size_t) (size)));
2292 	return result;
2293 }
N_INLINE(NIM_BOOL,equalMem__system_1735)2294 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
2295 	NIM_BOOL result;
2296 	int T1_;
2297 	result = (NIM_BOOL)0;
2298 	T1_ = (int)0;
2299 	T1_ = nimCmpMem(a, b, size);
2300 	result = (T1_ == ((NI32) 0));
2301 	return result;
2302 }
N_INLINE(NIM_BOOL,eqStrings)2303 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
2304 	NIM_BOOL result;
2305 	NI alen;
2306 	NI blen;
2307 {	result = (NIM_BOOL)0;
2308 	alen = (a ? a->Sup.len : 0);
2309 	blen = (b ? b->Sup.len : 0);
2310 	{
2311 		if (!(alen == blen)) goto LA3_;
2312 		{
2313 			if (!(alen == ((NI) 0))) goto LA7_;
2314 			result = NIM_TRUE;
2315 			goto BeforeRet_;
2316 		}
2317 		LA7_: ;
2318 		result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
2319 		goto BeforeRet_;
2320 	}
2321 	LA3_: ;
2322 	}BeforeRet_: ;
2323 	return result;
2324 }
N_INLINE(NI,nextTry__pureZcollectionsZtables_34)2325 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) {
2326 	NI result;
2327 	result = (NI)0;
2328 	result = (NI)((NI)(h + ((NI) 1)) & maxHash);
2329 	return result;
2330 }
N_INLINE(NI,rawGet__lineinfos_448)2331 static N_INLINE(NI, rawGet__lineinfos_448)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA t, NimStringDesc* key, NI* hc) {
2332 	NI result;
2333 	NI h;
2334 	NI T10_;
2335 {	result = (NI)0;
2336 	(*hc) = hash__pureZhashes_279(key);
2337 	{
2338 		if (!((*hc) == ((NI) 0))) goto LA3_;
2339 		(*hc) = ((NI) 314159265);
2340 	}
2341 	LA3_: ;
2342 	{
2343 		NI T7_;
2344 		T7_ = (t.data ? t.data->Sup.len : 0);
2345 		if (!(T7_ == ((NI) 0))) goto LA8_;
2346 		result = ((NI) -1);
2347 		goto BeforeRet_;
2348 	}
2349 	LA8_: ;
2350 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
2351 	h = (NI)((*hc) & T10_);
2352 	{
2353 		while (1) {
2354 			NIM_BOOL T13_;
2355 			NI T20_;
2356 			T13_ = (NIM_BOOL)0;
2357 			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
2358 			if (!T13_) goto LA12;
2359 			{
2360 				NIM_BOOL T16_;
2361 				T16_ = (NIM_BOOL)0;
2362 				T16_ = (t.data->data[h].Field0 == (*hc));
2363 				if (!(T16_)) goto LA17_;
2364 				T16_ = eqStrings(t.data->data[h].Field1, key);
2365 				LA17_: ;
2366 				if (!T16_) goto LA18_;
2367 				result = h;
2368 				goto BeforeRet_;
2369 			}
2370 			LA18_: ;
2371 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
2372 			h = nextTry__pureZcollectionsZtables_34(h, T20_);
2373 		} LA12: ;
2374 	}
2375 	result = (NI)(((NI) -1) - h);
2376 	}BeforeRet_: ;
2377 	return result;
2378 }
N_NIMCALL(NIM_BOOL,hasKey__msgs_114)2379 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__msgs_114)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA t, NimStringDesc* key) {
2380 	NIM_BOOL result;
2381 	NI hc;
2382 	NI T1_;
2383 	result = (NIM_BOOL)0;
2384 	hc = (NI)0;
2385 	T1_ = (NI)0;
2386 	T1_ = rawGet__lineinfos_448(t, key, (&hc));
2387 	result = (((NI) 0) <= T1_);
2388 	return result;
2389 }
N_NOINLINE(void,raiseKeyError__msgs_300)2390 N_LIB_PRIVATE N_NOINLINE(void, raiseKeyError__msgs_300)(NimStringDesc* key) {
2391 	tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag* T1_;
2392 	NimStringDesc* T2_;
2393 	T1_ = NIM_NIL;
2394 	T1_ = (tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag*) newObj((&NTIrefkeyerror__8SzoIAgLw9ci2v0yafHj9b6Q_), sizeof(tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag));
2395 	(*T1_).Sup.Sup.Sup.Sup.m_type = (&NTIkeyerror__t7nhKLvXTQS9cS8ByJU9bIag_);
2396 	(*T1_).Sup.Sup.Sup.name = "KeyError";
2397 	T2_ = NIM_NIL;
2398 	T2_ = rawNewString((key ? key->Sup.len : 0) + 15);
2399 appendString(T2_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_40));
2400 appendString(T2_, key);
2401 	asgnRef((void**) (&(*T1_).Sup.Sup.Sup.message), T2_);
2402 	asgnRef((void**) (&(*T1_).Sup.Sup.Sup.parent), ((Exception*) NIM_NIL));
2403 	raiseExceptionEx((Exception*)T1_, "KeyError", "raiseKeyError", "tables.nim", 234);
2404 }
N_NIMCALL(NI32 *,X5BX5D___msgs_233)2405 N_LIB_PRIVATE N_NIMCALL(NI32*, X5BX5D___msgs_233)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA* t, NimStringDesc* key) {
2406 	NI32* result;
2407 	NI hcX60gensym22_;
2408 	NI indexX60gensym22_;
2409 	result = (NI32*)0;
2410 	hcX60gensym22_ = (NI)0;
2411 	indexX60gensym22_ = rawGet__lineinfos_448((*t), key, (&hcX60gensym22_));
2412 	{
2413 		if (!(((NI) 0) <= indexX60gensym22_)) goto LA3_;
2414 		result = (&(*t).data->data[indexX60gensym22_].Field2);
2415 	}
2416 	goto LA1_;
2417 	LA3_: ;
2418 	{
2419 		raiseKeyError__msgs_300(key);
2420 	}
2421 	LA1_: ;
2422 	return result;
2423 }
N_INLINE(NF,toFloat__system_1702)2424 static N_INLINE(NF, toFloat__system_1702)(NI i) {
2425 	NF result;
2426 	result = (NF)0;
2427 	result = ((NF) (i));
2428 	return result;
2429 }
N_INLINE(void,toCChar__msgs_47)2430 static N_INLINE(void, toCChar__msgs_47)(NIM_CHAR c, NimStringDesc** result) {
2431 	switch (((NU8)(c))) {
2432 	case 0 ... 31:
2433 	case 127 ... 255:
2434 	{
2435 		NimStringDesc* T2_;
2436 		unsureAsgnRef((void**) (&(*result)), addChar((*result), 92));
2437 		T2_ = NIM_NIL;
2438 		T2_ = nsuToOctal(c);
2439 		unsureAsgnRef((void**) (&(*result)), resizeString((*result), (T2_ ? T2_->Sup.len : 0) + 0));
2440 appendString((*result), T2_);
2441 	}
2442 	break;
2443 	case 39:
2444 	case 34:
2445 	case 92:
2446 	case 63:
2447 	{
2448 		unsureAsgnRef((void**) (&(*result)), addChar((*result), 92));
2449 		unsureAsgnRef((void**) (&(*result)), addChar((*result), c));
2450 	}
2451 	break;
2452 	default:
2453 	{
2454 		unsureAsgnRef((void**) (&(*result)), addChar((*result), c));
2455 	}
2456 	break;
2457 	}
2458 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,makeCString__msgs_50)2459 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, makeCString__msgs_50)(NimStringDesc* s) {
2460 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
2461 	NimStringDesc* res;
2462 	NF T1_;
2463 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
2464 	result = NIM_NIL;
2465 	result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
2466 	T1_ = (NF)0;
2467 	T1_ = toFloat__system_1702((s ? s->Sup.len : 0));
2468 	res = rawNewString(((NI) ((NI)(((NI) (((NF)(T1_) * (NF)(1.1)))) + ((NI) 1)))));
2469 	res = resizeString(res, 1);
2470 appendString(res, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_41));
2471 	{
2472 		NI i;
2473 		NI colontmp_;
2474 		NI i_2;
2475 		i = (NI)0;
2476 		colontmp_ = (NI)0;
2477 		colontmp_ = (s ? s->Sup.len : 0);
2478 		i_2 = ((NI) 0);
2479 		{
2480 			while (1) {
2481 				if (!(i_2 < colontmp_)) goto LA4;
2482 				i = i_2;
2483 				toCChar__msgs_47(s->data[i], (&res));
2484 				i_2 += ((NI) 1);
2485 			} LA4: ;
2486 		}
2487 	}
2488 	res = addChar(res, 34);
2489 	T5_ = NIM_NIL;
2490 	T5_ = rope__ropes_109(res);
2491 	add__ropes_159(&result, T5_);
2492 	return result;
2493 }
N_NIMCALL(void,newFileInfo__msgs_59)2494 N_LIB_PRIVATE N_NIMCALL(void, newFileInfo__msgs_59)(NimStringDesc* fullPath, NimStringDesc* projPath, tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw* Result) {
2495 	unsureAsgnRef((void**)&(*Result).fullPath, NIM_NIL);
2496 	unsureAsgnRef((void**)&(*Result).projPath, NIM_NIL);
2497 	unsureAsgnRef((void**)&(*Result).shortName, NIM_NIL);
2498 	unsureAsgnRef((void**)&(*Result).quotedName, NIM_NIL);
2499 	unsureAsgnRef((void**)&(*Result).quotedFullName, NIM_NIL);
2500 	unsureAsgnRef((void**)&(*Result).lines, NIM_NIL);
2501 	unsureAsgnRef((void**)&(*Result).dirtyFile, NIM_NIL);
2502 	unsureAsgnRef((void**)&(*Result).hash, NIM_NIL);
2503 	(*Result).dirty = 0;
2504 	unsureAsgnRef((void**) (&(*Result).fullPath), copyString(fullPath));
2505 	unsureAsgnRef((void**) (&(*Result).projPath), copyString(projPath));
2506 	unsureAsgnRef((void**) (&(*Result).shortName), nosextractFilename(fullPath));
2507 	unsureAsgnRef((void**) (&(*Result).quotedName), makeCString__msgs_50((*Result).shortName));
2508 	unsureAsgnRef((void**) (&(*Result).quotedFullName), makeCString__msgs_50(fullPath));
2509 	unsureAsgnRef((void**) (&(*Result).lines), NIM_NIL);
2510 }
N_NIMCALL(NI32,fileInfoIdx__msgs_127)2511 N_LIB_PRIVATE N_NIMCALL(NI32, fileInfoIdx__msgs_127)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename, NIM_BOOL* isKnownFile) {
2512 	NI32 result;
2513 	NimStringDesc* volatile canon;
2514 	NIM_BOOL pseudoPath;
2515 	TSafePoint TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_39;
2516 	NimStringDesc* canon2;
2517 	result = (NI32)0;
2518 	canon = NIM_NIL;
2519 	pseudoPath = NIM_FALSE;
2520 	pushSafePoint(&TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_39);
2521 	TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_39.status = _setjmp(TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_39.context);
2522 	if (TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_39.status == 0) {
2523 	canon = canonicalizePath__options_4084(conf, filename);
2524 	shallow__system_7433((&canon));
2525 	popSafePoint();
2526 	}
2527 	else {
2528 		popSafePoint();
2529 		if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIoserror__BeJgrOdDsczOwEWOZbRfKA_))) {
2530 			TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_39.status = 0;
2531 			canon = copyString(filename);
2532 			pseudoPath = NIM_TRUE;
2533 			popCurrentException();
2534 		}
2535 	}
2536 	if (TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_39.status != 0) reraiseException();
2537 	canon2 = NIM_NIL;
2538 	forceCopy__strutils50_10((&canon2), canon);
2539 	canonicalCase__msgs_67((&canon2));
2540 	{
2541 		NIM_BOOL T5_;
2542 		NI32* T8_;
2543 		T5_ = (NIM_BOOL)0;
2544 		T5_ = hasKey__msgs_114((*conf).m.filenameToIndexTbl, canon2);
2545 		if (!T5_) goto LA6_;
2546 		(*isKnownFile) = NIM_TRUE;
2547 		T8_ = (NI32*)0;
2548 		T8_ = X5BX5D___msgs_233((&(*conf).m.filenameToIndexTbl), canon2);
2549 		result = (*T8_);
2550 	}
2551 	goto LA3_;
2552 	LA6_: ;
2553 	{
2554 		NI T10_;
2555 		NimStringDesc* T11_;
2556 		tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw T17_;
2557 		NI T18_;
2558 		(*isKnownFile) = NIM_FALSE;
2559 		T10_ = ((*conf).m.fileInfos ? (*conf).m.fileInfos->Sup.len : 0);
2560 		result = ((NI32) (T10_));
2561 		T11_ = NIM_NIL;
2562 		{
2563 			if (!pseudoPath) goto LA14_;
2564 			T11_ = copyString(filename);
2565 		}
2566 		goto LA12_;
2567 		LA14_: ;
2568 		{
2569 			T11_ = relativeTo__pathutils_132(canon, (*conf).projectPath, 47);
2570 		}
2571 		LA12_: ;
2572 		nimZeroMem((void*)(&T17_), sizeof(tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw));
2573 		newFileInfo__msgs_59(canon, T11_, (&T17_));
2574 		asgnRef((void**) (&(*conf).m.fileInfos), (tySequence__Zi9cGbCWofbtABoHJ5RbLNQ*) incrSeqV3((TGenericSeq*)((*conf).m.fileInfos), (&NTIseqLtfileinfoT__Zi9cGbCWofbtABoHJ5RbLNQ_)));
2575 		T18_ = (*conf).m.fileInfos->Sup.len++;
2576 		genericAssign((void*)(&(*conf).m.fileInfos->data[T18_]), (void*)(&T17_), (&NTItfileinfo__GE3hAakXKOEpch4ap3zXAw_));
2577 		X5BX5Deq___lineinfos_387((&(*conf).m.filenameToIndexTbl), canon2, result);
2578 	}
2579 	LA3_: ;
2580 	return result;
2581 }
N_NIMCALL(NI32,fileInfoIdx__msgs_376)2582 N_LIB_PRIVATE N_NIMCALL(NI32, fileInfoIdx__msgs_376)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename) {
2583 	NI32 result;
2584 	NIM_BOOL dummy;
2585 	result = (NI32)0;
2586 	dummy = (NIM_BOOL)0;
2587 	result = fileInfoIdx__msgs_127(conf, filename, (&dummy));
2588 	return result;
2589 }
N_NIMCALL(void,setDirtyFile__msgs_546)2590 N_LIB_PRIVATE N_NIMCALL(void, setDirtyFile__msgs_546)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx, NimStringDesc* filename) {
2591 	NimStringDesc* T1_;
2592 	T1_ = NIM_NIL;
2593 	T1_ = (*conf).m.fileInfos->data[fileIdx].dirtyFile; (*conf).m.fileInfos->data[fileIdx].dirtyFile = copyStringRC1(filename);
2594 	if (T1_) nimGCunrefNoCycle(T1_);
2595 	asgnRef((void**) (&(*conf).m.fileInfos->data[fileIdx].lines), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) setLengthSeqV2(&((*conf).m.fileInfos->data[fileIdx].lines)->Sup, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), ((NI) 0)));
2596 }
N_NIMCALL(void,internalErrorImpl__msgs_1431)2597 N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2) {
2598 {	{
2599 		NIM_BOOL T3_;
2600 		T3_ = (NIM_BOOL)0;
2601 		T3_ = ((*conf).cmd == ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 11));
2602 		if (!(T3_)) goto LA4_;
2603 		T3_ = ((*conf).structuredErrorHook.ClP_0 == 0);
2604 		LA4_: ;
2605 		if (!T3_) goto LA5_;
2606 		goto BeforeRet_;
2607 	}
2608 	LA5_: ;
2609 	writeContext__msgs_1001(conf, info);
2610 	liMessage__msgs_1118(conf, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 2), errMsg, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), info2, NIM_FALSE);
2611 	}BeforeRet_: ;
2612 }
N_NIMCALL(NimStringDesc *,dollar___msgs_624)2613 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___msgs_624)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
2614 	NimStringDesc* result;
2615 	result = NIM_NIL;
2616 	result = toFileLineCol__msgs_619(conf, info);
2617 	return result;
2618 }
N_NIMCALL(NimStringDesc *,getHash__msgs_564)2619 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getHash__msgs_564)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx) {
2620 	NimStringDesc* result;
2621 	result = NIM_NIL;
2622 	result = (*conf).m.fileInfos->data[fileIdx].hash;
2623 	return result;
2624 }
N_NIMCALL(void,setHash__msgs_557)2625 N_LIB_PRIVATE N_NIMCALL(void, setHash__msgs_557)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx, NimStringDesc* hash) {
2626 	asgnRef((void**) (&(*conf).m.fileInfos->data[fileIdx].hash), hash);
2627 }
N_NIMCALL(NimStringDesc *,uniqueModuleName__msgs_1512)2628 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, uniqueModuleName__msgs_1512)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fid) {
2629 	NimStringDesc* result;
2630 	NimStringDesc* path;
2631 	NimStringDesc* rel;
2632 	NI trunc_1;
2633 	result = NIM_NIL;
2634 	path = toFullPath__msgs_538(conf, fid);
2635 	{
2636 		NIM_BOOL T3_;
2637 		T3_ = (NIM_BOOL)0;
2638 		T3_ = nsuStartsWith(path, (*conf).libpath);
2639 		if (!T3_) goto LA4_;
2640 		rel = relativeTo__pathutils_132(path, (*conf).libpath, 47);
2641 	}
2642 	goto LA1_;
2643 	LA4_: ;
2644 	{
2645 		rel = relativeTo__pathutils_132(path, (*conf).projectPath, 47);
2646 	}
2647 	LA1_: ;
2648 	{
2649 		NIM_BOOL T9_;
2650 		T9_ = (NIM_BOOL)0;
2651 		T9_ = nsuEndsWith(rel, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_42));
2652 		if (!T9_) goto LA10_;
2653 		trunc_1 = (NI)((rel ? rel->Sup.len : 0) - ((NI) 4));
2654 	}
2655 	goto LA7_;
2656 	LA10_: ;
2657 	{
2658 		trunc_1 = (rel ? rel->Sup.len : 0);
2659 	}
2660 	LA7_: ;
2661 	result = rawNewString(((NI) (trunc_1)));
2662 	{
2663 		NI i;
2664 		NI i_2;
2665 		i = (NI)0;
2666 		i_2 = ((NI) 0);
2667 		{
2668 			while (1) {
2669 				NIM_CHAR c;
2670 				if (!(i_2 < trunc_1)) goto LA15;
2671 				i = i_2;
2672 				c = rel->data[i];
2673 				switch (((NU8)(c))) {
2674 				case 97 ... 122:
2675 				{
2676 					result = addChar(result, c);
2677 				}
2678 				break;
2679 				case 47:
2680 				{
2681 					result = addChar(result, 90);
2682 				}
2683 				break;
2684 				case 46:
2685 				{
2686 					result = addChar(result, 79);
2687 				}
2688 				break;
2689 				default:
2690 				{
2691 					addInt__stdZprivateZdigitsutils_189((&result), ((NU8)(c)));
2692 				}
2693 				break;
2694 				}
2695 				i_2 += ((NI) 1);
2696 			} LA15: ;
2697 		}
2698 	}
2699 	return result;
2700 }
N_NIMCALL(void,pushInfoContext__msgs_490)2701 N_LIB_PRIVATE N_NIMCALL(void, pushInfoContext__msgs_490)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* detail) {
2702 	tyTuple__z822nu9bFF1AlQnLrHjdwpA T1_;
2703 	NI T2_;
2704 	NimStringDesc* T3_;
2705 	nimZeroMem((void*)(&T1_), sizeof(tyTuple__z822nu9bFF1AlQnLrHjdwpA));
2706 	T1_.Field0 = info;
2707 	T1_.Field1 = copyString(detail);
2708 	asgnRef((void**) (&(*conf).m.msgContext), (tySequence__tNFrR3kRuS1FSwuiLGoSSA*) incrSeqV3((TGenericSeq*)((*conf).m.msgContext), (&NTIseqLtupleLinfo58tlineinfo_detail58stringTT__tNFrR3kRuS1FSwuiLGoSSA_)));
2709 	T2_ = (*conf).m.msgContext->Sup.len++;
2710 	(*conf).m.msgContext->data[T2_].Field0 = T1_.Field0;
2711 	T3_ = NIM_NIL;
2712 	T3_ = (*conf).m.msgContext->data[T2_].Field1; (*conf).m.msgContext->data[T2_].Field1 = copyStringRC1(T1_.Field1);
2713 	if (T3_) nimGCunrefNoCycle(T3_);
2714 }
N_NIMCALL(void,popInfoContext__msgs_507)2715 N_LIB_PRIVATE N_NIMCALL(void, popInfoContext__msgs_507)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2716 	NI T1_;
2717 	T1_ = ((*conf).m.msgContext ? (*conf).m.msgContext->Sup.len : 0);
2718 	asgnRef((void**) (&(*conf).m.msgContext), (tySequence__tNFrR3kRuS1FSwuiLGoSSA*) setLengthSeqV2(&((*conf).m.msgContext)->Sup, (&NTIseqLtupleLinfo58tlineinfo_detail58stringTT__tNFrR3kRuS1FSwuiLGoSSA_), ((NI) ((NI)(T1_ - ((NI) 1))))));
2719 }
N_NIMCALL(NIM_BOOL,exactEquals__msgs_997)2720 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, exactEquals__msgs_997)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q a, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q b) {
2721 	NIM_BOOL result;
2722 	NIM_BOOL T1_;
2723 	NIM_BOOL T2_;
2724 	result = (NIM_BOOL)0;
2725 	T1_ = (NIM_BOOL)0;
2726 	T2_ = (NIM_BOOL)0;
2727 	T2_ = (a.fileIndex == b.fileIndex);
2728 	if (!(T2_)) goto LA3_;
2729 	T2_ = (a.line == b.line);
2730 	LA3_: ;
2731 	T1_ = T2_;
2732 	if (!(T1_)) goto LA4_;
2733 	T1_ = (a.col == b.col);
2734 	LA4_: ;
2735 	result = T1_;
2736 	return result;
2737 }
N_NIMCALL(void,suggestWriteln__msgs_421)2738 N_LIB_PRIVATE N_NIMCALL(void, suggestWriteln__msgs_421)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* s) {
2739 	{
2740 		if (!(((*conf).m.errorOutputs &((NU8)1<<((NU)(((tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA) 0))&7U)))!=0)) goto LA3_;
2741 		{
2742 			tyArray__nHXaesL0DJZHyVS07ARPRA T9_;
2743 			if (!((*conf).writelnHook.ClP_0 == 0)) goto LA7_;
2744 			nimZeroMem((void*)T9_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2745 			T9_[0] = copyString(s);
2746 			writeLine__msgs_432(__stdoutp, T9_, 1);
2747 			flushFile__systemZio_226(__stdoutp);
2748 		}
2749 		goto LA5_;
2750 		LA7_: ;
2751 		{
2752 			(*conf).writelnHook.ClE_0? (*conf).writelnHook.ClP_0(s, (*conf).writelnHook.ClE_0):((TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_43)((*conf).writelnHook.ClP_0))(s);
2753 		}
2754 		LA5_: ;
2755 	}
2756 	LA3_: ;
2757 }
N_NIMCALL(void,suggestQuit__msgs_446)2758 N_LIB_PRIVATE N_NIMCALL(void, suggestQuit__msgs_446)(void) {
2759 	tyObject_ESuggestDone__cDtWY9cE7zf8BAC5QcEZZkQ* T1_;
2760 	NimStringDesc* T2_;
2761 	T1_ = NIM_NIL;
2762 	T1_ = (tyObject_ESuggestDone__cDtWY9cE7zf8BAC5QcEZZkQ*) newObj((&NTIrefesuggestdone__q2mvqo4oBiq6VrjsaIw7rg_), sizeof(tyObject_ESuggestDone__cDtWY9cE7zf8BAC5QcEZZkQ));
2763 	(*T1_).Sup.Sup.Sup.Sup.m_type = (&NTIesuggestdone__cDtWY9cE7zf8BAC5QcEZZkQ_);
2764 	(*T1_).Sup.Sup.Sup.name = "ESuggestDone";
2765 	T2_ = NIM_NIL;
2766 	T2_ = (*T1_).Sup.Sup.Sup.message; (*T1_).Sup.Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_44));
2767 	if (T2_) nimGCunrefNoCycle(T2_);
2768 	asgnRef((void**) (&(*T1_).Sup.Sup.Sup.parent), ((Exception*) NIM_NIL));
2769 	raiseExceptionEx((Exception*)T1_, "ESuggestDone", "suggestQuit", "msgs.nim", 160);
2770 }
N_NIMCALL(NimStringDesc *,formatMsg__msgs_1111)2771 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, formatMsg__msgs_1111)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg) {
2772 	NimStringDesc* result;
2773 	NimStringDesc* title;
2774 	NimStringDesc* T4_;
2775 	NimStringDesc* T5_;
2776 	NimStringDesc* T6_;
2777 	result = NIM_NIL;
2778 	switch (msg) {
2779 	case ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 16) ... ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 67):
2780 	{
2781 		title = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_16));
2782 	}
2783 	break;
2784 	case ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 68) ... ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 102):
2785 	{
2786 		title = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_17));
2787 	}
2788 	break;
2789 	default:
2790 	{
2791 		title = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_15));
2792 	}
2793 	break;
2794 	}
2795 	T4_ = NIM_NIL;
2796 	T5_ = NIM_NIL;
2797 	T5_ = toFileLineCol__msgs_619(conf, info);
2798 	T6_ = NIM_NIL;
2799 	T6_ = getMessageStr__msgs_775(msg, arg);
2800 	T4_ = rawNewString((T5_ ? T5_->Sup.len : 0) + (title ? title->Sup.len : 0) + (T6_ ? T6_->Sup.len : 0) + 1);
2801 appendString(T4_, T5_);
2802 appendString(T4_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
2803 appendString(T4_, title);
2804 appendString(T4_, T6_);
2805 	result = T4_;
2806 	return result;
2807 }
N_INLINE(NIM_BOOL,lteqpercent___system_985)2808 static N_INLINE(NIM_BOOL, lteqpercent___system_985)(NI x, NI y) {
2809 	NIM_BOOL result;
2810 	result = (NIM_BOOL)0;
2811 	result = ((NU32)(((NU) (x))) <= (NU32)(((NU) (y))));
2812 	return result;
2813 }
N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q,getInfoContext__msgs_516)2814 N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q, getInfoContext__msgs_516)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI index) {
2815 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q result;
2816 	NI i;
2817 	nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
2818 	{
2819 		NI T5_;
2820 		if (!(index < ((NI) 0))) goto LA3_;
2821 		T5_ = ((*conf).m.msgContext ? (*conf).m.msgContext->Sup.len : 0);
2822 		i = (NI)(T5_ + index);
2823 	}
2824 	goto LA1_;
2825 	LA3_: ;
2826 	{
2827 		i = index;
2828 	}
2829 	LA1_: ;
2830 	{
2831 		NI T9_;
2832 		NIM_BOOL T10_;
2833 		T9_ = ((*conf).m.msgContext ? (*conf).m.msgContext->Sup.len : 0);
2834 		T10_ = (NIM_BOOL)0;
2835 		T10_ = lteqpercent___system_985(T9_, i);
2836 		if (!T10_) goto LA11_;
2837 		result = unknownLineInfo__lineinfos_280;
2838 	}
2839 	goto LA7_;
2840 	LA11_: ;
2841 	{
2842 		result = (*conf).m.msgContext->data[i].Field0;
2843 	}
2844 	LA7_: ;
2845 	return result;
2846 }
N_NIMCALL(NI,getInfoContextLen__msgs_476)2847 N_LIB_PRIVATE N_NIMCALL(NI, getInfoContextLen__msgs_476)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2848 	NI result;
2849 	NI T1_;
2850 {	result = (NI)0;
2851 	T1_ = ((*conf).m.msgContext ? (*conf).m.msgContext->Sup.len : 0);
2852 	result = T1_;
2853 	goto BeforeRet_;
2854 	}BeforeRet_: ;
2855 	return result;
2856 }
N_NIMCALL(void,setInfoContextLen__msgs_483)2857 N_LIB_PRIVATE N_NIMCALL(void, setInfoContextLen__msgs_483)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI L) {
2858 	asgnRef((void**) (&(*conf).m.msgContext), (tySequence__tNFrR3kRuS1FSwuiLGoSSA*) setLengthSeqV2(&((*conf).m.msgContext)->Sup, (&NTIseqLtupleLinfo58tlineinfo_detail58stringTT__tNFrR3kRuS1FSwuiLGoSSA_), ((NI) (L))));
2859 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,quotedFilename__msgs_1464)2860 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, quotedFilename__msgs_1464)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q i) {
2861 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
2862 	result = NIM_NIL;
2863 	{
2864 		if (!(i.fileIndex < ((NI32) 0))) goto LA3_;
2865 		result = makeCString__msgs_50(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_7));
2866 	}
2867 	goto LA1_;
2868 	LA3_: ;
2869 	{
2870 		if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 31))&63U)))!=0)) goto LA6_;
2871 		result = (*conf).m.fileInfos->data[i.fileIndex].quotedFullName;
2872 	}
2873 	goto LA1_;
2874 	LA6_: ;
2875 	{
2876 		result = (*conf).m.fileInfos->data[i.fileIndex].quotedName;
2877 	}
2878 	LA1_: ;
2879 	return result;
2880 }
N_INLINE(NIM_BOOL,isEmpty__options_4049)2881 static N_INLINE(NIM_BOOL, isEmpty__options_4049)(NimStringDesc* x) {
2882 	NIM_BOOL result;
2883 	result = (NIM_BOOL)0;
2884 	result = ((x ? x->Sup.len : 0) == ((NI) 0));
2885 	return result;
2886 }
N_NIMCALL(void,genSuccessX__msgs_1528)2887 N_LIB_PRIVATE N_NIMCALL(void, genSuccessX__msgs_1528)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2888 	NimStringDesc* mem;
2889 	NimStringDesc* T1_;
2890 	NI T2_;
2891 	NimStringDesc* T3_;
2892 	NimStringDesc* loc;
2893 	NimStringDesc* build;
2894 	NimStringDesc* flags;
2895 	NimStringDesc* sec;
2896 	NF T50_;
2897 	NimStringDesc* project;
2898 	NimStringDesc* output;
2899 	NimStringDesc* argX60gensym143_;
2900 	NimStringDesc* T73_;
2901 	tyArray__ucDUDWdKfioXQrN9bCbG29bg T74_;
2902 	T1_ = NIM_NIL;
2903 	T2_ = (NI)0;
2904 	T2_ = getMaxMem__system_5242();
2905 	T3_ = NIM_NIL;
2906 	T3_ = formatSize__pureZstrutils_1971(((NI64) (T2_)), 46, ((tyEnum_BinaryPrefixMode__nDtrM19b3byM8T9ab2m7BwvA) 0), NIM_FALSE);
2907 	T1_ = rawNewString((T3_ ? T3_->Sup.len : 0) + 8);
2908 appendString(T1_, T3_);
2909 appendString(T1_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_45));
2910 	mem = T1_;
2911 	loc = dollar___systemZdollars_3((*conf).linesCompiled);
2912 	build = ((NimStringDesc*) NIM_NIL);
2913 	flags = ((NimStringDesc*) NIM_NIL);
2914 	{
2915 		if (!((124 &((NU32)1<<((NU)((*conf).cmd)&31U)))!=0)) goto LA6_;
2916 		{
2917 			NimStringDesc* T12_;
2918 			if (!!(((*conf).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 3)))) goto LA10_;
2919 			T12_ = NIM_NIL;
2920 			T12_ = nsuFormatSingleElem(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_46), reprEnum((NI)(*conf).selectedGC, (&NTItgcmode__tkz389aDYNd8ykeZszCuBSw_)));
2921 			build = resizeString(build, (T12_ ? T12_->Sup.len : 0) + 0);
2922 appendString(build, T12_);
2923 			{
2924 				if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 23))&63U)))!=0)) goto LA15_;
2925 				build = resizeString(build, 13);
2926 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_47));
2927 			}
2928 			LA15_: ;
2929 			build = resizeString(build, 5);
2930 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_48));
2931 			{
2932 				if (!(((*conf).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 15))&31U)))!=0)) goto LA19_;
2933 				build = resizeString(build, 5);
2934 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_49));
2935 			}
2936 			goto LA17_;
2937 			LA19_: ;
2938 			{
2939 				if (!(((*conf).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 16))&31U)))!=0)) goto LA22_;
2940 				build = resizeString(build, 4);
2941 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_50));
2942 			}
2943 			goto LA17_;
2944 			LA22_: ;
2945 			{
2946 				build = resizeString(build, 54);
2947 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_51));
2948 			}
2949 			LA17_: ;
2950 			{
2951 				NIM_BOOL T27_;
2952 				T27_ = (NIM_BOOL)0;
2953 				T27_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_52));
2954 				if (!T27_) goto LA28_;
2955 				flags = resizeString(flags, 10);
2956 appendString(flags, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_53));
2957 			}
2958 			goto LA25_;
2959 			LA28_: ;
2960 			{
2961 				NIM_BOOL T31_;
2962 				T31_ = (NIM_BOOL)0;
2963 				T31_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_54));
2964 				if (!T31_) goto LA32_;
2965 				flags = resizeString(flags, 11);
2966 appendString(flags, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_55));
2967 			}
2968 			goto LA25_;
2969 			LA32_: ;
2970 			LA25_: ;
2971 		}
2972 		goto LA8_;
2973 		LA10_: ;
2974 		{
2975 			build = resizeString(build, 5);
2976 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_48));
2977 			{
2978 				NIM_BOOL T37_;
2979 				T37_ = (NIM_BOOL)0;
2980 				T37_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_52));
2981 				if (!T37_) goto LA38_;
2982 				build = resizeString(build, 5);
2983 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_49));
2984 				flags = resizeString(flags, 10);
2985 appendString(flags, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_53));
2986 			}
2987 			goto LA35_;
2988 			LA38_: ;
2989 			{
2990 				NIM_BOOL T41_;
2991 				T41_ = (NIM_BOOL)0;
2992 				T41_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_54));
2993 				if (!T41_) goto LA42_;
2994 				build = resizeString(build, 5);
2995 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_49));
2996 				flags = resizeString(flags, 11);
2997 appendString(flags, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_55));
2998 			}
2999 			goto LA35_;
3000 			LA42_: ;
3001 			{
3002 				build = resizeString(build, 54);
3003 appendString(build, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_51));
3004 			}
3005 			LA35_: ;
3006 		}
3007 		LA8_: ;
3008 		{
3009 			NimStringDesc* T49_;
3010 			if (!(((NI) 0) < (flags ? flags->Sup.len : 0))) goto LA47_;
3011 			T49_ = NIM_NIL;
3012 			T49_ = rawNewString((flags ? flags->Sup.len : 0) + 10);
3013 appendString(T49_, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_56));
3014 appendString(T49_, flags);
3015 			build = resizeString(build, (T49_ ? T49_->Sup.len : 0) + 0);
3016 appendString(build, T49_);
3017 		}
3018 		LA47_: ;
3019 	}
3020 	LA6_: ;
3021 	T50_ = (NF)0;
3022 	T50_ = epochTime__pureZtimes_3599();
3023 	sec = nsuformatFloat(((NF)(T50_) - (NF)((*conf).lastCmdTime)), ((tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ) 1), ((NI) 3), 46);
3024 	{
3025 		if (!((*conf).filenameOption == ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 0))) goto LA53_;
3026 		project = dollar___options_4373((*conf).projectFull);
3027 	}
3028 	goto LA51_;
3029 	LA53_: ;
3030 	{
3031 		project = (*conf).projectName;
3032 	}
3033 	LA51_: ;
3034 	output = NIM_NIL;
3035 	{
3036 		NIM_BOOL T58_;
3037 		T58_ = (NIM_BOOL)0;
3038 		T58_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 4))&63U)))!=0);
3039 		if (!(T58_)) goto LA59_;
3040 		T58_ = !(((*conf).cmd == ((tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA) 26)));
3041 		LA59_: ;
3042 		if (!T58_) goto LA60_;
3043 		output = dollar___options_4373((*conf).jsonBuildFile);
3044 	}
3045 	goto LA56_;
3046 	LA60_: ;
3047 	{
3048 		NIM_BOOL T63_;
3049 		T63_ = (NIM_BOOL)0;
3050 		T63_ = isEmpty__options_4049((*conf).outFile);
3051 		if (!(T63_)) goto LA64_;
3052 		T63_ = !(((71098492 &((NU32)1<<((NU)((*conf).cmd)&31U)))!=0));
3053 		LA64_: ;
3054 		if (!T63_) goto LA65_;
3055 		output = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_57));
3056 	}
3057 	goto LA56_;
3058 	LA65_: ;
3059 	{
3060 		NimStringDesc* T68_;
3061 		T68_ = NIM_NIL;
3062 		T68_ = absOutFile__options_4038(conf);
3063 		output = dollar___options_4373(T68_);
3064 	}
3065 	LA56_: ;
3066 	{
3067 		if (!!(((*conf).filenameOption == ((tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ) 0)))) goto LA71_;
3068 		output = nosextractFilename(output);
3069 	}
3070 	LA71_: ;
3071 	T73_ = NIM_NIL;
3072 	T73_ = msgKindToString__msgs_772(((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 69));
3073 	nimZeroMem((void*)T74_, sizeof(tyArray__ucDUDWdKfioXQrN9bCbG29bg));
3074 	T74_[0] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_58));
3075 	T74_[1] = copyString(build);
3076 	T74_[2] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_59));
3077 	T74_[3] = copyString(loc);
3078 	T74_[4] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_60));
3079 	T74_[5] = copyString(sec);
3080 	T74_[6] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_61));
3081 	T74_[7] = copyString(mem);
3082 	T74_[8] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_62));
3083 	T74_[9] = copyString(project);
3084 	T74_[10] = copyString(((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_63));
3085 	T74_[11] = copyString(output);
3086 	argX60gensym143_ = nsuFormatOpenArray(T73_, T74_, 12);
3087 	liMessage__msgs_1118(conf, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 69), argX60gensym143_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_64, NIM_TRUE);
3088 }
3089