1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3 
4 #include "nimbase.h"
5 #include <string.h>
6 #include <setjmp.h>
7 #include <stdio.h>
8 #undef LANGUAGE_C
9 #undef MIPSEB
10 #undef MIPSEL
11 #undef PPC
12 #undef R3000
13 #undef R4000
14 #undef i386
15 #undef linux
16 #undef mips
17 #undef near
18 #undef far
19 #undef powerpc
20 #undef unix
21 #define nimfr_(x, y)
22 #define nimln_(x, y)
23 typedef struct TNimType TNimType;
24 typedef struct TNimNode TNimNode;
25 typedef struct tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw;
26 typedef struct tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag;
27 typedef struct RootObj RootObj;
28 typedef struct NimStringDesc NimStringDesc;
29 typedef struct TGenericSeq TGenericSeq;
30 typedef struct tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g;
31 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
32 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
33 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
34 typedef struct tyTuple__JfHvHzMrhKkWAUvQKe0i1A tyTuple__JfHvHzMrhKkWAUvQKe0i1A;
35 typedef struct tyObject_Env_lexerdotnim_lexer___diB2NTuAIWY0FO9c5IUJRGg tyObject_Env_lexerdotnim_lexer___diB2NTuAIWY0FO9c5IUJRGg;
36 typedef struct tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA;
37 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
38 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
39 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
40 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
41 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
42 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
43 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
44 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
45 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
46 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
47 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
48 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
49 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
50 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
51 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
52 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
53 typedef struct tyTuple__eYjXpYmwoditlWZaGvgooQ tyTuple__eYjXpYmwoditlWZaGvgooQ;
54 typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
55 typedef struct Exception Exception;
56 typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
57 typedef struct TSafePoint TSafePoint;
58 typedef struct tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ;
59 typedef struct tyObject_ArithmeticDefect__cT9c9bHlHSpA1QTnKbHjnIkA tyObject_ArithmeticDefect__cT9c9bHlHSpA1QTnKbHjnIkA;
60 typedef struct tyObject_Defect__LbeSGvgPzGzXnW9caIkJqMA tyObject_Defect__LbeSGvgPzGzXnW9caIkJqMA;
61 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
62 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
63 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
64 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
65 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
66 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
67 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
68 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
69 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
70 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
71 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
72 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
73 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
74 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
75 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
76 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
77 typedef struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw;
78 typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
79 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
80 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
81 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
82 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
83 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
84 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
85 typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
86 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
87 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
88 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
89 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
90 struct TNimType {
91 NI size;
92 NI align;
93 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
94 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
95 TNimType* base;
96 TNimNode* node;
97 void* finalizer;
98 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
99 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
100 };
101 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
102 struct TNimNode {
103 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
104 NI offset;
105 TNimType* typ;
106 NCSTRING name;
107 NI len;
108 TNimNode** sons;
109 };
110 struct RootObj {
111 TNimType* m_type;
112 };
113 struct TGenericSeq {
114 NI len;
115 NI reserved;
116 };
117 struct NimStringDesc {
118   TGenericSeq Sup;
119 NIM_CHAR data[SEQ_DECL_SIZE];
120 };
121 struct tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag {
122   RootObj Sup;
123 NI bufpos;
124 NCSTRING buf;
125 NimStringDesc* bufStorage;
126 NI bufLen;
127 tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* stream;
128 NI lineNumber;
129 NI sentinel;
130 NI lineStart;
131 NI offsetBase;
132 };
133 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
134 typedef struct {
135 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, void* ClE_0);
136 void* ClE_0;
137 } tyProc__pIuD7iLYdwrBMntVRm61ZA;
138 struct tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw {
139   tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag Sup;
140 NI32 fileIdx;
141 NI indentAhead;
142 NI currLineIndent;
143 NIM_BOOL strongSpaces;
144 NIM_BOOL allowTabs;
145 tyProc__pIuD7iLYdwrBMntVRm61ZA errorHandler;
146 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
147 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
148 };
149 struct tyTuple__JfHvHzMrhKkWAUvQKe0i1A {
150 void* Field0;
151 tyObject_Env_lexerdotnim_lexer___diB2NTuAIWY0FO9c5IUJRGg* Field1;
152 };
153 typedef NU8 tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ;
154 typedef NU8 tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog;
155 struct tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA {
156 tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ tokType;
157 NI indent;
158 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
159 NI64 iNumber;
160 NF fNumber;
161 tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog base;
162 NI8 strongSpaceA;
163 NI8 strongSpaceB;
164 NimStringDesc* literal;
165 NI line;
166 NI col;
167 };
168 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
169 NI id;
170 NimStringDesc* s;
171 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
172 NI h;
173 };
174 typedef NU8 tyEnum_TLLStreamKind__jVcKY16LbOamXE9bxXUD6pQ;
175 typedef struct {
176 N_NIMCALL_PTR(NI, ClP_0) (tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* s, void* buf, NI bufLen, void* ClE_0);
177 void* ClE_0;
178 } tyProc__9cZV5JMJLsdOPMv55VbpOVg;
179 typedef struct {
180 N_NIMCALL_PTR(void, ClP_0) (void* ClE_0);
181 void* ClE_0;
182 } tyProc__HzVCwACFYM9cx9aV62PdjtuA;
183 struct tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g {
184   RootObj Sup;
185 tyEnum_TLLStreamKind__jVcKY16LbOamXE9bxXUD6pQ kind;
186 FILE* f;
187 NimStringDesc* s;
188 NI rd;
189 NI wr;
190 NI lineOffset;
191 tyProc__9cZV5JMJLsdOPMv55VbpOVg repl;
192 tyProc__HzVCwACFYM9cx9aV62PdjtuA onPrompt;
193 };
194 typedef tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* tyArray__O7BaHX6ctEz6BpjFNHWCFQ[8192];
195 struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw {
196 tyArray__O7BaHX6ctEz6BpjFNHWCFQ buckets;
197 NI wordCounter;
198 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* idAnon;
199 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* idDelegator;
200 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* emptyIdent;
201 };
202 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
203 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
204 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
205 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
206 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
207 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
208 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
209 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
210 NI intSize;
211 NI floatSize;
212 NI ptrSize;
213 NimStringDesc* tnl;
214 };
215 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
216 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
217 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
218 NU16 line;
219 NI16 col;
220 NI32 fileIndex;
221 };
222 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
223 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
224 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
225 NI counter;
226 };
227 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
228 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
229 NIM_BOOL trackPosAttached;
230 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
231 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
232 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
233 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
234 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
235 NI32 systemFileIdx;
236 };
237 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
238 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
239 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
240 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
241 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
242 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
243 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
244 NI counter;
245 };
246 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
247 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
248 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
249 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
250 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
251 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
252 NI Field0;
253 NI Field1;
254 NI Field2;
255 };
256 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
257 typedef struct {
258 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
259 void* ClE_0;
260 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
261 typedef struct {
262 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
263 void* ClE_0;
264 } tyProc__k2HFjxisIgDALbEUFojxaQ;
265 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
266 typedef struct {
267 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
268 void* ClE_0;
269 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
270 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
271 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
272 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
273 NI linesCompiled;
274 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
275 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
276 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
277 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
278 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
279 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
280 NimStringDesc* unitSep;
281 NI evalTemplateCounter;
282 NI evalMacroCounter;
283 NI8 exitcode;
284 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
285 NimStringDesc* cmdInput;
286 NIM_BOOL projectIsCmd;
287 NIM_BOOL implicitCmd;
288 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
289 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
290 NIM_BOOL hintProcessingDots;
291 NI verbosity;
292 NI numberOfProcessors;
293 NF lastCmdTime;
294 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
295 NI spellSuggestMax;
296 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
297 NimStringDesc* headerFile;
298 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
299 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
300 NimStringDesc* arguments;
301 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
302 NIM_BOOL oldNewlines;
303 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
304 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
305 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
306 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
307 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
308 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
309 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
310 NI mainPackageId;
311 NI errorCounter;
312 NI hintCounter;
313 NI warnCounter;
314 NI errorMax;
315 NI maxLoopIterationsVM;
316 NIM_BOOL isVmTrace;
317 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
318 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
319 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
320 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
321 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
322 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
323 NimStringDesc* outFile;
324 NimStringDesc* outDir;
325 NimStringDesc* jsonBuildFile;
326 NimStringDesc* prefixDir;
327 NimStringDesc* libpath;
328 NimStringDesc* nimcacheDir;
329 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
330 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
331 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
332 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
333 NimStringDesc* projectName;
334 NimStringDesc* projectPath;
335 NimStringDesc* projectFull;
336 NIM_BOOL projectIsStdin;
337 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
338 NI32 projectMainIdx;
339 NI32 projectMainIdx2;
340 NimStringDesc* command;
341 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
342 NimStringDesc* commandLine;
343 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
344 NIM_BOOL keepComments;
345 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
346 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
347 NimStringDesc* docSeeSrcUrl;
348 NimStringDesc* docRoot;
349 NimStringDesc* docCmd;
350 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
351 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
352 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
353 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
354 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
355 NimStringDesc* linkOptionsCmd;
356 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
357 NimStringDesc* linkOptions;
358 NimStringDesc* compileOptions;
359 NimStringDesc* cCompilerPath;
360 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
361 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
362 NI suggestVersion;
363 NI suggestMaxResults;
364 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
365 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
366 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
367 NimStringDesc* cppCustomNamespace;
368 NimStringDesc* nimMainPrefix;
369 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
370 };
371 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
372 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
373 NimStringDesc* Field0;
374 NI Field1;
375 NI Field2;
376 };
377 typedef N_CLOSURE_PTR(void, TM__4JpEWnGrmRM8CRqL3P2O1Q_6) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg);
378 typedef NU8 tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
379 typedef NU8 tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA;
380 struct tyTuple__eYjXpYmwoditlWZaGvgooQ {
381 NI8 Field0;
382 tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA Field1;
383 };
384 typedef NimStringDesc* tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
385 typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
386 typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
387 typedef NU8 tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ;
388 struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
389 NI a;
390 NI b;
391 };
392 struct Exception {
393   RootObj Sup;
394 Exception* parent;
395 NCSTRING name;
396 NimStringDesc* message;
397 tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
398 Exception* up;
399 };
400 typedef long tyArray__TcvIiMAJvcwzNLsZkfnFnQ[25];
401 struct TSafePoint {
402 TSafePoint* prev;
403 NI status;
404 jmp_buf context;
405 };
406 struct tyObject_Defect__LbeSGvgPzGzXnW9caIkJqMA {
407   Exception Sup;
408 };
409 struct tyObject_ArithmeticDefect__cT9c9bHlHSpA1QTnKbHjnIkA {
410   tyObject_Defect__LbeSGvgPzGzXnW9caIkJqMA Sup;
411 };
412 struct tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ {
413   tyObject_ArithmeticDefect__cT9c9bHlHSpA1QTnKbHjnIkA Sup;
414 };
415 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
416 NI refcount;
417 TNimType* typ;
418 };
419 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
420 void* bottom;
421 };
422 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
423 NI len;
424 NI cap;
425 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
426 };
427 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
428 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
429 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
430 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
431 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
432 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
433 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
434 };
435 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
436 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
437 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
438 NI key;
439 NI upperBound;
440 NI level;
441 };
442 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
443 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
444 NI Field1;
445 };
446 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
447 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
448 NI len;
449 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
450 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
451 };
452 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
453 NI minLargeObj;
454 NI maxLargeObj;
455 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
456 NU32 flBitmap;
457 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
458 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
459 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
460 NI currMem;
461 NI maxMem;
462 NI freeMem;
463 NI occ;
464 NI lastSize;
465 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
466 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
467 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
468 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
469 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
470 NIM_BOOL locked;
471 NIM_BOOL blockChunkSizeIncrease;
472 NI nextChunkSize;
473 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
474 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
475 };
476 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
477 NI stackScans;
478 NI cycleCollections;
479 NI maxThreshold;
480 NI maxStackSize;
481 NI maxStackCells;
482 NI cycleTableSize;
483 NI64 maxPause;
484 };
485 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
486 NI counter;
487 NI max;
488 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
489 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
490 };
491 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
492 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
493 NI cycleThreshold;
494 NI zctThreshold;
495 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
496 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
497 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
498 NI recGcLock;
499 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
500 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
501 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
502 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
503 NI gcThreadId;
504 };
505 struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
506   Exception Sup;
507 };
508 struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw {
509   tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
510 };
511 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
512 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
513 NimStringDesc* Field1;
514 };
515 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
516 NI Field0;
517 NimStringDesc* Field1;
518 NI32 Field2;
519 };
520 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
521 NimStringDesc* fullPath;
522 NimStringDesc* projPath;
523 NimStringDesc* shortName;
524 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
525 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
526 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
527 NimStringDesc* dirtyFile;
528 NimStringDesc* hash;
529 NIM_BOOL dirty;
530 };
531 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
532 NI Field0;
533 NimStringDesc* Field1;
534 };
535 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
536 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
537 NimStringDesc* nimname;
538 NimStringDesc* cname;
539 NimStringDesc* obj;
540 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
541 NimStringDesc* customArgs;
542 };
543 struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
544 NCSTRING procname;
545 NI line;
546 NCSTRING filename;
547 };
548 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
549   TGenericSeq Sup;
550   tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
551 };
552 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
553   TGenericSeq Sup;
554   tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
555 };
556 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
557   TGenericSeq Sup;
558   tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
559 };
560 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
561   TGenericSeq Sup;
562   tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
563 };
564 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
565   TGenericSeq Sup;
566   NimStringDesc* data[SEQ_DECL_SIZE];
567 };
568 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
569   TGenericSeq Sup;
570   tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
571 };
572 struct tySequence__uB9b75OUPRENsBAu4AnoePA {
573   TGenericSeq Sup;
574   tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
575 };
576 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
577 N_LIB_PRIVATE N_NIMCALL(void, openLexer__lexer_270)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* lex, NI32 fileIdx, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* inputstream, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config);
578 N_LIB_PRIVATE N_NIMCALL(void, openBaseLexer__nimlexbase_25)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* inputstream, NI bufLen);
579 N_LIB_PRIVATE N_NIMCALL(NI32, fileInfoIdx__msgs_376)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename);
580 N_LIB_PRIVATE N_NIMCALL(void, fillToken__lexer_268)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* L);
581 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
582 N_LIB_PRIVATE N_NIMCALL(void, skip__lexer_1552)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
583 N_LIB_PRIVATE N_NIMCALL(void, lexMessagePos__lexer_346)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NI pos, NimStringDesc* arg);
584 N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q, newLineInfo__msgs_381)(NI32 fileInfoIdx, NI line, NI col);
585 N_LIB_PRIVATE N_NIMCALL(void, dispMessage__lexer_326)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg);
586 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);
587 N_LIB_PRIVATE N_NIMCALL(NI, handleCRLF__lexer_1080)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI pos);
588 N_LIB_PRIVATE N_NIMCALL(NI, getColNumber__nimlexbase_34)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L, NI pos);
589 N_LIB_PRIVATE N_NIMCALL(NI, handleCR__nimlexbase_37)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L, NI pos);
590 N_LIB_PRIVATE N_NIMCALL(NI, handleLF__nimlexbase_40)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L, NI pos);
591 N_LIB_PRIVATE N_NIMCALL(void, skipMultiLineComment__lexer_1409)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NI start, NIM_BOOL isDoc);
592 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
593 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
594 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
595 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
596 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
597 N_LIB_PRIVATE N_NIMCALL(void, getSymbol__lexer_1229)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
598 static N_INLINE(NI, emarkamp___pureZhashes_3)(NI h, NI val);
599 N_LIB_PRIVATE N_NIMCALL(void, lexMessage__lexer_336)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg);
600 N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q, getLineInfo__lexer_314)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L);
601 static N_INLINE(void, nimZeroMem)(void* p, NI size);
602 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
603 N_LIB_PRIVATE N_NIMCALL(tyTuple__eYjXpYmwoditlWZaGvgooQ, unicodeOprLen__lexer_1203)(NCSTRING buf, NI pos);
604 static N_INLINE(NI, emarkdollar___pureZhashes_18)(NI h);
605 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_89)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NCSTRING identifier, NI length, NI h);
606 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
607 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
608 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuNormalize)(NimStringDesc* s);
609 N_LIB_PRIVATE N_NIMCALL(void, getOperator__lexer_1324)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
610 static N_INLINE(void, endOperator__lexer_1315)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NI pos, NI hash);
611 N_LIB_PRIVATE N_NIMCALL(void, scanComment__lexer_1490)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
612 N_LIB_PRIVATE N_NIMCALL(void, getString__lexer_1097)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ mode);
613 N_LIB_PRIVATE N_NIMCALL(void, getEscapedChar__lexer_978)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
614 N_LIB_PRIVATE N_NIMCALL(void, handleHexChar__lexer_781)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI* xi, NI position);
615 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
616 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
617 static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_865)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x);
618 N_NIMCALL(NimStringDesc*, mnewString)(NI len);
619 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cstrToNimstr)(NCSTRING str);
620 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___pureZunicode_840)(NI a, NI b);
621 N_LIB_PRIVATE N_NIMCALL(void, addUnicodeCodePoint__lexer_853)(NimStringDesc** s, NI i);
622 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, matchTwoChars__lexer_352)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NIM_CHAR first, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw second);
623 N_LIB_PRIVATE N_NIMCALL(void, handleDecChars__lexer_836)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI* xi);
624 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_143)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
625 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimCharToStr)(NIM_CHAR x);
626 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
627 N_LIB_PRIVATE N_NIMCALL(void, getCharacter__lexer_1172)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
628 N_LIB_PRIVATE N_NIMCALL(void, getNumber__lexer_382)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* result);
629 N_LIB_PRIVATE N_NIMCALL(void, lexMessageLitNum__lexer_424)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NimStringDesc* msg, NI startpos, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msgKind);
630 N_LIB_PRIVATE N_NIMCALL(void, matchChars__lexer_411)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars);
631 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
632 N_LIB_PRIVATE N_NIMCALL(NI, matchUnderscoreChars__lexer_385)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars);
633 N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
634 N_NIMCALL(NimStringDesc*, rawNewString)(NI cap);
635 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuToLowerAsciiStr)(NimStringDesc* s);
636 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
637 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
638 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
639 N_LIB_PRIVATE N_NIMCALL(NI, hashString)(NimStringDesc* s);
640 static N_INLINE(void, pushSafePoint)(TSafePoint* s);
641 N_LIB_PRIVATE N_NIMCALL(NF, nsuParseFloat)(NimStringDesc* s);
642 N_LIB_PRIVATE N_NIMCALL(NI, npuParseBiggestUInt)(NimStringDesc* s, NU64* number, NI start);
643 static N_INLINE(void, popSafePoint)(void);
644 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isObj)(TNimType* obj, TNimType* subclass);
645 static N_INLINE(Exception*, nimBorrowCurrentException)(void);
646 N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
647 static N_INLINE(void, asgnRef)(void** dest, void* src);
648 static N_INLINE(void, incRef__system_5317)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
649 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
650 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5279)(void* usr);
651 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
652 static N_INLINE(void, decRef__system_5324)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
653 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
654 static N_INLINE(void, rtlAddZCT__system_5322)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
655 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5273)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
656 N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line);
657 static N_INLINE(void, popCurrentException)(void);
658 N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void);
659 N_LIB_PRIVATE N_NIMCALL(NI, npuParseBiggestInt)(NimStringDesc* s, NI64* number, NI start);
660 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_6)(NI64 x);
661 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___system_3118)(NF x);
662 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
663 static N_INLINE(NIM_BOOL, eqeq___idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b);
664 N_LIB_PRIVATE N_NIMCALL(void, closeBaseLexer__nimlexbase_29)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L);
665 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isKeyword__lexer_196)(tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ kind);
666 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___lexer_230)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
667 static N_INLINE(NIM_CHAR*, X5BX5D___system_7372)(NimStringDesc** s, NI i);
668 static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s);
669 N_LIB_PRIVATE N_NIMCALL(void, initToken__lexer_248)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* L);
670 static N_INLINE(NIM_BOOL, contains__pureZtimes_2283)(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA s, NI value);
671 N_LIB_PRIVATE N_NIMCALL(NI, getPrecedence__lexer_1374)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
672 extern TNimType NTItbaselexer__jTxk7Uc2dfr9aTDL2dZhO9ag_;
673 N_LIB_PRIVATE TNimType NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_;
674 extern TNimType NTIint5150__sVg18TP9cLifHyygRe9cro9aA_;
675 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
676 extern TNimType NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_;
677 N_LIB_PRIVATE TNimType NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_;
678 extern TNimType NTIpointer__vr5DoT1jILTGdRlYv1OYpw_;
679 extern TNimType NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_;
680 extern TNimType NTIidentcache__lnkYNZP9asc88UfiEGjLrbA_;
681 extern TNimType NTIconfigref__a8lycfSA25OQltN3OMeBsA_;
682 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_5, "/home/runner/work/nightlies/nightlies/nim/compiler/lexer.nim", 60);
683 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_4 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
684 ((NI) 221),
685 ((NI) 16)}
686 ;
687 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_7, "tabs are not allowed, use spaces instead", 40);
688 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_8, "\012", 1);
689 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_9, "end of multiline comment expected", 33);
690 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_10, "invalid token: trailing underscore", 34);
691 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_11, "\'$1\' should be: \'$2\'$3", 22);
692 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_12 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
693 ((NI) 922),
694 ((NI) 16)}
695 ;
696 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_13 = {
697 0x00, 0x00, 0x00, 0x00, 0x72, 0xec, 0x00, 0xf4,
698 0x01, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x50,
699 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
700 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
701 ;
702 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_14, "closing \"\"\" expected, but end of file reached", 45);
703 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_15, "closing \" expected", 18);
704 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_16, "\\p not allowed in character literal", 35);
705 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_17, "expected a hex digit, but found: ", 33);
706 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_18, "; maybe prepend with 0", 22);
707 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_19, "\\u not allowed in character literal", 35);
708 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_20, "Unicode codepoint cannot be empty", 33);
709 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_21, "Unicode codepoint must be lower than 0x10FFFF, but was: ", 56);
710 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_22 = {
711 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x03,
712 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
713 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
714 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
715 ;
716 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_23, "invalid character constant", 26);
717 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_24, "_", 1);
718 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_25, "invalid token: ", 15);
719 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_26, " (\\", 3);
720 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_27, "invalid character literal", 25);
721 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_28, "\'", 1);
722 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_29, "missing closing \' for character literal", 39);
723 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_30 = {
724 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xff, 0x03,
725 0xfe, 0xff, 0xff, 0x87, 0xfe, 0xff, 0xff, 0x07,
726 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
727 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
728 ;
729 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_31, "$1 will soon be invalid for oct literals; Use \'0o\' for octals. \'c\', \'C\' prefix", 78);
730 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_32, "only single underscores may occur in a token and token may not end with an underscore: e.g. \'1__1\' and \'1_\' are invalid", 119);
731 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_33 = {
732 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00,
733 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
734 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
735 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
736 ;
737 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_34, "$1 is an invalid int literal; For octal literals use the \'0o\' prefix.", 69);
738 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_35 = {
739 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x03,
740 0x7e, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00,
741 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
742 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
743 ;
744 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_36 = {
745 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
746 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
747 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
748 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
749 ;
750 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_37, "getNumber", 9);
751 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_38 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
752 ((NI) 388),
753 ((NI) 19)}
754 ;
755 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_39, "invalid number: \'$1\'", 20);
756 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_40 = {
757 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
758 0x50, 0x02, 0x20, 0x00, 0x50, 0x02, 0x20, 0x00,
759 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
760 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
761 ;
762 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_41, "f", 1);
763 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_42, "f32", 3);
764 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_43, "d", 1);
765 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_44, "f64", 3);
766 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_45, "f128", 4);
767 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_46, "i8", 2);
768 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_47, "i16", 3);
769 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_48, "i32", 3);
770 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_49, "i64", 3);
771 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_50, "u", 1);
772 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_51, "u8", 2);
773 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_52, "u16", 3);
774 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_53, "u32", 3);
775 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_54, "u64", 3);
776 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_55, "invalid number suffix: \'$1\'", 27);
777 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_57 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
778 ((NI) 493),
779 ((NI) 23)}
780 ;
781 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_58 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
782 ((NI) 510),
783 ((NI) 27)}
784 ;
785 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_59, "number out of range: \'$1\'", 25);
786 extern TNimType NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_;
787 extern TNimType NTIrefoverflowdefect__r8GBEWywN07B3Rat3azS4Q_;
788 extern TNimType NTIoverflowdefect__9cxMi1BPLc3UKt9br86bGfGQ_;
789 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_61, "number out of range: ", 21);
790 extern TNimType NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_;
791 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_62, "invalid integer: ", 17);
792 extern TNimType NTIrangedefect__Rp9adJYTsbbIUzQ8fWxwgdA_;
793 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_64, "invalid token: no whitespace between number and identifier", 58);
794 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_65 = {
795 0x00, 0x26, 0x00, 0x00, 0x01, 0x11, 0x00, 0x08,
796 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08,
797 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
798 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
799 ;
800 N_LIB_PRIVATE TNimType NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_;
801 N_LIB_PRIVATE TNimType NTItoken__sNMaWRTImjqfh1DU9cmdQkA_;
802 extern TNimType NTIpident__EiGmNYVHiKeimIyQkW82mg_;
803 extern TNimType NTIbiggestint__Aav8dQoMlCFnZRxA0IhTHQ_;
804 extern TNimType NTIfloat__w9bl9a1ul9ctRJWiMl9cNnIMvg_;
805 N_LIB_PRIVATE TNimType NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_;
806 extern TNimType NTIint56__chXunH2dwinSkhpA6JnsXw_;
807 extern TNimType NTIstring__77mFvmsOLKik79ci2hXkHEg_;
808 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_73, "keyword ", 8);
809 extern TSafePoint* excHandler__system_2565;
810 extern TSafePoint* excHandler__system_2565;
811 extern TSafePoint* excHandler__system_2565;
812 extern TSafePoint* excHandler__system_2565;
813 extern Exception* currException__system_2566;
814 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5226;
815 extern Exception* currException__system_2566;
816 extern Exception* currException__system_2566;
N_NIMCALL(void,initToken__lexer_248)817 N_LIB_PRIVATE N_NIMCALL(void, initToken__lexer_248)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* L) {
818 	(*L).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0);
819 	(*L).iNumber = IL64(0);
820 	(*L).indent = ((NI) 0);
821 	(*L).strongSpaceA = ((NI8) 0);
822 	unsureAsgnRef((void**) (&(*L).literal), ((NimStringDesc*) NIM_NIL));
823 	(*L).fNumber = 0.0;
824 	(*L).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 0);
825 	unsureAsgnRef((void**) (&(*L).ident), ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
826 }
N_NIMCALL(void,openLexer__lexer_270)827 N_LIB_PRIVATE N_NIMCALL(void, openLexer__lexer_270)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* lex, NI32 fileIdx, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* inputstream, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config) {
828 	openBaseLexer__nimlexbase_25(&lex->Sup, inputstream, ((NI) 8192));
829 	(*lex).fileIdx = fileIdx;
830 	(*lex).indentAhead = ((NI) -1);
831 	(*lex).currLineIndent = ((NI) 0);
832 	(*lex).Sup.lineNumber += (*inputstream).lineOffset;
833 	unsureAsgnRef((void**) (&(*lex).cache), cache);
834 	unsureAsgnRef((void**) (&(*lex).config), config);
835 }
N_NIMCALL(void,openLexer__lexer_298)836 N_LIB_PRIVATE N_NIMCALL(void, openLexer__lexer_298)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* lex, NimStringDesc* filename, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* inputstream, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config) {
837 	NI32 T1_;
838 	T1_ = (NI32)0;
839 	T1_ = fileInfoIdx__msgs_376(config, filename);
840 	openLexer__lexer_270(lex, T1_, inputstream, cache, config);
841 }
N_NIMCALL(void,fillToken__lexer_268)842 N_LIB_PRIVATE N_NIMCALL(void, fillToken__lexer_268)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* L) {
843 	(*L).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0);
844 	(*L).iNumber = IL64(0);
845 	(*L).indent = ((NI) 0);
846 	(*L).strongSpaceA = ((NI8) 0);
847 	unsureAsgnRef((void**) (&(*L).literal), setLengthStr((*L).literal, ((NI) 0)));
848 	(*L).fNumber = 0.0;
849 	(*L).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 0);
850 	unsureAsgnRef((void**) (&(*L).ident), ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
851 }
N_NIMCALL(void,dispMessage__lexer_326)852 N_LIB_PRIVATE N_NIMCALL(void, dispMessage__lexer_326)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg) {
853 	{
854 		if (!((*L).errorHandler.ClP_0 == 0)) goto LA3_;
855 		liMessage__msgs_1118((*L).config, info, msg, arg, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__4JpEWnGrmRM8CRqL3P2O1Q_4, NIM_FALSE);
856 	}
857 	goto LA1_;
858 	LA3_: ;
859 	{
860 		(*L).errorHandler.ClE_0? (*L).errorHandler.ClP_0((*L).config, info, msg, arg, (*L).errorHandler.ClE_0):((TM__4JpEWnGrmRM8CRqL3P2O1Q_6)((*L).errorHandler.ClP_0))((*L).config, info, msg, arg);
861 	}
862 	LA1_: ;
863 }
N_NIMCALL(void,lexMessagePos__lexer_346)864 N_LIB_PRIVATE N_NIMCALL(void, lexMessagePos__lexer_346)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NI pos, NimStringDesc* arg) {
865 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
866 	info = newLineInfo__msgs_381((*L).fileIdx, (*L).Sup.lineNumber, (NI)(pos - (*L).Sup.lineStart));
867 	dispMessage__lexer_326((&(*L)), info, msg, arg);
868 }
N_NIMCALL(NI,handleCRLF__lexer_1080)869 N_LIB_PRIVATE N_NIMCALL(NI, handleCRLF__lexer_1080)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI pos) {
870 	NI result;
871 	result = (NI)0;
872 	switch (((NU8)((*L).Sup.buf[pos]))) {
873 	case 13:
874 	{
875 		NI colX60gensym93_;
876 		colX60gensym93_ = getColNumber__nimlexbase_34((&(*L).Sup), pos);
877 		{
878 			if (!(((NI) 80) < colX60gensym93_)) goto LA4_;
879 			lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 71), pos, ((NimStringDesc*) NIM_NIL));
880 		}
881 		LA4_: ;
882 		result = handleCR__nimlexbase_37(&L->Sup, pos);
883 	}
884 	break;
885 	case 10:
886 	{
887 		NI colX60gensym95_;
888 		colX60gensym95_ = getColNumber__nimlexbase_34((&(*L).Sup), pos);
889 		{
890 			if (!(((NI) 80) < colX60gensym95_)) goto LA9_;
891 			lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 71), pos, ((NimStringDesc*) NIM_NIL));
892 		}
893 		LA9_: ;
894 		result = handleLF__nimlexbase_40(&L->Sup, pos);
895 	}
896 	break;
897 	default:
898 	{
899 		result = pos;
900 	}
901 	break;
902 	}
903 	return result;
904 }
N_INLINE(void,nimCopyMem)905 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
906 	void* T1_;
907 	T1_ = (void*)0;
908 	T1_ = memcpy(dest, source, ((size_t) (size)));
909 }
N_INLINE(void,copyMem__system_1727)910 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
911 	nimCopyMem(dest, source, size);
912 }
N_INLINE(void,appendString)913 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
914 	{
915 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
916 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
917 		(*dest).Sup.len += (*src).Sup.len;
918 	}
919 	LA3_: ;
920 }
N_NIMCALL(void,skipMultiLineComment__lexer_1409)921 N_LIB_PRIVATE N_NIMCALL(void, skipMultiLineComment__lexer_1409)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NI start, NIM_BOOL isDoc) {
922 	NI pos;
923 	NI toStrip;
924 	NI nesting;
925 	pos = start;
926 	toStrip = ((NI) 0);
927 	{
928 		if (!isDoc) goto LA3_;
929 		toStrip = getColNumber__nimlexbase_34((&(*L).Sup), pos);
930 		{
931 			while (1) {
932 				if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA6;
933 				pos += ((NI) 1);
934 				toStrip += ((NI) 1);
935 			} LA6: ;
936 		}
937 		{
938 			while (1) {
939 				if (!(((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)))) goto LA8;
940 				pos = handleCRLF__lexer_1080(L, pos);
941 				toStrip = ((NI) 0);
942 				{
943 					while (1) {
944 						if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA10;
945 						pos += ((NI) 1);
946 						toStrip += ((NI) 1);
947 					} LA10: ;
948 				}
949 			} LA8: ;
950 		}
951 	}
952 	LA3_: ;
953 	nesting = ((NI) 0);
954 	{
955 		while (1) {
956 			switch (((NU8)((*L).Sup.buf[pos]))) {
957 			case 35:
958 			{
959 				{
960 					if (!isDoc) goto LA16_;
961 					{
962 						NIM_BOOL T20_;
963 						T20_ = (NIM_BOOL)0;
964 						T20_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35));
965 						if (!(T20_)) goto LA21_;
966 						T20_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 2))]) == (NU8)(91));
967 						LA21_: ;
968 						if (!T20_) goto LA22_;
969 						nesting += ((NI) 1);
970 					}
971 					LA22_: ;
972 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 35));
973 				}
974 				goto LA14_;
975 				LA16_: ;
976 				{
977 					if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(91))) goto LA25_;
978 					nesting += ((NI) 1);
979 				}
980 				goto LA14_;
981 				LA25_: ;
982 				LA14_: ;
983 				pos += ((NI) 1);
984 			}
985 			break;
986 			case 93:
987 			{
988 				{
989 					if (!isDoc) goto LA30_;
990 					{
991 						NIM_BOOL T34_;
992 						T34_ = (NIM_BOOL)0;
993 						T34_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35));
994 						if (!(T34_)) goto LA35_;
995 						T34_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 2))]) == (NU8)(35));
996 						LA35_: ;
997 						if (!T34_) goto LA36_;
998 						{
999 							if (!(nesting == ((NI) 0))) goto LA40_;
1000 							pos += ((NI) 3);
1001 							goto LA11;
1002 						}
1003 						LA40_: ;
1004 						nesting -= ((NI) 1);
1005 					}
1006 					LA36_: ;
1007 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 93));
1008 				}
1009 				goto LA28_;
1010 				LA30_: ;
1011 				{
1012 					if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35))) goto LA43_;
1013 					{
1014 						if (!(nesting == ((NI) 0))) goto LA47_;
1015 						pos += ((NI) 2);
1016 						goto LA11;
1017 					}
1018 					LA47_: ;
1019 					nesting -= ((NI) 1);
1020 				}
1021 				goto LA28_;
1022 				LA43_: ;
1023 				LA28_: ;
1024 				pos += ((NI) 1);
1025 			}
1026 			break;
1027 			case 13:
1028 			case 10:
1029 			{
1030 				pos = handleCRLF__lexer_1080(L, pos);
1031 				{
1032 					NI c;
1033 					if (!isDoc) goto LA52_;
1034 					unsureAsgnRef((void**) (&(*tok).literal), resizeString((*tok).literal, 1));
1035 appendString((*tok).literal, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_8));
1036 					(*tok).iNumber += ((NI) 1);
1037 					c = toStrip;
1038 					{
1039 						while (1) {
1040 							NIM_BOOL T56_;
1041 							T56_ = (NIM_BOOL)0;
1042 							T56_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(32));
1043 							if (!(T56_)) goto LA57_;
1044 							T56_ = (((NI) 0) < c);
1045 							LA57_: ;
1046 							if (!T56_) goto LA55;
1047 							pos += ((NI) 1);
1048 							c -= ((NI) 1);
1049 						} LA55: ;
1050 					}
1051 				}
1052 				LA52_: ;
1053 			}
1054 			break;
1055 			case 0:
1056 			{
1057 				lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), pos, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_9));
1058 				goto LA11;
1059 			}
1060 			break;
1061 			default:
1062 			{
1063 				{
1064 					NIM_BOOL T62_;
1065 					T62_ = (NIM_BOOL)0;
1066 					T62_ = isDoc;
1067 					if (T62_) goto LA63_;
1068 					T62_ = NIM_FALSE;
1069 					LA63_: ;
1070 					if (!T62_) goto LA64_;
1071 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
1072 				}
1073 				LA64_: ;
1074 				pos += ((NI) 1);
1075 			}
1076 			break;
1077 			}
1078 		}
1079 	} LA11: ;
1080 	(*L).Sup.bufpos = pos;
1081 }
N_NIMCALL(void,skip__lexer_1552)1082 N_LIB_PRIVATE N_NIMCALL(void, skip__lexer_1552)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
1083 	NI pos;
1084 	pos = (*L).Sup.bufpos;
1085 	(*tok).strongSpaceA = ((NI8) 0);
1086 	{
1087 		while (1) {
1088 			switch (((NU8)((*L).Sup.buf[pos]))) {
1089 			case 32:
1090 			{
1091 				pos += ((NI) 1);
1092 				(*tok).strongSpaceA += ((NI) 1);
1093 			}
1094 			break;
1095 			case 9:
1096 			{
1097 				{
1098 					if (!!((*L).allowTabs)) goto LA7_;
1099 					lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), pos, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_7));
1100 				}
1101 				LA7_: ;
1102 				pos += ((NI) 1);
1103 			}
1104 			break;
1105 			case 13:
1106 			case 10:
1107 			{
1108 				NI indent;
1109 				pos = handleCRLF__lexer_1080(L, pos);
1110 				indent = ((NI) 0);
1111 				{
1112 					while (1) {
1113 						{
1114 							if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA14_;
1115 							pos += ((NI) 1);
1116 							indent += ((NI) 1);
1117 						}
1118 						goto LA12_;
1119 						LA14_: ;
1120 						{
1121 							NIM_BOOL T17_;
1122 							T17_ = (NIM_BOOL)0;
1123 							T17_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(35));
1124 							if (!(T17_)) goto LA18_;
1125 							T17_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(91));
1126 							LA18_: ;
1127 							if (!T17_) goto LA19_;
1128 							skipMultiLineComment__lexer_1409(L, tok, (NI)(pos + ((NI) 2)), NIM_FALSE);
1129 							pos = (*L).Sup.bufpos;
1130 						}
1131 						goto LA12_;
1132 						LA19_: ;
1133 						{
1134 							goto LA10;
1135 						}
1136 						LA12_: ;
1137 					}
1138 				} LA10: ;
1139 				(*tok).strongSpaceA = ((NI8) 0);
1140 				{
1141 					NIM_BOOL T24_;
1142 					NIM_BOOL T26_;
1143 					T24_ = (NIM_BOOL)0;
1144 					T24_ = ((NU8)(32) < (NU8)((*L).Sup.buf[pos]));
1145 					if (!(T24_)) goto LA25_;
1146 					T26_ = (NIM_BOOL)0;
1147 					T26_ = !(((NU8)((*L).Sup.buf[pos]) == (NU8)(35)));
1148 					if (T26_) goto LA27_;
1149 					T26_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35));
1150 					LA27_: ;
1151 					T24_ = T26_;
1152 					LA25_: ;
1153 					if (!T24_) goto LA28_;
1154 					(*tok).indent = indent;
1155 					(*L).currLineIndent = indent;
1156 					goto LA1;
1157 				}
1158 				LA28_: ;
1159 			}
1160 			break;
1161 			case 35:
1162 			{
1163 				{
1164 					if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35))) goto LA33_;
1165 					goto LA1;
1166 				}
1167 				LA33_: ;
1168 				{
1169 					if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(91))) goto LA37_;
1170 					skipMultiLineComment__lexer_1409(L, tok, (NI)(pos + ((NI) 2)), NIM_FALSE);
1171 					pos = (*L).Sup.bufpos;
1172 				}
1173 				goto LA35_;
1174 				LA37_: ;
1175 				{
1176 					{
1177 						while (1) {
1178 							if (!!((((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(0))))) goto LA41;
1179 							pos += ((NI) 1);
1180 						} LA41: ;
1181 					}
1182 				}
1183 				LA35_: ;
1184 			}
1185 			break;
1186 			default:
1187 			{
1188 				goto LA1;
1189 			}
1190 			break;
1191 			}
1192 		}
1193 	} LA1: ;
1194 	(*L).Sup.bufpos = pos;
1195 }
N_INLINE(NI,emarkamp___pureZhashes_3)1196 static N_INLINE(NI, emarkamp___pureZhashes_3)(NI h, NI val) {
1197 	NI result;
1198 	NU h_2;
1199 	NU val_2;
1200 	NU res;
1201 	result = (NI)0;
1202 	h_2 = ((NU) (h));
1203 	val_2 = ((NU) (val));
1204 	res = (NU)((NU64)(h_2) + (NU64)(val_2));
1205 	res = (NU)((NU64)(res) + (NU64)((NU)((NU64)(res) << (NU64)(((NI) 10)))));
1206 	res = (NU)(res ^ (NU)((NU64)(res) >> (NU64)(((NI) 6))));
1207 	result = ((NI) (res));
1208 	return result;
1209 }
N_INLINE(void,nimSetMem__systemZmemory_7)1210 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
1211 	void* T1_;
1212 	T1_ = (void*)0;
1213 	T1_ = memset(a, v, ((size_t) (size)));
1214 }
N_INLINE(void,nimZeroMem)1215 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
1216 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
1217 }
N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q,getLineInfo__lexer_314)1218 N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q, getLineInfo__lexer_314)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L) {
1219 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q result;
1220 	NI T1_;
1221 	nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
1222 	T1_ = (NI)0;
1223 	T1_ = getColNumber__nimlexbase_34((&(*L).Sup), (*L).Sup.bufpos);
1224 	result = newLineInfo__msgs_381((*L).fileIdx, (*L).Sup.lineNumber, T1_);
1225 	return result;
1226 }
N_NIMCALL(void,lexMessage__lexer_336)1227 N_LIB_PRIVATE N_NIMCALL(void, lexMessage__lexer_336)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg) {
1228 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1_;
1229 	T1_ = getLineInfo__lexer_314(L);
1230 	dispMessage__lexer_326(L, T1_, msg, arg);
1231 }
N_NIMCALL(tyTuple__eYjXpYmwoditlWZaGvgooQ,unicodeOprLen__lexer_1203)1232 N_LIB_PRIVATE N_NIMCALL(tyTuple__eYjXpYmwoditlWZaGvgooQ, unicodeOprLen__lexer_1203)(NCSTRING buf, NI pos) {
1233 	tyTuple__eYjXpYmwoditlWZaGvgooQ result;
1234 	NI8 colontmp_;
1235 	tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__2;
1236 	nimZeroMem((void*)(&result), sizeof(tyTuple__eYjXpYmwoditlWZaGvgooQ));
1237 	colontmp_ = ((NI8) 0);
1238 	colontmp__2 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1239 	result.Field0 = colontmp_;
1240 	result.Field1 = colontmp__2;
1241 	switch (((NU8)(buf[pos]))) {
1242 	case 226:
1243 	{
1244 		{
1245 			if (!((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(136))) goto LA4_;
1246 			{
1247 				NI8 colontmp__3;
1248 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__4;
1249 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(152))) goto LA8_;
1250 				colontmp__3 = ((NI8) 3);
1251 				colontmp__4 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1252 				result.Field0 = colontmp__3;
1253 				result.Field1 = colontmp__4;
1254 			}
1255 			goto LA6_;
1256 			LA8_: ;
1257 			{
1258 				NI8 colontmp__5;
1259 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__6;
1260 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(153))) goto LA11_;
1261 				colontmp__5 = ((NI8) 3);
1262 				colontmp__6 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1263 				result.Field0 = colontmp__5;
1264 				result.Field1 = colontmp__6;
1265 			}
1266 			goto LA6_;
1267 			LA11_: ;
1268 			{
1269 				NI8 colontmp__7;
1270 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__8;
1271 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(167))) goto LA14_;
1272 				colontmp__7 = ((NI8) 3);
1273 				colontmp__8 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1274 				result.Field0 = colontmp__7;
1275 				result.Field1 = colontmp__8;
1276 			}
1277 			goto LA6_;
1278 			LA14_: ;
1279 			{
1280 				NI8 colontmp__9;
1281 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__10;
1282 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(168))) goto LA17_;
1283 				colontmp__9 = ((NI8) 3);
1284 				colontmp__10 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1285 				result.Field0 = colontmp__9;
1286 				result.Field1 = colontmp__10;
1287 			}
1288 			goto LA6_;
1289 			LA17_: ;
1290 			{
1291 				NI8 colontmp__11;
1292 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__12;
1293 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(169))) goto LA20_;
1294 				colontmp__11 = ((NI8) 3);
1295 				colontmp__12 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1296 				result.Field0 = colontmp__11;
1297 				result.Field1 = colontmp__12;
1298 			}
1299 			goto LA6_;
1300 			LA20_: ;
1301 			{
1302 				NI8 colontmp__13;
1303 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__14;
1304 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(170))) goto LA23_;
1305 				colontmp__13 = ((NI8) 3);
1306 				colontmp__14 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1307 				result.Field0 = colontmp__13;
1308 				result.Field1 = colontmp__14;
1309 			}
1310 			goto LA6_;
1311 			LA23_: ;
1312 			LA6_: ;
1313 		}
1314 		goto LA2_;
1315 		LA4_: ;
1316 		{
1317 			if (!((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(138))) goto LA26_;
1318 			{
1319 				NI8 colontmp__15;
1320 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__16;
1321 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(147))) goto LA30_;
1322 				colontmp__15 = ((NI8) 3);
1323 				colontmp__16 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1324 				result.Field0 = colontmp__15;
1325 				result.Field1 = colontmp__16;
1326 			}
1327 			goto LA28_;
1328 			LA30_: ;
1329 			{
1330 				NI8 colontmp__17;
1331 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__18;
1332 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(148))) goto LA33_;
1333 				colontmp__17 = ((NI8) 3);
1334 				colontmp__18 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1335 				result.Field0 = colontmp__17;
1336 				result.Field1 = colontmp__18;
1337 			}
1338 			goto LA28_;
1339 			LA33_: ;
1340 			{
1341 				NI8 colontmp__19;
1342 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__20;
1343 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(149))) goto LA36_;
1344 				colontmp__19 = ((NI8) 3);
1345 				colontmp__20 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1346 				result.Field0 = colontmp__19;
1347 				result.Field1 = colontmp__20;
1348 			}
1349 			goto LA28_;
1350 			LA36_: ;
1351 			{
1352 				NI8 colontmp__21;
1353 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__22;
1354 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(150))) goto LA39_;
1355 				colontmp__21 = ((NI8) 3);
1356 				colontmp__22 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1357 				result.Field0 = colontmp__21;
1358 				result.Field1 = colontmp__22;
1359 			}
1360 			goto LA28_;
1361 			LA39_: ;
1362 			{
1363 				NI8 colontmp__23;
1364 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__24;
1365 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(151))) goto LA42_;
1366 				colontmp__23 = ((NI8) 3);
1367 				colontmp__24 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1368 				result.Field0 = colontmp__23;
1369 				result.Field1 = colontmp__24;
1370 			}
1371 			goto LA28_;
1372 			LA42_: ;
1373 			{
1374 				NI8 colontmp__25;
1375 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__26;
1376 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(152))) goto LA45_;
1377 				colontmp__25 = ((NI8) 3);
1378 				colontmp__26 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1379 				result.Field0 = colontmp__25;
1380 				result.Field1 = colontmp__26;
1381 			}
1382 			goto LA28_;
1383 			LA45_: ;
1384 			{
1385 				NI8 colontmp__27;
1386 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__28;
1387 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(153))) goto LA48_;
1388 				colontmp__27 = ((NI8) 3);
1389 				colontmp__28 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1390 				result.Field0 = colontmp__27;
1391 				result.Field1 = colontmp__28;
1392 			}
1393 			goto LA28_;
1394 			LA48_: ;
1395 			{
1396 				NI8 colontmp__29;
1397 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__30;
1398 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(155))) goto LA51_;
1399 				colontmp__29 = ((NI8) 3);
1400 				colontmp__30 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1401 				result.Field0 = colontmp__29;
1402 				result.Field1 = colontmp__30;
1403 			}
1404 			goto LA28_;
1405 			LA51_: ;
1406 			{
1407 				NI8 colontmp__31;
1408 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__32;
1409 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(158))) goto LA54_;
1410 				colontmp__31 = ((NI8) 3);
1411 				colontmp__32 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1412 				result.Field0 = colontmp__31;
1413 				result.Field1 = colontmp__32;
1414 			}
1415 			goto LA28_;
1416 			LA54_: ;
1417 			{
1418 				NI8 colontmp__33;
1419 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__34;
1420 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(159))) goto LA57_;
1421 				colontmp__33 = ((NI8) 3);
1422 				colontmp__34 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1423 				result.Field0 = colontmp__33;
1424 				result.Field1 = colontmp__34;
1425 			}
1426 			goto LA28_;
1427 			LA57_: ;
1428 			{
1429 				NI8 colontmp__35;
1430 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__36;
1431 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(160))) goto LA60_;
1432 				colontmp__35 = ((NI8) 3);
1433 				colontmp__36 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1434 				result.Field0 = colontmp__35;
1435 				result.Field1 = colontmp__36;
1436 			}
1437 			goto LA28_;
1438 			LA60_: ;
1439 			{
1440 				NI8 colontmp__37;
1441 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__38;
1442 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(161))) goto LA63_;
1443 				colontmp__37 = ((NI8) 3);
1444 				colontmp__38 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1445 				result.Field0 = colontmp__37;
1446 				result.Field1 = colontmp__38;
1447 			}
1448 			goto LA28_;
1449 			LA63_: ;
1450 			LA28_: ;
1451 		}
1452 		goto LA2_;
1453 		LA26_: ;
1454 		{
1455 			NIM_BOOL T66_;
1456 			NI8 colontmp__39;
1457 			tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__40;
1458 			T66_ = (NIM_BOOL)0;
1459 			T66_ = ((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(152));
1460 			if (!(T66_)) goto LA67_;
1461 			T66_ = ((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(133));
1462 			LA67_: ;
1463 			if (!T66_) goto LA68_;
1464 			colontmp__39 = ((NI8) 3);
1465 			colontmp__40 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1466 			result.Field0 = colontmp__39;
1467 			result.Field1 = colontmp__40;
1468 		}
1469 		goto LA2_;
1470 		LA68_: ;
1471 		LA2_: ;
1472 	}
1473 	break;
1474 	case 194:
1475 	{
1476 		{
1477 			NI8 colontmp__41;
1478 			tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__42;
1479 			if (!((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(177))) goto LA73_;
1480 			colontmp__41 = ((NI8) 2);
1481 			colontmp__42 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1482 			result.Field0 = colontmp__41;
1483 			result.Field1 = colontmp__42;
1484 		}
1485 		LA73_: ;
1486 	}
1487 	break;
1488 	case 195:
1489 	{
1490 		{
1491 			NI8 colontmp__43;
1492 			tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__44;
1493 			if (!((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(151))) goto LA78_;
1494 			colontmp__43 = ((NI8) 2);
1495 			colontmp__44 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1496 			result.Field0 = colontmp__43;
1497 			result.Field1 = colontmp__44;
1498 		}
1499 		LA78_: ;
1500 	}
1501 	break;
1502 	default:
1503 	{
1504 	}
1505 	break;
1506 	}
1507 	return result;
1508 }
N_INLINE(NI,emarkdollar___pureZhashes_18)1509 static N_INLINE(NI, emarkdollar___pureZhashes_18)(NI h) {
1510 	NI result;
1511 	NU h_2;
1512 	NU res;
1513 	result = (NI)0;
1514 	h_2 = ((NU) (h));
1515 	res = (NU)((NU64)(h_2) + (NU64)((NU)((NU64)(h_2) << (NU64)(((NI) 3)))));
1516 	res = (NU)(res ^ (NU)((NU64)(res) >> (NU64)(((NI) 11))));
1517 	res = (NU)((NU64)(res) + (NU64)((NU)((NU64)(res) << (NU64)(((NI) 15)))));
1518 	result = ((NI) (res));
1519 	return result;
1520 }
N_NIMCALL(void,getSymbol__lexer_1229)1521 N_LIB_PRIVATE N_NIMCALL(void, getSymbol__lexer_1229)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
1522 	NI h;
1523 	NI pos;
1524 	NIM_BOOL suspicious;
1525 	h = ((NI) 0);
1526 	pos = (*L).Sup.bufpos;
1527 	suspicious = NIM_FALSE;
1528 	{
1529 		while (1) {
1530 			NIM_CHAR c;
1531 			c = (*L).Sup.buf[pos];
1532 			switch (((NU8)(c))) {
1533 			case 97 ... 122:
1534 			case 48 ... 57:
1535 			{
1536 				h = emarkamp___pureZhashes_3(h, ((NU8)(c)));
1537 				pos += ((NI) 1);
1538 			}
1539 			break;
1540 			case 65 ... 90:
1541 			{
1542 				c = ((NIM_CHAR) (((NI) ((NI)(((NU8)(c)) + ((NI) 32))))));
1543 				h = emarkamp___pureZhashes_3(h, ((NU8)(c)));
1544 				pos += ((NI) 1);
1545 				suspicious = NIM_TRUE;
1546 			}
1547 			break;
1548 			case 95:
1549 			{
1550 				{
1551 					if (!!((((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) <= ((NU8)(255))))) goto LA8_;
1552 					lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_10));
1553 					goto LA1;
1554 				}
1555 				LA8_: ;
1556 				pos += ((NI) 1);
1557 				suspicious = NIM_TRUE;
1558 			}
1559 			break;
1560 			case 128 ... 255:
1561 			{
1562 				{
1563 					NIM_BOOL T13_;
1564 					NIM_BOOL T14_;
1565 					tyTuple__eYjXpYmwoditlWZaGvgooQ T17_;
1566 					T13_ = (NIM_BOOL)0;
1567 					T14_ = (NIM_BOOL)0;
1568 					T14_ = (((NU8)(c)) == ((NU8)(226)) || ((NU8)(c)) == ((NU8)(194)) || ((NU8)(c)) == ((NU8)(195)));
1569 					if (!(T14_)) goto LA15_;
1570 					T14_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
1571 					LA15_: ;
1572 					T13_ = T14_;
1573 					if (!(T13_)) goto LA16_;
1574 					T17_ = unicodeOprLen__lexer_1203((*L).Sup.buf, pos);
1575 					T13_ = !((T17_.Field0 == ((NI8) 0)));
1576 					LA16_: ;
1577 					if (!T13_) goto LA18_;
1578 					goto LA1;
1579 				}
1580 				goto LA11_;
1581 				LA18_: ;
1582 				{
1583 					h = emarkamp___pureZhashes_3(h, ((NU8)(c)));
1584 					pos += ((NI) 1);
1585 				}
1586 				LA11_: ;
1587 			}
1588 			break;
1589 			default:
1590 			{
1591 				goto LA1;
1592 			}
1593 			break;
1594 			}
1595 		}
1596 	} LA1: ;
1597 	h = emarkdollar___pureZhashes_18(h);
1598 	unsureAsgnRef((void**) (&(*tok).ident), getIdent__idents_89((*L).cache, ((NCSTRING) ((&(*L).Sup.buf[(*L).Sup.bufpos]))), (NI)(pos - (*L).Sup.bufpos), h));
1599 	{
1600 		NIM_BOOL T24_;
1601 		T24_ = (NIM_BOOL)0;
1602 		T24_ = ((*(*tok).ident).id < ((NI) 1));
1603 		if (T24_) goto LA25_;
1604 		T24_ = (((NI) 66) < (*(*tok).ident).id);
1605 		LA25_: ;
1606 		if (!T24_) goto LA26_;
1607 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 2);
1608 	}
1609 	goto LA22_;
1610 	LA26_: ;
1611 	{
1612 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) ((NI)((*(*tok).ident).id + ((NI) 2))));
1613 		{
1614 			NIM_BOOL T31_;
1615 			NimStringDesc* mX60gensym144_;
1616 			tyArray__24KAM9afIUgUaqBaEBB6r9bg T35_;
1617 			tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msgX60gensym144_;
1618 			tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T43_;
1619 			T31_ = (NIM_BOOL)0;
1620 			T31_ = suspicious;
1621 			if (!(T31_)) goto LA32_;
1622 			T31_ = !(((49152 & (*(*L).config).globalOptions) == 0));
1623 			LA32_: ;
1624 			if (!T31_) goto LA33_;
1625 			nimZeroMem((void*)T35_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
1626 			T35_[0] = copyString((*(*tok).ident).s);
1627 			T35_[1] = nsuNormalize((*(*tok).ident).s);
1628 			T35_[2] = ((NimStringDesc*) NIM_NIL);
1629 			mX60gensym144_ = nsuFormatOpenArray(((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_11), T35_, 3);
1630 			{
1631 				NIM_BOOL T38_;
1632 				T38_ = (NIM_BOOL)0;
1633 				T38_ = (((*(*L).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 15))&63U)))!=0);
1634 				if (!(T38_)) goto LA39_;
1635 				T38_ = NIM_TRUE;
1636 				LA39_: ;
1637 				if (!T38_) goto LA40_;
1638 				msgX60gensym144_ = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14);
1639 			}
1640 			goto LA36_;
1641 			LA40_: ;
1642 			{
1643 				msgX60gensym144_ = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 87);
1644 			}
1645 			LA36_: ;
1646 			T43_ = getLineInfo__lexer_314((&(*L)));
1647 			liMessage__msgs_1118((*L).config, T43_, msgX60gensym144_, mX60gensym144_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__4JpEWnGrmRM8CRqL3P2O1Q_12, NIM_FALSE);
1648 		}
1649 		LA33_: ;
1650 	}
1651 	LA22_: ;
1652 	(*L).Sup.bufpos = pos;
1653 }
N_INLINE(void,endOperator__lexer_1315)1654 static N_INLINE(void, endOperator__lexer_1315)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NI pos, NI hash) {
1655 	NI h;
1656 	h = emarkdollar___pureZhashes_18(hash);
1657 	unsureAsgnRef((void**) (&(*tok).ident), getIdent__idents_89((*L).cache, ((NCSTRING) ((&(*L).Sup.buf[(*L).Sup.bufpos]))), (NI)(pos - (*L).Sup.bufpos), h));
1658 	{
1659 		NIM_BOOL T3_;
1660 		T3_ = (NIM_BOOL)0;
1661 		T3_ = ((*(*tok).ident).id < ((NI) 67));
1662 		if (T3_) goto LA4_;
1663 		T3_ = (((NI) 71) < (*(*tok).ident).id);
1664 		LA4_: ;
1665 		if (!T3_) goto LA5_;
1666 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 110);
1667 	}
1668 	goto LA1_;
1669 	LA5_: ;
1670 	{
1671 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) ((NI)((NI)((*(*tok).ident).id - ((NI) 67)) + ((NI) 104))));
1672 	}
1673 	LA1_: ;
1674 	(*L).Sup.bufpos = pos;
1675 }
N_NIMCALL(void,getOperator__lexer_1324)1676 N_LIB_PRIVATE N_NIMCALL(void, getOperator__lexer_1324)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
1677 	NI pos;
1678 	NI h;
1679 	pos = (*L).Sup.bufpos;
1680 	h = ((NI) 0);
1681 	{
1682 		while (1) {
1683 			NIM_CHAR c;
1684 			c = (*L).Sup.buf[pos];
1685 			{
1686 				if (!((TM__4JpEWnGrmRM8CRqL3P2O1Q_13[(NU)(((NU8)(c)))>>3] &(1U<<((NU)(((NU8)(c)))&7U)))!=0)) goto LA5_;
1687 				h = emarkamp___pureZhashes_3(h, ((NU8)(c)));
1688 				pos += ((NI) 1);
1689 			}
1690 			goto LA3_;
1691 			LA5_: ;
1692 			{
1693 				NIM_BOOL T8_;
1694 				NI8 oprLen;
1695 				tyTuple__eYjXpYmwoditlWZaGvgooQ T12_;
1696 				T8_ = (NIM_BOOL)0;
1697 				T8_ = (((NU8)(c)) == ((NU8)(226)) || ((NU8)(c)) == ((NU8)(194)) || ((NU8)(c)) == ((NU8)(195)));
1698 				if (!(T8_)) goto LA9_;
1699 				T8_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
1700 				LA9_: ;
1701 				if (!T8_) goto LA10_;
1702 				T12_ = unicodeOprLen__lexer_1203((*L).Sup.buf, pos);
1703 				oprLen = T12_.Field0;
1704 				{
1705 					if (!(oprLen == ((NI8) 0))) goto LA15_;
1706 					goto LA1;
1707 				}
1708 				LA15_: ;
1709 				{
1710 					NI i;
1711 					NI colontmp_;
1712 					NI i_2;
1713 					i = (NI)0;
1714 					colontmp_ = (NI)0;
1715 					colontmp_ = ((NI) (oprLen));
1716 					i_2 = ((NI) 0);
1717 					{
1718 						while (1) {
1719 							if (!(i_2 < colontmp_)) goto LA19;
1720 							i = i_2;
1721 							h = emarkamp___pureZhashes_3(h, ((NU8)((*L).Sup.buf[pos])));
1722 							pos += ((NI) 1);
1723 							i_2 += ((NI) 1);
1724 						} LA19: ;
1725 					}
1726 				}
1727 			}
1728 			goto LA3_;
1729 			LA10_: ;
1730 			{
1731 				goto LA1;
1732 			}
1733 			LA3_: ;
1734 		}
1735 	} LA1: ;
1736 	endOperator__lexer_1315(L, tok, pos, h);
1737 	(*tok).strongSpaceB = ((NI8) 0);
1738 	{
1739 		while (1) {
1740 			if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA22;
1741 			pos += ((NI) 1);
1742 			(*tok).strongSpaceB += ((NI) 1);
1743 		} LA22: ;
1744 	}
1745 	{
1746 		if (!(((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(0)))) goto LA25_;
1747 		(*tok).strongSpaceB = ((NI8) -1);
1748 	}
1749 	LA25_: ;
1750 }
N_NIMCALL(void,scanComment__lexer_1490)1751 N_LIB_PRIVATE N_NIMCALL(void, scanComment__lexer_1490)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
1752 	NI pos;
1753 	NI toStrip;
1754 	NIM_BOOL stripInit;
1755 {	pos = (*L).Sup.bufpos;
1756 	(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 111);
1757 	(*tok).iNumber = IL64(0);
1758 	{
1759 		if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 2))]) == (NU8)(91))) goto LA3_;
1760 		skipMultiLineComment__lexer_1409(L, tok, (NI)(pos + ((NI) 3)), NIM_TRUE);
1761 		goto BeforeRet_;
1762 	}
1763 	LA3_: ;
1764 	pos += ((NI) 2);
1765 	toStrip = ((NI) 0);
1766 	stripInit = NIM_FALSE;
1767 	{
1768 		while (1) {
1769 			NI lastBackslash;
1770 			NI indent;
1771 			{
1772 				if (!!(stripInit)) goto LA9_;
1773 				{
1774 					while (1) {
1775 						if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA12;
1776 						pos += ((NI) 1);
1777 						toStrip += ((NI) 1);
1778 					} LA12: ;
1779 				}
1780 				{
1781 					if (!(((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)))) goto LA15_;
1782 					toStrip = ((NI) 0);
1783 				}
1784 				goto LA13_;
1785 				LA15_: ;
1786 				{
1787 					stripInit = NIM_TRUE;
1788 				}
1789 				LA13_: ;
1790 			}
1791 			LA9_: ;
1792 			lastBackslash = ((NI) -1);
1793 			{
1794 				while (1) {
1795 					if (!!((((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(0))))) goto LA19;
1796 					{
1797 						if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(92))) goto LA22_;
1798 						lastBackslash = (NI)(pos + ((NI) 1));
1799 					}
1800 					LA22_: ;
1801 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
1802 					pos += ((NI) 1);
1803 				} LA19: ;
1804 			}
1805 			pos = handleCRLF__lexer_1080(L, pos);
1806 			indent = ((NI) 0);
1807 			{
1808 				while (1) {
1809 					if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA25;
1810 					pos += ((NI) 1);
1811 					indent += ((NI) 1);
1812 				} LA25: ;
1813 			}
1814 			{
1815 				NIM_BOOL T28_;
1816 				T28_ = (NIM_BOOL)0;
1817 				T28_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(35));
1818 				if (!(T28_)) goto LA29_;
1819 				T28_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35));
1820 				LA29_: ;
1821 				if (!T28_) goto LA30_;
1822 				unsureAsgnRef((void**) (&(*tok).literal), resizeString((*tok).literal, 1));
1823 appendString((*tok).literal, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_8));
1824 				pos += ((NI) 2);
1825 				{
1826 					NI c;
1827 					if (!stripInit) goto LA34_;
1828 					c = toStrip;
1829 					{
1830 						while (1) {
1831 							NIM_BOOL T38_;
1832 							T38_ = (NIM_BOOL)0;
1833 							T38_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(32));
1834 							if (!(T38_)) goto LA39_;
1835 							T38_ = (((NI) 0) < c);
1836 							LA39_: ;
1837 							if (!T38_) goto LA37;
1838 							pos += ((NI) 1);
1839 							c -= ((NI) 1);
1840 						} LA37: ;
1841 					}
1842 					(*tok).iNumber += ((NI) 1);
1843 				}
1844 				LA34_: ;
1845 			}
1846 			goto LA26_;
1847 			LA30_: ;
1848 			{
1849 				{
1850 					if (!((NU8)(32) < (NU8)((*L).Sup.buf[pos]))) goto LA43_;
1851 					(*L).indentAhead = indent;
1852 				}
1853 				LA43_: ;
1854 				goto LA5;
1855 			}
1856 			LA26_: ;
1857 		}
1858 	} LA5: ;
1859 	(*L).Sup.bufpos = pos;
1860 	}BeforeRet_: ;
1861 }
N_INLINE(void,appendChar)1862 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
1863 	(*dest).data[(*dest).Sup.len] = c;
1864 	(*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
1865 	(*dest).Sup.len += ((NI) 1);
1866 }
N_NIMCALL(void,handleHexChar__lexer_781)1867 N_LIB_PRIVATE N_NIMCALL(void, handleHexChar__lexer_781)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI* xi, NI position) {
1868 	switch (((NU8)((*L).Sup.buf[(*L).Sup.bufpos]))) {
1869 	case 48 ... 57:
1870 	{
1871 		(*xi) = (NI)((NI)((NU64)((*xi)) << (NU64)(((NI) 4))) | (NI)(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) - ((NI) 48)));
1872 		(*L).Sup.bufpos += ((NI) 1);
1873 	}
1874 	break;
1875 	case 97 ... 102:
1876 	{
1877 		(*xi) = (NI)((NI)((NU64)((*xi)) << (NU64)(((NI) 4))) | (NI)((NI)(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) - ((NI) 97)) + ((NI) 10)));
1878 		(*L).Sup.bufpos += ((NI) 1);
1879 	}
1880 	break;
1881 	case 65 ... 70:
1882 	{
1883 		(*xi) = (NI)((NI)((NU64)((*xi)) << (NU64)(((NI) 4))) | (NI)((NI)(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) - ((NI) 65)) + ((NI) 10)));
1884 		(*L).Sup.bufpos += ((NI) 1);
1885 	}
1886 	break;
1887 	case 34:
1888 	case 39:
1889 	{
1890 		{
1891 			NimStringDesc* T9_;
1892 			if (!(((NI) (position)) <= ((NI) 1))) goto LA7_;
1893 			T9_ = NIM_NIL;
1894 			T9_ = rawNewString(56);
1895 appendString(T9_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_17));
1896 appendChar(T9_, (*L).Sup.buf[(*L).Sup.bufpos]);
1897 appendString(T9_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_18));
1898 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T9_);
1899 		}
1900 		LA7_: ;
1901 		{
1902 			if (!(((NI) (position)) == ((NI) 0))) goto LA12_;
1903 			(*L).Sup.bufpos += ((NI) 1);
1904 		}
1905 		LA12_: ;
1906 	}
1907 	break;
1908 	default:
1909 	{
1910 		NimStringDesc* T15_;
1911 		T15_ = NIM_NIL;
1912 		T15_ = rawNewString(56);
1913 appendString(T15_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_17));
1914 appendChar(T15_, (*L).Sup.buf[(*L).Sup.bufpos]);
1915 appendString(T15_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_18));
1916 		lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T15_);
1917 		(*L).Sup.bufpos += ((NI) 1);
1918 	}
1919 	break;
1920 	}
1921 }
N_INLINE(NimStringDesc *,X5BX5D___pureZunicode_865)1922 static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_865)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) {
1923 	NimStringDesc* result;
1924 	NI a;
1925 	NI L;
1926 	result = NIM_NIL;
1927 	a = x.a;
1928 	L = (NI)((NI)(x.b - a) + ((NI) 1));
1929 	result = mnewString(((NI) (L)));
1930 	{
1931 		NI i;
1932 		NI i_2;
1933 		i = (NI)0;
1934 		i_2 = ((NI) 0);
1935 		{
1936 			while (1) {
1937 				if (!(i_2 < L)) goto LA3;
1938 				i = i_2;
1939 				result->data[i] = s->data[(NI)(i + a)];
1940 				i_2 += ((NI) 1);
1941 			} LA3: ;
1942 		}
1943 	}
1944 	return result;
1945 }
N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA,dotdot___pureZunicode_840)1946 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___pureZunicode_840)(NI a, NI b) {
1947 	tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
1948 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
1949 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
1950 	result.a = a;
1951 	result.b = b;
1952 	return result;
1953 }
N_NIMCALL(void,addUnicodeCodePoint__lexer_853)1954 N_LIB_PRIVATE N_NIMCALL(void, addUnicodeCodePoint__lexer_853)(NimStringDesc** s, NI i) {
1955 	NU i_2;
1956 	NI pos;
1957 	i_2 = ((NU) (i));
1958 	pos = ((*s) ? (*s)->Sup.len : 0);
1959 	{
1960 		if (!((NU64)(i_2) <= (NU64)(((NU) 127)))) goto LA3_;
1961 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 1))))));
1962 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) (i_2))));
1963 	}
1964 	goto LA1_;
1965 	LA3_: ;
1966 	{
1967 		if (!((NU64)(i_2) <= (NU64)(((NU) 2047)))) goto LA6_;
1968 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 2))))));
1969 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 6))) | ((NU) 192))))));
1970 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
1971 	}
1972 	goto LA1_;
1973 	LA6_: ;
1974 	{
1975 		if (!((NU64)(i_2) <= (NU64)(((NU) 65535)))) goto LA9_;
1976 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 3))))));
1977 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 12))) | ((NU) 224))))));
1978 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 6))) & ((NU) 63)) | ((NU) 128))))));
1979 		(*s)->data[(NI)(pos + ((NI) 2))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
1980 	}
1981 	goto LA1_;
1982 	LA9_: ;
1983 	{
1984 		if (!((NU64)(i_2) <= (NU64)(((NU) 2097151)))) goto LA12_;
1985 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 4))))));
1986 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 18))) | ((NU) 240))))));
1987 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 12))) & ((NU) 63)) | ((NU) 128))))));
1988 		(*s)->data[(NI)(pos + ((NI) 2))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 6))) & ((NU) 63)) | ((NU) 128))))));
1989 		(*s)->data[(NI)(pos + ((NI) 3))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
1990 	}
1991 	goto LA1_;
1992 	LA12_: ;
1993 	{
1994 		if (!((NU64)(i_2) <= (NU64)(((NU) 67108863)))) goto LA15_;
1995 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 5))))));
1996 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 24))) | ((NU) 248))))));
1997 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 18))) & ((NU) 63)) | ((NU) 128))))));
1998 		(*s)->data[(NI)(pos + ((NI) 2))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 12))) & ((NU) 63)) | ((NU) 128))))));
1999 		(*s)->data[(NI)(pos + ((NI) 3))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 6))) & ((NU) 63)) | ((NU) 128))))));
2000 		(*s)->data[(NI)(pos + ((NI) 4))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
2001 	}
2002 	goto LA1_;
2003 	LA15_: ;
2004 	{
2005 		if (!((NU64)(i_2) <= (NU64)(((NU) 2147483647)))) goto LA18_;
2006 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 6))))));
2007 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 30))) | ((NU) 252))))));
2008 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 24))) & ((NU) 63)) | ((NU) 128))))));
2009 		(*s)->data[(NI)(pos + ((NI) 2))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 18))) & ((NU) 63)) | ((NU) 128))))));
2010 		(*s)->data[(NI)(pos + ((NI) 3))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 12))) & ((NU) 63)) | ((NU) 128))))));
2011 		(*s)->data[(NI)(pos + ((NI) 4))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU64)(i_2) >> (NU64)(((NI) 6))) & ((NU) 63)) | ((NU) 128))))));
2012 		(*s)->data[(NI)(pos + ((NI) 5))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
2013 	}
2014 	goto LA1_;
2015 	LA18_: ;
2016 	LA1_: ;
2017 }
N_NIMCALL(NIM_BOOL,matchTwoChars__lexer_352)2018 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, matchTwoChars__lexer_352)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NIM_CHAR first, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw second) {
2019 	NIM_BOOL result;
2020 	NIM_BOOL T1_;
2021 	result = (NIM_BOOL)0;
2022 	T1_ = (NIM_BOOL)0;
2023 	T1_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(first));
2024 	if (!(T1_)) goto LA2_;
2025 	T1_ = ((second[(NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])))&7U)))!=0);
2026 	LA2_: ;
2027 	result = T1_;
2028 	return result;
2029 }
N_NIMCALL(void,handleDecChars__lexer_836)2030 N_LIB_PRIVATE N_NIMCALL(void, handleDecChars__lexer_836)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI* xi) {
2031 	{
2032 		while (1) {
2033 			if (!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(57)))) goto LA2;
2034 			(*xi) = (NI)((NI)((*xi) * ((NI) 10)) + (NI)(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) - ((NI) 48)));
2035 			(*L).Sup.bufpos += ((NI) 1);
2036 		} LA2: ;
2037 	}
2038 }
N_NIMCALL(void,getEscapedChar__lexer_978)2039 N_LIB_PRIVATE N_NIMCALL(void, getEscapedChar__lexer_978)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
2040 	(*L).Sup.bufpos += ((NI) 1);
2041 	switch (((NU8)((*L).Sup.buf[(*L).Sup.bufpos]))) {
2042 	case 110:
2043 	case 78:
2044 	{
2045 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 10));
2046 		(*L).Sup.bufpos += ((NI) 1);
2047 	}
2048 	break;
2049 	case 112:
2050 	case 80:
2051 	{
2052 		{
2053 			if (!((*tok).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88))) goto LA5_;
2054 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_16));
2055 		}
2056 		LA5_: ;
2057 		unsureAsgnRef((void**) (&(*tok).literal), resizeString((*tok).literal, ((*(*L).config).target.tnl ? (*(*L).config).target.tnl->Sup.len : 0) + 0));
2058 appendString((*tok).literal, (*(*L).config).target.tnl);
2059 		(*L).Sup.bufpos += ((NI) 1);
2060 	}
2061 	break;
2062 	case 114:
2063 	case 82:
2064 	case 99:
2065 	case 67:
2066 	{
2067 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 13));
2068 		(*L).Sup.bufpos += ((NI) 1);
2069 	}
2070 	break;
2071 	case 108:
2072 	case 76:
2073 	{
2074 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 10));
2075 		(*L).Sup.bufpos += ((NI) 1);
2076 	}
2077 	break;
2078 	case 102:
2079 	case 70:
2080 	{
2081 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 12));
2082 		(*L).Sup.bufpos += ((NI) 1);
2083 	}
2084 	break;
2085 	case 101:
2086 	case 69:
2087 	{
2088 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 27));
2089 		(*L).Sup.bufpos += ((NI) 1);
2090 	}
2091 	break;
2092 	case 97:
2093 	case 65:
2094 	{
2095 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 7));
2096 		(*L).Sup.bufpos += ((NI) 1);
2097 	}
2098 	break;
2099 	case 98:
2100 	case 66:
2101 	{
2102 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 8));
2103 		(*L).Sup.bufpos += ((NI) 1);
2104 	}
2105 	break;
2106 	case 118:
2107 	case 86:
2108 	{
2109 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 11));
2110 		(*L).Sup.bufpos += ((NI) 1);
2111 	}
2112 	break;
2113 	case 116:
2114 	case 84:
2115 	{
2116 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 9));
2117 		(*L).Sup.bufpos += ((NI) 1);
2118 	}
2119 	break;
2120 	case 39:
2121 	case 34:
2122 	{
2123 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[(*L).Sup.bufpos]));
2124 		(*L).Sup.bufpos += ((NI) 1);
2125 	}
2126 	break;
2127 	case 92:
2128 	{
2129 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 92));
2130 		(*L).Sup.bufpos += ((NI) 1);
2131 	}
2132 	break;
2133 	case 120:
2134 	case 88:
2135 	{
2136 		NI xi;
2137 		(*L).Sup.bufpos += ((NI) 1);
2138 		xi = ((NI) 0);
2139 		handleHexChar__lexer_781(L, (&xi), ((NI) 1));
2140 		handleHexChar__lexer_781(L, (&xi), ((NI) 2));
2141 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, ((NIM_CHAR) (((NI) (xi))))));
2142 	}
2143 	break;
2144 	case 117:
2145 	case 85:
2146 	{
2147 		NI xi_2;
2148 		{
2149 			if (!((*tok).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88))) goto LA21_;
2150 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_19));
2151 		}
2152 		LA21_: ;
2153 		(*L).Sup.bufpos += ((NI) 1);
2154 		xi_2 = ((NI) 0);
2155 		{
2156 			NI start;
2157 			if (!((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(123))) goto LA25_;
2158 			(*L).Sup.bufpos += ((NI) 1);
2159 			start = (*L).Sup.bufpos;
2160 			{
2161 				while (1) {
2162 					if (!!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(125)))) goto LA28;
2163 					handleHexChar__lexer_781(L, (&xi_2), ((NI) 0));
2164 				} LA28: ;
2165 			}
2166 			{
2167 				if (!(start == (*L).Sup.bufpos)) goto LA31_;
2168 				lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_20));
2169 			}
2170 			LA31_: ;
2171 			(*L).Sup.bufpos += ((NI) 1);
2172 			{
2173 				NimStringDesc* hex;
2174 				NimStringDesc* T37_;
2175 				tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T38_;
2176 				NimStringDesc* T39_;
2177 				if (!(((NI) 1114111) < xi_2)) goto LA35_;
2178 				T37_ = NIM_NIL;
2179 				T37_ = cstrToNimstr((*L).Sup.buf);
2180 				T38_ = dotdot___pureZunicode_840(start, (NI)((*L).Sup.bufpos - ((NI) 2)));
2181 				hex = X5BX5D___pureZunicode_865(T37_, T38_);
2182 				T39_ = NIM_NIL;
2183 				T39_ = rawNewString((hex ? hex->Sup.len : 0) + 56);
2184 appendString(T39_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_21));
2185 appendString(T39_, hex);
2186 				lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T39_);
2187 			}
2188 			LA35_: ;
2189 		}
2190 		goto LA23_;
2191 		LA25_: ;
2192 		{
2193 			handleHexChar__lexer_781(L, (&xi_2), ((NI) 1));
2194 			handleHexChar__lexer_781(L, (&xi_2), ((NI) 2));
2195 			handleHexChar__lexer_781(L, (&xi_2), ((NI) 3));
2196 			handleHexChar__lexer_781(L, (&xi_2), ((NI) 4));
2197 		}
2198 		LA23_: ;
2199 		addUnicodeCodePoint__lexer_853((&(*tok).literal), xi_2);
2200 	}
2201 	break;
2202 	case 48 ... 57:
2203 	{
2204 		NI xi_3;
2205 		{
2206 			NIM_BOOL T44_;
2207 			T44_ = (NIM_BOOL)0;
2208 			T44_ = matchTwoChars__lexer_352((&(*L)), 48, TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2209 			if (!T44_) goto LA45_;
2210 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 17), ((NimStringDesc*) NIM_NIL));
2211 		}
2212 		LA45_: ;
2213 		xi_3 = ((NI) 0);
2214 		handleDecChars__lexer_836(L, (&xi_3));
2215 		{
2216 			if (!(xi_3 <= ((NI) 255))) goto LA49_;
2217 			unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, ((NIM_CHAR) (((NI) (xi_3))))));
2218 		}
2219 		goto LA47_;
2220 		LA49_: ;
2221 		{
2222 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_23));
2223 		}
2224 		LA47_: ;
2225 	}
2226 	break;
2227 	default:
2228 	{
2229 		lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_23));
2230 	}
2231 	break;
2232 	}
2233 }
N_NIMCALL(void,getString__lexer_1097)2234 N_LIB_PRIVATE N_NIMCALL(void, getString__lexer_1097)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ mode) {
2235 	NI pos;
2236 	NI line;
2237 	pos = (*L).Sup.bufpos;
2238 	line = (*L).Sup.lineNumber;
2239 	pos += ((NI) 1);
2240 	{
2241 		NIM_BOOL T3_;
2242 		T3_ = (NIM_BOOL)0;
2243 		T3_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(34));
2244 		if (!(T3_)) goto LA4_;
2245 		T3_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(34));
2246 		LA4_: ;
2247 		if (!T3_) goto LA5_;
2248 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 85);
2249 		pos += ((NI) 2);
2250 		{
2251 			NI newpos;
2252 			if (!(((NU8)((*L).Sup.buf[pos])) == ((NU8)(32)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(9)))) goto LA9_;
2253 			newpos = (NI)(pos + ((NI) 1));
2254 			{
2255 				while (1) {
2256 					if (!(((NU8)((*L).Sup.buf[newpos])) == ((NU8)(32)) || ((NU8)((*L).Sup.buf[newpos])) == ((NU8)(9)))) goto LA12;
2257 					newpos += ((NI) 1);
2258 				} LA12: ;
2259 			}
2260 			{
2261 				if (!(((NU8)((*L).Sup.buf[newpos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[newpos])) == ((NU8)(10)))) goto LA15_;
2262 				pos = newpos;
2263 			}
2264 			LA15_: ;
2265 		}
2266 		LA9_: ;
2267 		pos = handleCRLF__lexer_1080(L, pos);
2268 		{
2269 			while (1) {
2270 				switch (((NU8)((*L).Sup.buf[pos]))) {
2271 				case 34:
2272 				{
2273 					{
2274 						NIM_BOOL T22_;
2275 						NIM_BOOL T23_;
2276 						T22_ = (NIM_BOOL)0;
2277 						T23_ = (NIM_BOOL)0;
2278 						T23_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(34));
2279 						if (!(T23_)) goto LA24_;
2280 						T23_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 2))]) == (NU8)(34));
2281 						LA24_: ;
2282 						T22_ = T23_;
2283 						if (!(T22_)) goto LA25_;
2284 						T22_ = !(((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 3))]) == (NU8)(34)));
2285 						LA25_: ;
2286 						if (!T22_) goto LA26_;
2287 						(*L).Sup.bufpos = (NI)(pos + ((NI) 3));
2288 						goto LA17;
2289 					}
2290 					LA26_: ;
2291 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 34));
2292 					pos += ((NI) 1);
2293 				}
2294 				break;
2295 				case 13:
2296 				case 10:
2297 				{
2298 					pos = handleCRLF__lexer_1080(L, pos);
2299 					unsureAsgnRef((void**) (&(*tok).literal), resizeString((*tok).literal, 1));
2300 appendString((*tok).literal, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_8));
2301 				}
2302 				break;
2303 				case 0:
2304 				{
2305 					NI line2;
2306 					line2 = (*L).Sup.lineNumber;
2307 					(*L).Sup.lineNumber = line;
2308 					lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), (*L).Sup.lineStart, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_14));
2309 					(*L).Sup.lineNumber = line2;
2310 					(*L).Sup.bufpos = pos;
2311 					goto LA17;
2312 				}
2313 				break;
2314 				default:
2315 				{
2316 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
2317 					pos += ((NI) 1);
2318 				}
2319 				break;
2320 				}
2321 			}
2322 		} LA17: ;
2323 	}
2324 	goto LA1_;
2325 	LA5_: ;
2326 	{
2327 		{
2328 			if (!!((mode == ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 0)))) goto LA34_;
2329 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 84);
2330 		}
2331 		goto LA32_;
2332 		LA34_: ;
2333 		{
2334 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 83);
2335 		}
2336 		LA32_: ;
2337 		{
2338 			while (1) {
2339 				NIM_CHAR c;
2340 				c = (*L).Sup.buf[pos];
2341 				{
2342 					if (!((NU8)(c) == (NU8)(34))) goto LA41_;
2343 					{
2344 						NIM_BOOL T45_;
2345 						T45_ = (NIM_BOOL)0;
2346 						T45_ = !((mode == ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 0)));
2347 						if (!(T45_)) goto LA46_;
2348 						T45_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(34));
2349 						LA46_: ;
2350 						if (!T45_) goto LA47_;
2351 						pos += ((NI) 2);
2352 						unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 34));
2353 					}
2354 					goto LA43_;
2355 					LA47_: ;
2356 					{
2357 						pos += ((NI) 1);
2358 						goto LA37;
2359 					}
2360 					LA43_: ;
2361 				}
2362 				goto LA39_;
2363 				LA41_: ;
2364 				{
2365 					if (!(((NU8)(c)) == ((NU8)(13)) || ((NU8)(c)) == ((NU8)(10)) || ((NU8)(c)) == ((NU8)(0)))) goto LA51_;
2366 					lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_15));
2367 					goto LA37;
2368 				}
2369 				goto LA39_;
2370 				LA51_: ;
2371 				{
2372 					NIM_BOOL T54_;
2373 					T54_ = (NIM_BOOL)0;
2374 					T54_ = ((NU8)(c) == (NU8)(92));
2375 					if (!(T54_)) goto LA55_;
2376 					T54_ = (mode == ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 0));
2377 					LA55_: ;
2378 					if (!T54_) goto LA56_;
2379 					(*L).Sup.bufpos = pos;
2380 					getEscapedChar__lexer_978(L, tok);
2381 					pos = (*L).Sup.bufpos;
2382 				}
2383 				goto LA39_;
2384 				LA56_: ;
2385 				{
2386 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, c));
2387 					pos += ((NI) 1);
2388 				}
2389 				LA39_: ;
2390 			}
2391 		} LA37: ;
2392 		(*L).Sup.bufpos = pos;
2393 	}
2394 	LA1_: ;
2395 }
N_NIMCALL(void,getCharacter__lexer_1172)2396 N_LIB_PRIVATE N_NIMCALL(void, getCharacter__lexer_1172)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
2397 	NI startPos;
2398 	NIM_CHAR c;
2399 	startPos = (*L).Sup.bufpos;
2400 	(*L).Sup.bufpos += ((NI) 1);
2401 	c = (*L).Sup.buf[(*L).Sup.bufpos];
2402 	switch (((NU8)(c))) {
2403 	case 0 ... 31:
2404 	case 39:
2405 	{
2406 		lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_27));
2407 		unsureAsgnRef((void**) (&(*tok).literal), nimCharToStr(c));
2408 	}
2409 	break;
2410 	case 92:
2411 	{
2412 		getEscapedChar__lexer_978(L, tok);
2413 	}
2414 	break;
2415 	default:
2416 	{
2417 		unsureAsgnRef((void**) (&(*tok).literal), nimCharToStr(c));
2418 		(*L).Sup.bufpos += ((NI) 1);
2419 	}
2420 	break;
2421 	}
2422 	{
2423 		if (!((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(39))) goto LA6_;
2424 		(*L).Sup.bufpos += ((NI) 1);
2425 	}
2426 	goto LA4_;
2427 	LA6_: ;
2428 	{
2429 		{
2430 			NIM_BOOL T11_;
2431 			T11_ = (NIM_BOOL)0;
2432 			T11_ = (((NI) 0) < startPos);
2433 			if (!(T11_)) goto LA12_;
2434 			T11_ = ((NU8)((*L).Sup.buf[(NI)(startPos - ((NI) 1))]) == (NU8)(96));
2435 			LA12_: ;
2436 			if (!T11_) goto LA13_;
2437 			unsureAsgnRef((void**) (&(*tok).literal), copyString(((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_28)));
2438 			(*L).Sup.bufpos = (NI)(startPos + ((NI) 1));
2439 		}
2440 		goto LA9_;
2441 		LA13_: ;
2442 		{
2443 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_29));
2444 		}
2445 		LA9_: ;
2446 	}
2447 	LA4_: ;
2448 }
N_NIMCALL(void,matchChars__lexer_411)2449 N_LIB_PRIVATE N_NIMCALL(void, matchChars__lexer_411)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars) {
2450 	NI pos;
2451 	pos = (*L).Sup.bufpos;
2452 	{
2453 		while (1) {
2454 			if (!((chars[(NU)(((NU8)((*L).Sup.buf[pos])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[pos])))&7U)))!=0)) goto LA2;
2455 			unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
2456 			pos += ((NI) 1);
2457 		} LA2: ;
2458 	}
2459 	(*L).Sup.bufpos = pos;
2460 }
N_NIMCALL(void,lexMessageLitNum__lexer_424)2461 N_LIB_PRIVATE N_NIMCALL(void, lexMessageLitNum__lexer_424)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NimStringDesc* msg, NI startpos, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msgKind) {
2462 	NI msgPos;
2463 	tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA t;
2464 	NimStringDesc* T11_;
2465 	msgPos = (*L).Sup.bufpos;
2466 	nimZeroMem((void*)(&t), sizeof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA));
2467 	t.literal = ((NimStringDesc*) NIM_NIL);
2468 	(*L).Sup.bufpos = startpos;
2469 	matchChars__lexer_411(L, (&t), TM__4JpEWnGrmRM8CRqL3P2O1Q_30);
2470 	{
2471 		NIM_BOOL T3_;
2472 		T3_ = (NIM_BOOL)0;
2473 		T3_ = (((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(43)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(45)));
2474 		if (!(T3_)) goto LA4_;
2475 		T3_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) == ((NU8)(101)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) == ((NU8)(69)));
2476 		LA4_: ;
2477 		if (!T3_) goto LA5_;
2478 		t.literal = addChar(t.literal, (*L).Sup.buf[(*L).Sup.bufpos]);
2479 		(*L).Sup.bufpos += ((NI) 1);
2480 		matchChars__lexer_411(L, (&t), TM__4JpEWnGrmRM8CRqL3P2O1Q_30);
2481 	}
2482 	LA5_: ;
2483 	{
2484 		if (!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(95)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(46)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(39)))) goto LA9_;
2485 		t.literal = addChar(t.literal, (*L).Sup.buf[(*L).Sup.bufpos]);
2486 		(*L).Sup.bufpos += ((NI) 1);
2487 		matchChars__lexer_411(L, (&t), TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2488 	}
2489 	LA9_: ;
2490 	(*L).Sup.bufpos = msgPos;
2491 	T11_ = NIM_NIL;
2492 	T11_ = nsuFormatSingleElem(msg, t.literal);
2493 	lexMessage__lexer_336((&(*L)), msgKind, T11_);
2494 }
N_NIMCALL(NI,matchUnderscoreChars__lexer_385)2495 N_LIB_PRIVATE N_NIMCALL(NI, matchUnderscoreChars__lexer_385)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars) {
2496 	NI result;
2497 	NI pos;
2498 	result = (NI)0;
2499 	pos = (*L).Sup.bufpos;
2500 	result = ((NI) 0);
2501 	{
2502 		while (1) {
2503 			{
2504 				if (!((chars[(NU)(((NU8)((*L).Sup.buf[pos])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[pos])))&7U)))!=0)) goto LA5_;
2505 				unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
2506 				pos += ((NI) 1);
2507 				result += ((NI) 1);
2508 			}
2509 			goto LA3_;
2510 			LA5_: ;
2511 			{
2512 				goto LA1;
2513 			}
2514 			LA3_: ;
2515 			{
2516 				if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(95))) goto LA10_;
2517 				{
2518 					if (!!(((chars[(NU)(((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])))&7U)))!=0))) goto LA14_;
2519 					lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_32));
2520 					goto LA1;
2521 				}
2522 				LA14_: ;
2523 				unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 95));
2524 				pos += ((NI) 1);
2525 			}
2526 			LA10_: ;
2527 		}
2528 	} LA1: ;
2529 	(*L).Sup.bufpos = pos;
2530 	return result;
2531 }
N_INLINE(int,nimCmpMem)2532 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
2533 	int result;
2534 	result = (int)0;
2535 	result = memcmp(a, b, ((size_t) (size)));
2536 	return result;
2537 }
N_INLINE(NIM_BOOL,equalMem__system_1735)2538 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
2539 	NIM_BOOL result;
2540 	int T1_;
2541 	result = (NIM_BOOL)0;
2542 	T1_ = (int)0;
2543 	T1_ = nimCmpMem(a, b, size);
2544 	result = (T1_ == ((NI32) 0));
2545 	return result;
2546 }
N_INLINE(NIM_BOOL,eqStrings)2547 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
2548 	NIM_BOOL result;
2549 	NI alen;
2550 	NI blen;
2551 {	result = (NIM_BOOL)0;
2552 	alen = (a ? a->Sup.len : 0);
2553 	blen = (b ? b->Sup.len : 0);
2554 	{
2555 		if (!(alen == blen)) goto LA3_;
2556 		{
2557 			if (!(alen == ((NI) 0))) goto LA7_;
2558 			result = NIM_TRUE;
2559 			goto BeforeRet_;
2560 		}
2561 		LA7_: ;
2562 		result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
2563 		goto BeforeRet_;
2564 	}
2565 	LA3_: ;
2566 	}BeforeRet_: ;
2567 	return result;
2568 }
N_INLINE(void,pushSafePoint)2569 static N_INLINE(void, pushSafePoint)(TSafePoint* s) {
2570 	(*s).prev = excHandler__system_2565;
2571 	excHandler__system_2565 = s;
2572 }
N_INLINE(void,popSafePoint)2573 static N_INLINE(void, popSafePoint)(void) {
2574 	excHandler__system_2565 = (*excHandler__system_2565).prev;
2575 }
N_INLINE(Exception *,nimBorrowCurrentException)2576 static N_INLINE(Exception*, nimBorrowCurrentException)(void) {
2577 	Exception* result;
2578 	result = NIM_NIL;
2579 	result = currException__system_2566;
2580 	return result;
2581 }
N_INLINE(NI,pluspercent___system_696)2582 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
2583 	NI result;
2584 	result = (NI)0;
2585 	result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
2586 	return result;
2587 }
N_INLINE(void,incRef__system_5317)2588 static N_INLINE(void, incRef__system_5317)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2589 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
2590 }
N_INLINE(NI,minuspercent___system_716)2591 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
2592 	NI result;
2593 	result = (NI)0;
2594 	result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
2595 	return result;
2596 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5279)2597 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5279)(void* usr) {
2598 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
2599 	NI T1_;
2600 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2601 	T1_ = (NI)0;
2602 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
2603 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
2604 	return result;
2605 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)2606 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
2607 	NIM_BOOL result;
2608 	result = (NIM_BOOL)0;
2609 	result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
2610 	return result;
2611 }
N_INLINE(void,rtlAddZCT__system_5322)2612 static N_INLINE(void, rtlAddZCT__system_5322)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2613 	addZCT__system_5273((&gch__system_5226.zct), c);
2614 }
N_INLINE(void,decRef__system_5324)2615 static N_INLINE(void, decRef__system_5324)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2616 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
2617 	{
2618 		NIM_BOOL T3_;
2619 		T3_ = (NIM_BOOL)0;
2620 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
2621 		if (!T3_) goto LA4_;
2622 		rtlAddZCT__system_5322(c);
2623 	}
2624 	LA4_: ;
2625 }
N_INLINE(void,asgnRef)2626 static N_INLINE(void, asgnRef)(void** dest, void* src) {
2627 	{
2628 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
2629 		if (!!((src == NIM_NIL))) goto LA3_;
2630 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2631 		T5_ = usrToCell__system_5279(src);
2632 		incRef__system_5317(T5_);
2633 	}
2634 	LA3_: ;
2635 	{
2636 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
2637 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
2638 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2639 		T10_ = usrToCell__system_5279((*dest));
2640 		decRef__system_5324(T10_);
2641 	}
2642 	LA8_: ;
2643 	(*dest) = src;
2644 }
N_INLINE(void,popCurrentException)2645 static N_INLINE(void, popCurrentException)(void) {
2646 	asgnRef((void**) (&currException__system_2566), (*currException__system_2566).up);
2647 }
N_NIMCALL(void,getNumber__lexer_382)2648 N_LIB_PRIVATE N_NIMCALL(void, getNumber__lexer_382)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* result) {
2649 	NI64 volatile xi;
2650 	NIM_BOOL isBase10;
2651 	NI numDigits;
2652 	NIM_BOOL isPositive;
2653 	NI startpos;
2654 	NI endpos;
2655 	NI postPos;
2656 	xi = (NI64)0;
2657 	isBase10 = NIM_TRUE;
2658 	numDigits = ((NI) 0);
2659 	(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 69);
2660 	unsureAsgnRef((void**) (&(*result).literal), ((NimStringDesc*) NIM_NIL));
2661 	(*result).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 0);
2662 	isPositive = NIM_TRUE;
2663 	{
2664 		if (!((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(45))) goto LA3_;
2665 		unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, (*L).Sup.buf[(*L).Sup.bufpos]));
2666 		(*L).Sup.bufpos += ((NI) 1);
2667 		isPositive = NIM_FALSE;
2668 	}
2669 	LA3_: ;
2670 	startpos = (*L).Sup.bufpos;
2671 	{
2672 		NIM_BOOL T7_;
2673 		T7_ = (NIM_BOOL)0;
2674 		T7_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(48));
2675 		if (!(T7_)) goto LA8_;
2676 		T7_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) >= ((NU8)(66)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) <= ((NU8)(67)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) == ((NU8)(79)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) == ((NU8)(88)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) >= ((NU8)(98)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) <= ((NU8)(99)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) == ((NU8)(111)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) == ((NU8)(120)));
2677 		LA8_: ;
2678 		if (!T7_) goto LA9_;
2679 		isBase10 = NIM_FALSE;
2680 		unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 48));
2681 		(*L).Sup.bufpos += ((NI) 1);
2682 		switch (((NU8)((*L).Sup.buf[(*L).Sup.bufpos]))) {
2683 		case 99:
2684 		case 67:
2685 		{
2686 			NI T12_;
2687 			lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_31), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 20));
2688 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 99));
2689 			(*L).Sup.bufpos += ((NI) 1);
2690 			T12_ = (NI)0;
2691 			T12_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_33);
2692 			numDigits = ((NI) (T12_));
2693 		}
2694 		break;
2695 		case 79:
2696 		{
2697 			lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_34), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2698 		}
2699 		break;
2700 		case 120:
2701 		case 88:
2702 		{
2703 			NI T15_;
2704 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 120));
2705 			(*L).Sup.bufpos += ((NI) 1);
2706 			T15_ = (NI)0;
2707 			T15_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_35);
2708 			numDigits = ((NI) (T15_));
2709 		}
2710 		break;
2711 		case 111:
2712 		{
2713 			NI T17_;
2714 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 111));
2715 			(*L).Sup.bufpos += ((NI) 1);
2716 			T17_ = (NI)0;
2717 			T17_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_33);
2718 			numDigits = ((NI) (T17_));
2719 		}
2720 		break;
2721 		case 98:
2722 		case 66:
2723 		{
2724 			NI T19_;
2725 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 98));
2726 			(*L).Sup.bufpos += ((NI) 1);
2727 			T19_ = (NI)0;
2728 			T19_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_36);
2729 			numDigits = ((NI) (T19_));
2730 		}
2731 		break;
2732 		default:
2733 		{
2734 			tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T21_;
2735 			T21_ = getLineInfo__lexer_314((&(*L)));
2736 			internalErrorImpl__msgs_1431((*L).config, T21_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_37), TM__4JpEWnGrmRM8CRqL3P2O1Q_38);
2737 		}
2738 		break;
2739 		}
2740 		{
2741 			if (!(numDigits == ((NI) 0))) goto LA24_;
2742 			lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_39), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2743 		}
2744 		LA24_: ;
2745 	}
2746 	goto LA5_;
2747 	LA9_: ;
2748 	{
2749 		NI T27_;
2750 		T27_ = (NI)0;
2751 		T27_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2752 		(void)(T27_);
2753 		{
2754 			NIM_BOOL T30_;
2755 			NI T34_;
2756 			T30_ = (NIM_BOOL)0;
2757 			T30_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(46));
2758 			if (!(T30_)) goto LA31_;
2759 			T30_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) <= ((NU8)(57)));
2760 			LA31_: ;
2761 			if (!T30_) goto LA32_;
2762 			(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79);
2763 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 46));
2764 			(*L).Sup.bufpos += ((NI) 1);
2765 			T34_ = (NI)0;
2766 			T34_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2767 			(void)(T34_);
2768 		}
2769 		LA32_: ;
2770 		{
2771 			NI T43_;
2772 			if (!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(101)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(69)))) goto LA37_;
2773 			(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79);
2774 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, (*L).Sup.buf[(*L).Sup.bufpos]));
2775 			(*L).Sup.bufpos += ((NI) 1);
2776 			{
2777 				if (!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(43)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(45)))) goto LA41_;
2778 				unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, (*L).Sup.buf[(*L).Sup.bufpos]));
2779 				(*L).Sup.bufpos += ((NI) 1);
2780 			}
2781 			LA41_: ;
2782 			T43_ = (NI)0;
2783 			T43_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2784 			(void)(T43_);
2785 		}
2786 		LA37_: ;
2787 	}
2788 	LA5_: ;
2789 	endpos = (*L).Sup.bufpos;
2790 	postPos = endpos;
2791 	{
2792 		NI errPos;
2793 		NIM_BOOL customLitPossible;
2794 		if (!((TM__4JpEWnGrmRM8CRqL3P2O1Q_40[(NU)(((NU8)((*L).Sup.buf[postPos])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[postPos])))&7U)))!=0)) goto LA46_;
2795 		errPos = postPos;
2796 		customLitPossible = NIM_FALSE;
2797 		{
2798 			if (!((NU8)((*L).Sup.buf[postPos]) == (NU8)(39))) goto LA50_;
2799 			postPos += ((NI) 1);
2800 			customLitPossible = NIM_TRUE;
2801 		}
2802 		LA50_: ;
2803 		{
2804 			NimStringDesc* suffix;
2805 			NimStringDesc* suffixAsLower;
2806 			if (!(((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(255)))) goto LA54_;
2807 			suffix = rawNewString(((NI) 10));
2808 			{
2809 				while (1) {
2810 					suffix = addChar(suffix, (*L).Sup.buf[postPos]);
2811 					postPos += ((NI) 1);
2812 					{
2813 						if (!!((((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(95)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(255))))) goto LA60_;
2814 						goto LA56;
2815 					}
2816 					LA60_: ;
2817 				}
2818 			} LA56: ;
2819 			suffixAsLower = nsuToLowerAsciiStr(suffix);
2820 			switch (hashString(suffixAsLower) & 15) {
2821 			case 1:
2822 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_42))) goto LA62_;
2823 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_48))) goto LA67_;
2824 break;
2825 			case 2:
2826 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_45))) goto LA64_;
2827 break;
2828 			case 3:
2829 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_53))) goto LA72_;
2830 break;
2831 			case 5:
2832 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_43))) goto LA63_;
2833 break;
2834 			case 6:
2835 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_44))) goto LA63_;
2836 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_52))) goto LA71_;
2837 break;
2838 			case 7:
2839 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_47))) goto LA66_;
2840 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_51))) goto LA70_;
2841 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_54))) goto LA73_;
2842 break;
2843 			case 9:
2844 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_50))) goto LA69_;
2845 break;
2846 			case 10:
2847 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_46))) goto LA65_;
2848 break;
2849 			case 13:
2850 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_49))) goto LA68_;
2851 break;
2852 			case 14:
2853 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_41))) goto LA62_;
2854 break;
2855 			}
2856 			goto LA74_;
2857 			LA62_: ;
2858 			{
2859 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 80);
2860 			}
2861 			goto LA75_;
2862 			LA63_: ;
2863 			{
2864 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 81);
2865 			}
2866 			goto LA75_;
2867 			LA64_: ;
2868 			{
2869 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 82);
2870 			}
2871 			goto LA75_;
2872 			LA65_: ;
2873 			{
2874 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 70);
2875 			}
2876 			goto LA75_;
2877 			LA66_: ;
2878 			{
2879 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 71);
2880 			}
2881 			goto LA75_;
2882 			LA67_: ;
2883 			{
2884 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 72);
2885 			}
2886 			goto LA75_;
2887 			LA68_: ;
2888 			{
2889 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 73);
2890 			}
2891 			goto LA75_;
2892 			LA69_: ;
2893 			{
2894 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 74);
2895 			}
2896 			goto LA75_;
2897 			LA70_: ;
2898 			{
2899 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 75);
2900 			}
2901 			goto LA75_;
2902 			LA71_: ;
2903 			{
2904 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 76);
2905 			}
2906 			goto LA75_;
2907 			LA72_: ;
2908 			{
2909 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 77);
2910 			}
2911 			goto LA75_;
2912 			LA73_: ;
2913 			{
2914 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 78);
2915 			}
2916 			goto LA75_;
2917 			LA74_: ;
2918 			{
2919 				{
2920 					if (!customLitPossible) goto LA91_;
2921 					(*result).iNumber = ((NI64) (((*result).literal ? (*result).literal->Sup.len : 0)));
2922 					unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 39));
2923 					unsureAsgnRef((void**) (&(*result).literal), resizeString((*result).literal, (suffix ? suffix->Sup.len : 0) + 0));
2924 appendString((*result).literal, suffix);
2925 					(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 89);
2926 				}
2927 				goto LA89_;
2928 				LA91_: ;
2929 				{
2930 					lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_55), errPos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2931 				}
2932 				LA89_: ;
2933 			}
2934 			LA75_: ;
2935 		}
2936 		goto LA52_;
2937 		LA54_: ;
2938 		{
2939 			lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_55), errPos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2940 		}
2941 		LA52_: ;
2942 	}
2943 	LA46_: ;
2944 	{
2945 		NIM_BOOL T97_;
2946 		NIM_BOOL T99_;
2947 		T97_ = (NIM_BOOL)0;
2948 		T97_ = (((NU8)((*L).Sup.buf[postPos])) == ((NU8)(39)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(70)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(88)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(95)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(102)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(111)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(120)));
2949 		if (T97_) goto LA98_;
2950 		T99_ = (NIM_BOOL)0;
2951 		T99_ = ((NU8)((*L).Sup.buf[postPos]) == (NU8)(46));
2952 		if (!(T99_)) goto LA100_;
2953 		T99_ = (((NU8)((*L).Sup.buf[(NI)(postPos + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)(postPos + ((NI) 1))])) <= ((NU8)(57)));
2954 		LA100_: ;
2955 		T97_ = T99_;
2956 		LA98_: ;
2957 		if (!T97_) goto LA101_;
2958 		lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_39), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2959 	}
2960 	LA101_: ;
2961 	{
2962 		NI volatile pos;
2963 		TSafePoint TM__4JpEWnGrmRM8CRqL3P2O1Q_56;
2964 		if (!!(((*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 89)))) goto LA105_;
2965 		(*L).Sup.bufpos = startpos;
2966 		pos = startpos;
2967 		pushSafePoint(&TM__4JpEWnGrmRM8CRqL3P2O1Q_56);
2968 		TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status = setjmp(TM__4JpEWnGrmRM8CRqL3P2O1Q_56.context);
2969 		if (TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status == 0) {
2970 		{
2971 			NIM_BOOL T109_;
2972 			T109_ = (NIM_BOOL)0;
2973 			T109_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(48));
2974 			if (!(T109_)) goto LA110_;
2975 			T109_ = (((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(88)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(120)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(111)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(98)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(66)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(99)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(67)));
2976 			LA110_: ;
2977 			if (!T109_) goto LA111_;
2978 			pos += ((NI) 2);
2979 			xi = IL64(0);
2980 			switch (((NU8)((*L).Sup.buf[(NI)(pos - ((NI) 1))]))) {
2981 			case 98:
2982 			case 66:
2983 			{
2984 				(*result).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 1);
2985 				{
2986 					while (1) {
2987 						if (!(pos < endpos)) goto LA115;
2988 						{
2989 							if (!!(((NU8)((*L).Sup.buf[pos]) == (NU8)(95)))) goto LA118_;
2990 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 1))) | ((NI64) ((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 48)))));
2991 						}
2992 						LA118_: ;
2993 						pos += ((NI) 1);
2994 					} LA115: ;
2995 				}
2996 			}
2997 			break;
2998 			case 111:
2999 			case 99:
3000 			case 67:
3001 			{
3002 				(*result).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 2);
3003 				{
3004 					while (1) {
3005 						if (!(pos < endpos)) goto LA122;
3006 						{
3007 							if (!!(((NU8)((*L).Sup.buf[pos]) == (NU8)(95)))) goto LA125_;
3008 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 3))) | ((NI64) ((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 48)))));
3009 						}
3010 						LA125_: ;
3011 						pos += ((NI) 1);
3012 					} LA122: ;
3013 				}
3014 			}
3015 			break;
3016 			case 120:
3017 			case 88:
3018 			{
3019 				(*result).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 3);
3020 				{
3021 					while (1) {
3022 						if (!(pos < endpos)) goto LA129;
3023 						switch (((NU8)((*L).Sup.buf[pos]))) {
3024 						case 95:
3025 						{
3026 							pos += ((NI) 1);
3027 						}
3028 						break;
3029 						case 48 ... 57:
3030 						{
3031 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 4))) | ((NI64) ((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 48)))));
3032 							pos += ((NI) 1);
3033 						}
3034 						break;
3035 						case 97 ... 102:
3036 						{
3037 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 4))) | ((NI64) ((NI)((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 97)) + ((NI) 10)))));
3038 							pos += ((NI) 1);
3039 						}
3040 						break;
3041 						case 65 ... 70:
3042 						{
3043 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 4))) | ((NI64) ((NI)((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 65)) + ((NI) 10)))));
3044 							pos += ((NI) 1);
3045 						}
3046 						break;
3047 						default:
3048 						{
3049 							goto LA128;
3050 						}
3051 						break;
3052 						}
3053 					} LA129: ;
3054 				} LA128: ;
3055 			}
3056 			break;
3057 			default:
3058 			{
3059 				tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T136_;
3060 				T136_ = getLineInfo__lexer_314((&(*L)));
3061 				internalErrorImpl__msgs_1431((*L).config, T136_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_37), TM__4JpEWnGrmRM8CRqL3P2O1Q_57);
3062 			}
3063 			break;
3064 			}
3065 			switch ((*result).tokType) {
3066 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 69):
3067 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 73):
3068 			{
3069 				{
3070 					if (!isPositive) goto LA140_;
3071 					(*result).iNumber = xi;
3072 				}
3073 				goto LA138_;
3074 				LA140_: ;
3075 				{
3076 					(*result).iNumber = -(xi);
3077 				}
3078 				LA138_: ;
3079 			}
3080 			break;
3081 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 70):
3082 			{
3083 				{
3084 					if (!isPositive) goto LA146_;
3085 					(*result).iNumber = (NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 56)))) >> (NU64)(((NI) 56)));
3086 				}
3087 				goto LA144_;
3088 				LA146_: ;
3089 				{
3090 					(*result).iNumber = -((NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 56)))) >> (NU64)(((NI) 56))));
3091 				}
3092 				LA144_: ;
3093 			}
3094 			break;
3095 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 71):
3096 			{
3097 				{
3098 					if (!isPositive) goto LA152_;
3099 					(*result).iNumber = (NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 48)))) >> (NU64)(((NI) 48)));
3100 				}
3101 				goto LA150_;
3102 				LA152_: ;
3103 				{
3104 					(*result).iNumber = -((NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 48)))) >> (NU64)(((NI) 48))));
3105 				}
3106 				LA150_: ;
3107 			}
3108 			break;
3109 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 72):
3110 			{
3111 				{
3112 					if (!isPositive) goto LA158_;
3113 					(*result).iNumber = (NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 32)))) >> (NU64)(((NI) 32)));
3114 				}
3115 				goto LA156_;
3116 				LA158_: ;
3117 				{
3118 					(*result).iNumber = -((NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 32)))) >> (NU64)(((NI) 32))));
3119 				}
3120 				LA156_: ;
3121 			}
3122 			break;
3123 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 74):
3124 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 78):
3125 			{
3126 				{
3127 					if (!isPositive) goto LA164_;
3128 					(*result).iNumber = xi;
3129 				}
3130 				goto LA162_;
3131 				LA164_: ;
3132 				{
3133 					(*result).iNumber = -(xi);
3134 				}
3135 				LA162_: ;
3136 			}
3137 			break;
3138 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 75):
3139 			{
3140 				{
3141 					if (!isPositive) goto LA170_;
3142 					(*result).iNumber = (NI64)(xi & IL64(255));
3143 				}
3144 				goto LA168_;
3145 				LA170_: ;
3146 				{
3147 					(*result).iNumber = -((NI64)(xi & IL64(255)));
3148 				}
3149 				LA168_: ;
3150 			}
3151 			break;
3152 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 76):
3153 			{
3154 				{
3155 					if (!isPositive) goto LA176_;
3156 					(*result).iNumber = (NI64)(xi & IL64(65535));
3157 				}
3158 				goto LA174_;
3159 				LA176_: ;
3160 				{
3161 					(*result).iNumber = -((NI64)(xi & IL64(65535)));
3162 				}
3163 				LA174_: ;
3164 			}
3165 			break;
3166 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 77):
3167 			{
3168 				{
3169 					if (!isPositive) goto LA182_;
3170 					(*result).iNumber = (NI64)(xi & IL64(4294967295));
3171 				}
3172 				goto LA180_;
3173 				LA182_: ;
3174 				{
3175 					(*result).iNumber = -((NI64)(xi & IL64(4294967295)));
3176 				}
3177 				LA180_: ;
3178 			}
3179 			break;
3180 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 80):
3181 			{
3182 				NF32 T186_;
3183 				T186_ = (NF32)0;
3184 				{
3185 					if (!isPositive) goto LA189_;
3186 					T186_ = (*((NF32*) ((&xi))));
3187 				}
3188 				goto LA187_;
3189 				LA189_: ;
3190 				{
3191 					T186_ = -((*((NF32*) ((&xi)))));
3192 				}
3193 				LA187_: ;
3194 				(*result).fNumber = ((NF) (T186_));
3195 			}
3196 			break;
3197 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 81):
3198 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79):
3199 			{
3200 				{
3201 					if (!isPositive) goto LA195_;
3202 					(*result).fNumber = (*((NF*) ((&xi))));
3203 				}
3204 				goto LA193_;
3205 				LA195_: ;
3206 				{
3207 					(*result).fNumber = -((*((NF*) ((&xi)))));
3208 				}
3209 				LA193_: ;
3210 			}
3211 			break;
3212 			default:
3213 			{
3214 				tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T199_;
3215 				T199_ = getLineInfo__lexer_314((&(*L)));
3216 				internalErrorImpl__msgs_1431((*L).config, T199_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_37), TM__4JpEWnGrmRM8CRqL3P2O1Q_58);
3217 			}
3218 			break;
3219 			}
3220 			{
3221 				NIM_BOOL outOfRange;
3222 				if (!!(((*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79) || (*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 80) || (*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 81) || (*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 82)))) goto LA202_;
3223 				switch ((*result).tokType) {
3224 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 75):
3225 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 76):
3226 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 77):
3227 				{
3228 					outOfRange = !(((*result).iNumber == xi));
3229 				}
3230 				break;
3231 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 70):
3232 				{
3233 					outOfRange = (IL64(255) < xi);
3234 				}
3235 				break;
3236 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 71):
3237 				{
3238 					outOfRange = (IL64(65535) < xi);
3239 				}
3240 				break;
3241 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 72):
3242 				{
3243 					outOfRange = (IL64(4294967295) < xi);
3244 				}
3245 				break;
3246 				default:
3247 				{
3248 					outOfRange = NIM_FALSE;
3249 				}
3250 				break;
3251 				}
3252 				{
3253 					if (!outOfRange) goto LA211_;
3254 					lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_59), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
3255 				}
3256 				LA211_: ;
3257 			}
3258 			LA202_: ;
3259 		}
3260 		goto LA107_;
3261 		LA111_: ;
3262 		{
3263 			NIM_BOOL outOfRange_2;
3264 			switch ((*result).tokType) {
3265 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 82):
3266 			{
3267 				(*result).fNumber = nsuParseFloat((*result).literal);
3268 			}
3269 			break;
3270 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 78):
3271 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 74):
3272 			{
3273 				NU64 iNumber;
3274 				NI volatile len;
3275 				TSafePoint TM__4JpEWnGrmRM8CRqL3P2O1Q_60;
3276 				iNumber = (NU64)0;
3277 				len = (NI)0;
3278 				pushSafePoint(&TM__4JpEWnGrmRM8CRqL3P2O1Q_60);
3279 				TM__4JpEWnGrmRM8CRqL3P2O1Q_60.status = setjmp(TM__4JpEWnGrmRM8CRqL3P2O1Q_60.context);
3280 				if (TM__4JpEWnGrmRM8CRqL3P2O1Q_60.status == 0) {
3281 				len = npuParseBiggestUInt((*result).literal, (&iNumber), ((NI) 0));
3282 				popSafePoint();
3283 				}
3284 				else {
3285 					popSafePoint();
3286 					if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_))) {
3287 						tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ* T218_;
3288 						NimStringDesc* T219_;
3289 						TM__4JpEWnGrmRM8CRqL3P2O1Q_60.status = 0;
3290 						T218_ = NIM_NIL;
3291 						T218_ = (tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ*) newObj((&NTIrefoverflowdefect__r8GBEWywN07B3Rat3azS4Q_), sizeof(tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ));
3292 						(*T218_).Sup.Sup.Sup.Sup.m_type = (&NTIoverflowdefect__9cxMi1BPLc3UKt9br86bGfGQ_);
3293 						(*T218_).Sup.Sup.Sup.name = "OverflowDefect";
3294 						T219_ = NIM_NIL;
3295 						T219_ = rawNewString(((*result).literal ? (*result).literal->Sup.len : 0) + 21);
3296 appendString(T219_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_61));
3297 appendString(T219_, (*result).literal);
3298 						asgnRef((void**) (&(*T218_).Sup.Sup.Sup.message), T219_);
3299 						asgnRef((void**) (&(*T218_).Sup.Sup.Sup.parent), ((Exception*) NIM_NIL));
3300 						raiseExceptionEx((Exception*)T218_, "OverflowDefect", "getNumber", "lexer.nim", 539);
3301 						popCurrentException();
3302 					}
3303 				}
3304 				if (TM__4JpEWnGrmRM8CRqL3P2O1Q_60.status != 0) reraiseException();
3305 				{
3306 					tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T224_;
3307 					NimStringDesc* T225_;
3308 					if (!!((len == ((*result).literal ? (*result).literal->Sup.len : 0)))) goto LA222_;
3309 					T224_ = NIM_NIL;
3310 					T224_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw));
3311 					(*T224_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_);
3312 					(*T224_).Sup.Sup.name = "ValueError";
3313 					T225_ = NIM_NIL;
3314 					T225_ = rawNewString(((*result).literal ? (*result).literal->Sup.len : 0) + 17);
3315 appendString(T225_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_62));
3316 appendString(T225_, (*result).literal);
3317 					asgnRef((void**) (&(*T224_).Sup.Sup.message), T225_);
3318 					asgnRef((void**) (&(*T224_).Sup.Sup.parent), ((Exception*) NIM_NIL));
3319 					raiseExceptionEx((Exception*)T224_, "ValueError", "getNumber", "lexer.nim", 541);
3320 				}
3321 				LA222_: ;
3322 				(*result).iNumber = ((NI64) (iNumber));
3323 			}
3324 			break;
3325 			default:
3326 			{
3327 				NI64 iNumber_2;
3328 				NI volatile len_2;
3329 				TSafePoint TM__4JpEWnGrmRM8CRqL3P2O1Q_63;
3330 				iNumber_2 = (NI64)0;
3331 				len_2 = (NI)0;
3332 				pushSafePoint(&TM__4JpEWnGrmRM8CRqL3P2O1Q_63);
3333 				TM__4JpEWnGrmRM8CRqL3P2O1Q_63.status = setjmp(TM__4JpEWnGrmRM8CRqL3P2O1Q_63.context);
3334 				if (TM__4JpEWnGrmRM8CRqL3P2O1Q_63.status == 0) {
3335 				len_2 = npuParseBiggestInt((*result).literal, (&iNumber_2), ((NI) 0));
3336 				popSafePoint();
3337 				}
3338 				else {
3339 					popSafePoint();
3340 					if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_))) {
3341 						tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ* T229_;
3342 						NimStringDesc* T230_;
3343 						TM__4JpEWnGrmRM8CRqL3P2O1Q_63.status = 0;
3344 						T229_ = NIM_NIL;
3345 						T229_ = (tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ*) newObj((&NTIrefoverflowdefect__r8GBEWywN07B3Rat3azS4Q_), sizeof(tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ));
3346 						(*T229_).Sup.Sup.Sup.Sup.m_type = (&NTIoverflowdefect__9cxMi1BPLc3UKt9br86bGfGQ_);
3347 						(*T229_).Sup.Sup.Sup.name = "OverflowDefect";
3348 						T230_ = NIM_NIL;
3349 						T230_ = rawNewString(((*result).literal ? (*result).literal->Sup.len : 0) + 21);
3350 appendString(T230_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_61));
3351 appendString(T230_, (*result).literal);
3352 						asgnRef((void**) (&(*T229_).Sup.Sup.Sup.message), T230_);
3353 						asgnRef((void**) (&(*T229_).Sup.Sup.Sup.parent), ((Exception*) NIM_NIL));
3354 						raiseExceptionEx((Exception*)T229_, "OverflowDefect", "getNumber", "lexer.nim", 549);
3355 						popCurrentException();
3356 					}
3357 				}
3358 				if (TM__4JpEWnGrmRM8CRqL3P2O1Q_63.status != 0) reraiseException();
3359 				{
3360 					tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T235_;
3361 					NimStringDesc* T236_;
3362 					if (!!((len_2 == ((*result).literal ? (*result).literal->Sup.len : 0)))) goto LA233_;
3363 					T235_ = NIM_NIL;
3364 					T235_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw));
3365 					(*T235_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_);
3366 					(*T235_).Sup.Sup.name = "ValueError";
3367 					T236_ = NIM_NIL;
3368 					T236_ = rawNewString(((*result).literal ? (*result).literal->Sup.len : 0) + 17);
3369 appendString(T236_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_62));
3370 appendString(T236_, (*result).literal);
3371 					asgnRef((void**) (&(*T235_).Sup.Sup.message), T236_);
3372 					asgnRef((void**) (&(*T235_).Sup.Sup.parent), ((Exception*) NIM_NIL));
3373 					raiseExceptionEx((Exception*)T235_, "ValueError", "getNumber", "lexer.nim", 551);
3374 				}
3375 				LA233_: ;
3376 				(*result).iNumber = iNumber_2;
3377 			}
3378 			break;
3379 			}
3380 			switch ((*result).tokType) {
3381 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 70):
3382 			{
3383 				NIM_BOOL T238_;
3384 				T238_ = (NIM_BOOL)0;
3385 				T238_ = (IL64(127) < (*result).iNumber);
3386 				if (T238_) goto LA239_;
3387 				T238_ = ((*result).iNumber < IL64(-128));
3388 				LA239_: ;
3389 				outOfRange_2 = T238_;
3390 			}
3391 			break;
3392 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 75):
3393 			{
3394 				NIM_BOOL T241_;
3395 				T241_ = (NIM_BOOL)0;
3396 				T241_ = (IL64(255) < (*result).iNumber);
3397 				if (T241_) goto LA242_;
3398 				T241_ = ((*result).iNumber < IL64(0));
3399 				LA242_: ;
3400 				outOfRange_2 = T241_;
3401 			}
3402 			break;
3403 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 71):
3404 			{
3405 				NIM_BOOL T244_;
3406 				T244_ = (NIM_BOOL)0;
3407 				T244_ = (IL64(32767) < (*result).iNumber);
3408 				if (T244_) goto LA245_;
3409 				T244_ = ((*result).iNumber < IL64(-32768));
3410 				LA245_: ;
3411 				outOfRange_2 = T244_;
3412 			}
3413 			break;
3414 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 76):
3415 			{
3416 				NIM_BOOL T247_;
3417 				T247_ = (NIM_BOOL)0;
3418 				T247_ = (IL64(65535) < (*result).iNumber);
3419 				if (T247_) goto LA248_;
3420 				T247_ = ((*result).iNumber < IL64(0));
3421 				LA248_: ;
3422 				outOfRange_2 = T247_;
3423 			}
3424 			break;
3425 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 72):
3426 			{
3427 				NIM_BOOL T250_;
3428 				T250_ = (NIM_BOOL)0;
3429 				T250_ = (IL64(2147483647) < (*result).iNumber);
3430 				if (T250_) goto LA251_;
3431 				T250_ = ((*result).iNumber < IL64(-2147483648));
3432 				LA251_: ;
3433 				outOfRange_2 = T250_;
3434 			}
3435 			break;
3436 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 77):
3437 			{
3438 				NIM_BOOL T253_;
3439 				T253_ = (NIM_BOOL)0;
3440 				T253_ = (IL64(4294967295) < (*result).iNumber);
3441 				if (T253_) goto LA254_;
3442 				T253_ = ((*result).iNumber < IL64(0));
3443 				LA254_: ;
3444 				outOfRange_2 = T253_;
3445 			}
3446 			break;
3447 			default:
3448 			{
3449 				outOfRange_2 = NIM_FALSE;
3450 			}
3451 			break;
3452 			}
3453 			{
3454 				if (!outOfRange_2) goto LA258_;
3455 				lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_59), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
3456 			}
3457 			LA258_: ;
3458 		}
3459 		LA107_: ;
3460 		{
3461 			if (!((*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 69))) goto LA262_;
3462 			{
3463 				NIM_BOOL T266_;
3464 				T266_ = (NIM_BOOL)0;
3465 				T266_ = (IL64(2147483647) < (*result).iNumber);
3466 				if (T266_) goto LA267_;
3467 				T266_ = ((*result).iNumber < IL64(-2147483648));
3468 				LA267_: ;
3469 				if (!T266_) goto LA268_;
3470 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 73);
3471 			}
3472 			LA268_: ;
3473 		}
3474 		LA262_: ;
3475 		popSafePoint();
3476 		}
3477 		else {
3478 			popSafePoint();
3479 			if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_))) {
3480 				TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status = 0;
3481 				lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_39), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
3482 				popCurrentException();
3483 			}
3484 			else 			if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIoverflowdefect__9cxMi1BPLc3UKt9br86bGfGQ_))||isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIrangedefect__Rp9adJYTsbbIUzQ8fWxwgdA_))) {
3485 				TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status = 0;
3486 				lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_59), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
3487 				popCurrentException();
3488 			}
3489 		}
3490 		if (TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status != 0) reraiseException();
3491 	}
3492 	LA105_: ;
3493 	(*L).Sup.bufpos = postPos;
3494 }
N_NIMCALL(void,rawGetTok__lexer_1588)3495 N_LIB_PRIVATE N_NIMCALL(void, rawGetTok__lexer_1588)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
3496 	NIM_CHAR c;
3497 	fillToken__lexer_268(tok);
3498 	{
3499 		if (!(((NI) 0) <= (*L).indentAhead)) goto LA3_;
3500 		(*tok).indent = (*L).indentAhead;
3501 		(*L).currLineIndent = (*L).indentAhead;
3502 		(*L).indentAhead = ((NI) -1);
3503 	}
3504 	goto LA1_;
3505 	LA3_: ;
3506 	{
3507 		(*tok).indent = ((NI) -1);
3508 	}
3509 	LA1_: ;
3510 	skip__lexer_1552(L, tok);
3511 	c = (*L).Sup.buf[(*L).Sup.bufpos];
3512 	(*tok).line = (*L).Sup.lineNumber;
3513 	(*tok).col = getColNumber__nimlexbase_34((&(*L).Sup), (*L).Sup.bufpos);
3514 	{
3515 		if (!(((NU8)(c)) >= ((NU8)(65)) && ((NU8)(c)) <= ((NU8)(81)) || ((NU8)(c)) >= ((NU8)(83)) && ((NU8)(c)) <= ((NU8)(90)) || ((NU8)(c)) >= ((NU8)(97)) && ((NU8)(c)) <= ((NU8)(113)) || ((NU8)(c)) >= ((NU8)(115)) && ((NU8)(c)) <= ((NU8)(122)) || ((NU8)(c)) >= ((NU8)(128)) && ((NU8)(c)) <= ((NU8)(193)) || ((NU8)(c)) >= ((NU8)(196)) && ((NU8)(c)) <= ((NU8)(225)) || ((NU8)(c)) >= ((NU8)(227)) && ((NU8)(c)) <= ((NU8)(255)))) goto LA8_;
3516 		getSymbol__lexer_1229(L, tok);
3517 	}
3518 	goto LA6_;
3519 	LA8_: ;
3520 	{
3521 		switch (((NU8)(c))) {
3522 		case 194 ... 195:
3523 		case 226:
3524 		{
3525 			{
3526 				NIM_BOOL T14_;
3527 				tyTuple__eYjXpYmwoditlWZaGvgooQ T16_;
3528 				T14_ = (NIM_BOOL)0;
3529 				T14_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
3530 				if (!(T14_)) goto LA15_;
3531 				T16_ = unicodeOprLen__lexer_1203((*L).Sup.buf, (*L).Sup.bufpos);
3532 				T14_ = !((T16_.Field0 == ((NI8) 0)));
3533 				LA15_: ;
3534 				if (!T14_) goto LA17_;
3535 				getOperator__lexer_1324(L, tok);
3536 			}
3537 			goto LA12_;
3538 			LA17_: ;
3539 			{
3540 				getSymbol__lexer_1229(L, tok);
3541 			}
3542 			LA12_: ;
3543 		}
3544 		break;
3545 		case 35:
3546 		{
3547 			scanComment__lexer_1490(L, tok);
3548 		}
3549 		break;
3550 		case 42:
3551 		{
3552 			{
3553 				NIM_BOOL T24_;
3554 				NI h;
3555 				T24_ = (NIM_BOOL)0;
3556 				T24_ = ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(58));
3557 				if (!(T24_)) goto LA25_;
3558 				T24_ = !(((TM__4JpEWnGrmRM8CRqL3P2O1Q_13[(NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 2))])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 2))])))&7U)))!=0));
3559 				LA25_: ;
3560 				if (!T24_) goto LA26_;
3561 				h = emarkamp___pureZhashes_3(((NI) 0), ((NI) 42));
3562 				endOperator__lexer_1315(L, tok, (NI)((*L).Sup.bufpos + ((NI) 1)), h);
3563 			}
3564 			goto LA22_;
3565 			LA26_: ;
3566 			{
3567 				getOperator__lexer_1324(L, tok);
3568 			}
3569 			LA22_: ;
3570 		}
3571 		break;
3572 		case 44:
3573 		{
3574 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 102);
3575 			(*L).Sup.bufpos += ((NI) 1);
3576 		}
3577 		break;
3578 		case 114:
3579 		case 82:
3580 		{
3581 			{
3582 				if (!((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(34))) goto LA33_;
3583 				(*L).Sup.bufpos += ((NI) 1);
3584 				getString__lexer_1097(L, tok, ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 1));
3585 			}
3586 			goto LA31_;
3587 			LA33_: ;
3588 			{
3589 				getSymbol__lexer_1229(L, tok);
3590 			}
3591 			LA31_: ;
3592 		}
3593 		break;
3594 		case 40:
3595 		{
3596 			(*L).Sup.bufpos += ((NI) 1);
3597 			{
3598 				NIM_BOOL T39_;
3599 				T39_ = (NIM_BOOL)0;
3600 				T39_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(46));
3601 				if (!(T39_)) goto LA40_;
3602 				T39_ = !(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(46)));
3603 				LA40_: ;
3604 				if (!T39_) goto LA41_;
3605 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 100);
3606 				(*L).Sup.bufpos += ((NI) 1);
3607 			}
3608 			goto LA37_;
3609 			LA41_: ;
3610 			{
3611 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 90);
3612 			}
3613 			LA37_: ;
3614 		}
3615 		break;
3616 		case 41:
3617 		{
3618 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 91);
3619 			(*L).Sup.bufpos += ((NI) 1);
3620 		}
3621 		break;
3622 		case 91:
3623 		{
3624 			(*L).Sup.bufpos += ((NI) 1);
3625 			{
3626 				NIM_BOOL T48_;
3627 				T48_ = (NIM_BOOL)0;
3628 				T48_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(46));
3629 				if (!(T48_)) goto LA49_;
3630 				T48_ = !(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(46)));
3631 				LA49_: ;
3632 				if (!T48_) goto LA50_;
3633 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 96);
3634 				(*L).Sup.bufpos += ((NI) 1);
3635 			}
3636 			goto LA46_;
3637 			LA50_: ;
3638 			{
3639 				if (!((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(58))) goto LA53_;
3640 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 109);
3641 				(*L).Sup.bufpos += ((NI) 1);
3642 			}
3643 			goto LA46_;
3644 			LA53_: ;
3645 			{
3646 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 92);
3647 			}
3648 			LA46_: ;
3649 		}
3650 		break;
3651 		case 93:
3652 		{
3653 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 93);
3654 			(*L).Sup.bufpos += ((NI) 1);
3655 		}
3656 		break;
3657 		case 46:
3658 		{
3659 			{
3660 				if (!((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(93))) goto LA60_;
3661 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 97);
3662 				(*L).Sup.bufpos += ((NI) 2);
3663 			}
3664 			goto LA58_;
3665 			LA60_: ;
3666 			{
3667 				if (!((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(125))) goto LA63_;
3668 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 99);
3669 				(*L).Sup.bufpos += ((NI) 2);
3670 			}
3671 			goto LA58_;
3672 			LA63_: ;
3673 			{
3674 				if (!((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(41))) goto LA66_;
3675 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 101);
3676 				(*L).Sup.bufpos += ((NI) 2);
3677 			}
3678 			goto LA58_;
3679 			LA66_: ;
3680 			{
3681 				getOperator__lexer_1324(L, tok);
3682 			}
3683 			LA58_: ;
3684 		}
3685 		break;
3686 		case 123:
3687 		{
3688 			(*L).Sup.bufpos += ((NI) 1);
3689 			{
3690 				NIM_BOOL T72_;
3691 				T72_ = (NIM_BOOL)0;
3692 				T72_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(46));
3693 				if (!(T72_)) goto LA73_;
3694 				T72_ = !(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(46)));
3695 				LA73_: ;
3696 				if (!T72_) goto LA74_;
3697 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 98);
3698 				(*L).Sup.bufpos += ((NI) 1);
3699 			}
3700 			goto LA70_;
3701 			LA74_: ;
3702 			{
3703 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 94);
3704 			}
3705 			LA70_: ;
3706 		}
3707 		break;
3708 		case 125:
3709 		{
3710 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 95);
3711 			(*L).Sup.bufpos += ((NI) 1);
3712 		}
3713 		break;
3714 		case 59:
3715 		{
3716 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 103);
3717 			(*L).Sup.bufpos += ((NI) 1);
3718 		}
3719 		break;
3720 		case 96:
3721 		{
3722 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 112);
3723 			(*L).Sup.bufpos += ((NI) 1);
3724 		}
3725 		break;
3726 		case 95:
3727 		{
3728 			(*L).Sup.bufpos += ((NI) 1);
3729 			{
3730 				if (!!((((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(95)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(255))))) goto LA83_;
3731 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 2);
3732 				unsureAsgnRef((void**) (&(*tok).ident), getIdent__idents_143((*L).cache, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_24)));
3733 			}
3734 			goto LA81_;
3735 			LA83_: ;
3736 			{
3737 				NimStringDesc* T86_;
3738 				NimStringDesc* T87_;
3739 				unsureAsgnRef((void**) (&(*tok).literal), nimCharToStr(c));
3740 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0);
3741 				T86_ = NIM_NIL;
3742 				T87_ = NIM_NIL;
3743 				T87_ = dollar___systemZdollars_3(((NU8)(c)));
3744 				T86_ = rawNewString((T87_ ? T87_->Sup.len : 0) + 20);
3745 appendString(T86_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_25));
3746 appendChar(T86_, c);
3747 appendString(T86_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_26));
3748 appendString(T86_, T87_);
3749 appendChar(T86_, 41);
3750 				lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T86_);
3751 			}
3752 			LA81_: ;
3753 		}
3754 		break;
3755 		case 34:
3756 		{
3757 			tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ mode;
3758 			{
3759 				NIM_BOOL T91_;
3760 				T91_ = (NIM_BOOL)0;
3761 				T91_ = (((NI) 0) < (*L).Sup.bufpos);
3762 				if (!(T91_)) goto LA92_;
3763 				T91_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) <= ((NU8)(255)));
3764 				LA92_: ;
3765 				if (!T91_) goto LA93_;
3766 				mode = ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 2);
3767 			}
3768 			goto LA89_;
3769 			LA93_: ;
3770 			{
3771 				mode = ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 0);
3772 			}
3773 			LA89_: ;
3774 			getString__lexer_1097(L, tok, mode);
3775 			{
3776 				if (!(mode == ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 2))) goto LA98_;
3777 				(*tok).tokType += ((NI) 2);
3778 			}
3779 			LA98_: ;
3780 		}
3781 		break;
3782 		case 39:
3783 		{
3784 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88);
3785 			getCharacter__lexer_1172(L, tok);
3786 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88);
3787 		}
3788 		break;
3789 		case 48 ... 57:
3790 		{
3791 			NIM_CHAR c_2;
3792 			getNumber__lexer_382(L, tok);
3793 			c_2 = (*L).Sup.buf[(*L).Sup.bufpos];
3794 			{
3795 				if (!(((NU8)(c_2)) >= ((NU8)(48)) && ((NU8)(c_2)) <= ((NU8)(57)) || ((NU8)(c_2)) >= ((NU8)(65)) && ((NU8)(c_2)) <= ((NU8)(90)) || ((NU8)(c_2)) == ((NU8)(95)) || ((NU8)(c_2)) >= ((NU8)(97)) && ((NU8)(c_2)) <= ((NU8)(122)) || ((NU8)(c_2)) >= ((NU8)(128)) && ((NU8)(c_2)) <= ((NU8)(255)))) goto LA104_;
3796 				{
3797 					NIM_BOOL T108_;
3798 					NIM_BOOL T109_;
3799 					tyTuple__eYjXpYmwoditlWZaGvgooQ T112_;
3800 					T108_ = (NIM_BOOL)0;
3801 					T109_ = (NIM_BOOL)0;
3802 					T109_ = (((NU8)(c_2)) == ((NU8)(226)) || ((NU8)(c_2)) == ((NU8)(194)) || ((NU8)(c_2)) == ((NU8)(195)));
3803 					if (!(T109_)) goto LA110_;
3804 					T109_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
3805 					LA110_: ;
3806 					T108_ = T109_;
3807 					if (!(T108_)) goto LA111_;
3808 					T112_ = unicodeOprLen__lexer_1203((*L).Sup.buf, (*L).Sup.bufpos);
3809 					T108_ = !((T112_.Field0 == ((NI8) 0)));
3810 					LA111_: ;
3811 					if (!T108_) goto LA113_;
3812 				}
3813 				goto LA106_;
3814 				LA113_: ;
3815 				{
3816 					lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_64));
3817 				}
3818 				LA106_: ;
3819 			}
3820 			LA104_: ;
3821 		}
3822 		break;
3823 		case 45:
3824 		{
3825 			{
3826 				NIM_BOOL T119_;
3827 				NIM_BOOL T121_;
3828 				NIM_CHAR c_3;
3829 				T119_ = (NIM_BOOL)0;
3830 				T119_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) <= ((NU8)(57)));
3831 				if (!(T119_)) goto LA120_;
3832 				T121_ = (NIM_BOOL)0;
3833 				T121_ = ((NI)((*L).Sup.bufpos - ((NI) 1)) == ((NI) 0));
3834 				if (T121_) goto LA122_;
3835 				T121_ = ((TM__4JpEWnGrmRM8CRqL3P2O1Q_65[(NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])))&7U)))!=0);
3836 				LA122_: ;
3837 				T119_ = T121_;
3838 				LA120_: ;
3839 				if (!T119_) goto LA123_;
3840 				getNumber__lexer_382(L, tok);
3841 				c_3 = (*L).Sup.buf[(*L).Sup.bufpos];
3842 				{
3843 					if (!(((NU8)(c_3)) >= ((NU8)(48)) && ((NU8)(c_3)) <= ((NU8)(57)) || ((NU8)(c_3)) >= ((NU8)(65)) && ((NU8)(c_3)) <= ((NU8)(90)) || ((NU8)(c_3)) == ((NU8)(95)) || ((NU8)(c_3)) >= ((NU8)(97)) && ((NU8)(c_3)) <= ((NU8)(122)) || ((NU8)(c_3)) >= ((NU8)(128)) && ((NU8)(c_3)) <= ((NU8)(255)))) goto LA127_;
3844 					{
3845 						NIM_BOOL T131_;
3846 						NIM_BOOL T132_;
3847 						tyTuple__eYjXpYmwoditlWZaGvgooQ T135_;
3848 						T131_ = (NIM_BOOL)0;
3849 						T132_ = (NIM_BOOL)0;
3850 						T132_ = (((NU8)(c_3)) == ((NU8)(226)) || ((NU8)(c_3)) == ((NU8)(194)) || ((NU8)(c_3)) == ((NU8)(195)));
3851 						if (!(T132_)) goto LA133_;
3852 						T132_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
3853 						LA133_: ;
3854 						T131_ = T132_;
3855 						if (!(T131_)) goto LA134_;
3856 						T135_ = unicodeOprLen__lexer_1203((*L).Sup.buf, (*L).Sup.bufpos);
3857 						T131_ = !((T135_.Field0 == ((NI8) 0)));
3858 						LA134_: ;
3859 						if (!T131_) goto LA136_;
3860 					}
3861 					goto LA129_;
3862 					LA136_: ;
3863 					{
3864 						lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_64));
3865 					}
3866 					LA129_: ;
3867 				}
3868 				LA127_: ;
3869 			}
3870 			goto LA117_;
3871 			LA123_: ;
3872 			{
3873 				getOperator__lexer_1324(L, tok);
3874 			}
3875 			LA117_: ;
3876 		}
3877 		break;
3878 		default:
3879 		{
3880 			{
3881 				if (!((TM__4JpEWnGrmRM8CRqL3P2O1Q_13[(NU)(((NU8)(c)))>>3] &(1U<<((NU)(((NU8)(c)))&7U)))!=0)) goto LA143_;
3882 				getOperator__lexer_1324(L, tok);
3883 			}
3884 			goto LA141_;
3885 			LA143_: ;
3886 			{
3887 				if (!((NU8)(c) == (NU8)(0))) goto LA146_;
3888 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 1);
3889 				(*tok).indent = ((NI) 0);
3890 			}
3891 			goto LA141_;
3892 			LA146_: ;
3893 			{
3894 				NimStringDesc* T149_;
3895 				NimStringDesc* T150_;
3896 				unsureAsgnRef((void**) (&(*tok).literal), nimCharToStr(c));
3897 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0);
3898 				T149_ = NIM_NIL;
3899 				T150_ = NIM_NIL;
3900 				T150_ = dollar___systemZdollars_3(((NU8)(c)));
3901 				T149_ = rawNewString((T150_ ? T150_->Sup.len : 0) + 20);
3902 appendString(T149_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_25));
3903 appendChar(T149_, c);
3904 appendString(T149_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_26));
3905 appendString(T149_, T150_);
3906 appendChar(T149_, 41);
3907 				lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T149_);
3908 				(*L).Sup.bufpos += ((NI) 1);
3909 			}
3910 			LA141_: ;
3911 		}
3912 		break;
3913 		}
3914 	}
3915 	LA6_: ;
3916 }
N_INLINE(NIM_BOOL,eqeq___idents_220)3917 static N_INLINE(NIM_BOOL, eqeq___idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b) {
3918 	NIM_BOOL result;
3919 	result = (NIM_BOOL)0;
3920 	{
3921 		NIM_BOOL T3_;
3922 		T3_ = (NIM_BOOL)0;
3923 		T3_ = (a == 0);
3924 		if (T3_) goto LA4_;
3925 		T3_ = (b == 0);
3926 		LA4_: ;
3927 		if (!T3_) goto LA5_;
3928 		result = (a == b);
3929 	}
3930 	goto LA1_;
3931 	LA5_: ;
3932 	{
3933 		result = ((*a).id == (*b).id);
3934 	}
3935 	LA1_: ;
3936 	return result;
3937 }
N_NIMCALL(NimStringDesc *,dollar___lexer_230)3938 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___lexer_230)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
3939 	NimStringDesc* result;
3940 	result = NIM_NIL;
3941 	switch ((*tok).tokType) {
3942 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 69) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 73):
3943 	{
3944 		result = dollar___systemZdollars_6((*tok).iNumber);
3945 	}
3946 	break;
3947 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 81):
3948 	{
3949 		result = dollar___system_3118((*tok).fNumber);
3950 	}
3951 	break;
3952 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0):
3953 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 83) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88):
3954 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 111):
3955 	{
3956 		result = copyString((*tok).literal);
3957 	}
3958 	break;
3959 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 90) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 104):
3960 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 1):
3961 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 112):
3962 	{
3963 		result = reprEnum((NI)(*tok).tokType, (&NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_));
3964 	}
3965 	break;
3966 	default:
3967 	{
3968 		{
3969 			NIM_BOOL T8_;
3970 			T8_ = (NIM_BOOL)0;
3971 			T8_ = eqeq___idents_220((*tok).ident, ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
3972 			if (!!(T8_)) goto LA9_;
3973 			result = copyString((*(*tok).ident).s);
3974 		}
3975 		goto LA6_;
3976 		LA9_: ;
3977 		{
3978 			result = ((NimStringDesc*) NIM_NIL);
3979 		}
3980 		LA6_: ;
3981 	}
3982 	break;
3983 	}
3984 	return result;
3985 }
N_NIMCALL(void,closeLexer__lexer_304)3986 N_LIB_PRIVATE N_NIMCALL(void, closeLexer__lexer_304)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* lex) {
3987 	{
3988 		if (!!(((*lex).config == ((tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*) NIM_NIL)))) goto LA3_;
3989 		(*(*lex).config).linesCompiled += (*lex).Sup.lineNumber;
3990 	}
3991 	LA3_: ;
3992 	closeBaseLexer__nimlexbase_29(&lex->Sup);
3993 }
N_NIMCALL(void,lexMessageTok__lexer_340)3994 N_LIB_PRIVATE N_NIMCALL(void, lexMessageTok__lexer_340)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NimStringDesc* arg) {
3995 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
3996 	info = newLineInfo__msgs_381((*L).fileIdx, (*tok).line, (*tok).col);
3997 	dispMessage__lexer_326(L, info, msg, arg);
3998 }
N_NIMCALL(NIM_BOOL,isKeyword__lexer_196)3999 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isKeyword__lexer_196)(tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ kind) {
4000 	NIM_BOOL result;
4001 	NIM_BOOL T1_;
4002 	result = (NIM_BOOL)0;
4003 	T1_ = (NIM_BOOL)0;
4004 	T1_ = (((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 3) <= kind);
4005 	if (!(T1_)) goto LA2_;
4006 	T1_ = (kind <= ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 68));
4007 	LA2_: ;
4008 	result = T1_;
4009 	return result;
4010 }
N_NIMCALL(NimStringDesc *,prettyTok__lexer_239)4011 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, prettyTok__lexer_239)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
4012 	NimStringDesc* result;
4013 	result = NIM_NIL;
4014 	{
4015 		NIM_BOOL T3_;
4016 		NimStringDesc* T6_;
4017 		T3_ = (NIM_BOOL)0;
4018 		T3_ = isKeyword__lexer_196((*tok).tokType);
4019 		if (!T3_) goto LA4_;
4020 		T6_ = NIM_NIL;
4021 		T6_ = rawNewString(((*(*tok).ident).s ? (*(*tok).ident).s->Sup.len : 0) + 8);
4022 appendString(T6_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_73));
4023 appendString(T6_, (*(*tok).ident).s);
4024 		result = T6_;
4025 	}
4026 	goto LA1_;
4027 	LA4_: ;
4028 	{
4029 		result = dollar___lexer_230(tok);
4030 	}
4031 	LA1_: ;
4032 	return result;
4033 }
N_INLINE(NIM_CHAR *,X5BX5D___system_7372)4034 static N_INLINE(NIM_CHAR*, X5BX5D___system_7372)(NimStringDesc** s, NI i) {
4035 	NIM_CHAR* result;
4036 	result = (NIM_CHAR*)0;
4037 	result = (&(*s)->data[(NI)(((*s) ? (*s)->Sup.len : 0) - i)]);
4038 	return result;
4039 }
N_INLINE(NCSTRING,nimToCStringConv)4040 static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s) {
4041 	NCSTRING result;
4042 	result = (NCSTRING)0;
4043 	{
4044 		NIM_BOOL T3_;
4045 		T3_ = (NIM_BOOL)0;
4046 		T3_ = (s == ((NimStringDesc*) NIM_NIL));
4047 		if (T3_) goto LA4_;
4048 		T3_ = ((*s).Sup.len == ((NI) 0));
4049 		LA4_: ;
4050 		if (!T3_) goto LA5_;
4051 		result = "";
4052 	}
4053 	goto LA1_;
4054 	LA5_: ;
4055 	{
4056 		result = ((NCSTRING) ((*s).data));
4057 	}
4058 	LA1_: ;
4059 	return result;
4060 }
N_NIMCALL(NI,getPrecedence__lexer_1374)4061 N_LIB_PRIVATE N_NIMCALL(NI, getPrecedence__lexer_1374)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
4062 	NI result;
4063 {	result = (NI)0;
4064 	switch ((*tok).tokType) {
4065 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 110):
4066 	{
4067 		NIM_CHAR relevantChar;
4068 		relevantChar = (*(*tok).ident).s->data[((NI) 0)];
4069 		{
4070 			NIM_BOOL T4_;
4071 			NIM_BOOL T5_;
4072 			NIM_CHAR* T7_;
4073 			NIM_CHAR* T9_;
4074 			T4_ = (NIM_BOOL)0;
4075 			T5_ = (NIM_BOOL)0;
4076 			T5_ = (((NI) 1) < ((*(*tok).ident).s ? (*(*tok).ident).s->Sup.len : 0));
4077 			if (!(T5_)) goto LA6_;
4078 			T7_ = (NIM_CHAR*)0;
4079 			T7_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 1));
4080 			T5_ = ((NU8)((*T7_)) == (NU8)(62));
4081 			LA6_: ;
4082 			T4_ = T5_;
4083 			if (!(T4_)) goto LA8_;
4084 			T9_ = (NIM_CHAR*)0;
4085 			T9_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 2));
4086 			T4_ = (((NU8)((*T9_))) == ((NU8)(45)) || ((NU8)((*T9_))) == ((NU8)(126)) || ((NU8)((*T9_))) == ((NU8)(61)));
4087 			LA8_: ;
4088 			if (!T4_) goto LA10_;
4089 			result = ((NI) 1);
4090 			goto BeforeRet_;
4091 		}
4092 		LA10_: ;
4093 		switch (((NU8)(relevantChar))) {
4094 		case 36:
4095 		case 94:
4096 		{
4097 			{
4098 				NIM_CHAR* T15_;
4099 				T15_ = (NIM_CHAR*)0;
4100 				T15_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 1));
4101 				if (!((NU8)((*T15_)) == (NU8)(61))) goto LA16_;
4102 				result = ((NI) 1);
4103 			}
4104 			goto LA13_;
4105 			LA16_: ;
4106 			{
4107 				result = ((NI) 10);
4108 			}
4109 			LA13_: ;
4110 		}
4111 		break;
4112 		case 42:
4113 		case 37:
4114 		case 47:
4115 		case 92:
4116 		{
4117 			{
4118 				NIM_CHAR* T22_;
4119 				T22_ = (NIM_CHAR*)0;
4120 				T22_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 1));
4121 				if (!((NU8)((*T22_)) == (NU8)(61))) goto LA23_;
4122 				result = ((NI) 1);
4123 			}
4124 			goto LA20_;
4125 			LA23_: ;
4126 			{
4127 				result = ((NI) 9);
4128 			}
4129 			LA20_: ;
4130 		}
4131 		break;
4132 		case 126:
4133 		{
4134 			result = ((NI) 8);
4135 		}
4136 		break;
4137 		case 43:
4138 		case 45:
4139 		case 124:
4140 		{
4141 			{
4142 				NIM_CHAR* T30_;
4143 				T30_ = (NIM_CHAR*)0;
4144 				T30_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 1));
4145 				if (!((NU8)((*T30_)) == (NU8)(61))) goto LA31_;
4146 				result = ((NI) 1);
4147 			}
4148 			goto LA28_;
4149 			LA31_: ;
4150 			{
4151 				result = ((NI) 8);
4152 			}
4153 			LA28_: ;
4154 		}
4155 		break;
4156 		case 38:
4157 		{
4158 			{
4159 				NIM_CHAR* T37_;
4160 				T37_ = (NIM_CHAR*)0;
4161 				T37_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 1));
4162 				if (!((NU8)((*T37_)) == (NU8)(61))) goto LA38_;
4163 				result = ((NI) 1);
4164 			}
4165 			goto LA35_;
4166 			LA38_: ;
4167 			{
4168 				result = ((NI) 7);
4169 			}
4170 			LA35_: ;
4171 		}
4172 		break;
4173 		case 61:
4174 		case 60:
4175 		case 62:
4176 		case 33:
4177 		{
4178 			result = ((NI) 5);
4179 		}
4180 		break;
4181 		case 46:
4182 		{
4183 			{
4184 				NIM_CHAR* T45_;
4185 				T45_ = (NIM_CHAR*)0;
4186 				T45_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 1));
4187 				if (!((NU8)((*T45_)) == (NU8)(61))) goto LA46_;
4188 				result = ((NI) 1);
4189 			}
4190 			goto LA43_;
4191 			LA46_: ;
4192 			{
4193 				result = ((NI) 6);
4194 			}
4195 			LA43_: ;
4196 		}
4197 		break;
4198 		case 63:
4199 		{
4200 			result = ((NI) 2);
4201 		}
4202 		break;
4203 		case 194 ... 195:
4204 		case 226:
4205 		{
4206 			{
4207 				NIM_CHAR* T53_;
4208 				T53_ = (NIM_CHAR*)0;
4209 				T53_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 1));
4210 				if (!((NU8)((*T53_)) == (NU8)(61))) goto LA54_;
4211 				result = ((NI) 1);
4212 			}
4213 			goto LA51_;
4214 			LA54_: ;
4215 			{
4216 				tyTuple__eYjXpYmwoditlWZaGvgooQ T57_;
4217 				NI8 len;
4218 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA pred;
4219 				T57_ = unicodeOprLen__lexer_1203(nimToCStringConv((*(*tok).ident).s), ((NI) 0));
4220 				len = T57_.Field0;
4221 				pred = T57_.Field1;
4222 				{
4223 					if (!!((len == ((NI8) 0)))) goto LA60_;
4224 					{
4225 						if (!(pred == ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0))) goto LA64_;
4226 						result = ((NI) 9);
4227 					}
4228 					goto LA62_;
4229 					LA64_: ;
4230 					{
4231 						result = ((NI) 8);
4232 					}
4233 					LA62_: ;
4234 				}
4235 				goto LA58_;
4236 				LA60_: ;
4237 				{
4238 					result = ((NI) 2);
4239 				}
4240 				LA58_: ;
4241 			}
4242 			LA51_: ;
4243 		}
4244 		break;
4245 		default:
4246 		{
4247 			{
4248 				NIM_CHAR* T71_;
4249 				T71_ = (NIM_CHAR*)0;
4250 				T71_ = X5BX5D___system_7372((&(*(*tok).ident).s), ((NI) 1));
4251 				if (!((NU8)((*T71_)) == (NU8)(61))) goto LA72_;
4252 				result = ((NI) 1);
4253 			}
4254 			goto LA69_;
4255 			LA72_: ;
4256 			{
4257 				result = ((NI) 2);
4258 			}
4259 			LA69_: ;
4260 		}
4261 		break;
4262 		}
4263 	}
4264 	break;
4265 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 19):
4266 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 43):
4267 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 56):
4268 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 57):
4269 	{
4270 		result = ((NI) 9);
4271 	}
4272 	break;
4273 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 108):
4274 	{
4275 		result = ((NI) 6);
4276 	}
4277 	break;
4278 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 33):
4279 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 46):
4280 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 36):
4281 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 37):
4282 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 48):
4283 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 5):
4284 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 29):
4285 	{
4286 		result = ((NI) 5);
4287 	}
4288 	break;
4289 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 4):
4290 	{
4291 		result = ((NI) 4);
4292 	}
4293 	break;
4294 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 49):
4295 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 67):
4296 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 52):
4297 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 54):
4298 	{
4299 		result = ((NI) 3);
4300 	}
4301 	break;
4302 	default:
4303 	{
4304 		result = ((NI) -10);
4305 		goto BeforeRet_;
4306 	}
4307 	break;
4308 	}
4309 	}BeforeRet_: ;
4310 	return result;
4311 }
N_INLINE(NIM_BOOL,contains__pureZtimes_2283)4312 static N_INLINE(NIM_BOOL, contains__pureZtimes_2283)(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA s, NI value) {
4313 	NIM_BOOL result;
4314 	NIM_BOOL T1_;
4315 	result = (NIM_BOOL)0;
4316 	T1_ = (NIM_BOOL)0;
4317 	T1_ = (s.a <= value);
4318 	if (!(T1_)) goto LA2_;
4319 	T1_ = (value <= s.b);
4320 	LA2_: ;
4321 	result = T1_;
4322 	return result;
4323 }
N_NIMCALL(NI,getPrecedence__lexer_1792)4324 N_LIB_PRIVATE N_NIMCALL(NI, getPrecedence__lexer_1792)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident) {
4325 	NI result;
4326 	tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA tok;
4327 	result = (NI)0;
4328 	nimZeroMem((void*)(&tok), sizeof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA));
4329 	initToken__lexer_248((&tok));
4330 	tok.ident = ident;
4331 	{
4332 		tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T3_;
4333 		NIM_BOOL T4_;
4334 		T3_ = dotdot___pureZunicode_840(((NI) 1), ((NI) 66));
4335 		T4_ = (NIM_BOOL)0;
4336 		T4_ = contains__pureZtimes_2283(T3_, (*tok.ident).id);
4337 		if (!T4_) goto LA5_;
4338 		tok.tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) ((NI)((*tok.ident).id + ((NI) 2))));
4339 	}
4340 	goto LA1_;
4341 	LA5_: ;
4342 	{
4343 		tok.tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 110);
4344 	}
4345 	LA1_: ;
4346 	result = getPrecedence__lexer_1374((&tok));
4347 	return result;
4348 }
N_NIMCALL(NIM_BOOL,isNimIdentifier__lexer_209)4349 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isNimIdentifier__lexer_209)(NimStringDesc* s) {
4350 	NIM_BOOL result;
4351 	NI sLen;
4352 {	result = (NIM_BOOL)0;
4353 	sLen = (s ? s->Sup.len : 0);
4354 	{
4355 		NIM_BOOL T3_;
4356 		NI i;
4357 		T3_ = (NIM_BOOL)0;
4358 		T3_ = (((NI) 0) < sLen);
4359 		if (!(T3_)) goto LA4_;
4360 		T3_ = (((NU8)(s->data[((NI) 0)])) >= ((NU8)(97)) && ((NU8)(s->data[((NI) 0)])) <= ((NU8)(122)) || ((NU8)(s->data[((NI) 0)])) >= ((NU8)(65)) && ((NU8)(s->data[((NI) 0)])) <= ((NU8)(90)) || ((NU8)(s->data[((NI) 0)])) >= ((NU8)(128)) && ((NU8)(s->data[((NI) 0)])) <= ((NU8)(255)));
4361 		LA4_: ;
4362 		if (!T3_) goto LA5_;
4363 		i = ((NI) 1);
4364 		{
4365 			while (1) {
4366 				if (!(i < sLen)) goto LA8;
4367 				{
4368 					if (!((NU8)(s->data[i]) == (NU8)(95))) goto LA11_;
4369 					i += ((NI) 1);
4370 				}
4371 				LA11_: ;
4372 				{
4373 					NIM_BOOL T15_;
4374 					T15_ = (NIM_BOOL)0;
4375 					T15_ = (i < sLen);
4376 					if (!(T15_)) goto LA16_;
4377 					T15_ = !((((NU8)(s->data[i])) >= ((NU8)(97)) && ((NU8)(s->data[i])) <= ((NU8)(122)) || ((NU8)(s->data[i])) >= ((NU8)(65)) && ((NU8)(s->data[i])) <= ((NU8)(90)) || ((NU8)(s->data[i])) >= ((NU8)(48)) && ((NU8)(s->data[i])) <= ((NU8)(57)) || ((NU8)(s->data[i])) >= ((NU8)(128)) && ((NU8)(s->data[i])) <= ((NU8)(255))));
4378 					LA16_: ;
4379 					if (!T15_) goto LA17_;
4380 					goto BeforeRet_;
4381 				}
4382 				LA17_: ;
4383 				i += ((NI) 1);
4384 			} LA8: ;
4385 		}
4386 		result = NIM_TRUE;
4387 	}
4388 	LA5_: ;
4389 	}BeforeRet_: ;
4390 	return result;
4391 }
N_NIMCALL(void,compiler_lexerDatInit000)4392 N_LIB_PRIVATE N_NIMCALL(void, compiler_lexerDatInit000)(void) {
4393 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[8];
4394 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_3_2[2];
4395 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_66_119[119];
4396 NI TM__4JpEWnGrmRM8CRqL3P2O1Q_68;
4397 static char* NIM_CONST TM__4JpEWnGrmRM8CRqL3P2O1Q_67[119] = {
4398 "tkInvalid",
4399 "[EOF]",
4400 "tkSymbol",
4401 "addr",
4402 "and",
4403 "as",
4404 "asm",
4405 "bind",
4406 "block",
4407 "break",
4408 "case",
4409 "cast",
4410 "concept",
4411 "const",
4412 "continue",
4413 "converter",
4414 "defer",
4415 "discard",
4416 "distinct",
4417 "div",
4418 "do",
4419 "elif",
4420 "else",
4421 "end",
4422 "enum",
4423 "except",
4424 "export",
4425 "finally",
4426 "for",
4427 "from",
4428 "func",
4429 "if",
4430 "import",
4431 "in",
4432 "include",
4433 "interface",
4434 "is",
4435 "isnot",
4436 "iterator",
4437 "let",
4438 "macro",
4439 "method",
4440 "mixin",
4441 "mod",
4442 "nil",
4443 "not",
4444 "notin",
4445 "object",
4446 "of",
4447 "or",
4448 "out",
4449 "proc",
4450 "ptr",
4451 "raise",
4452 "ref",
4453 "return",
4454 "shl",
4455 "shr",
4456 "static",
4457 "template",
4458 "try",
4459 "tuple",
4460 "type",
4461 "using",
4462 "var",
4463 "when",
4464 "while",
4465 "xor",
4466 "yield",
4467 "tkIntLit",
4468 "tkInt8Lit",
4469 "tkInt16Lit",
4470 "tkInt32Lit",
4471 "tkInt64Lit",
4472 "tkUIntLit",
4473 "tkUInt8Lit",
4474 "tkUInt16Lit",
4475 "tkUInt32Lit",
4476 "tkUInt64Lit",
4477 "tkFloatLit",
4478 "tkFloat32Lit",
4479 "tkFloat64Lit",
4480 "tkFloat128Lit",
4481 "tkStrLit",
4482 "tkRStrLit",
4483 "tkTripleStrLit",
4484 "tkGStrLit",
4485 "tkGTripleStrLit",
4486 "tkCharLit",
4487 "tkCustomLit",
4488 "(",
4489 ")",
4490 "[",
4491 "]",
4492 "{",
4493 "}",
4494 "[.",
4495 ".]",
4496 "{.",
4497 ".}",
4498 "(.",
4499 ".)",
4500 ",",
4501 ";",
4502 ":",
4503 "::",
4504 "=",
4505 ".",
4506 "..",
4507 "[:",
4508 "tkOpr",
4509 "tkComment",
4510 "`",
4511 "tkSpaces",
4512 "tkInfixOpr",
4513 "tkPrefixOpr",
4514 "tkPostfixOpr",
4515 "tkHideableStart",
4516 "tkHideableEnd"};
4517 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[11];
4518 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_70_4[4];
4519 NI TM__4JpEWnGrmRM8CRqL3P2O1Q_72;
4520 static char* NIM_CONST TM__4JpEWnGrmRM8CRqL3P2O1Q_71[4] = {
4521 "base10",
4522 "base2",
4523 "base8",
4524 "base16"};
4525 static TNimNode TM__4JpEWnGrmRM8CRqL3P2O1Q_0[149];
4526 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.size = sizeof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw);
4527 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.align = NIM_ALIGNOF(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw);
4528 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.kind = 17;
4529 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.base = (&NTItbaselexer__jTxk7Uc2dfr9aTDL2dZhO9ag_);
4530 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[0] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1];
4531 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1].kind = 1;
4532 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, fileIdx);
4533 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1].typ = (&NTIint5150__sVg18TP9cLifHyygRe9cro9aA_);
4534 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1].name = "fileIdx";
4535 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[1] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2];
4536 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2].kind = 1;
4537 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, indentAhead);
4538 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4539 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2].name = "indentAhead";
4540 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[2] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3];
4541 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3].kind = 1;
4542 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, currLineIndent);
4543 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4544 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3].name = "currLineIndent";
4545 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[3] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4];
4546 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4].kind = 1;
4547 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, strongSpaces);
4548 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
4549 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4].name = "strongSpaces";
4550 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[4] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5];
4551 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5].kind = 1;
4552 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, allowTabs);
4553 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
4554 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5].name = "allowTabs";
4555 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[5] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6];
4556 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.size = sizeof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A);
4557 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.align = NIM_ALIGNOF(tyTuple__JfHvHzMrhKkWAUvQKe0i1A);
4558 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.kind = 18;
4559 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.base = 0;
4560 TM__4JpEWnGrmRM8CRqL3P2O1Q_3_2[0] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8];
4561 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8].kind = 1;
4562 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field0);
4563 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8].typ = (&NTIpointer__vr5DoT1jILTGdRlYv1OYpw_);
4564 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8].name = "Field0";
4565 TM__4JpEWnGrmRM8CRqL3P2O1Q_3_2[1] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9];
4566 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9].kind = 1;
4567 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field1);
4568 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9].typ = (&NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_);
4569 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9].name = "Field1";
4570 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[7].len = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[7].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[7].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_3_2[0];
4571 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[7];
4572 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6].kind = 1;
4573 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, errorHandler);
4574 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6].typ = (&NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_);
4575 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6].name = "errorHandler";
4576 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[6] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10];
4577 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10].kind = 1;
4578 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, cache);
4579 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10].typ = (&NTIidentcache__lnkYNZP9asc88UfiEGjLrbA_);
4580 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10].name = "cache";
4581 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[7] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11];
4582 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11].kind = 1;
4583 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, config);
4584 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11].typ = (&NTIconfigref__a8lycfSA25OQltN3OMeBsA_);
4585 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11].name = "config";
4586 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[0].len = 8; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[0].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[0].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[0];
4587 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[0];
4588 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.size = sizeof(tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ);
4589 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.align = NIM_ALIGNOF(tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ);
4590 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.kind = 14;
4591 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.base = 0;
4592 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.flags = 3;
4593 for (TM__4JpEWnGrmRM8CRqL3P2O1Q_68 = 0; TM__4JpEWnGrmRM8CRqL3P2O1Q_68 < 119; TM__4JpEWnGrmRM8CRqL3P2O1Q_68++) {
4594 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_68+12].kind = 1;
4595 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_68+12].offset = TM__4JpEWnGrmRM8CRqL3P2O1Q_68;
4596 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_68+12].name = TM__4JpEWnGrmRM8CRqL3P2O1Q_67[TM__4JpEWnGrmRM8CRqL3P2O1Q_68];
4597 TM__4JpEWnGrmRM8CRqL3P2O1Q_66_119[TM__4JpEWnGrmRM8CRqL3P2O1Q_68] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_68+12];
4598 }
4599 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[131].len = 119; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[131].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[131].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_66_119[0];
4600 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[131];
4601 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.size = sizeof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA);
4602 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.align = NIM_ALIGNOF(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA);
4603 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.kind = 18;
4604 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.base = 0;
4605 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[0] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133];
4606 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133].kind = 1;
4607 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, tokType);
4608 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133].typ = (&NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_);
4609 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133].name = "tokType";
4610 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[1] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134];
4611 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134].kind = 1;
4612 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, indent);
4613 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4614 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134].name = "indent";
4615 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[2] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135];
4616 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135].kind = 1;
4617 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, ident);
4618 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135].typ = (&NTIpident__EiGmNYVHiKeimIyQkW82mg_);
4619 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135].name = "ident";
4620 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[3] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136];
4621 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136].kind = 1;
4622 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, iNumber);
4623 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136].typ = (&NTIbiggestint__Aav8dQoMlCFnZRxA0IhTHQ_);
4624 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136].name = "iNumber";
4625 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[4] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137];
4626 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137].kind = 1;
4627 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, fNumber);
4628 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137].typ = (&NTIfloat__w9bl9a1ul9ctRJWiMl9cNnIMvg_);
4629 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137].name = "fNumber";
4630 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[5] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138];
4631 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.size = sizeof(tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog);
4632 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.align = NIM_ALIGNOF(tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog);
4633 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.kind = 14;
4634 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.base = 0;
4635 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.flags = 3;
4636 for (TM__4JpEWnGrmRM8CRqL3P2O1Q_72 = 0; TM__4JpEWnGrmRM8CRqL3P2O1Q_72 < 4; TM__4JpEWnGrmRM8CRqL3P2O1Q_72++) {
4637 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_72+139].kind = 1;
4638 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_72+139].offset = TM__4JpEWnGrmRM8CRqL3P2O1Q_72;
4639 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_72+139].name = TM__4JpEWnGrmRM8CRqL3P2O1Q_71[TM__4JpEWnGrmRM8CRqL3P2O1Q_72];
4640 TM__4JpEWnGrmRM8CRqL3P2O1Q_70_4[TM__4JpEWnGrmRM8CRqL3P2O1Q_72] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_72+139];
4641 }
4642 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[143].len = 4; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[143].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[143].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_70_4[0];
4643 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[143];
4644 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138].kind = 1;
4645 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, base);
4646 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138].typ = (&NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_);
4647 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138].name = "base";
4648 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[6] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144];
4649 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144].kind = 1;
4650 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, strongSpaceA);
4651 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144].typ = (&NTIint56__chXunH2dwinSkhpA6JnsXw_);
4652 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144].name = "strongSpaceA";
4653 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[7] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145];
4654 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145].kind = 1;
4655 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, strongSpaceB);
4656 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145].typ = (&NTIint56__chXunH2dwinSkhpA6JnsXw_);
4657 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145].name = "strongSpaceB";
4658 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[8] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146];
4659 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146].kind = 1;
4660 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, literal);
4661 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
4662 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146].name = "literal";
4663 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[9] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147];
4664 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147].kind = 1;
4665 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, line);
4666 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4667 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147].name = "line";
4668 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[10] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148];
4669 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148].kind = 1;
4670 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, col);
4671 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4672 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148].name = "col";
4673 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[132].len = 11; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[132].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[132].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[0];
4674 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[132];
4675 }
4676 
4677