1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
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_227)(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_432)(NimStringDesc* filename, tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg mode, NI bufSize);
552 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, readLine__systemZio_240)(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_5309)(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_5271)(void* usr);
559 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
560 static N_INLINE(void, decRef__system_5316)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
561 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
562 static N_INLINE(void, rtlAddZCT__system_5314)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
563 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5265)(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_218)(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_391)(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_7174)(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_7434)(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_291)(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_5243)(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_5218;
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 = stdout;
984 }
985 goto LA1_;
986 LA3_: ;
987 {
988 stdOrr = stderr;
989 }
990 LA1_: ;
991 {
992 if (!(stdOrr == stdout)) 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(stdout, T37_, 3);
1106 flushFile__systemZio_227(stdout);
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(stderr, 1);
1119 T45_ = NIM_NIL;
1120 T45_ = toFileLineCol__msgs_619(conf, context.Field0);
1121 write__systemZio_205(stderr, T45_);
1122 write__systemZio_205(stderr, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_12));
1123 resetAttributes__pureZterminal_280(stderr);
1124 write__systemZio_205(stderr, message);
1125 resetAttributes__pureZterminal_280(stderr);
1126 write__systemZio_205(stderr, ((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(stderr, 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 = stdout;
1209 }
1210 goto LA5_;
1211 LA7_: ;
1212 {
1213 stdOrr = stderr;
1214 }
1215 LA5_: ;
1216 write__systemZio_205(stdOrr, s);
1217 flushFile__systemZio_227(stdOrr);
1218 T10_ = (tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug)0;
1219 {
1220 if (!(stdOrr == stdout)) 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)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
1280 return result;
1281 }
N_INLINE(void,incRef__system_5309)1282 static N_INLINE(void, incRef__system_5309)(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)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
1289 return result;
1290 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5271)1291 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5271)(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) 16));
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 = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
1304 return result;
1305 }
N_INLINE(void,rtlAddZCT__system_5314)1306 static N_INLINE(void, rtlAddZCT__system_5314)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1307 addZCT__system_5265((&gch__system_5218.zct), c);
1308 }
N_INLINE(void,decRef__system_5316)1309 static N_INLINE(void, decRef__system_5316)(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_5314(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_5271(src);
1326 incRef__system_5309(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_5271((*dest));
1334 decRef__system_5316(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_5271(p);
1343 decRef__system_5316(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_432(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_240(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_218(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_391(&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_218(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_7174(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(stdout, T45_, 2);
1644 flushFile__systemZio_227(stdout);
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(stderr, ((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(stderr, T55_);
1664 write__systemZio_205(stderr, (*conf).unitSep);
1665 resetAttributes__pureZterminal_280(stderr);
1666 write__systemZio_205(stderr, ((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(stderr, 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(stdout, T89_, 6);
1968 flushFile__systemZio_227(stdout);
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(stderr, 1);
1981 write__systemZio_205(stderr, loc);
1982 resetAttributes__pureZterminal_280(stderr);
1983 setForegroundColor__pureZterminal_387(stderr, color, NIM_FALSE);
1984 write__systemZio_205(stderr, title);
1985 resetAttributes__pureZterminal_280(stderr);
1986 write__systemZio_205(stderr, s);
1987 setForegroundColor__pureZterminal_387(stderr, ((tyEnum_ForegroundColor__ez9ah4IgQc0AbdW68acioDg) 36), NIM_FALSE);
1988 write__systemZio_205(stderr, kindmsg);
1989 resetAttributes__pureZterminal_280(stderr);
1990 T97_ = NIM_NIL;
1991 T97_ = getSurroundingSrc__msgs_1106(conf, info);
1992 write__systemZio_205(stderr, T97_);
1993 write__systemZio_205(stderr, (*conf).unitSep);
1994 resetAttributes__pureZterminal_280(stderr);
1995 write__systemZio_205(stderr, ((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(stderr, 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(stdout, T117_, 4);
2044 flushFile__systemZio_227(stdout);
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(stderr, 1);
2058 T125_ = NIM_NIL;
2059 T125_ = toFileLineCol__msgs_615(info2);
2060 write__systemZio_205(stderr, T125_);
2061 resetAttributes__pureZterminal_280(stderr);
2062 write__systemZio_205(stderr, ((NimStringDesc*) &TM__9bxt9c9cHMsIpkKKq9ca25JhvQ_25));
2063 setForegroundColor__pureZterminal_387(stderr, ((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(stderr, T126_);
2067 resetAttributes__pureZterminal_280(stderr);
2068 write__systemZio_205(stderr, (*conf).unitSep);
2069 resetAttributes__pureZterminal_280(stderr);
2070 write__systemZio_205(stderr, ((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(stderr, 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(stdout, s);
2145 nimZeroMem((void*)T22_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2146 T22_[0] = copyString(sep);
2147 writeLine__msgs_432(stdout, T22_, 1);
2148 flushFile__systemZio_227(stdout);
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(stderr, s);
2160 nimZeroMem((void*)T28_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2161 T28_[0] = copyString(sep);
2162 writeLine__msgs_432(stderr, 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_7434)2263 static N_INLINE(void, shallow__system_7434)(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) IL64(4611686018427387904))) == ((NI) 0))) goto LA8_;
2276 (*s_2).reserved = (NI)((*s_2).reserved | ((NI) (IL64(-9223372036854775807) - IL64(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_291(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_7434((&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(stdout, T9_, 1);
2747 flushFile__systemZio_227(stdout);
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 = ((NU64)(((NU) (x))) <= (NU64)(((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_5243();
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