1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3
4 #include "nimbase.h"
5 #include <string.h>
6 #undef LANGUAGE_C
7 #undef MIPSEB
8 #undef MIPSEL
9 #undef PPC
10 #undef R3000
11 #undef R4000
12 #undef i386
13 #undef linux
14 #undef mips
15 #undef near
16 #undef far
17 #undef powerpc
18 #undef unix
19 #define nimfr_(x, y)
20 #define nimln_(x, y)
21 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
22 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
23 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
24 typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
25 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
26 typedef struct RootObj RootObj;
27 typedef struct TNimType TNimType;
28 typedef struct TNimNode TNimNode;
29 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
30 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
31 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
32 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
33 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
34 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
35 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
36 typedef struct NimStringDesc NimStringDesc;
37 typedef struct TGenericSeq TGenericSeq;
38 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
39 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
40 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
41 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
42 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
43 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
44 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
45 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
46 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
47 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
48 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
49 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
50 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
51 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
52 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
53 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
54 typedef struct tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA;
55 typedef struct tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw;
56 typedef struct tySequence__dAjyAaabi52TN36Jp0fAXQ tySequence__dAjyAaabi52TN36Jp0fAXQ;
57 typedef struct tySequence__0a6ZbC0zPSfUDYzqPnO68A tySequence__0a6ZbC0zPSfUDYzqPnO68A;
58 typedef struct tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA;
59 typedef struct tySequence__F43jf4nUkSAG8E9cfLj9aQoQ tySequence__F43jf4nUkSAG8E9cfLj9aQoQ;
60 typedef struct tyTuple__X9bWVAqRSgByRpQwn6owzEA tyTuple__X9bWVAqRSgByRpQwn6owzEA;
61 typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
62 typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
63 typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
64 typedef struct tyTuple__n5CipyK3lOxrIaiLdb9bDLw tyTuple__n5CipyK3lOxrIaiLdb9bDLw;
65 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
66 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
67 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
68 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
69 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
70 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
71 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
72 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
73 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
74 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
75 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
76 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
77 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
78 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
79 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
80 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
81 typedef struct tyTuple__cyDO9czMbIL47POKM3sIQng tyTuple__cyDO9czMbIL47POKM3sIQng;
82 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
83 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
84 typedef struct tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag;
85 typedef struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw;
86 typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
87 typedef struct Exception Exception;
88 typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
89 typedef struct tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw;
90 typedef struct tySequence__j9aEZ11m8pCmK2eRUFSgiOA tySequence__j9aEZ11m8pCmK2eRUFSgiOA;
91 typedef struct tySequence__tFZSZSomBEZ9bmg1CrY7ojA tySequence__tFZSZSomBEZ9bmg1CrY7ojA;
92 typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
93 typedef struct tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA;
94 typedef struct tySequence__RJ9cCbHDTKFvcxBv5qqeJbg tySequence__RJ9cCbHDTKFvcxBv5qqeJbg;
95 typedef struct tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ;
96 typedef struct tySequence__sHfymmN9aVTQTLnu1B0wi3w tySequence__sHfymmN9aVTQTLnu1B0wi3w;
97 typedef struct tyTuple__KYzEow2par19cjmb9bTX4xkg tyTuple__KYzEow2par19cjmb9bTX4xkg;
98 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
99 typedef struct tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw;
100 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
101 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
102 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
103 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
104 typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
105 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
106 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
107 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
108 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
109 struct TNimType {
110 NI size;
111 NI align;
112 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
113 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
114 TNimType* base;
115 TNimNode* node;
116 void* finalizer;
117 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
118 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
119 };
120 struct RootObj {
121 TNimType* m_type;
122 };
123 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
124 NI32 module;
125 NI32 item;
126 };
127 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
128 RootObj Sup;
129 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
130 };
131 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
132 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
133 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
134 NU16 line;
135 NI16 col;
136 NI32 fileIndex;
137 };
138 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
139 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
140 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
141 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
142 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
143 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
144 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
145 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
146 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
147 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
148 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
149 };
150 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
151 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
152 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
153 union{
154 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
155 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
156 } _kind_1;
157 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
158 NI bitsize;
159 NI alignment;
160 } _kind_2;
161 };
162 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
163 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
164 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
165 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
166 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
167 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
168 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
169 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
170 NI position;
171 NI offset;
172 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
173 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
174 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
175 };
176 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
177 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
178 struct TGenericSeq {
179 NI len;
180 NI reserved;
181 };
182 struct NimStringDesc {
183 TGenericSeq Sup;
184 NIM_CHAR data[SEQ_DECL_SIZE];
185 };
186 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
187 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
188 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
189 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
190 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
191 union{
192 struct {NI64 intVal;
193 } _kind_1;
194 struct {NF floatVal;
195 } _kind_2;
196 struct {NimStringDesc* strVal;
197 } _kind_3;
198 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
199 } _kind_4;
200 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
201 } _kind_5;
202 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
203 } _kind_6;
204 };
205 };
206 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
207 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
208 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
209 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
210 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
211 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
212 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
213 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
214 NI intSize;
215 NI floatSize;
216 NI ptrSize;
217 NimStringDesc* tnl;
218 };
219 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
220 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
221 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
222 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
223 NI counter;
224 };
225 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
226 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
227 NIM_BOOL trackPosAttached;
228 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
229 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
230 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
231 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
232 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
233 NI32 systemFileIdx;
234 };
235 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
236 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
237 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
238 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
239 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
240 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
241 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
242 NI counter;
243 };
244 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
245 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
246 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
247 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
248 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
249 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
250 NI Field0;
251 NI Field1;
252 NI Field2;
253 };
254 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
255 typedef struct {
256 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
257 void* ClE_0;
258 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
259 typedef struct {
260 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
261 void* ClE_0;
262 } tyProc__k2HFjxisIgDALbEUFojxaQ;
263 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
264 typedef struct {
265 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
266 void* ClE_0;
267 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
268 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
269 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
270 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
271 NI linesCompiled;
272 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
273 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
274 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
275 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
276 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
277 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
278 NimStringDesc* unitSep;
279 NI evalTemplateCounter;
280 NI evalMacroCounter;
281 NI8 exitcode;
282 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
283 NimStringDesc* cmdInput;
284 NIM_BOOL projectIsCmd;
285 NIM_BOOL implicitCmd;
286 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
287 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
288 NIM_BOOL hintProcessingDots;
289 NI verbosity;
290 NI numberOfProcessors;
291 NF lastCmdTime;
292 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
293 NI spellSuggestMax;
294 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
295 NimStringDesc* headerFile;
296 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
297 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
298 NimStringDesc* arguments;
299 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
300 NIM_BOOL oldNewlines;
301 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
302 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
303 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
304 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
305 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
306 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
307 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
308 NI mainPackageId;
309 NI errorCounter;
310 NI hintCounter;
311 NI warnCounter;
312 NI errorMax;
313 NI maxLoopIterationsVM;
314 NIM_BOOL isVmTrace;
315 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
316 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
317 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
318 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
319 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
320 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
321 NimStringDesc* outFile;
322 NimStringDesc* outDir;
323 NimStringDesc* jsonBuildFile;
324 NimStringDesc* prefixDir;
325 NimStringDesc* libpath;
326 NimStringDesc* nimcacheDir;
327 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
328 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
329 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
330 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
331 NimStringDesc* projectName;
332 NimStringDesc* projectPath;
333 NimStringDesc* projectFull;
334 NIM_BOOL projectIsStdin;
335 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
336 NI32 projectMainIdx;
337 NI32 projectMainIdx2;
338 NimStringDesc* command;
339 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
340 NimStringDesc* commandLine;
341 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
342 NIM_BOOL keepComments;
343 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
344 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
345 NimStringDesc* docSeeSrcUrl;
346 NimStringDesc* docRoot;
347 NimStringDesc* docCmd;
348 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
349 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
350 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
351 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
352 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
353 NimStringDesc* linkOptionsCmd;
354 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
355 NimStringDesc* linkOptions;
356 NimStringDesc* compileOptions;
357 NimStringDesc* cCompilerPath;
358 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
359 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
360 NI suggestVersion;
361 NI suggestMaxResults;
362 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
363 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
364 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
365 NimStringDesc* cppCustomNamespace;
366 NimStringDesc* nimMainPrefix;
367 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
368 };
369 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
370 NimStringDesc* fullPath;
371 NimStringDesc* projPath;
372 NimStringDesc* shortName;
373 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
374 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
375 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
376 NimStringDesc* dirtyFile;
377 NimStringDesc* hash;
378 NIM_BOOL dirty;
379 };
380 struct tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw {
381 tySequence__dAjyAaabi52TN36Jp0fAXQ* data;
382 NI counter;
383 };
384 struct tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA {
385 tySequence__F43jf4nUkSAG8E9cfLj9aQoQ* data;
386 NI counter;
387 };
388 struct tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA {
389 tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw symbolIndices;
390 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* expressions;
391 tySequence__0a6ZbC0zPSfUDYzqPnO68A* dependants;
392 tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA warningLocations;
393 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
394 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
395 };
396 struct tyTuple__X9bWVAqRSgByRpQwn6owzEA {
397 NI Field0;
398 NI Field1;
399 NI16 Field2;
400 };
401 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
402 struct TNimNode {
403 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
404 NI offset;
405 TNimType* typ;
406 NCSTRING name;
407 NI len;
408 TNimNode** sons;
409 };
410 typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
411 struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
412 NI elems;
413 NI counter;
414 NI max;
415 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
416 tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
417 tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
418 };
419 struct tyTuple__n5CipyK3lOxrIaiLdb9bDLw {
420 NI Field0;
421 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field1;
422 };
423 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
424 NI refcount;
425 TNimType* typ;
426 };
427 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
428 void* bottom;
429 };
430 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
431 NI len;
432 NI cap;
433 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
434 };
435 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
436 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
437 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
438 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
439 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
440 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
441 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
442 };
443 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
444 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
445 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
446 NI key;
447 NI upperBound;
448 NI level;
449 };
450 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
451 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
452 NI Field1;
453 };
454 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
455 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
456 NI len;
457 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
458 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
459 };
460 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
461 NI minLargeObj;
462 NI maxLargeObj;
463 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
464 NU32 flBitmap;
465 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
466 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
467 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
468 NI currMem;
469 NI maxMem;
470 NI freeMem;
471 NI occ;
472 NI lastSize;
473 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
474 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
475 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
476 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
477 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
478 NIM_BOOL locked;
479 NIM_BOOL blockChunkSizeIncrease;
480 NI nextChunkSize;
481 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
482 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
483 };
484 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
485 NI stackScans;
486 NI cycleCollections;
487 NI maxThreshold;
488 NI maxStackSize;
489 NI maxStackCells;
490 NI cycleTableSize;
491 NI64 maxPause;
492 };
493 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
494 NI counter;
495 NI max;
496 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
497 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
498 };
499 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
500 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
501 NI cycleThreshold;
502 NI zctThreshold;
503 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
504 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
505 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
506 NI recGcLock;
507 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
508 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
509 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
510 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
511 NI gcThreadId;
512 };
513 struct tyTuple__cyDO9czMbIL47POKM3sIQng {
514 NI Field0;
515 NI16 Field1;
516 };
517 typedef tyTuple__cyDO9czMbIL47POKM3sIQng tyArray__brqof9bq2QWioDkbae3wZsw[1];
518 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
519 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
520 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
521 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
522 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
523 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
524 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
525 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
526 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
527 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
528 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
529 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
530 NI64 size;
531 NI16 align;
532 NI16 paddingAtEnd;
533 NI16 lockLevel;
534 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
535 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
536 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
537 };
538 typedef NU8 tySet_tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw[21];
539 typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
540 struct Exception {
541 RootObj Sup;
542 Exception* parent;
543 NCSTRING name;
544 NimStringDesc* message;
545 tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
546 Exception* up;
547 };
548 struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
549 Exception Sup;
550 };
551 struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw {
552 tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
553 };
554 struct tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag {
555 tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw Sup;
556 };
557 typedef NU8 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA;
558 struct tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw {
559 tySequence__j9aEZ11m8pCmK2eRUFSgiOA* expressions;
560 tySequence__tFZSZSomBEZ9bmg1CrY7ojA* history;
561 tySequence__qwqHTkRvwhrRyENtudHQ7g* setIndices;
562 tySequence__0a6ZbC0zPSfUDYzqPnO68A* sets;
563 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* parent;
564 };
565 typedef NU8 tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA;
566 struct tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA {
567 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
568 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA nilability;
569 tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA kind;
570 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node;
571 };
572 typedef NU tyArray__cC4ce9cdvDKtIpar5g9cDejA[16];
573 struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA {
574 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* next;
575 NI key;
576 tyArray__cC4ce9cdvDKtIpar5g9cDejA bits;
577 };
578 struct tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ {
579 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA nilability;
580 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map;
581 tySequence__sHfymmN9aVTQTLnu1B0wi3w* elements;
582 };
583 struct tyTuple__KYzEow2par19cjmb9bTX4xkg {
584 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field0;
585 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA Field1;
586 };
587 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
588 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
589 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
590 NimStringDesc* Field0;
591 NI Field1;
592 NI Field2;
593 };
594 typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__AB6yfoUgfWM2NtGe9bzkCmw[2];
595 typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__jlWPjgtbdjE069arIWHC9c9bg[1];
596 struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q {
597 NI32 module;
598 NI32 symId;
599 NI32 typeId_0;
600 NIM_BOOL sealed;
601 };
602 typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__T6RKPw8xfAeNaoei9aZGzXg[3];
603 struct tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw {
604 NI16 a;
605 NI16 b;
606 };
607 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
608 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
609 NimStringDesc* Field1;
610 };
611 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
612 NI Field0;
613 NimStringDesc* Field1;
614 NI32 Field2;
615 };
616 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
617 NI Field0;
618 NimStringDesc* Field1;
619 };
620 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
621 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
622 NimStringDesc* nimname;
623 NimStringDesc* cname;
624 NimStringDesc* obj;
625 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
626 NimStringDesc* customArgs;
627 };
628 struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
629 NCSTRING procname;
630 NI line;
631 NCSTRING filename;
632 };
633 struct tySequence__dAjyAaabi52TN36Jp0fAXQ {
634 TGenericSeq Sup;
635 tyTuple__X9bWVAqRSgByRpQwn6owzEA data[SEQ_DECL_SIZE];
636 };
637 struct tySequence__0a6ZbC0zPSfUDYzqPnO68A {
638 TGenericSeq Sup;
639 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA data[SEQ_DECL_SIZE];
640 };
641 struct tySequence__F43jf4nUkSAG8E9cfLj9aQoQ {
642 TGenericSeq Sup;
643 tyTuple__n5CipyK3lOxrIaiLdb9bDLw data[SEQ_DECL_SIZE];
644 };
645 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
646 TGenericSeq Sup;
647 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
648 };
649 struct tySequence__j9aEZ11m8pCmK2eRUFSgiOA {
650 TGenericSeq Sup;
651 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA data[SEQ_DECL_SIZE];
652 };
653 struct tySequence__RJ9cCbHDTKFvcxBv5qqeJbg {
654 TGenericSeq Sup;
655 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA data[SEQ_DECL_SIZE];
656 };
657 struct tySequence__tFZSZSomBEZ9bmg1CrY7ojA {
658 TGenericSeq Sup;
659 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* data[SEQ_DECL_SIZE];
660 };
661 struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
662 TGenericSeq Sup;
663 NI data[SEQ_DECL_SIZE];
664 };
665 struct tySequence__sHfymmN9aVTQTLnu1B0wi3w {
666 TGenericSeq Sup;
667 tyTuple__KYzEow2par19cjmb9bTX4xkg data[SEQ_DECL_SIZE];
668 };
669 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
670 TGenericSeq Sup;
671 tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
672 };
673 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
674 TGenericSeq Sup;
675 tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
676 };
677 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
678 TGenericSeq Sup;
679 tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
680 };
681 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
682 TGenericSeq Sup;
683 tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
684 };
685 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
686 TGenericSeq Sup;
687 NimStringDesc* data[SEQ_DECL_SIZE];
688 };
689 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
690 TGenericSeq Sup;
691 tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
692 };
693 struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
694 TGenericSeq Sup;
695 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
696 };
697 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
698 TGenericSeq Sup;
699 tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
700 };
701 struct tySequence__uB9b75OUPRENsBAu4AnoePA {
702 TGenericSeq Sup;
703 tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
704 };
705 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
706 static N_NIMCALL(void, Marker_tySequence__dAjyAaabi52TN36Jp0fAXQ)(void* p, NI op);
707 N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
708 static N_NIMCALL(void, Marker_tySequence__0a6ZbC0zPSfUDYzqPnO68A)(void* p, NI op);
709 static N_NIMCALL(void, Marker_tySequence__F43jf4nUkSAG8E9cfLj9aQoQ)(void* p, NI op);
710 static N_NIMCALL(void, Marker_tyRef__SHCn57BjQ6LjeAGfBicCFg)(void* p, NI op);
711 N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
712 static N_INLINE(void, asgnRef)(void** dest, void* src);
713 static N_INLINE(void, incRef__system_5300)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
714 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
715 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5262)(void* usr);
716 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
717 static N_INLINE(void, decRef__system_5307)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
718 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
719 static N_INLINE(void, rtlAddZCT__system_5305)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
720 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5256)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
721 N_LIB_PRIVATE N_NIMCALL(void, preVisit__nilcheck_8796)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
722 N_LIB_PRIVATE N_NIMCALL(void, toTable__nilcheck_8801)(tyTuple__cyDO9czMbIL47POKM3sIQng* pairs, NI pairsLen_0, tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* Result);
723 N_LIB_PRIVATE N_NIMCALL(void, initTable__nilcheck_8806)(NI initialSize, tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* Result);
724 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
725 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count);
726 N_LIB_PRIVATE N_NIMCALL(NI, nextPowerOfTwo__pureZmath_177)(NI x);
727 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
728 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_7174)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t, NI key, NI16 val);
729 static N_INLINE(NI, rawGet__nilcheck_1984)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key, NI* hc);
730 static N_INLINE(NI, hash__nilcheck_1991)(NI x);
731 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x);
732 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b);
733 static N_INLINE(NU64, hiXorLoFallback64__pureZhashes_35)(NU64 a, NU64 b);
734 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode);
735 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_1923)(NI a, NI b);
736 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash);
737 static N_INLINE(NIM_BOOL, mustRehash__nilcheck_7373)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t);
738 N_LIB_PRIVATE N_NIMCALL(void, enlarge__nilcheck_7559)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t);
739 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__nilcheck_7894)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t, tySequence__dAjyAaabi52TN36Jp0fAXQ** data, NI key, NI16 val, NI hc, NI h);
740 static N_INLINE(NI, rawGetKnownHC__nilcheck_8075)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key, NI hc);
741 N_LIB_PRIVATE N_NIMCALL(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw*, newIdentCache__idents_152)(void);
742 static N_INLINE(void, nimGCunrefRC1)(void* p);
743 N_LIB_PRIVATE N_NIMCALL(void*, newSeqRC1)(TNimType* typ, NI len);
744 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newIdentNode__ast_3712)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
745 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_143)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
746 static N_INLINE(void, nimZeroMem)(void* p, NI size);
747 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
748 N_LIB_PRIVATE N_NIMCALL(void, genericAssign)(void* dest, void* src, TNimType* mt);
749 N_LIB_PRIVATE N_NIMCALL(NI, symbol__nilcheck_1210)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
750 N_LIB_PRIVATE N_NIMCALL(NI, hashTree__treetab_5)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
751 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__nilcheck_1977)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key);
752 N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_5915)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* a);
753 N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_8361)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value);
754 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
755 N_LIB_PRIVATE N_NIMCALL(void, preVisitNode__nilcheck_7012)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
756 N_LIB_PRIVATE N_NIMCALL(NI16*, X5BX5D___nilcheck_2314)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t, NI key);
757 N_LIB_PRIVATE N_NOINLINE(void, raiseKeyError__nilcheck_2385)(NI key) __attribute__((noreturn));
758 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
759 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
760 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
761 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___nilcheck_1927)(NI a);
762 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
763 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
764 N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line);
765 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___nilcheck_176)(NI16 a, NI16 b);
766 N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_8692)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a);
767 N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_8700)(tySequence__0a6ZbC0zPSfUDYzqPnO68A** a, NI16 length);
768 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
769 N_LIB_PRIVATE N_NIMCALL(NI16, plus___nilcheck_195)(NI16 a, NI16 b);
770 N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_55)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
771 N_LIB_PRIVATE N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*, X5BX5D___nilcheck_3538)(tySequence__0a6ZbC0zPSfUDYzqPnO68A** a, NI16 index);
772 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
773 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
774 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___nilcheck_163)(NI16 a, NI16 b);
775 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, newNilMap__nilcheck_237)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* parent, NI count);
776 N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_300)(tySequence__j9aEZ11m8pCmK2eRUFSgiOA* a);
777 static N_NIMCALL(void, Marker_tySequence__j9aEZ11m8pCmK2eRUFSgiOA)(void* p, NI op);
778 static N_NIMCALL(void, Marker_tySequence__RJ9cCbHDTKFvcxBv5qqeJbg)(void* p, NI op);
779 static N_NIMCALL(void, Marker_tySequence__tFZSZSomBEZ9bmg1CrY7ojA)(void* p, NI op);
780 static N_NIMCALL(void, Marker_tyRef__jS25SPRyK4NElao6fMJSpg)(void* p, NI op);
781 N_LIB_PRIVATE N_NIMCALL(tySequence__j9aEZ11m8pCmK2eRUFSgiOA*, newSeqOfDistinct__nilcheck_362)(NI length);
782 N_LIB_PRIVATE N_NIMCALL(tySequence__j9aEZ11m8pCmK2eRUFSgiOA*, newSeq__nilcheck_343)(NI len);
783 N_LIB_PRIVATE N_NIMCALL(tySequence__tFZSZSomBEZ9bmg1CrY7ojA*, newSeqOfDistinct__nilcheck_427)(NI length);
784 N_LIB_PRIVATE N_NIMCALL(tySequence__tFZSZSomBEZ9bmg1CrY7ojA*, newSeq__nilcheck_381)(NI len);
785 N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g*, newSeqOfDistinct__nilcheck_483)(NI length);
786 N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g*, newSeq__nilcheck_446)(NI len);
787 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_584)(tySequence__qwqHTkRvwhrRyENtudHQ7g** a, NI16 index, NI value);
788 static N_INLINE(void, initIntSet__pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
789 N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_16)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
790 N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_640)(tySequence__0a6ZbC0zPSfUDYzqPnO68A** a, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* value);
791 N_LIB_PRIVATE N_NIMCALL(NI, len__nilcheck_9409)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t);
792 N_LIB_PRIVATE N_NIMCALL(void, store__nilcheck_2666)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, NI16 index, tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value, tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node);
793 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_188)(NI16 a, NI16 b);
794 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_2714)(tySequence__j9aEZ11m8pCmK2eRUFSgiOA** a, NI16 index, tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value);
795 N_LIB_PRIVATE N_NIMCALL(tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**, X5BX5D___nilcheck_1191)(tySequence__tFZSZSomBEZ9bmg1CrY7ojA** a, NI16 index);
796 N_LIB_PRIVATE N_NIMCALL(void, aliasSet__nilcheck_2537)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NI16 index, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
797 N_LIB_PRIVATE N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*, X5BX5D___nilcheck_1495)(tySequence__0a6ZbC0zPSfUDYzqPnO68A** a, NI index);
798 N_LIB_PRIVATE N_NIMCALL(NI*, X5BX5D___nilcheck_2460)(tySequence__qwqHTkRvwhrRyENtudHQ7g** a, NI16 index);
799 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_2885)(tySequence__tFZSZSomBEZ9bmg1CrY7ojA** a, NI16 index, tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* value);
800 N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt);
801 N_LIB_PRIVATE N_NIMCALL(NI16, index__nilcheck_1932)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
802 N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA, typeNilability__nilcheck_4049)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
803 N_LIB_PRIVATE N_NIMCALL(void, check__nilcheck_227)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
804 N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA, X5BX5D___nilcheck_865)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NI16 index);
805 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, gteq___nilcheck_184)(NI16 a, NI16 b);
806 N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA*, X5BX5D___nilcheck_989)(tySequence__j9aEZ11m8pCmK2eRUFSgiOA** a, NI16 index);
807 N_LIB_PRIVATE N_NIMCALL(void, checkInfix__nilcheck_6280)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
808 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, checkCondition__nilcheck_231)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NIM_BOOL reverse, NIM_BOOL base);
809 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, union__nilcheck_5848)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* l, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* r);
810 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, findCommonParent__nilcheck_5833)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* l, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* r);
811 N_LIB_PRIVATE N_NIMCALL(tySequence__RJ9cCbHDTKFvcxBv5qqeJbg*, history__nilcheck_1071)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NI16 index);
812 static N_INLINE(void, X5BX5D___nilcheck_5929)(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* s, NI sLen_0, NI i, tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* Result);
813 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___renderer_2106)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
814 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
815 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
816 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
817 N_LIB_PRIVATE N_NIMCALL(void, checkIsNil__nilcheck_6323)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NIM_BOOL isElse, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
818 N_LIB_PRIVATE N_NIMCALL(void, checkCall__nilcheck_4051)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
819 N_LIB_PRIVATE N_NIMCALL(void, moveOut__nilcheck_2975)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* target);
820 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_215)(NI a, NI b);
821 static N_INLINE(NI, len__nilcheck_1772)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s);
822 N_LIB_PRIVATE N_NIMCALL(void, excl__reorder_264)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
823 N_LIB_PRIVATE N_NIMCALL(NI, minus___nilcheck_223)(NI a, NI b);
824 N_LIB_PRIVATE N_NIMCALL(NI, len__nilcheck_3422)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a);
825 N_LIB_PRIVATE N_NIMCALL(void, moveOutDependants__nilcheck_3476)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node);
826 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**, X5BX5D___nilcheck_1387)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** a, NI16 index);
827 N_LIB_PRIVATE N_NIMCALL(void, storeDependants__nilcheck_3610)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node, tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value);
828 static N_NIMCALL(void, Marker_tySequence__sHfymmN9aVTQTLnu1B0wi3w)(void* p, NI op);
829 N_LIB_PRIVATE N_NIMCALL(void, checkDotExpr__nilcheck_5813)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
830 N_LIB_PRIVATE N_NIMCALL(void, checkRefExpr__nilcheck_5782)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ check, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
831 N_LIB_PRIVATE N_NIMCALL(void, checkDeref__nilcheck_5775)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
832 N_LIB_PRIVATE N_NIMCALL(void, handleNilability__nilcheck_5770)(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ check, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map);
833 N_LIB_PRIVATE N_NIMCALL(void, derefWarning__nilcheck_4257)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA kind);
834 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__nilcheck_4315)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key);
835 static N_INLINE(NI, rawGet__nilcheck_4328)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key, NI* hc);
836 N_LIB_PRIVATE N_NIMCALL(NI, hash__lineinfos_229)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q i);
837 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZsets_38)(NI hcode);
838 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___msgs_993)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q a, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q b);
839 static N_INLINE(NI, nextTry__pureZcollectionsZsets_41)(NI h, NI maxHash);
840 N_LIB_PRIVATE N_NIMCALL(void, incl__nilcheck_4610)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key);
841 static N_INLINE(NI, slotsNeeded__pureZcollectionsZsets_49)(NI count);
842 static N_INLINE(NIM_BOOL, mustRehash__nilcheck_4703)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA t);
843 N_LIB_PRIVATE N_NIMCALL(void, enlarge__nilcheck_4895)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA* s);
844 static N_INLINE(NI, rawGetKnownHC__nilcheck_5146)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key, NI hc);
845 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__nilcheck_5508)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA* s, tySequence__F43jf4nUkSAG8E9cfLj9aQoQ** data, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key, NI hc, NI h);
846 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
847 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_9)(NU64 x);
848 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);
849 N_LIB_PRIVATE N_NIMCALL(void, checkIf__nilcheck_6213)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
850 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, reverseDirect__nilcheck_1214)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map);
851 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, copyMap__nilcheck_4039)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map);
852 N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA, reverse__nilcheck_6430)(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value);
853 static N_INLINE(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA*, X5BX5D___nilcheck_6618)(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* s, NI sLen_0, NI i);
854 N_LIB_PRIVATE N_NIMCALL(tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA, reverse__nilcheck_6433)(tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA kind);
855 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, add__nilcheck_5952)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* l, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* r);
856 N_LIB_PRIVATE N_NIMCALL(void, checkBranch__nilcheck_1216)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
857 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasUnstructuredControlFlowJump__nilcheck_1220)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
858 N_LIB_PRIVATE N_NIMCALL(void, checkAsgn__nilcheck_6062)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* target, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* assigned, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
859 N_LIB_PRIVATE N_NIMCALL(void, move__nilcheck_3682)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* target, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* assigned);
860 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newTree__ast_3392)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** children, NI childrenLen_0);
861 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__nilcheck_6168)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key);
862 N_LIB_PRIVATE N_NIMCALL(void, checkFor__nilcheck_6252)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
863 N_LIB_PRIVATE N_NIMCALL(void, checkCase__nilcheck_6366)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
864 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, infixEq__nilcheck_6356)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* l, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r);
865 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, infix__nilcheck_6332)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* l, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic);
866 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, newSym__ast_3445)(tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw symKind, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options);
867 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
868 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3719)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
869 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, newType__ast_3896)(tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
870 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
871 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, infixOr__nilcheck_6361)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* l, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r);
872 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, prefixNot__nilcheck_6350)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node);
873 N_LIB_PRIVATE N_NIMCALL(void, checkReturn__nilcheck_6207)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
874 N_LIB_PRIVATE N_NIMCALL(void, checkBracketExpr__nilcheck_5819)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
875 N_LIB_PRIVATE N_NIMCALL(void, checkTry__nilcheck_6403)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
876 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canRaise__ast_5088)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fn);
877 N_LIB_PRIVATE N_NIMCALL(void, checkWhile__nilcheck_6269)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result);
878 static N_INLINE(NIM_BOOL, contains__nilcheck_9533)(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw s, NI16 value);
879 static N_INLINE(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw, dotdot___nilcheck_9461)(NI16 a, NI16 b);
880 N_LIB_PRIVATE N_NIMCALL(NI16, low__nilcheck_9436)(tySequence__tFZSZSomBEZ9bmg1CrY7ojA* a);
881 N_LIB_PRIVATE N_NIMCALL(NI16, high__nilcheck_9444)(tySequence__tFZSZSomBEZ9bmg1CrY7ojA* a);
882 N_LIB_PRIVATE N_NIMCALL(void, checkResult__nilcheck_6927)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map);
883 N_LIB_PRIVATE TNimType NTInilcheckercontext58objecttype__FEwkSv10ehW9bMzwnvRrMwA_;
884 N_LIB_PRIVATE TNimType NTItable__mx89bZoYrm9bEaZ0GUM1pBOw_;
885 N_LIB_PRIVATE TNimType NTIkeyvaluepair__X9bWVAqRSgByRpQwn6owzEA_;
886 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
887 extern TNimType NTIint4954__kDPg4wXyR8DDyA0MeEjIsw_;
888 N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_;
889 extern TNimType NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_;
890 extern TNimType NTIpackedset__IhxwDBRi51nGrosBGFKcsA_;
891 N_LIB_PRIVATE TNimType NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_;
892 N_LIB_PRIVATE TNimType NTIhashset__ylUTTG3LIabQ9bY9bfQ5vOwA_;
893 N_LIB_PRIVATE TNimType NTIkeyvaluepair__n5CipyK3lOxrIaiLdb9bDLw_;
894 extern TNimType NTItlineinfo__WGx4rAexNXnczy1Avn646Q_;
895 N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_;
896 extern TNimType NTIidgenerator__9c0n61DB7aLyPcUMi5meUHQ_;
897 extern TNimType NTIconfigref__a8lycfSA25OQltN3OMeBsA_;
898 N_LIB_PRIVATE TNimType NTInilcheckercontext__SHCn57BjQ6LjeAGfBicCFg_;
899 static NIM_CONST tyArray__brqof9bq2QWioDkbae3wZsw TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_7 = {{((NI) -1),
900 ((NI16) 0)}
901 }
902 ;
903 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_8, "result", 6);
904 extern NIM_CONST tySet_tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw nkLiterals__ast_3029;
905 extern TNimType NTIrefkeyerror__8SzoIAgLw9ci2v0yafHj9b6Q_;
906 extern TNimType NTIkeyerror__t7nhKLvXTQS9cS8ByJU9bIag_;
907 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_9, "key not found: ", 15);
908 N_LIB_PRIVATE TNimType NTInilmap58objecttype__7KTTiYJtXT6nWGm9adO9cEkw_;
909 N_LIB_PRIVATE TNimType NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_;
910 N_LIB_PRIVATE TNimType NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_;
911 N_LIB_PRIVATE TNimType NTIhistory__HvSmlqGq2vKUejgLWJ9cFPA_;
912 N_LIB_PRIVATE TNimType NTItransitionkind__1GzHwTVQ9aW4oTXg2LMytYA_;
913 extern TNimType NTIpnode__fKfcLzXYiz5jNu3NH3Tv8Q_;
914 N_LIB_PRIVATE TNimType NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_;
915 N_LIB_PRIVATE TNimType NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_;
916 extern TNimType NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_;
917 N_LIB_PRIVATE TNimType NTInilmap__jS25SPRyK4NElao6fMJSpg_;
918 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_18, "true", 4);
919 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_19, "false", 5);
920 N_LIB_PRIVATE TNimType NTILpnode_nilabilityT__KYzEow2par19cjmb9bTX4xkg_;
921 N_LIB_PRIVATE TNimType NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_;
922 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_21, "it is nil", 9);
923 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_22, "it might be nil", 15);
924 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_23, "it is unreachable", 17);
925 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_24, "can\'t deref ", 12);
926 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_25, ", ", 2);
927 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_26, "\012", 1);
928 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_27, " ", 2);
929 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_28, "param with nilable type", 23);
930 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_29, "it returns true for isNil", 25);
931 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_30, "assigns a value which might be nil", 34);
932 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_31, "passes it as a var arg which might change to nil", 48);
933 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_32, "it is nil by default", 20);
934 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_33, "it has ref type", 15);
935 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_34, "it is safe here as it returns false for isNil", 45);
936 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_35, "it might be changed directly or through an alias", 48);
937 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_36, "it might be changed because its base might be changed", 53);
938 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_37, " on line ", 9);
939 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_38, ":", 1);
940 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_40, "/home/runner/work/nightlies/nightlies/nim/compiler/nilcheck.nim", 63);
941 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_39 = {((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_40),
942 ((NI) 575),
943 ((NI) 9)}
944 ;
945 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_41, "==", 2);
946 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_42, "and", 3);
947 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_43, "or", 2);
948 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_44, "not", 3);
949 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_45, "return value is nil", 19);
950 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_46 = {((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_40),
951 ((NI) 1178),
952 ((NI) 11)}
953 ;
954 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_47, "return value might be nil", 25);
955 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_48 = {((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_40),
956 ((NI) 1180),
957 ((NI) 11)}
958 ;
959 STRING_LITERAL(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_49, "return value is unreachable", 27);
960 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_50 = {((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_40),
961 ((NI) 1182),
962 ((NI) 11)}
963 ;
964 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5209;
N_NIMCALL(void,Marker_tySequence__dAjyAaabi52TN36Jp0fAXQ)965 static N_NIMCALL(void, Marker_tySequence__dAjyAaabi52TN36Jp0fAXQ)(void* p, NI op) {
966 tySequence__dAjyAaabi52TN36Jp0fAXQ* a;
967 NI T1_;
968 a = (tySequence__dAjyAaabi52TN36Jp0fAXQ*)p;
969 T1_ = (NI)0;
970 }
N_NIMCALL(void,Marker_tySequence__0a6ZbC0zPSfUDYzqPnO68A)971 static N_NIMCALL(void, Marker_tySequence__0a6ZbC0zPSfUDYzqPnO68A)(void* p, NI op) {
972 tySequence__0a6ZbC0zPSfUDYzqPnO68A* a;
973 NI T1_;
974 NI T2_;
975 a = (tySequence__0a6ZbC0zPSfUDYzqPnO68A*)p;
976 T1_ = (NI)0;
977 for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
978 nimGCvisit((void*)a->data[T1_].head, op);
979 nimGCvisit((void*)a->data[T1_].data, op);
980 T2_ = (NI)0;
981 }
982 }
N_NIMCALL(void,Marker_tySequence__F43jf4nUkSAG8E9cfLj9aQoQ)983 static N_NIMCALL(void, Marker_tySequence__F43jf4nUkSAG8E9cfLj9aQoQ)(void* p, NI op) {
984 tySequence__F43jf4nUkSAG8E9cfLj9aQoQ* a;
985 NI T1_;
986 a = (tySequence__F43jf4nUkSAG8E9cfLj9aQoQ*)p;
987 T1_ = (NI)0;
988 }
N_NIMCALL(void,Marker_tyRef__SHCn57BjQ6LjeAGfBicCFg)989 static N_NIMCALL(void, Marker_tyRef__SHCn57BjQ6LjeAGfBicCFg)(void* p, NI op) {
990 tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* a;
991 a = (tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA*)p;
992 nimGCvisit((void*)(*a).symbolIndices.data, op);
993 nimGCvisit((void*)(*a).expressions, op);
994 nimGCvisit((void*)(*a).dependants, op);
995 nimGCvisit((void*)(*a).warningLocations.data, op);
996 nimGCvisit((void*)(*a).idgen, op);
997 nimGCvisit((void*)(*a).config, op);
998 }
N_INLINE(NI,pluspercent___system_696)999 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
1000 NI result;
1001 result = (NI)0;
1002 result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
1003 return result;
1004 }
N_INLINE(void,incRef__system_5300)1005 static N_INLINE(void, incRef__system_5300)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1006 (*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
1007 }
N_INLINE(NI,minuspercent___system_716)1008 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
1009 NI result;
1010 result = (NI)0;
1011 result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
1012 return result;
1013 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5262)1014 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5262)(void* usr) {
1015 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
1016 NI T1_;
1017 result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1018 T1_ = (NI)0;
1019 T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
1020 result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
1021 return result;
1022 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)1023 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
1024 NIM_BOOL result;
1025 result = (NIM_BOOL)0;
1026 result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
1027 return result;
1028 }
N_INLINE(void,rtlAddZCT__system_5305)1029 static N_INLINE(void, rtlAddZCT__system_5305)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1030 addZCT__system_5256((&gch__system_5209.zct), c);
1031 }
N_INLINE(void,decRef__system_5307)1032 static N_INLINE(void, decRef__system_5307)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1033 (*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
1034 {
1035 NIM_BOOL T3_;
1036 T3_ = (NIM_BOOL)0;
1037 T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
1038 if (!T3_) goto LA4_;
1039 rtlAddZCT__system_5305(c);
1040 }
1041 LA4_: ;
1042 }
N_INLINE(void,asgnRef)1043 static N_INLINE(void, asgnRef)(void** dest, void* src) {
1044 {
1045 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
1046 if (!!((src == NIM_NIL))) goto LA3_;
1047 T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1048 T5_ = usrToCell__system_5262(src);
1049 incRef__system_5300(T5_);
1050 }
1051 LA3_: ;
1052 {
1053 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
1054 if (!!(((*dest) == NIM_NIL))) goto LA8_;
1055 T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1056 T10_ = usrToCell__system_5262((*dest));
1057 decRef__system_5307(T10_);
1058 }
1059 LA8_: ;
1060 (*dest) = src;
1061 }
N_INLINE(NI,slotsNeeded__pureZcollectionsZtables_42)1062 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count) {
1063 NI result;
1064 result = (NI)0;
1065 result = nextPowerOfTwo__pureZmath_177((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
1066 return result;
1067 }
N_NIMCALL(void,initTable__nilcheck_8806)1068 N_LIB_PRIVATE N_NIMCALL(void, initTable__nilcheck_8806)(NI initialSize, tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* Result) {
1069 NI correctSizeX60gensym196_;
1070 unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
1071 (*Result).counter = 0;
1072 correctSizeX60gensym196_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
1073 (*Result).counter = ((NI) 0);
1074 unsureAsgnRef((void**) (&(*Result).data), (tySequence__dAjyAaabi52TN36Jp0fAXQ*) newSeq((&NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_), ((NI) (correctSizeX60gensym196_))));
1075 }
N_INLINE(NU64,hiXorLoFallback64__pureZhashes_35)1076 static N_INLINE(NU64, hiXorLoFallback64__pureZhashes_35)(NU64 a, NU64 b) {
1077 NU64 result;
1078 NU64 aH;
1079 NU64 aL;
1080 NU64 bH;
1081 NU64 bL;
1082 NU64 rHH;
1083 NU64 rHL;
1084 NU64 rLH;
1085 NU64 rLL;
1086 NU64 t;
1087 NU64 c;
1088 NU64 lo;
1089 NU64 T6_;
1090 NU64 hi;
1091 { result = (NU64)0;
1092 aH = (NU64)((NU64)(a) >> (NU64)(((NI) 32)));
1093 aL = (NU64)(a & 4294967295ULL);
1094 bH = (NU64)((NU64)(b) >> (NU64)(((NI) 32)));
1095 bL = (NU64)(b & 4294967295ULL);
1096 rHH = (NU64)((NU64)(aH) * (NU64)(bH));
1097 rHL = (NU64)((NU64)(aH) * (NU64)(bL));
1098 rLH = (NU64)((NU64)(aL) * (NU64)(bH));
1099 rLL = (NU64)((NU64)(aL) * (NU64)(bL));
1100 t = (NU64)((NU64)(rLL) + (NU64)((NU64)((NU64)(rHL) << (NU64)(((NI) 32)))));
1101 {
1102 if (!((NU64)(t) < (NU64)(rLL))) goto LA3_;
1103 c = 1ULL;
1104 }
1105 goto LA1_;
1106 LA3_: ;
1107 {
1108 c = 0ULL;
1109 }
1110 LA1_: ;
1111 lo = (NU64)((NU64)(t) + (NU64)((NU64)((NU64)(rLH) << (NU64)(((NI) 32)))));
1112 T6_ = (NU64)0;
1113 {
1114 if (!((NU64)(lo) < (NU64)(t))) goto LA9_;
1115 T6_ = 1ULL;
1116 }
1117 goto LA7_;
1118 LA9_: ;
1119 {
1120 T6_ = 0ULL;
1121 }
1122 LA7_: ;
1123 c += T6_;
1124 hi = (NU64)((NU64)((NU64)((NU64)((NU64)((NU64)(rHH) + (NU64)((NU64)((NU64)(rHL) >> (NU64)(((NI) 32)))))) + (NU64)((NU64)((NU64)(rLH) >> (NU64)(((NI) 32)))))) + (NU64)(c));
1125 result = (NU64)(hi ^ lo);
1126 goto BeforeRet_;
1127 }BeforeRet_: ;
1128 return result;
1129 }
N_INLINE(NU64,hiXorLo__pureZhashes_79)1130 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b) {
1131 NU64 result;
1132 result = (NU64)0;
1133 result = hiXorLoFallback64__pureZhashes_35(a, b);
1134 return result;
1135 }
N_INLINE(NI,hashWangYi1__pureZhashes_136)1136 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x) {
1137 NI result;
1138 NU64 T1_;
1139 NU64 T2_;
1140 result = (NI)0;
1141 T1_ = (NU64)0;
1142 T1_ = hiXorLo__pureZhashes_79(11562461410679940143ULL, (NU64)(x ^ 16646288086500911323ULL));
1143 T2_ = (NU64)0;
1144 T2_ = hiXorLo__pureZhashes_79(T1_, 16952864883938283885ULL);
1145 result = ((NI) (T2_));
1146 return result;
1147 }
N_INLINE(NI,hash__nilcheck_1991)1148 static N_INLINE(NI, hash__nilcheck_1991)(NI x) {
1149 NI result;
1150 result = (NI)0;
1151 result = hashWangYi1__pureZhashes_136(((NU64) (x)));
1152 return result;
1153 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZtables_31)1154 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) {
1155 NIM_BOOL result;
1156 result = (NIM_BOOL)0;
1157 result = !((hcode == ((NI) 0)));
1158 return result;
1159 }
N_NIMCALL(NIM_BOOL,eqeq___nilcheck_1923)1160 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_1923)(NI a, NI b) {
1161 NIM_BOOL result;
1162 result = (NIM_BOOL)0;
1163 result = (a == b);
1164 return result;
1165 }
N_INLINE(NI,nextTry__pureZcollectionsZtables_34)1166 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) {
1167 NI result;
1168 result = (NI)0;
1169 result = (NI)((NI)(h + ((NI) 1)) & maxHash);
1170 return result;
1171 }
N_INLINE(NI,rawGet__nilcheck_1984)1172 static N_INLINE(NI, rawGet__nilcheck_1984)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key, NI* hc) {
1173 NI result;
1174 NI h;
1175 NI T10_;
1176 { result = (NI)0;
1177 (*hc) = hash__nilcheck_1991(key);
1178 {
1179 if (!((*hc) == ((NI) 0))) goto LA3_;
1180 (*hc) = ((NI) 314159265);
1181 }
1182 LA3_: ;
1183 {
1184 NI T7_;
1185 T7_ = (t.data ? t.data->Sup.len : 0);
1186 if (!(T7_ == ((NI) 0))) goto LA8_;
1187 result = ((NI) -1);
1188 goto BeforeRet_;
1189 }
1190 LA8_: ;
1191 T10_ = ((t.data ? t.data->Sup.len : 0)-1);
1192 h = (NI)((*hc) & T10_);
1193 {
1194 while (1) {
1195 NIM_BOOL T13_;
1196 NI T20_;
1197 T13_ = (NIM_BOOL)0;
1198 T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
1199 if (!T13_) goto LA12;
1200 {
1201 NIM_BOOL T16_;
1202 T16_ = (NIM_BOOL)0;
1203 T16_ = (t.data->data[h].Field0 == (*hc));
1204 if (!(T16_)) goto LA17_;
1205 T16_ = eqeq___nilcheck_1923(t.data->data[h].Field1, key);
1206 LA17_: ;
1207 if (!T16_) goto LA18_;
1208 result = h;
1209 goto BeforeRet_;
1210 }
1211 LA18_: ;
1212 T20_ = ((t.data ? t.data->Sup.len : 0)-1);
1213 h = nextTry__pureZcollectionsZtables_34(h, T20_);
1214 } LA12: ;
1215 }
1216 result = (NI)(((NI) -1) - h);
1217 }BeforeRet_: ;
1218 return result;
1219 }
N_INLINE(NIM_BOOL,mustRehash__nilcheck_7373)1220 static N_INLINE(NIM_BOOL, mustRehash__nilcheck_7373)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t) {
1221 NIM_BOOL result;
1222 NIM_BOOL T1_;
1223 NI T2_;
1224 NI T4_;
1225 result = (NIM_BOOL)0;
1226 T1_ = (NIM_BOOL)0;
1227 T2_ = (t.data ? t.data->Sup.len : 0);
1228 T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
1229 if (T1_) goto LA3_;
1230 T4_ = (t.data ? t.data->Sup.len : 0);
1231 T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
1232 LA3_: ;
1233 result = T1_;
1234 return result;
1235 }
N_NIMCALL(void,rawInsert__nilcheck_7894)1236 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__nilcheck_7894)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t, tySequence__dAjyAaabi52TN36Jp0fAXQ** data, NI key, NI16 val, NI hc, NI h) {
1237 (*data)->data[h].Field1 = key;
1238 (*data)->data[h].Field2 = val;
1239 (*data)->data[h].Field0 = hc;
1240 }
N_NIMCALL(void,enlarge__nilcheck_7559)1241 N_LIB_PRIVATE N_NIMCALL(void, enlarge__nilcheck_7559)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t) {
1242 tySequence__dAjyAaabi52TN36Jp0fAXQ* n;
1243 NI T1_;
1244 tySequence__dAjyAaabi52TN36Jp0fAXQ* T2_;
1245 n = NIM_NIL;
1246 T1_ = ((*t).data ? (*t).data->Sup.len : 0);
1247 n = (tySequence__dAjyAaabi52TN36Jp0fAXQ*) newSeq((&NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_), ((NI) ((NI)(T1_ * ((NI) 2)))));
1248 T2_ = NIM_NIL;
1249 T2_ = (*t).data;
1250 unsureAsgnRef((void**) (&(*t).data), n);
1251 n = T2_;
1252 {
1253 NI i;
1254 NI colontmp_;
1255 NI T4_;
1256 NI res;
1257 i = (NI)0;
1258 colontmp_ = (NI)0;
1259 T4_ = ((n ? n->Sup.len : 0)-1);
1260 colontmp_ = T4_;
1261 res = ((NI) 0);
1262 {
1263 while (1) {
1264 NI eh;
1265 if (!(res <= colontmp_)) goto LA6;
1266 i = res;
1267 eh = n->data[i].Field0;
1268 {
1269 NIM_BOOL T9_;
1270 NI j;
1271 NI T12_;
1272 NI T17_;
1273 NI16 T18_;
1274 T9_ = (NIM_BOOL)0;
1275 T9_ = isFilled__pureZcollectionsZtables_31(eh);
1276 if (!T9_) goto LA10_;
1277 T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
1278 j = (NI)(eh & T12_);
1279 {
1280 while (1) {
1281 NIM_BOOL T15_;
1282 NI T16_;
1283 T15_ = (NIM_BOOL)0;
1284 T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
1285 if (!T15_) goto LA14;
1286 T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
1287 j = nextTry__pureZcollectionsZtables_34(j, T16_);
1288 } LA14: ;
1289 }
1290 T17_ = (NI)0;
1291 T17_ = n->data[i].Field1;
1292 n->data[i].Field1 = 0;
1293 T18_ = (NI16)0;
1294 T18_ = n->data[i].Field2;
1295 n->data[i].Field2 = 0;
1296 rawInsert__nilcheck_7894(t, (&(*t).data), T17_, T18_, eh, j);
1297 }
1298 LA10_: ;
1299 res += ((NI) 1);
1300 } LA6: ;
1301 }
1302 }
1303 }
N_INLINE(NI,rawGetKnownHC__nilcheck_8075)1304 static N_INLINE(NI, rawGetKnownHC__nilcheck_8075)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key, NI hc) {
1305 NI result;
1306 NI h;
1307 NI T6_;
1308 { result = (NI)0;
1309 {
1310 NI T3_;
1311 T3_ = (t.data ? t.data->Sup.len : 0);
1312 if (!(T3_ == ((NI) 0))) goto LA4_;
1313 result = ((NI) -1);
1314 goto BeforeRet_;
1315 }
1316 LA4_: ;
1317 T6_ = ((t.data ? t.data->Sup.len : 0)-1);
1318 h = (NI)(hc & T6_);
1319 {
1320 while (1) {
1321 NIM_BOOL T9_;
1322 NI T16_;
1323 T9_ = (NIM_BOOL)0;
1324 T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
1325 if (!T9_) goto LA8;
1326 {
1327 NIM_BOOL T12_;
1328 T12_ = (NIM_BOOL)0;
1329 T12_ = (t.data->data[h].Field0 == hc);
1330 if (!(T12_)) goto LA13_;
1331 T12_ = eqeq___nilcheck_1923(t.data->data[h].Field1, key);
1332 LA13_: ;
1333 if (!T12_) goto LA14_;
1334 result = h;
1335 goto BeforeRet_;
1336 }
1337 LA14_: ;
1338 T16_ = ((t.data ? t.data->Sup.len : 0)-1);
1339 h = nextTry__pureZcollectionsZtables_34(h, T16_);
1340 } LA8: ;
1341 }
1342 result = (NI)(((NI) -1) - h);
1343 }BeforeRet_: ;
1344 return result;
1345 }
N_NIMCALL(void,X5BX5Deq___nilcheck_7174)1346 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_7174)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t, NI key, NI16 val) {
1347 NI hc;
1348 NI index;
1349 {
1350 NI T3_;
1351 NI correctSizeX60gensym176_;
1352 T3_ = ((*t).data ? (*t).data->Sup.len : 0);
1353 if (!(T3_ == ((NI) 0))) goto LA4_;
1354 correctSizeX60gensym176_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1355 (*t).counter = ((NI) 0);
1356 unsureAsgnRef((void**) (&(*t).data), (tySequence__dAjyAaabi52TN36Jp0fAXQ*) newSeq((&NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_), ((NI) (correctSizeX60gensym176_))));
1357 }
1358 LA4_: ;
1359 hc = (NI)0;
1360 index = rawGet__nilcheck_1984((*t), key, (&hc));
1361 {
1362 if (!(((NI) 0) <= index)) goto LA8_;
1363 (*t).data->data[index].Field2 = val;
1364 }
1365 goto LA6_;
1366 LA8_: ;
1367 {
1368 {
1369 NI T13_;
1370 NI correctSizeX60gensym179_;
1371 T13_ = ((*t).data ? (*t).data->Sup.len : 0);
1372 if (!(T13_ == ((NI) 0))) goto LA14_;
1373 correctSizeX60gensym179_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1374 (*t).counter = ((NI) 0);
1375 unsureAsgnRef((void**) (&(*t).data), (tySequence__dAjyAaabi52TN36Jp0fAXQ*) newSeq((&NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_), ((NI) (correctSizeX60gensym179_))));
1376 }
1377 LA14_: ;
1378 {
1379 NIM_BOOL T18_;
1380 T18_ = (NIM_BOOL)0;
1381 T18_ = mustRehash__nilcheck_7373((*t));
1382 if (!T18_) goto LA19_;
1383 enlarge__nilcheck_7559(t);
1384 index = rawGetKnownHC__nilcheck_8075((*t), key, hc);
1385 }
1386 LA19_: ;
1387 index = (NI)(((NI) -1) - index);
1388 rawInsert__nilcheck_7894(t, (&(*t).data), key, val, hc, index);
1389 (*t).counter += ((NI) 1);
1390 }
1391 LA6_: ;
1392 }
N_NIMCALL(void,toTable__nilcheck_8801)1393 N_LIB_PRIVATE N_NIMCALL(void, toTable__nilcheck_8801)(tyTuple__cyDO9czMbIL47POKM3sIQng* pairs, NI pairsLen_0, tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* Result) {
1394 initTable__nilcheck_8806(pairsLen_0, Result);
1395 {
1396 NI* key;
1397 NI16* val;
1398 NI i;
1399 key = (NI*)0;
1400 val = (NI16*)0;
1401 i = ((NI) 0);
1402 {
1403 while (1) {
1404 if (!(i < pairsLen_0)) goto LA3;
1405 key = (&pairs[i].Field0);
1406 val = (&pairs[i].Field1);
1407 X5BX5Deq___nilcheck_7174(Result, (*key), (*val));
1408 i += ((NI) 1);
1409 } LA3: ;
1410 }
1411 }
1412 }
N_INLINE(void,nimGCunrefRC1)1413 static N_INLINE(void, nimGCunrefRC1)(void* p) {
1414 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
1415 T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1416 T1_ = usrToCell__system_5262(p);
1417 decRef__system_5307(T1_);
1418 }
N_INLINE(void,nimSetMem__systemZmemory_7)1419 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
1420 void* T1_;
1421 T1_ = (void*)0;
1422 T1_ = memset(a, v, ((size_t) (size)));
1423 }
N_INLINE(void,nimZeroMem)1424 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
1425 nimSetMem__systemZmemory_7(p, ((int) 0), size);
1426 }
N_NIMCALL(NI,symbol__nilcheck_1210)1427 N_LIB_PRIVATE N_NIMCALL(NI, symbol__nilcheck_1210)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1428 NI result;
1429 result = (NI)0;
1430 switch ((*n).kind) {
1431 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
1432 {
1433 result = ((NI) -2);
1434 }
1435 break;
1436 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
1437 {
1438 {
1439 if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11))) goto LA5_;
1440 result = ((NI) -1);
1441 }
1442 goto LA3_;
1443 LA5_: ;
1444 {
1445 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym10_;
1446 xX60gensym10_ = (*n)._kind_4.sym;
1447 result = (NI)((NI)((NU32)(((NI) ((*xX60gensym10_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym10_).Sup.itemId.item)));
1448 }
1449 LA3_: ;
1450 }
1451 break;
1452 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
1453 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
1454 {
1455 result = symbol__nilcheck_1210((*n)._kind_6.sons->data[((NI) 0)]);
1456 }
1457 break;
1458 default:
1459 {
1460 result = hashTree__treetab_5(n);
1461 }
1462 break;
1463 }
1464 return result;
1465 }
N_NIMCALL(NIM_BOOL,hasKey__nilcheck_1977)1466 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__nilcheck_1977)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key) {
1467 NIM_BOOL result;
1468 NI hc;
1469 NI T1_;
1470 result = (NIM_BOOL)0;
1471 hc = (NI)0;
1472 T1_ = (NI)0;
1473 T1_ = rawGet__nilcheck_1984(t, key, (&hc));
1474 result = (((NI) 0) <= T1_);
1475 return result;
1476 }
N_NIMCALL(NI16,len__nilcheck_5915)1477 N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_5915)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* a) {
1478 NI16 result;
1479 NI T1_;
1480 result = (NI16)0;
1481 T1_ = (a ? a->Sup.len : 0);
1482 result = ((NI16) (T1_));
1483 return result;
1484 }
N_NIMCALL(void,add__nilcheck_8361)1485 N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_8361)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value) {
1486 NI T1_;
1487 unsureAsgnRef((void**) (&(*a)), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) incrSeqV3((TGenericSeq*)((*a)), (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_)));
1488 T1_ = (*a)->Sup.len++;
1489 asgnRef((void**) (&(*a)->data[T1_]), value);
1490 }
N_INLINE(void,nimCopyMem)1491 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
1492 void* T1_;
1493 T1_ = (void*)0;
1494 T1_ = memcpy(dest, source, ((size_t) (size)));
1495 }
N_INLINE(void,copyMem__system_1727)1496 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
1497 nimCopyMem(dest, source, size);
1498 }
N_INLINE(void,appendString)1499 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
1500 {
1501 if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
1502 copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
1503 (*dest).Sup.len += (*src).Sup.len;
1504 }
1505 LA3_: ;
1506 }
N_NIMCALL(NimStringDesc *,dollar___nilcheck_1927)1507 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___nilcheck_1927)(NI a) {
1508 NimStringDesc* result;
1509 result = NIM_NIL;
1510 result = dollar___systemZdollars_3(a);
1511 return result;
1512 }
N_NOINLINE(void,raiseKeyError__nilcheck_2385)1513 N_LIB_PRIVATE N_NOINLINE(void, raiseKeyError__nilcheck_2385)(NI key) {
1514 tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag* T1_;
1515 NimStringDesc* T2_;
1516 NimStringDesc* T3_;
1517 T1_ = NIM_NIL;
1518 T1_ = (tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag*) newObj((&NTIrefkeyerror__8SzoIAgLw9ci2v0yafHj9b6Q_), sizeof(tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag));
1519 (*T1_).Sup.Sup.Sup.Sup.m_type = (&NTIkeyerror__t7nhKLvXTQS9cS8ByJU9bIag_);
1520 (*T1_).Sup.Sup.Sup.name = "KeyError";
1521 T2_ = NIM_NIL;
1522 T3_ = NIM_NIL;
1523 T3_ = dollar___nilcheck_1927(key);
1524 T2_ = rawNewString((T3_ ? T3_->Sup.len : 0) + 15);
1525 appendString(T2_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_9));
1526 appendString(T2_, T3_);
1527 asgnRef((void**) (&(*T1_).Sup.Sup.Sup.message), T2_);
1528 asgnRef((void**) (&(*T1_).Sup.Sup.Sup.parent), ((Exception*) NIM_NIL));
1529 raiseExceptionEx((Exception*)T1_, "KeyError", "raiseKeyError", "tables.nim", 234);
1530 }
N_NIMCALL(NI16 *,X5BX5D___nilcheck_2314)1531 N_LIB_PRIVATE N_NIMCALL(NI16*, X5BX5D___nilcheck_2314)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t, NI key) {
1532 NI16* result;
1533 NI hcX60gensym22_;
1534 NI indexX60gensym22_;
1535 result = (NI16*)0;
1536 hcX60gensym22_ = (NI)0;
1537 indexX60gensym22_ = rawGet__nilcheck_1984((*t), key, (&hcX60gensym22_));
1538 {
1539 if (!(((NI) 0) <= indexX60gensym22_)) goto LA3_;
1540 result = (&(*t).data->data[indexX60gensym22_].Field2);
1541 }
1542 goto LA1_;
1543 LA3_: ;
1544 {
1545 raiseKeyError__nilcheck_2385(key);
1546 }
1547 LA1_: ;
1548 return result;
1549 }
N_NIMCALL(NIM_BOOL,lteq___nilcheck_176)1550 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___nilcheck_176)(NI16 a, NI16 b) {
1551 NIM_BOOL result;
1552 result = (NIM_BOOL)0;
1553 result = (a <= b);
1554 return result;
1555 }
N_NIMCALL(NI16,len__nilcheck_8692)1556 N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_8692)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a) {
1557 NI16 result;
1558 NI T1_;
1559 result = (NI16)0;
1560 T1_ = (a ? a->Sup.len : 0);
1561 result = ((NI16) (T1_));
1562 return result;
1563 }
N_NIMCALL(void,setLen__nilcheck_8700)1564 N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_8700)(tySequence__0a6ZbC0zPSfUDYzqPnO68A** a, NI16 length) {
1565 unsureAsgnRef((void**) (&(*a)), (tySequence__0a6ZbC0zPSfUDYzqPnO68A*) setLengthSeqV2(&((*a))->Sup, (&NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_), ((NI) (length))));
1566 }
N_NIMCALL(NI16,plus___nilcheck_195)1567 N_LIB_PRIVATE N_NIMCALL(NI16, plus___nilcheck_195)(NI16 a, NI16 b) {
1568 NI16 result;
1569 result = (NI16)0;
1570 result = (NI16)(a + b);
1571 return result;
1572 }
N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA *,X5BX5D___nilcheck_3538)1573 N_LIB_PRIVATE N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*, X5BX5D___nilcheck_3538)(tySequence__0a6ZbC0zPSfUDYzqPnO68A** a, NI16 index) {
1574 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* result;
1575 result = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
1576 result = (&(*a)->data[index]);
1577 return result;
1578 }
N_INLINE(NI,len__ast_3198)1579 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1580 NI result;
1581 NI T1_;
1582 result = (NI)0;
1583 T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
1584 result = T1_;
1585 return result;
1586 }
N_INLINE(NI,safeLen__ast_3191)1587 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1588 NI result;
1589 result = (NI)0;
1590 {
1591 if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
1592 result = ((NI) 0);
1593 }
1594 goto LA1_;
1595 LA3_: ;
1596 {
1597 result = len__ast_3198(n);
1598 }
1599 LA1_: ;
1600 return result;
1601 }
N_NIMCALL(void,preVisitNode__nilcheck_7012)1602 N_LIB_PRIVATE N_NIMCALL(void, preVisitNode__nilcheck_7012)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
1603 {
1604 NIM_BOOL T3_;
1605 NIM_BOOL T5_;
1606 NI nodeSymbol;
1607 T3_ = (NIM_BOOL)0;
1608 T3_ = ((*node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3) || (*node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45));
1609 if (T3_) goto LA4_;
1610 T5_ = (NIM_BOOL)0;
1611 T5_ = ((*node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42));
1612 if (!(T5_)) goto LA6_;
1613 T5_ = ((nkLiterals__ast_3029[(NU)((*(*node)._kind_6.sons->data[((NI) 1)]).kind)>>3] &(1U<<((NU)((*(*node)._kind_6.sons->data[((NI) 1)]).kind)&7U)))!=0);
1614 LA6_: ;
1615 T3_ = T5_;
1616 LA4_: ;
1617 if (!T3_) goto LA7_;
1618 nodeSymbol = symbol__nilcheck_1210(node);
1619 {
1620 NIM_BOOL T11_;
1621 NI16 T14_;
1622 T11_ = (NIM_BOOL)0;
1623 T11_ = hasKey__nilcheck_1977((*ctx).symbolIndices, nodeSymbol);
1624 if (!!(T11_)) goto LA12_;
1625 T14_ = (NI16)0;
1626 T14_ = len__nilcheck_5915((*ctx).expressions);
1627 X5BX5Deq___nilcheck_7174((&(*ctx).symbolIndices), nodeSymbol, T14_);
1628 add__nilcheck_8361((&(*ctx).expressions), node);
1629 }
1630 LA12_: ;
1631 {
1632 if (!((*node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45) || (*node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42))) goto LA17_;
1633 {
1634 NIM_BOOL T21_;
1635 NIM_BOOL T22_;
1636 NIM_BOOL T24_;
1637 NIM_BOOL T25_;
1638 NI16 index;
1639 NI16* T31_;
1640 NI16 baseIndex;
1641 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* base;
1642 T21_ = (NIM_BOOL)0;
1643 T22_ = (NIM_BOOL)0;
1644 T22_ = ((*node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45));
1645 if (!(T22_)) goto LA23_;
1646 T24_ = (NIM_BOOL)0;
1647 T25_ = (NIM_BOOL)0;
1648 T25_ = !(((*node).typ == 0));
1649 if (!(T25_)) goto LA26_;
1650 T25_ = ((*(*node).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22));
1651 LA26_: ;
1652 T24_ = T25_;
1653 if (!(T24_)) goto LA27_;
1654 T24_ = !((((*(*node).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 17))&63U)))!=0));
1655 LA27_: ;
1656 T22_ = T24_;
1657 LA23_: ;
1658 T21_ = T22_;
1659 if (T21_) goto LA28_;
1660 T21_ = ((*node).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42));
1661 LA28_: ;
1662 if (!T21_) goto LA29_;
1663 T31_ = (NI16*)0;
1664 T31_ = X5BX5D___nilcheck_2314((&(*ctx).symbolIndices), nodeSymbol);
1665 index = (*T31_);
1666 baseIndex = ((NI16) -1);
1667 {
1668 if (!!(((*(*node)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3) || (*(*node)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2)))) goto LA34_;
1669 base = (*(*node)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)];
1670 }
1671 goto LA32_;
1672 LA34_: ;
1673 {
1674 base = (*node)._kind_6.sons->data[((NI) 0)];
1675 }
1676 LA32_: ;
1677 {
1678 NI baseSymbol;
1679 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T55_;
1680 if (!!(((*base).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2)))) goto LA39_;
1681 baseSymbol = symbol__nilcheck_1210(base);
1682 {
1683 NIM_BOOL T43_;
1684 T43_ = (NIM_BOOL)0;
1685 T43_ = hasKey__nilcheck_1977((*ctx).symbolIndices, baseSymbol);
1686 if (!!(T43_)) goto LA44_;
1687 baseIndex = len__nilcheck_5915((*ctx).expressions);
1688 }
1689 goto LA41_;
1690 LA44_: ;
1691 {
1692 NI16* T47_;
1693 T47_ = (NI16*)0;
1694 T47_ = X5BX5D___nilcheck_2314((&(*ctx).symbolIndices), baseSymbol);
1695 baseIndex = (*T47_);
1696 }
1697 LA41_: ;
1698 {
1699 NI16 T50_;
1700 NIM_BOOL T51_;
1701 NI16 T54_;
1702 T50_ = (NI16)0;
1703 T50_ = len__nilcheck_8692((*ctx).dependants);
1704 T51_ = (NIM_BOOL)0;
1705 T51_ = lteq___nilcheck_176(T50_, baseIndex);
1706 if (!T51_) goto LA52_;
1707 T54_ = (NI16)0;
1708 T54_ = plus___nilcheck_195(baseIndex, ((NI16) 1));
1709 setLen__nilcheck_8700((&(*ctx).dependants), T54_);
1710 }
1711 LA52_: ;
1712 T55_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
1713 T55_ = X5BX5D___nilcheck_3538((&(*ctx).dependants), baseIndex);
1714 incl__pureZcollectionsZintsets_55(T55_, ((NI) (index)));
1715 }
1716 LA39_: ;
1717 }
1718 LA29_: ;
1719 }
1720 LA17_: ;
1721 }
1722 LA7_: ;
1723 switch ((*node).kind) {
1724 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
1725 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1):
1726 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
1727 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4):
1728 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
1729 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
1730 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
1731 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
1732 {
1733 }
1734 break;
1735 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
1736 {
1737 preVisitNode__nilcheck_7012(ctx, (*node)._kind_6.sons->data[((NI) 0)], conf);
1738 }
1739 break;
1740 default:
1741 {
1742 {
1743 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* element;
1744 element = NIM_NIL;
1745 {
1746 NI i;
1747 NI colontmp_;
1748 NI i_2;
1749 i = (NI)0;
1750 colontmp_ = (NI)0;
1751 colontmp_ = safeLen__ast_3191(node);
1752 i_2 = ((NI) 0);
1753 {
1754 while (1) {
1755 if (!(i_2 < colontmp_)) goto LA62;
1756 i = i_2;
1757 element = (*node)._kind_6.sons->data[i];
1758 preVisitNode__nilcheck_7012(ctx, element, conf);
1759 i_2 += ((NI) 1);
1760 } LA62: ;
1761 }
1762 }
1763 }
1764 }
1765 break;
1766 }
1767 }
N_NIMCALL(NIM_BOOL,lt___nilcheck_163)1768 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___nilcheck_163)(NI16 a, NI16 b) {
1769 NIM_BOOL result;
1770 result = (NIM_BOOL)0;
1771 result = (a < b);
1772 return result;
1773 }
N_NIMCALL(void,preVisit__nilcheck_8796)1774 N_LIB_PRIVATE N_NIMCALL(void, preVisit__nilcheck_8796)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
1775 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
1776 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T1_;
1777 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA emptySet;
1778 toTable__nilcheck_8801(TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_7, 1, (&(*ctx).symbolIndices));
1779 cache = newIdentCache__idents_152();
1780 if ((*ctx).expressions) { nimGCunrefRC1((*ctx).expressions); (*ctx).expressions = NIM_NIL; }
1781 (*ctx).expressions = (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeqRC1((&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), 1);
1782 T1_ = NIM_NIL;
1783 T1_ = getIdent__idents_143(cache, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_8));
1784 asgnRef((void**) (&(*ctx).expressions->data[0]), newIdentNode__ast_3712(T1_, (*(*s).ast).info));
1785 nimZeroMem((void*)(&emptySet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
1786 if ((*ctx).dependants) { nimGCunrefRC1((*ctx).dependants); (*ctx).dependants = NIM_NIL; }
1787 (*ctx).dependants = (tySequence__0a6ZbC0zPSfUDYzqPnO68A*) newSeqRC1((&NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_), 1);
1788 genericAssign((void*)(&(*ctx).dependants->data[0]), (void*)(&emptySet), (&NTIpackedset__IhxwDBRi51nGrosBGFKcsA_));
1789 {
1790 NI i;
1791 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg;
1792 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
1793 NI i_2;
1794 NI L;
1795 NI T3_;
1796 i = (NI)0;
1797 arg = NIM_NIL;
1798 colontmp_ = NIM_NIL;
1799 colontmp_ = (*(*(*s).typ).n)._kind_6.sons;
1800 i_2 = ((NI) 0);
1801 T3_ = (colontmp_ ? colontmp_->Sup.len : 0);
1802 L = T3_;
1803 {
1804 while (1) {
1805 if (!(i_2 < L)) goto LA5;
1806 i = i_2;
1807 arg = colontmp_->data[i_2];
1808 {
1809 {
1810 NI argSymbol;
1811 if (!(((NI) 0) < i)) goto LA9_;
1812 {
1813 if (!!(((*arg).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA13_;
1814 goto LA6;
1815 }
1816 LA13_: ;
1817 argSymbol = symbol__nilcheck_1210(arg);
1818 {
1819 NIM_BOOL T17_;
1820 NI16 T20_;
1821 T17_ = (NIM_BOOL)0;
1822 T17_ = hasKey__nilcheck_1977((*ctx).symbolIndices, argSymbol);
1823 if (!!(T17_)) goto LA18_;
1824 T20_ = (NI16)0;
1825 T20_ = len__nilcheck_5915((*ctx).expressions);
1826 X5BX5Deq___nilcheck_7174((&(*ctx).symbolIndices), argSymbol, T20_);
1827 add__nilcheck_8361((&(*ctx).expressions), arg);
1828 }
1829 LA18_: ;
1830 }
1831 LA9_: ;
1832 } LA6: ;
1833 i_2 += ((NI) 1);
1834 } LA5: ;
1835 }
1836 }
1837 preVisitNode__nilcheck_7012(ctx, body, conf);
1838 {
1839 NI16 T23_;
1840 NI16 T24_;
1841 NIM_BOOL T25_;
1842 NI16 T28_;
1843 T23_ = (NI16)0;
1844 T23_ = len__nilcheck_8692((*ctx).dependants);
1845 T24_ = (NI16)0;
1846 T24_ = len__nilcheck_5915((*ctx).expressions);
1847 T25_ = (NIM_BOOL)0;
1848 T25_ = lt___nilcheck_163(T23_, T24_);
1849 if (!T25_) goto LA26_;
1850 T28_ = (NI16)0;
1851 T28_ = len__nilcheck_5915((*ctx).expressions);
1852 setLen__nilcheck_8700((&(*ctx).dependants), T28_);
1853 }
1854 LA26_: ;
1855 }
N_NIMCALL(NI16,len__nilcheck_300)1856 N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_300)(tySequence__j9aEZ11m8pCmK2eRUFSgiOA* a) {
1857 NI16 result;
1858 NI T1_;
1859 result = (NI16)0;
1860 T1_ = (a ? a->Sup.len : 0);
1861 result = ((NI16) (T1_));
1862 return result;
1863 }
N_NIMCALL(void,Marker_tySequence__j9aEZ11m8pCmK2eRUFSgiOA)1864 static N_NIMCALL(void, Marker_tySequence__j9aEZ11m8pCmK2eRUFSgiOA)(void* p, NI op) {
1865 tySequence__j9aEZ11m8pCmK2eRUFSgiOA* a;
1866 NI T1_;
1867 a = (tySequence__j9aEZ11m8pCmK2eRUFSgiOA*)p;
1868 T1_ = (NI)0;
1869 }
N_NIMCALL(void,Marker_tySequence__RJ9cCbHDTKFvcxBv5qqeJbg)1870 static N_NIMCALL(void, Marker_tySequence__RJ9cCbHDTKFvcxBv5qqeJbg)(void* p, NI op) {
1871 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* a;
1872 NI T1_;
1873 a = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg*)p;
1874 T1_ = (NI)0;
1875 for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
1876 nimGCvisit((void*)a->data[T1_].node, op);
1877 }
1878 }
N_NIMCALL(void,Marker_tySequence__tFZSZSomBEZ9bmg1CrY7ojA)1879 static N_NIMCALL(void, Marker_tySequence__tFZSZSomBEZ9bmg1CrY7ojA)(void* p, NI op) {
1880 tySequence__tFZSZSomBEZ9bmg1CrY7ojA* a;
1881 NI T1_;
1882 a = (tySequence__tFZSZSomBEZ9bmg1CrY7ojA*)p;
1883 T1_ = (NI)0;
1884 for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
1885 nimGCvisit((void*)a->data[T1_], op);
1886 }
1887 }
N_NIMCALL(void,Marker_tyRef__jS25SPRyK4NElao6fMJSpg)1888 static N_NIMCALL(void, Marker_tyRef__jS25SPRyK4NElao6fMJSpg)(void* p, NI op) {
1889 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* a;
1890 a = (tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*)p;
1891 nimGCvisit((void*)(*a).expressions, op);
1892 nimGCvisit((void*)(*a).history, op);
1893 nimGCvisit((void*)(*a).setIndices, op);
1894 nimGCvisit((void*)(*a).sets, op);
1895 nimGCvisit((void*)(*a).parent, op);
1896 }
N_NIMCALL(tySequence__j9aEZ11m8pCmK2eRUFSgiOA *,newSeq__nilcheck_343)1897 N_LIB_PRIVATE N_NIMCALL(tySequence__j9aEZ11m8pCmK2eRUFSgiOA*, newSeq__nilcheck_343)(NI len) {
1898 tySequence__j9aEZ11m8pCmK2eRUFSgiOA* result;
1899 result = NIM_NIL;
1900 result = (tySequence__j9aEZ11m8pCmK2eRUFSgiOA*) newSeq((&NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_), len);
1901 return result;
1902 }
N_NIMCALL(tySequence__j9aEZ11m8pCmK2eRUFSgiOA *,newSeqOfDistinct__nilcheck_362)1903 N_LIB_PRIVATE N_NIMCALL(tySequence__j9aEZ11m8pCmK2eRUFSgiOA*, newSeqOfDistinct__nilcheck_362)(NI length) {
1904 tySequence__j9aEZ11m8pCmK2eRUFSgiOA* result;
1905 result = NIM_NIL;
1906 result = newSeq__nilcheck_343(((NI) (length)));
1907 return result;
1908 }
N_NIMCALL(tySequence__tFZSZSomBEZ9bmg1CrY7ojA *,newSeq__nilcheck_381)1909 N_LIB_PRIVATE N_NIMCALL(tySequence__tFZSZSomBEZ9bmg1CrY7ojA*, newSeq__nilcheck_381)(NI len) {
1910 tySequence__tFZSZSomBEZ9bmg1CrY7ojA* result;
1911 result = NIM_NIL;
1912 result = (tySequence__tFZSZSomBEZ9bmg1CrY7ojA*) newSeq((&NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_), len);
1913 return result;
1914 }
N_NIMCALL(tySequence__tFZSZSomBEZ9bmg1CrY7ojA *,newSeqOfDistinct__nilcheck_427)1915 N_LIB_PRIVATE N_NIMCALL(tySequence__tFZSZSomBEZ9bmg1CrY7ojA*, newSeqOfDistinct__nilcheck_427)(NI length) {
1916 tySequence__tFZSZSomBEZ9bmg1CrY7ojA* result;
1917 result = NIM_NIL;
1918 result = newSeq__nilcheck_381(((NI) (length)));
1919 return result;
1920 }
N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g *,newSeq__nilcheck_446)1921 N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g*, newSeq__nilcheck_446)(NI len) {
1922 tySequence__qwqHTkRvwhrRyENtudHQ7g* result;
1923 result = NIM_NIL;
1924 result = (tySequence__qwqHTkRvwhrRyENtudHQ7g*) newSeq((&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), len);
1925 return result;
1926 }
N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g *,newSeqOfDistinct__nilcheck_483)1927 N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g*, newSeqOfDistinct__nilcheck_483)(NI length) {
1928 tySequence__qwqHTkRvwhrRyENtudHQ7g* result;
1929 result = NIM_NIL;
1930 result = newSeq__nilcheck_446(((NI) (length)));
1931 return result;
1932 }
N_NIMCALL(void,X5BX5Deq___nilcheck_584)1933 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_584)(tySequence__qwqHTkRvwhrRyENtudHQ7g** a, NI16 index, NI value) {
1934 (*a)->data[index] = value;
1935 }
N_INLINE(void,initIntSet__pureZcollectionsZintsets_238)1936 static N_INLINE(void, initIntSet__pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) {
1937 initPackedSet__pureZcollectionsZintsets_16(Result);
1938 }
N_NIMCALL(void,add__nilcheck_640)1939 N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_640)(tySequence__0a6ZbC0zPSfUDYzqPnO68A** a, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* value) {
1940 NI T1_;
1941 unsureAsgnRef((void**) (&(*a)), (tySequence__0a6ZbC0zPSfUDYzqPnO68A*) incrSeqV3((TGenericSeq*)((*a)), (&NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_)));
1942 T1_ = (*a)->Sup.len++;
1943 genericAssign((void*)(&(*a)->data[T1_]), (void*)value, (&NTIpackedset__IhxwDBRi51nGrosBGFKcsA_));
1944 }
N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw *,newNilMap__nilcheck_237)1945 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, newNilMap__nilcheck_237)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* parent, NI count) {
1946 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* result;
1947 NI expressionsCount;
1948 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* T9_;
1949 result = NIM_NIL;
1950 expressionsCount = ((NI) 0);
1951 {
1952 if (!!((count == ((NI) -1)))) goto LA3_;
1953 expressionsCount = count;
1954 }
1955 goto LA1_;
1956 LA3_: ;
1957 {
1958 NI16 T8_;
1959 if (!!((parent == 0))) goto LA6_;
1960 T8_ = (NI16)0;
1961 T8_ = len__nilcheck_300((*parent).expressions);
1962 expressionsCount = ((NI) (T8_));
1963 }
1964 goto LA1_;
1965 LA6_: ;
1966 LA1_: ;
1967 T9_ = NIM_NIL;
1968 T9_ = (tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*) newObj((&NTInilmap__jS25SPRyK4NElao6fMJSpg_), sizeof(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw));
1969 asgnRef((void**) (&(*T9_).expressions), newSeqOfDistinct__nilcheck_362(expressionsCount));
1970 asgnRef((void**) (&(*T9_).history), newSeqOfDistinct__nilcheck_427(expressionsCount));
1971 asgnRef((void**) (&(*T9_).setIndices), newSeqOfDistinct__nilcheck_483(expressionsCount));
1972 asgnRef((void**) (&(*T9_).parent), parent);
1973 result = T9_;
1974 {
1975 if (!(parent == 0)) goto LA12_;
1976 {
1977 NI16 i;
1978 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA expr;
1979 i = (NI16)0;
1980 expr = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
1981 {
1982 NI i_2;
1983 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA element;
1984 tySequence__j9aEZ11m8pCmK2eRUFSgiOA* colontmp_;
1985 NI i_3;
1986 NI L;
1987 NI T16_;
1988 i_2 = (NI)0;
1989 element = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
1990 colontmp_ = NIM_NIL;
1991 colontmp_ = (*result).expressions;
1992 i_3 = ((NI) 0);
1993 T16_ = (colontmp_ ? colontmp_->Sup.len : 0);
1994 L = T16_;
1995 {
1996 while (1) {
1997 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA newSet;
1998 if (!(i_3 < L)) goto LA18;
1999 i_2 = i_3;
2000 element = colontmp_->data[i_3];
2001 i = ((NI16) (i_2));
2002 expr = element;
2003 X5BX5Deq___nilcheck_584((&(*result).setIndices), i, ((NI) (i)));
2004 nimZeroMem((void*)(&newSet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
2005 initIntSet__pureZcollectionsZintsets_238((&newSet));
2006 incl__pureZcollectionsZintsets_55((&newSet), ((NI) (i)));
2007 add__nilcheck_640((&(*result).sets), (&newSet));
2008 i_3 += ((NI) 1);
2009 } LA18: ;
2010 }
2011 }
2012 }
2013 }
2014 goto LA10_;
2015 LA12_: ;
2016 {
2017 {
2018 NI i_4;
2019 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA exprs;
2020 i_4 = (NI)0;
2021 nimZeroMem((void*)(&exprs), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
2022 {
2023 NI i_5;
2024 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA element_2;
2025 tySequence__0a6ZbC0zPSfUDYzqPnO68A* colontmp__2;
2026 NI i_6;
2027 NI L_2;
2028 NI T22_;
2029 i_5 = (NI)0;
2030 nimZeroMem((void*)(&element_2), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
2031 colontmp__2 = NIM_NIL;
2032 colontmp__2 = (*parent).sets;
2033 i_6 = ((NI) 0);
2034 T22_ = (colontmp__2 ? colontmp__2->Sup.len : 0);
2035 L_2 = T22_;
2036 {
2037 while (1) {
2038 if (!(i_6 < L_2)) goto LA24;
2039 i_5 = i_6;
2040 nimCopyMem((void*)(&element_2), (NIM_CONST void*)(&colontmp__2->data[i_6]), sizeof(element_2));
2041 i_4 = i_5;
2042 nimCopyMem((void*)(&exprs), (NIM_CONST void*)(&element_2), sizeof(exprs));
2043 add__nilcheck_640((&(*result).sets), (&exprs));
2044 i_6 += ((NI) 1);
2045 } LA24: ;
2046 }
2047 }
2048 }
2049 {
2050 NI16 i_7;
2051 NI index;
2052 i_7 = (NI16)0;
2053 index = (NI)0;
2054 {
2055 NI i_8;
2056 NI element_3;
2057 tySequence__qwqHTkRvwhrRyENtudHQ7g* colontmp__3;
2058 NI i_9;
2059 NI L_3;
2060 NI T27_;
2061 i_8 = (NI)0;
2062 element_3 = (NI)0;
2063 colontmp__3 = NIM_NIL;
2064 colontmp__3 = (*parent).setIndices;
2065 i_9 = ((NI) 0);
2066 T27_ = (colontmp__3 ? colontmp__3->Sup.len : 0);
2067 L_3 = T27_;
2068 {
2069 while (1) {
2070 if (!(i_9 < L_3)) goto LA29;
2071 i_8 = i_9;
2072 element_3 = colontmp__3->data[i_9];
2073 i_7 = ((NI16) (i_8));
2074 index = element_3;
2075 X5BX5Deq___nilcheck_584((&(*result).setIndices), i_7, index);
2076 i_9 += ((NI) 1);
2077 } LA29: ;
2078 }
2079 }
2080 }
2081 }
2082 LA10_: ;
2083 return result;
2084 }
N_NIMCALL(NI,len__nilcheck_9409)2085 N_LIB_PRIVATE N_NIMCALL(NI, len__nilcheck_9409)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t) {
2086 NI result;
2087 result = (NI)0;
2088 result = t.counter;
2089 return result;
2090 }
N_NIMCALL(NIM_BOOL,eqeq___nilcheck_188)2091 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_188)(NI16 a, NI16 b) {
2092 NIM_BOOL result;
2093 result = (NIM_BOOL)0;
2094 result = (a == b);
2095 return result;
2096 }
N_NIMCALL(void,X5BX5Deq___nilcheck_2714)2097 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_2714)(tySequence__j9aEZ11m8pCmK2eRUFSgiOA** a, NI16 index, tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value) {
2098 (*a)->data[index] = value;
2099 }
N_NIMCALL(tySequence__RJ9cCbHDTKFvcxBv5qqeJbg **,X5BX5D___nilcheck_1191)2100 N_LIB_PRIVATE N_NIMCALL(tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**, X5BX5D___nilcheck_1191)(tySequence__tFZSZSomBEZ9bmg1CrY7ojA** a, NI16 index) {
2101 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** result;
2102 result = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
2103 result = (&(*a)->data[index]);
2104 return result;
2105 }
N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA *,X5BX5D___nilcheck_1495)2106 N_LIB_PRIVATE N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*, X5BX5D___nilcheck_1495)(tySequence__0a6ZbC0zPSfUDYzqPnO68A** a, NI index) {
2107 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* result;
2108 result = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
2109 result = (&(*a)->data[index]);
2110 return result;
2111 }
N_NIMCALL(NI *,X5BX5D___nilcheck_2460)2112 N_LIB_PRIVATE N_NIMCALL(NI*, X5BX5D___nilcheck_2460)(tySequence__qwqHTkRvwhrRyENtudHQ7g** a, NI16 index) {
2113 NI* result;
2114 result = (NI*)0;
2115 result = (&(*a)->data[index]);
2116 return result;
2117 }
N_NIMCALL(void,aliasSet__nilcheck_2537)2118 N_LIB_PRIVATE N_NIMCALL(void, aliasSet__nilcheck_2537)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NI16 index, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) {
2119 NI* T1_;
2120 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T2_;
2121 T1_ = (NI*)0;
2122 T1_ = X5BX5D___nilcheck_2460((&(*map).setIndices), index);
2123 T2_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
2124 T2_ = X5BX5D___nilcheck_1495((&(*map).sets), (*T1_));
2125 genericAssign((void*)Result, (void*)(&(*T2_)), (&NTIpackedset__IhxwDBRi51nGrosBGFKcsA_));
2126 }
N_NIMCALL(void,X5BX5Deq___nilcheck_2885)2127 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_2885)(tySequence__tFZSZSomBEZ9bmg1CrY7ojA** a, NI16 index, tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* value) {
2128 genericSeqAssign((&(*a)->data[index]), value, (&NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_));
2129 }
N_NIMCALL(void,store__nilcheck_2666)2130 N_LIB_PRIVATE N_NIMCALL(void, store__nilcheck_2666)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, NI16 index, tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value, tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node) {
2131 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T6_;
2132 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA T7_;
2133 NI T8_;
2134 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA exprAliases;
2135 { {
2136 NIM_BOOL T3_;
2137 T3_ = (NIM_BOOL)0;
2138 T3_ = eqeq___nilcheck_188(index, ((NI16) -1));
2139 if (!T3_) goto LA4_;
2140 goto BeforeRet_;
2141 }
2142 LA4_: ;
2143 X5BX5Deq___nilcheck_2714((&(*map).expressions), index, value);
2144 T6_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
2145 T6_ = X5BX5D___nilcheck_1191((&(*map).history), index);
2146 nimZeroMem((void*)(&T7_), sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA));
2147 nimZeroMem((void*)(&T7_), sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA));
2148 T7_.info = info;
2149 T7_.kind = kind;
2150 T7_.node = node;
2151 T7_.nilability = value;
2152 unsureAsgnRef((void**) (&(*T6_)), (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg*) incrSeqV3((TGenericSeq*)((*T6_)), (&NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_)));
2153 T8_ = (*T6_)->Sup.len++;
2154 (*T6_)->data[T8_].info = T7_.info;
2155 (*T6_)->data[T8_].nilability = T7_.nilability;
2156 (*T6_)->data[T8_].kind = T7_.kind;
2157 asgnRef((void**) (&(*T6_)->data[T8_].node), T7_.node);
2158 nimZeroMem((void*)(&exprAliases), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
2159 aliasSet__nilcheck_2537(ctx, map, index, (&exprAliases));
2160 {
2161 NI a;
2162 a = (NI)0;
2163 {
2164 if (!(exprAliases.elems <= ((NI) 34))) goto LA12_;
2165 {
2166 NI i;
2167 NI i_2;
2168 i = (NI)0;
2169 i_2 = ((NI) 0);
2170 {
2171 while (1) {
2172 if (!(i_2 < exprAliases.elems)) goto LA16;
2173 i = i_2;
2174 a = exprAliases.a[(i)- 0];
2175 {
2176 NIM_BOOL T19_;
2177 T19_ = (NIM_BOOL)0;
2178 T19_ = eqeq___nilcheck_188(((NI16) (a)), index);
2179 if (!!(T19_)) goto LA20_;
2180 X5BX5Deq___nilcheck_2714((&(*map).expressions), ((NI16) (a)), value);
2181 {
2182 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* T26_;
2183 if (!(value == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1))) goto LA24_;
2184 T26_ = NIM_NIL;
2185 T26_ = NIM_NIL;
2186 X5BX5Deq___nilcheck_2885((&(*map).history), ((NI16) (a)), T26_);
2187 }
2188 goto LA22_;
2189 LA24_: ;
2190 {
2191 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T28_;
2192 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA T29_;
2193 NI T30_;
2194 T28_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
2195 T28_ = X5BX5D___nilcheck_1191((&(*map).history), ((NI16) (a)));
2196 nimZeroMem((void*)(&T29_), sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA));
2197 nimZeroMem((void*)(&T29_), sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA));
2198 T29_.info = info;
2199 T29_.kind = ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 7);
2200 T29_.node = node;
2201 T29_.nilability = value;
2202 unsureAsgnRef((void**) (&(*T28_)), (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg*) incrSeqV3((TGenericSeq*)((*T28_)), (&NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_)));
2203 T30_ = (*T28_)->Sup.len++;
2204 (*T28_)->data[T30_].info = T29_.info;
2205 (*T28_)->data[T30_].nilability = T29_.nilability;
2206 (*T28_)->data[T30_].kind = T29_.kind;
2207 asgnRef((void**) (&(*T28_)->data[T30_].node), T29_.node);
2208 }
2209 LA22_: ;
2210 }
2211 LA20_: ;
2212 i_2 += ((NI) 1);
2213 } LA16: ;
2214 }
2215 }
2216 }
2217 goto LA10_;
2218 LA12_: ;
2219 {
2220 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
2221 r = exprAliases.head;
2222 {
2223 while (1) {
2224 NI i_3;
2225 if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA33;
2226 i_3 = ((NI) 0);
2227 {
2228 while (1) {
2229 NU w;
2230 NI j;
2231 if (!(i_3 <= ((NI) 15))) goto LA35;
2232 w = (*r).bits[(i_3)- 0];
2233 j = ((NI) 0);
2234 {
2235 while (1) {
2236 if (!!((w == ((NU) 0)))) goto LA37;
2237 {
2238 NI T42_;
2239 if (!!(((NU)(w & ((NU) 1)) == ((NU) 0)))) goto LA40_;
2240 T42_ = (NI)0;
2241 T42_ = pluspercent___system_696((NI)((NU32)(i_3) << (NU32)(((NI) 5))), j);
2242 a = (NI)((NI)((NU32)((*r).key) << (NU32)(((NI) 9))) | T42_);
2243 {
2244 NIM_BOOL T45_;
2245 T45_ = (NIM_BOOL)0;
2246 T45_ = eqeq___nilcheck_188(((NI16) (a)), index);
2247 if (!!(T45_)) goto LA46_;
2248 X5BX5Deq___nilcheck_2714((&(*map).expressions), ((NI16) (a)), value);
2249 {
2250 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* T52_;
2251 if (!(value == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1))) goto LA50_;
2252 T52_ = NIM_NIL;
2253 T52_ = NIM_NIL;
2254 X5BX5Deq___nilcheck_2885((&(*map).history), ((NI16) (a)), T52_);
2255 }
2256 goto LA48_;
2257 LA50_: ;
2258 {
2259 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T54_;
2260 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA T55_;
2261 NI T56_;
2262 T54_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
2263 T54_ = X5BX5D___nilcheck_1191((&(*map).history), ((NI16) (a)));
2264 nimZeroMem((void*)(&T55_), sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA));
2265 nimZeroMem((void*)(&T55_), sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA));
2266 T55_.info = info;
2267 T55_.kind = ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 7);
2268 T55_.node = node;
2269 T55_.nilability = value;
2270 unsureAsgnRef((void**) (&(*T54_)), (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg*) incrSeqV3((TGenericSeq*)((*T54_)), (&NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_)));
2271 T56_ = (*T54_)->Sup.len++;
2272 (*T54_)->data[T56_].info = T55_.info;
2273 (*T54_)->data[T56_].nilability = T55_.nilability;
2274 (*T54_)->data[T56_].kind = T55_.kind;
2275 asgnRef((void**) (&(*T54_)->data[T56_].node), T55_.node);
2276 }
2277 LA48_: ;
2278 }
2279 LA46_: ;
2280 }
2281 LA40_: ;
2282 j += ((NI) 1);
2283 w = (NU)((NU32)(w) >> (NU32)(((NI) 1)));
2284 } LA37: ;
2285 }
2286 i_3 += ((NI) 1);
2287 } LA35: ;
2288 }
2289 r = (*r).next;
2290 } LA33: ;
2291 }
2292 }
2293 LA10_: ;
2294 }
2295 }BeforeRet_: ;
2296 }
N_NIMCALL(NI16,index__nilcheck_1932)2297 N_LIB_PRIVATE N_NIMCALL(NI16, index__nilcheck_1932)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
2298 NI16 result;
2299 NI a;
2300 { result = (NI16)0;
2301 a = symbol__nilcheck_1210(n);
2302 {
2303 NIM_BOOL T3_;
2304 NI16* T6_;
2305 T3_ = (NIM_BOOL)0;
2306 T3_ = hasKey__nilcheck_1977((*ctx).symbolIndices, a);
2307 if (!T3_) goto LA4_;
2308 T6_ = (NI16*)0;
2309 T6_ = X5BX5D___nilcheck_2314((&(*ctx).symbolIndices), a);
2310 result = (*T6_);
2311 goto BeforeRet_;
2312 }
2313 goto LA1_;
2314 LA4_: ;
2315 {
2316 result = ((NI16) -1);
2317 goto BeforeRet_;
2318 }
2319 LA1_: ;
2320 }BeforeRet_: ;
2321 return result;
2322 }
N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA,typeNilability__nilcheck_4049)2323 N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA, typeNilability__nilcheck_4049)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
2324 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA result;
2325 result = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2326 {
2327 if (!(((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 17))&63U)))!=0)) goto LA3_;
2328 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
2329 }
2330 goto LA1_;
2331 LA3_: ;
2332 {
2333 if (!((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29) || (*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21) || (*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26))) goto LA6_;
2334 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
2335 }
2336 goto LA1_;
2337 LA6_: ;
2338 {
2339 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
2340 }
2341 LA1_: ;
2342 return result;
2343 }
N_NIMCALL(NIM_BOOL,gteq___nilcheck_184)2344 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, gteq___nilcheck_184)(NI16 a, NI16 b) {
2345 NIM_BOOL result;
2346 result = (NIM_BOOL)0;
2347 result = (b <= a);
2348 return result;
2349 }
N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA *,X5BX5D___nilcheck_989)2350 N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA*, X5BX5D___nilcheck_989)(tySequence__j9aEZ11m8pCmK2eRUFSgiOA** a, NI16 index) {
2351 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA* result;
2352 result = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA*)0;
2353 result = (&(*a)->data[index]);
2354 return result;
2355 }
N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA,X5BX5D___nilcheck_865)2356 N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA, X5BX5D___nilcheck_865)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NI16 index) {
2357 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA result;
2358 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* now;
2359 { result = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2360 {
2361 NIM_BOOL T3_;
2362 NI16 T5_;
2363 T3_ = (NIM_BOOL)0;
2364 T3_ = lt___nilcheck_163(index, ((NI16) 0));
2365 if (T3_) goto LA4_;
2366 T5_ = (NI16)0;
2367 T5_ = len__nilcheck_300((*map).expressions);
2368 T3_ = gteq___nilcheck_184(index, T5_);
2369 LA4_: ;
2370 if (!T3_) goto LA6_;
2371 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
2372 goto BeforeRet_;
2373 }
2374 LA6_: ;
2375 now = map;
2376 {
2377 while (1) {
2378 if (!!((now == 0))) goto LA9;
2379 {
2380 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA* T12_;
2381 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA* T15_;
2382 T12_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA*)0;
2383 T12_ = X5BX5D___nilcheck_989((&(*now).expressions), index);
2384 if (!!(((*T12_) == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 0)))) goto LA13_;
2385 T15_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA*)0;
2386 T15_ = X5BX5D___nilcheck_989((&(*now).expressions), index);
2387 result = (*T15_);
2388 goto BeforeRet_;
2389 }
2390 LA13_: ;
2391 now = (*now).parent;
2392 } LA9: ;
2393 }
2394 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
2395 goto BeforeRet_;
2396 }BeforeRet_: ;
2397 return result;
2398 }
N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw *,checkCondition__nilcheck_231)2399 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, checkCondition__nilcheck_231)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NIM_BOOL reverse, NIM_BOOL base) {
2400 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* result;
2401 result = NIM_NIL;
2402 {
2403 if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27))) goto LA3_;
2404 result = newNilMap__nilcheck_237(map, ((NI) -1));
2405 {
2406 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* element;
2407 element = NIM_NIL;
2408 {
2409 NI i;
2410 NI colontmp_;
2411 NI i_2;
2412 i = (NI)0;
2413 colontmp_ = (NI)0;
2414 colontmp_ = safeLen__ast_3191(n);
2415 i_2 = ((NI) 0);
2416 {
2417 while (1) {
2418 if (!(i_2 < colontmp_)) goto LA8;
2419 i = i_2;
2420 element = (*n)._kind_6.sons->data[i];
2421 {
2422 NIM_BOOL T11_;
2423 NIM_BOOL T12_;
2424 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T17_;
2425 T11_ = (NIM_BOOL)0;
2426 T12_ = (NIM_BOOL)0;
2427 T12_ = ((*element).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65));
2428 if (!(T12_)) goto LA13_;
2429 T12_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
2430 LA13_: ;
2431 T11_ = T12_;
2432 if (!(T11_)) goto LA14_;
2433 T11_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 143));
2434 LA14_: ;
2435 if (!T11_) goto LA15_;
2436 nimZeroMem((void*)(&T17_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
2437 check__nilcheck_227((*element)._kind_6.sons->data[((NI) 0)], ctx, result, (&T17_));
2438 result = T17_.map;
2439 }
2440 goto LA9_;
2441 LA15_: ;
2442 {
2443 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T19_;
2444 nimZeroMem((void*)(&T19_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
2445 check__nilcheck_227(element, ctx, result, (&T19_));
2446 result = T19_.map;
2447 }
2448 LA9_: ;
2449 i_2 += ((NI) 1);
2450 } LA8: ;
2451 }
2452 }
2453 }
2454 {
2455 NIM_BOOL T22_;
2456 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg;
2457 T22_ = (NIM_BOOL)0;
2458 T22_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
2459 if (!(T22_)) goto LA23_;
2460 T22_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 143));
2461 LA23_: ;
2462 if (!T22_) goto LA24_;
2463 arg = (*n)._kind_6.sons->data[((NI) 1)];
2464 {
2465 while (1) {
2466 if (!((*arg).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65))) goto LA27;
2467 arg = (*arg)._kind_6.sons->data[((NI) 0)];
2468 } LA27: ;
2469 }
2470 {
2471 NIM_BOOL T30_;
2472 NIM_BOOL T32_;
2473 NI16 a;
2474 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T36_;
2475 tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA T42_;
2476 T30_ = (NIM_BOOL)0;
2477 T30_ = ((*arg).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3) || (*arg).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45));
2478 if (T30_) goto LA31_;
2479 T32_ = (NIM_BOOL)0;
2480 T32_ = ((*arg).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42));
2481 if (!(T32_)) goto LA33_;
2482 T32_ = ((nkLiterals__ast_3029[(NU)((*(*arg)._kind_6.sons->data[((NI) 1)]).kind)>>3] &(1U<<((NU)((*(*arg)._kind_6.sons->data[((NI) 1)]).kind)&7U)))!=0);
2483 LA33_: ;
2484 T30_ = T32_;
2485 LA31_: ;
2486 if (!T30_) goto LA34_;
2487 a = index__nilcheck_1932(ctx, arg);
2488 T36_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2489 {
2490 if (!!(reverse)) goto LA39_;
2491 T36_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3);
2492 }
2493 goto LA37_;
2494 LA39_: ;
2495 {
2496 T36_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
2497 }
2498 LA37_: ;
2499 T42_ = (tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA)0;
2500 {
2501 if (!!(reverse)) goto LA45_;
2502 T42_ = ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 3);
2503 }
2504 goto LA43_;
2505 LA45_: ;
2506 {
2507 T42_ = ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 6);
2508 }
2509 LA43_: ;
2510 store__nilcheck_2666(result, ctx, a, T36_, T42_, (*n).info, arg);
2511 }
2512 goto LA28_;
2513 LA34_: ;
2514 {
2515 }
2516 LA28_: ;
2517 }
2518 goto LA20_;
2519 LA24_: ;
2520 {
2521 }
2522 LA20_: ;
2523 }
2524 goto LA1_;
2525 LA3_: ;
2526 {
2527 NIM_BOOL T51_;
2528 NIM_BOOL T52_;
2529 T51_ = (NIM_BOOL)0;
2530 T52_ = (NIM_BOOL)0;
2531 T52_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30));
2532 if (!(T52_)) goto LA53_;
2533 T52_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
2534 LA53_: ;
2535 T51_ = T52_;
2536 if (!(T51_)) goto LA54_;
2537 T51_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 96));
2538 LA54_: ;
2539 if (!T51_) goto LA55_;
2540 result = checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 1)], ctx, map, !(reverse), NIM_FALSE);
2541 }
2542 goto LA1_;
2543 LA55_: ;
2544 {
2545 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T60_;
2546 if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29))) goto LA58_;
2547 result = newNilMap__nilcheck_237(map, ((NI) -1));
2548 nimZeroMem((void*)(&T60_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
2549 checkInfix__nilcheck_6280(n, ctx, result, (&T60_));
2550 result = T60_.map;
2551 }
2552 goto LA1_;
2553 LA58_: ;
2554 {
2555 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T62_;
2556 nimZeroMem((void*)(&T62_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
2557 check__nilcheck_227(n, ctx, map, (&T62_));
2558 result = T62_.map;
2559 result = newNilMap__nilcheck_237(map, ((NI) -1));
2560 }
2561 LA1_: ;
2562 return result;
2563 }
N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw *,findCommonParent__nilcheck_5833)2564 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, findCommonParent__nilcheck_5833)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* l, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* r) {
2565 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* result;
2566 { result = NIM_NIL;
2567 result = (*l).parent;
2568 {
2569 while (1) {
2570 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* rparent;
2571 if (!!((result == 0))) goto LA2;
2572 rparent = (*r).parent;
2573 {
2574 while (1) {
2575 if (!!((rparent == 0))) goto LA4;
2576 {
2577 if (!(result == rparent)) goto LA7_;
2578 goto BeforeRet_;
2579 }
2580 LA7_: ;
2581 rparent = (*rparent).parent;
2582 } LA4: ;
2583 }
2584 result = (*result).parent;
2585 } LA2: ;
2586 }
2587 }BeforeRet_: ;
2588 return result;
2589 }
N_NIMCALL(tySequence__RJ9cCbHDTKFvcxBv5qqeJbg *,history__nilcheck_1071)2590 N_LIB_PRIVATE N_NIMCALL(tySequence__RJ9cCbHDTKFvcxBv5qqeJbg*, history__nilcheck_1071)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NI16 index) {
2591 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* result;
2592 result = NIM_NIL;
2593 {
2594 NI16 T3_;
2595 NIM_BOOL T4_;
2596 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T7_;
2597 T3_ = (NI16)0;
2598 T3_ = len__nilcheck_300((*map).expressions);
2599 T4_ = (NIM_BOOL)0;
2600 T4_ = lt___nilcheck_163(index, T3_);
2601 if (!T4_) goto LA5_;
2602 T7_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
2603 T7_ = X5BX5D___nilcheck_1191((&(*map).history), index);
2604 genericSeqAssign((&result), (*T7_), (&NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_));
2605 }
2606 goto LA1_;
2607 LA5_: ;
2608 {
2609 result = NIM_NIL;
2610 }
2611 LA1_: ;
2612 return result;
2613 }
N_INLINE(void,X5BX5D___nilcheck_5929)2614 static N_INLINE(void, X5BX5D___nilcheck_5929)(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* s, NI sLen_0, NI i, tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* Result) {
2615 (*Result).info = s[(NI)(sLen_0 - i)].info;
2616 (*Result).nilability = s[(NI)(sLen_0 - i)].nilability;
2617 (*Result).kind = s[(NI)(sLen_0 - i)].kind;
2618 unsureAsgnRef((void**) (&(*Result).node), s[(NI)(sLen_0 - i)].node);
2619 }
N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw *,union__nilcheck_5848)2620 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, union__nilcheck_5848)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* l, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* r) {
2621 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* result;
2622 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* common;
2623 NI16 T8_;
2624 { result = NIM_NIL;
2625 {
2626 if (!(l == 0)) goto LA3_;
2627 result = r;
2628 goto BeforeRet_;
2629 }
2630 goto LA1_;
2631 LA3_: ;
2632 {
2633 if (!(r == 0)) goto LA6_;
2634 result = l;
2635 goto BeforeRet_;
2636 }
2637 goto LA1_;
2638 LA6_: ;
2639 LA1_: ;
2640 common = findCommonParent__nilcheck_5833(l, r);
2641 T8_ = (NI16)0;
2642 T8_ = len__nilcheck_5915((*ctx).expressions);
2643 result = newNilMap__nilcheck_237(common, ((NI) (T8_)));
2644 {
2645 NI16 index;
2646 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value;
2647 index = (NI16)0;
2648 value = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2649 {
2650 NI16 index_2;
2651 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value_2;
2652 index_2 = (NI16)0;
2653 value_2 = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2654 {
2655 NI i;
2656 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA element;
2657 tySequence__j9aEZ11m8pCmK2eRUFSgiOA* colontmp_;
2658 NI i_2;
2659 NI L;
2660 NI T12_;
2661 i = (NI)0;
2662 element = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2663 colontmp_ = NIM_NIL;
2664 colontmp_ = (*l).expressions;
2665 i_2 = ((NI) 0);
2666 T12_ = (colontmp_ ? colontmp_->Sup.len : 0);
2667 L = T12_;
2668 {
2669 while (1) {
2670 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* h;
2671 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
2672 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T22_;
2673 if (!(i_2 < L)) goto LA14;
2674 i = i_2;
2675 element = colontmp_->data[i_2];
2676 index_2 = ((NI16) (i));
2677 value_2 = element;
2678 index = index_2;
2679 value = X5BX5D___nilcheck_865(l, index_2);
2680 h = history__nilcheck_1071(r, index);
2681 {
2682 NI T17_;
2683 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA T20_;
2684 T17_ = (h ? h->Sup.len : 0);
2685 if (!(((NI) 0) < T17_)) goto LA18_;
2686 nimZeroMem((void*)(&T20_), sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA));
2687 X5BX5D___nilcheck_5929(h->data, (h ? h->Sup.len : 0), ((NI) 1), (&T20_));
2688 info = T20_.info;
2689 }
2690 goto LA15_;
2691 LA18_: ;
2692 {
2693 nimZeroMem((void*)(&info), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
2694 info.line = ((NU16) 0);
2695 }
2696 LA15_: ;
2697 T22_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2698 {
2699 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T25_;
2700 T25_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2701 T25_ = X5BX5D___nilcheck_865(r, index);
2702 if (!(value == T25_)) goto LA26_;
2703 T22_ = value;
2704 }
2705 goto LA23_;
2706 LA26_: ;
2707 {
2708 T22_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
2709 }
2710 LA23_: ;
2711 store__nilcheck_2666(result, ctx, index, T22_, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), info, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
2712 i_2 += ((NI) 1);
2713 } LA14: ;
2714 }
2715 }
2716 }
2717 }
2718 }BeforeRet_: ;
2719 return result;
2720 }
N_INLINE(int,nimCmpMem)2721 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
2722 int result;
2723 result = (int)0;
2724 result = memcmp(a, b, ((size_t) (size)));
2725 return result;
2726 }
N_INLINE(NIM_BOOL,equalMem__system_1735)2727 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
2728 NIM_BOOL result;
2729 int T1_;
2730 result = (NIM_BOOL)0;
2731 T1_ = (int)0;
2732 T1_ = nimCmpMem(a, b, size);
2733 result = (T1_ == ((NI32) 0));
2734 return result;
2735 }
N_INLINE(NIM_BOOL,eqStrings)2736 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
2737 NIM_BOOL result;
2738 NI alen;
2739 NI blen;
2740 { result = (NIM_BOOL)0;
2741 alen = (a ? a->Sup.len : 0);
2742 blen = (b ? b->Sup.len : 0);
2743 {
2744 if (!(alen == blen)) goto LA3_;
2745 {
2746 if (!(alen == ((NI) 0))) goto LA7_;
2747 result = NIM_TRUE;
2748 goto BeforeRet_;
2749 }
2750 LA7_: ;
2751 result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
2752 goto BeforeRet_;
2753 }
2754 LA3_: ;
2755 }BeforeRet_: ;
2756 return result;
2757 }
N_NIMCALL(void,checkInfix__nilcheck_6280)2758 N_LIB_PRIVATE N_NIMCALL(void, checkInfix__nilcheck_6280)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
2759 (*Result).nilability = 0;
2760 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
2761 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
2762 {
2763 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* mapL;
2764 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* mapR;
2765 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA3_;
2766 mapL = NIM_NIL;
2767 mapR = NIM_NIL;
2768 {
2769 if (!!(((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 109) || (*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 87)))) goto LA7_;
2770 mapL = checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 1)], ctx, map, NIM_FALSE, NIM_FALSE);
2771 mapR = checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 2)], ctx, map, NIM_FALSE, NIM_FALSE);
2772 }
2773 LA7_: ;
2774 switch ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic) {
2775 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110):
2776 {
2777 unsureAsgnRef((void**) (&(*Result).map), union__nilcheck_5848(ctx, mapL, mapR));
2778 }
2779 break;
2780 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 109):
2781 {
2782 unsureAsgnRef((void**) (&(*Result).map), checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 1)], ctx, map, NIM_FALSE, NIM_FALSE));
2783 unsureAsgnRef((void**) (&(*Result).map), checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 2)], ctx, (*Result).map, NIM_FALSE, NIM_FALSE));
2784 }
2785 break;
2786 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 87):
2787 {
2788 {
2789 if (!((*(*n)._kind_6.sons->data[((NI) 2)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6))) goto LA14_;
2790 {
2791 NimStringDesc* T18_;
2792 T18_ = NIM_NIL;
2793 T18_ = dollar___renderer_2106((*n)._kind_6.sons->data[((NI) 2)]);
2794 if (!eqStrings(T18_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_18))) goto LA19_;
2795 unsureAsgnRef((void**) (&(*Result).map), checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 1)], ctx, map, NIM_FALSE, NIM_FALSE));
2796 }
2797 goto LA16_;
2798 LA19_: ;
2799 {
2800 NimStringDesc* T22_;
2801 T22_ = NIM_NIL;
2802 T22_ = dollar___renderer_2106((*n)._kind_6.sons->data[((NI) 2)]);
2803 if (!eqStrings(T22_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_19))) goto LA23_;
2804 unsureAsgnRef((void**) (&(*Result).map), checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 1)], ctx, map, NIM_TRUE, NIM_FALSE));
2805 }
2806 goto LA16_;
2807 LA23_: ;
2808 LA16_: ;
2809 }
2810 goto LA12_;
2811 LA14_: ;
2812 {
2813 if (!((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6))) goto LA26_;
2814 {
2815 NimStringDesc* T30_;
2816 T30_ = NIM_NIL;
2817 T30_ = dollar___renderer_2106((*n)._kind_6.sons->data[((NI) 1)]);
2818 if (!eqStrings(T30_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_18))) goto LA31_;
2819 unsureAsgnRef((void**) (&(*Result).map), checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 2)], ctx, map, NIM_FALSE, NIM_FALSE));
2820 }
2821 goto LA28_;
2822 LA31_: ;
2823 {
2824 NimStringDesc* T34_;
2825 T34_ = NIM_NIL;
2826 T34_ = dollar___renderer_2106((*n)._kind_6.sons->data[((NI) 1)]);
2827 if (!eqStrings(T34_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_19))) goto LA35_;
2828 unsureAsgnRef((void**) (&(*Result).map), checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 2)], ctx, map, NIM_TRUE, NIM_FALSE));
2829 }
2830 goto LA28_;
2831 LA35_: ;
2832 LA28_: ;
2833 }
2834 goto LA12_;
2835 LA26_: ;
2836 LA12_: ;
2837 {
2838 if (!((*Result).map == 0)) goto LA39_;
2839 unsureAsgnRef((void**) (&(*Result).map), map);
2840 }
2841 LA39_: ;
2842 }
2843 break;
2844 default:
2845 {
2846 unsureAsgnRef((void**) (&(*Result).map), map);
2847 }
2848 break;
2849 }
2850 }
2851 goto LA1_;
2852 LA3_: ;
2853 {
2854 unsureAsgnRef((void**) (&(*Result).map), map);
2855 }
2856 LA1_: ;
2857 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
2858 }
N_NIMCALL(void,checkIsNil__nilcheck_6323)2859 N_LIB_PRIVATE N_NIMCALL(void, checkIsNil__nilcheck_6323)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, NIM_BOOL isElse, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
2860 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value;
2861 NI16 T1_;
2862 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T2_;
2863 (*Result).nilability = 0;
2864 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
2865 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
2866 unsureAsgnRef((void**) (&(*Result).map), newNilMap__nilcheck_237(map, ((NI) -1)));
2867 value = (*n)._kind_6.sons->data[((NI) 1)];
2868 T1_ = (NI16)0;
2869 T1_ = index__nilcheck_1932(ctx, (*n)._kind_6.sons->data[((NI) 1)]);
2870 T2_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
2871 {
2872 if (!!(isElse)) goto LA5_;
2873 T2_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3);
2874 }
2875 goto LA3_;
2876 LA5_: ;
2877 {
2878 T2_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
2879 }
2880 LA3_: ;
2881 store__nilcheck_2666((*Result).map, ctx, T1_, T2_, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 0), (*n).info, n);
2882 }
N_NIMCALL(NIM_BOOL,eqeq___nilcheck_215)2883 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_215)(NI a, NI b) {
2884 NIM_BOOL result;
2885 result = (NIM_BOOL)0;
2886 result = (a == b);
2887 return result;
2888 }
N_INLINE(NI,len__nilcheck_1772)2889 static N_INLINE(NI, len__nilcheck_1772)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s) {
2890 NI result;
2891 result = (NI)0;
2892 {
2893 if (!((*s).elems < ((NI) 34))) goto LA3_;
2894 result = (*s).elems;
2895 }
2896 goto LA1_;
2897 LA3_: ;
2898 {
2899 result = ((NI) 0);
2900 {
2901 NI _;
2902 _ = (NI)0;
2903 {
2904 if (!((*s).elems <= ((NI) 34))) goto LA9_;
2905 {
2906 NI i;
2907 NI i_2;
2908 i = (NI)0;
2909 i_2 = ((NI) 0);
2910 {
2911 while (1) {
2912 if (!(i_2 < (*s).elems)) goto LA13;
2913 i = i_2;
2914 _ = (*s).a[(i)- 0];
2915 result += ((NI) 1);
2916 i_2 += ((NI) 1);
2917 } LA13: ;
2918 }
2919 }
2920 }
2921 goto LA7_;
2922 LA9_: ;
2923 {
2924 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
2925 r = (*s).head;
2926 {
2927 while (1) {
2928 NI i_3;
2929 if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA16;
2930 i_3 = ((NI) 0);
2931 {
2932 while (1) {
2933 NU w;
2934 NI j;
2935 if (!(i_3 <= ((NI) 15))) goto LA18;
2936 w = (*r).bits[(i_3)- 0];
2937 j = ((NI) 0);
2938 {
2939 while (1) {
2940 if (!!((w == ((NU) 0)))) goto LA20;
2941 {
2942 NI T25_;
2943 if (!!(((NU)(w & ((NU) 1)) == ((NU) 0)))) goto LA23_;
2944 T25_ = (NI)0;
2945 T25_ = pluspercent___system_696((NI)((NU32)(i_3) << (NU32)(((NI) 5))), j);
2946 _ = (NI)((NI)((NU32)((*r).key) << (NU32)(((NI) 9))) | T25_);
2947 result += ((NI) 1);
2948 }
2949 LA23_: ;
2950 j += ((NI) 1);
2951 w = (NU)((NU32)(w) >> (NU32)(((NI) 1)));
2952 } LA20: ;
2953 }
2954 i_3 += ((NI) 1);
2955 } LA18: ;
2956 }
2957 r = (*r).next;
2958 } LA16: ;
2959 }
2960 }
2961 LA7_: ;
2962 }
2963 }
2964 LA1_: ;
2965 return result;
2966 }
N_NIMCALL(NI,minus___nilcheck_223)2967 N_LIB_PRIVATE N_NIMCALL(NI, minus___nilcheck_223)(NI a, NI b) {
2968 NI result;
2969 result = (NI)0;
2970 result = (NI)(a - b);
2971 return result;
2972 }
N_NIMCALL(NI,len__nilcheck_3422)2973 N_LIB_PRIVATE N_NIMCALL(NI, len__nilcheck_3422)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a) {
2974 NI result;
2975 NI T1_;
2976 result = (NI)0;
2977 T1_ = (a ? a->Sup.len : 0);
2978 result = T1_;
2979 return result;
2980 }
N_NIMCALL(void,moveOut__nilcheck_2975)2981 N_LIB_PRIVATE N_NIMCALL(void, moveOut__nilcheck_2975)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* target) {
2982 NI16 targetIndex;
2983 NI targetSetIndex;
2984 NI* T1_;
2985 targetIndex = index__nilcheck_1932(ctx, target);
2986 T1_ = (NI*)0;
2987 T1_ = X5BX5D___nilcheck_2460((&(*map).setIndices), targetIndex);
2988 targetSetIndex = (*T1_);
2989 {
2990 NIM_BOOL T4_;
2991 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA targetSet;
2992 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T7_;
2993 T4_ = (NIM_BOOL)0;
2994 T4_ = eqeq___nilcheck_215(targetSetIndex, ((NI) -1));
2995 if (!!(T4_)) goto LA5_;
2996 nimZeroMem((void*)(&targetSet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
2997 T7_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
2998 T7_ = X5BX5D___nilcheck_1495((&(*map).sets), targetSetIndex);
2999 genericAssign((void*)(&targetSet), (void*)(&(*T7_)), (&NTIpackedset__IhxwDBRi51nGrosBGFKcsA_));
3000 {
3001 NI T10_;
3002 NI16 other;
3003 NI* T43_;
3004 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T44_;
3005 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA newSet;
3006 NI T45_;
3007 NI T46_;
3008 T10_ = (NI)0;
3009 T10_ = len__nilcheck_1772((&targetSet));
3010 if (!(((NI) 1) < T10_)) goto LA11_;
3011 other = (NI16)0;
3012 {
3013 NI element;
3014 element = (NI)0;
3015 {
3016 if (!(targetSet.elems <= ((NI) 34))) goto LA16_;
3017 {
3018 NI i;
3019 NI i_2;
3020 i = (NI)0;
3021 i_2 = ((NI) 0);
3022 {
3023 while (1) {
3024 if (!(i_2 < targetSet.elems)) goto LA20;
3025 i = i_2;
3026 element = targetSet.a[(i)- 0];
3027 {
3028 NIM_BOOL T23_;
3029 T23_ = (NIM_BOOL)0;
3030 T23_ = eqeq___nilcheck_188(((NI16) (element)), targetIndex);
3031 if (!!(T23_)) goto LA24_;
3032 other = ((NI16) (element));
3033 goto LA13;
3034 }
3035 LA24_: ;
3036 i_2 += ((NI) 1);
3037 } LA20: ;
3038 }
3039 }
3040 }
3041 goto LA14_;
3042 LA16_: ;
3043 {
3044 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
3045 r = targetSet.head;
3046 {
3047 while (1) {
3048 NI i_3;
3049 if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA28;
3050 i_3 = ((NI) 0);
3051 {
3052 while (1) {
3053 NU w;
3054 NI j;
3055 if (!(i_3 <= ((NI) 15))) goto LA30;
3056 w = (*r).bits[(i_3)- 0];
3057 j = ((NI) 0);
3058 {
3059 while (1) {
3060 if (!!((w == ((NU) 0)))) goto LA32;
3061 {
3062 NI T37_;
3063 if (!!(((NU)(w & ((NU) 1)) == ((NU) 0)))) goto LA35_;
3064 T37_ = (NI)0;
3065 T37_ = pluspercent___system_696((NI)((NU32)(i_3) << (NU32)(((NI) 5))), j);
3066 element = (NI)((NI)((NU32)((*r).key) << (NU32)(((NI) 9))) | T37_);
3067 {
3068 NIM_BOOL T40_;
3069 T40_ = (NIM_BOOL)0;
3070 T40_ = eqeq___nilcheck_188(((NI16) (element)), targetIndex);
3071 if (!!(T40_)) goto LA41_;
3072 other = ((NI16) (element));
3073 goto LA13;
3074 }
3075 LA41_: ;
3076 }
3077 LA35_: ;
3078 j += ((NI) 1);
3079 w = (NU)((NU32)(w) >> (NU32)(((NI) 1)));
3080 } LA32: ;
3081 }
3082 i_3 += ((NI) 1);
3083 } LA30: ;
3084 }
3085 r = (*r).next;
3086 } LA28: ;
3087 }
3088 }
3089 LA14_: ;
3090 } LA13: ;
3091 T43_ = (NI*)0;
3092 T43_ = X5BX5D___nilcheck_2460((&(*map).setIndices), other);
3093 T44_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
3094 T44_ = X5BX5D___nilcheck_1495((&(*map).sets), (*T43_));
3095 excl__reorder_264(T44_, ((NI) (targetIndex)));
3096 nimZeroMem((void*)(&newSet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
3097 initIntSet__pureZcollectionsZintsets_238((&newSet));
3098 incl__pureZcollectionsZintsets_55((&newSet), ((NI) (targetIndex)));
3099 add__nilcheck_640((&(*map).sets), (&newSet));
3100 T45_ = (NI)0;
3101 T45_ = len__nilcheck_3422((*map).sets);
3102 T46_ = (NI)0;
3103 T46_ = minus___nilcheck_223(T45_, ((NI) 1));
3104 X5BX5Deq___nilcheck_584((&(*map).setIndices), targetIndex, T46_);
3105 }
3106 LA11_: ;
3107 }
3108 LA5_: ;
3109 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw **,X5BX5D___nilcheck_1387)3110 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**, X5BX5D___nilcheck_1387)(tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** a, NI16 index) {
3111 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** result;
3112 result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
3113 result = &(*a)->data[index];
3114 return result;
3115 }
N_NIMCALL(void,moveOutDependants__nilcheck_3476)3116 N_LIB_PRIVATE N_NIMCALL(void, moveOutDependants__nilcheck_3476)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node) {
3117 NI16 index;
3118 index = index__nilcheck_1932(ctx, node);
3119 {
3120 NI dependant;
3121 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA colontmp_;
3122 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T2_;
3123 dependant = (NI)0;
3124 nimZeroMem((void*)(&colontmp_), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
3125 T2_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
3126 T2_ = X5BX5D___nilcheck_3538((&(*ctx).dependants), index);
3127 nimCopyMem((void*)(&colontmp_), (NIM_CONST void*)(&(*T2_)), sizeof(colontmp_));
3128 {
3129 if (!(colontmp_.elems <= ((NI) 34))) goto LA5_;
3130 {
3131 NI i;
3132 NI i_2;
3133 i = (NI)0;
3134 i_2 = ((NI) 0);
3135 {
3136 while (1) {
3137 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T10_;
3138 if (!(i_2 < colontmp_.elems)) goto LA9;
3139 i = i_2;
3140 dependant = colontmp_.a[(i)- 0];
3141 T10_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
3142 T10_ = X5BX5D___nilcheck_1387((&(*ctx).expressions), ((NI16) (dependant)));
3143 moveOut__nilcheck_2975(ctx, map, (*T10_));
3144 i_2 += ((NI) 1);
3145 } LA9: ;
3146 }
3147 }
3148 }
3149 goto LA3_;
3150 LA5_: ;
3151 {
3152 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
3153 r = colontmp_.head;
3154 {
3155 while (1) {
3156 NI i_3;
3157 if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA13;
3158 i_3 = ((NI) 0);
3159 {
3160 while (1) {
3161 NU w;
3162 NI j;
3163 if (!(i_3 <= ((NI) 15))) goto LA15;
3164 w = (*r).bits[(i_3)- 0];
3165 j = ((NI) 0);
3166 {
3167 while (1) {
3168 if (!!((w == ((NU) 0)))) goto LA17;
3169 {
3170 NI T22_;
3171 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** T23_;
3172 if (!!(((NU)(w & ((NU) 1)) == ((NU) 0)))) goto LA20_;
3173 T22_ = (NI)0;
3174 T22_ = pluspercent___system_696((NI)((NU32)(i_3) << (NU32)(((NI) 5))), j);
3175 dependant = (NI)((NI)((NU32)((*r).key) << (NU32)(((NI) 9))) | T22_);
3176 T23_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
3177 T23_ = X5BX5D___nilcheck_1387((&(*ctx).expressions), ((NI16) (dependant)));
3178 moveOut__nilcheck_2975(ctx, map, (*T23_));
3179 }
3180 LA20_: ;
3181 j += ((NI) 1);
3182 w = (NU)((NU32)(w) >> (NU32)(((NI) 1)));
3183 } LA17: ;
3184 }
3185 i_3 += ((NI) 1);
3186 } LA15: ;
3187 }
3188 r = (*r).next;
3189 } LA13: ;
3190 }
3191 }
3192 LA3_: ;
3193 }
3194 }
N_NIMCALL(void,storeDependants__nilcheck_3610)3195 N_LIB_PRIVATE N_NIMCALL(void, storeDependants__nilcheck_3610)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node, tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value) {
3196 NI16 index;
3197 index = index__nilcheck_1932(ctx, node);
3198 {
3199 NI dependant;
3200 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA colontmp_;
3201 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T2_;
3202 dependant = (NI)0;
3203 nimZeroMem((void*)(&colontmp_), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
3204 T2_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
3205 T2_ = X5BX5D___nilcheck_3538((&(*ctx).dependants), index);
3206 nimCopyMem((void*)(&colontmp_), (NIM_CONST void*)(&(*T2_)), sizeof(colontmp_));
3207 {
3208 if (!(colontmp_.elems <= ((NI) 34))) goto LA5_;
3209 {
3210 NI i;
3211 NI i_2;
3212 i = (NI)0;
3213 i_2 = ((NI) 0);
3214 {
3215 while (1) {
3216 if (!(i_2 < colontmp_.elems)) goto LA9;
3217 i = i_2;
3218 dependant = colontmp_.a[(i)- 0];
3219 store__nilcheck_2666(map, ctx, ((NI16) (dependant)), value, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 8), (*node).info, node);
3220 i_2 += ((NI) 1);
3221 } LA9: ;
3222 }
3223 }
3224 }
3225 goto LA3_;
3226 LA5_: ;
3227 {
3228 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
3229 r = colontmp_.head;
3230 {
3231 while (1) {
3232 NI i_3;
3233 if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA12;
3234 i_3 = ((NI) 0);
3235 {
3236 while (1) {
3237 NU w;
3238 NI j;
3239 if (!(i_3 <= ((NI) 15))) goto LA14;
3240 w = (*r).bits[(i_3)- 0];
3241 j = ((NI) 0);
3242 {
3243 while (1) {
3244 if (!!((w == ((NU) 0)))) goto LA16;
3245 {
3246 NI T21_;
3247 if (!!(((NU)(w & ((NU) 1)) == ((NU) 0)))) goto LA19_;
3248 T21_ = (NI)0;
3249 T21_ = pluspercent___system_696((NI)((NU32)(i_3) << (NU32)(((NI) 5))), j);
3250 dependant = (NI)((NI)((NU32)((*r).key) << (NU32)(((NI) 9))) | T21_);
3251 store__nilcheck_2666(map, ctx, ((NI16) (dependant)), value, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 8), (*node).info, node);
3252 }
3253 LA19_: ;
3254 j += ((NI) 1);
3255 w = (NU)((NU32)(w) >> (NU32)(((NI) 1)));
3256 } LA16: ;
3257 }
3258 i_3 += ((NI) 1);
3259 } LA14: ;
3260 }
3261 r = (*r).next;
3262 } LA12: ;
3263 }
3264 }
3265 LA3_: ;
3266 }
3267 }
N_NIMCALL(void,checkCall__nilcheck_4051)3268 N_LIB_PRIVATE N_NIMCALL(void, checkCall__nilcheck_4051)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
3269 NIM_BOOL isNew;
3270 (*Result).nilability = 0;
3271 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
3272 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
3273 isNew = NIM_FALSE;
3274 unsureAsgnRef((void**) (&(*Result).map), map);
3275 {
3276 NI i;
3277 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
3278 i = (NI)0;
3279 child = NIM_NIL;
3280 {
3281 NI i_2;
3282 NI colontmp_;
3283 NI i_3;
3284 i_2 = (NI)0;
3285 colontmp_ = (NI)0;
3286 colontmp_ = safeLen__ast_3191(n);
3287 i_3 = ((NI) 0);
3288 {
3289 while (1) {
3290 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T5_;
3291 if (!(i_3 < colontmp_)) goto LA4;
3292 i_2 = i_3;
3293 i = i_2;
3294 child = (*n)._kind_6.sons->data[i_2];
3295 nimZeroMem((void*)(&T5_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
3296 check__nilcheck_227(child, ctx, map, (&T5_));
3297 (void)(T5_);
3298 {
3299 if (!(((NI) 0) < i)) goto LA8_;
3300 {
3301 NIM_BOOL T12_;
3302 NIM_BOOL T13_;
3303 NIM_BOOL T14_;
3304 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg;
3305 NI16 a;
3306 T12_ = (NIM_BOOL)0;
3307 T13_ = (NIM_BOOL)0;
3308 T14_ = (NIM_BOOL)0;
3309 T14_ = ((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64));
3310 if (!(T14_)) goto LA15_;
3311 T14_ = !(((*child).typ == 0));
3312 LA15_: ;
3313 T13_ = T14_;
3314 if (!(T13_)) goto LA16_;
3315 T13_ = ((*(*child).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
3316 LA16_: ;
3317 T12_ = T13_;
3318 if (!(T12_)) goto LA17_;
3319 T12_ = ((*(*(*child).typ).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22));
3320 LA17_: ;
3321 if (!T12_) goto LA18_;
3322 {
3323 if (!!(isNew)) goto LA22_;
3324 unsureAsgnRef((void**) (&(*Result).map), newNilMap__nilcheck_237(map, ((NI) -1)));
3325 isNew = NIM_TRUE;
3326 }
3327 LA22_: ;
3328 arg = child;
3329 {
3330 while (1) {
3331 if (!((*arg).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA25;
3332 arg = (*arg)._kind_6.sons->data[((NI) 0)];
3333 } LA25: ;
3334 }
3335 a = index__nilcheck_1932(ctx, arg);
3336 {
3337 NIM_BOOL T28_;
3338 T28_ = (NIM_BOOL)0;
3339 T28_ = eqeq___nilcheck_188(a, ((NI16) -1));
3340 if (!!(T28_)) goto LA29_;
3341 moveOut__nilcheck_2975(ctx, (*Result).map, arg);
3342 moveOutDependants__nilcheck_3476(ctx, (*Result).map, arg);
3343 store__nilcheck_2666((*Result).map, ctx, a, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2), ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 4), (*n).info, arg);
3344 storeDependants__nilcheck_3610(ctx, (*Result).map, arg, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2));
3345 }
3346 LA29_: ;
3347 }
3348 goto LA10_;
3349 LA18_: ;
3350 {
3351 NIM_BOOL T32_;
3352 T32_ = (NIM_BOOL)0;
3353 T32_ = !(((*child).typ == 0));
3354 if (!(T32_)) goto LA33_;
3355 T32_ = ((*(*child).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22));
3356 LA33_: ;
3357 if (!T32_) goto LA34_;
3358 {
3359 NIM_BOOL T38_;
3360 NIM_BOOL T40_;
3361 NI16 a_2;
3362 T38_ = (NIM_BOOL)0;
3363 T38_ = ((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3) || (*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45));
3364 if (T38_) goto LA39_;
3365 T40_ = (NIM_BOOL)0;
3366 T40_ = ((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42));
3367 if (!(T40_)) goto LA41_;
3368 T40_ = ((nkLiterals__ast_3029[(NU)((*(*child)._kind_6.sons->data[((NI) 1)]).kind)>>3] &(1U<<((NU)((*(*child)._kind_6.sons->data[((NI) 1)]).kind)&7U)))!=0);
3369 LA41_: ;
3370 T38_ = T40_;
3371 LA39_: ;
3372 if (!T38_) goto LA42_;
3373 a_2 = index__nilcheck_1932(ctx, child);
3374 {
3375 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T46_;
3376 NI T47_;
3377 T46_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
3378 T46_ = X5BX5D___nilcheck_3538((&(*ctx).dependants), a_2);
3379 T47_ = (NI)0;
3380 T47_ = len__nilcheck_1772((&(*T46_)));
3381 if (!(((NI) 0) < T47_)) goto LA48_;
3382 {
3383 if (!!(isNew)) goto LA52_;
3384 unsureAsgnRef((void**) (&(*Result).map), newNilMap__nilcheck_237(map, ((NI) -1)));
3385 isNew = NIM_TRUE;
3386 }
3387 LA52_: ;
3388 moveOutDependants__nilcheck_3476(ctx, (*Result).map, child);
3389 storeDependants__nilcheck_3610(ctx, (*Result).map, child, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2));
3390 }
3391 LA48_: ;
3392 }
3393 LA42_: ;
3394 }
3395 goto LA10_;
3396 LA34_: ;
3397 LA10_: ;
3398 }
3399 LA8_: ;
3400 i_3 += ((NI) 1);
3401 } LA4: ;
3402 }
3403 }
3404 }
3405 {
3406 NIM_BOOL T56_;
3407 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value;
3408 NI16 b;
3409 T56_ = (NIM_BOOL)0;
3410 T56_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
3411 if (!(T56_)) goto LA57_;
3412 T56_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 32));
3413 LA57_: ;
3414 if (!T56_) goto LA58_;
3415 {
3416 if (!((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65))) goto LA62_;
3417 value = (*(*n)._kind_6.sons->data[((NI) 1)])._kind_6.sons->data[((NI) 0)];
3418 }
3419 goto LA60_;
3420 LA62_: ;
3421 {
3422 value = (*n)._kind_6.sons->data[((NI) 1)];
3423 }
3424 LA60_: ;
3425 b = index__nilcheck_1932(ctx, value);
3426 store__nilcheck_2666((*Result).map, ctx, b, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1), ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), (*value).info, value);
3427 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
3428 }
3429 goto LA54_;
3430 LA58_: ;
3431 {
3432 {
3433 if (!!(((*n).typ == 0))) goto LA68_;
3434 (*Result).nilability = typeNilability__nilcheck_4049((*n).typ);
3435 }
3436 goto LA66_;
3437 LA68_: ;
3438 {
3439 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
3440 }
3441 LA66_: ;
3442 }
3443 LA54_: ;
3444 }
N_NIMCALL(void,Marker_tySequence__sHfymmN9aVTQTLnu1B0wi3w)3445 static N_NIMCALL(void, Marker_tySequence__sHfymmN9aVTQTLnu1B0wi3w)(void* p, NI op) {
3446 tySequence__sHfymmN9aVTQTLnu1B0wi3w* a;
3447 NI T1_;
3448 a = (tySequence__sHfymmN9aVTQTLnu1B0wi3w*)p;
3449 T1_ = (NI)0;
3450 for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
3451 nimGCvisit((void*)a->data[T1_].Field0, op);
3452 }
3453 }
N_NIMCALL(void,checkRefExpr__nilcheck_5782)3454 N_LIB_PRIVATE N_NIMCALL(void, checkRefExpr__nilcheck_5782)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ check, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
3455 (*Result).nilability = check.nilability;
3456 unsureAsgnRef((void**) (&(*Result).map), check.map);
3457 genericSeqAssign((&(*Result).elements), check.elements, (&NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_));
3458 {
3459 if (!!(((*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22)))) goto LA3_;
3460 (*Result).nilability = typeNilability__nilcheck_4049((*n).typ);
3461 }
3462 goto LA1_;
3463 LA3_: ;
3464 {
3465 if (!!((((*(*n).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 17))&63U)))!=0))) goto LA6_;
3466 {
3467 NIM_BOOL T10_;
3468 NIM_BOOL T12_;
3469 NI16 key;
3470 T10_ = (NIM_BOOL)0;
3471 T10_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45));
3472 if (T10_) goto LA11_;
3473 T12_ = (NIM_BOOL)0;
3474 T12_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42));
3475 if (!(T12_)) goto LA13_;
3476 T12_ = ((nkLiterals__ast_3029[(NU)((*(*n)._kind_6.sons->data[((NI) 1)]).kind)>>3] &(1U<<((NU)((*(*n)._kind_6.sons->data[((NI) 1)]).kind)&7U)))!=0);
3477 LA13_: ;
3478 T10_ = T12_;
3479 LA11_: ;
3480 if (!T10_) goto LA14_;
3481 key = index__nilcheck_1932(ctx, n);
3482 (*Result).nilability = X5BX5D___nilcheck_865((*Result).map, key);
3483 }
3484 goto LA8_;
3485 LA14_: ;
3486 {
3487 if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42))) goto LA17_;
3488 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
3489 }
3490 goto LA8_;
3491 LA17_: ;
3492 {
3493 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
3494 }
3495 LA8_: ;
3496 }
3497 goto LA1_;
3498 LA6_: ;
3499 LA1_: ;
3500 }
N_NIMCALL(void,checkDotExpr__nilcheck_5813)3501 N_LIB_PRIVATE N_NIMCALL(void, checkDotExpr__nilcheck_5813)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
3502 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T1_;
3503 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 0)], ctx, map, Result);
3504 nimZeroMem((void*)(&T1_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
3505 checkRefExpr__nilcheck_5782(n, ctx, (*Result), (&T1_));
3506 (*Result).nilability = T1_.nilability;
3507 unsureAsgnRef((void**) (&(*Result).map), T1_.map);
3508 unsureAsgnRef((void**) (&(*Result).elements), T1_.elements);
3509 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZsets_38)3510 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZsets_38)(NI hcode) {
3511 NIM_BOOL result;
3512 result = (NIM_BOOL)0;
3513 result = !((hcode == ((NI) 0)));
3514 return result;
3515 }
N_INLINE(NI,nextTry__pureZcollectionsZsets_41)3516 static N_INLINE(NI, nextTry__pureZcollectionsZsets_41)(NI h, NI maxHash) {
3517 NI result;
3518 result = (NI)0;
3519 result = (NI)((NI)(h + ((NI) 1)) & maxHash);
3520 return result;
3521 }
N_INLINE(NI,rawGet__nilcheck_4328)3522 static N_INLINE(NI, rawGet__nilcheck_4328)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key, NI* hc) {
3523 NI result;
3524 NI h;
3525 NI T10_;
3526 { result = (NI)0;
3527 (*hc) = hash__lineinfos_229(key);
3528 {
3529 if (!((*hc) == ((NI) 0))) goto LA3_;
3530 (*hc) = ((NI) 314159265);
3531 }
3532 LA3_: ;
3533 {
3534 NI T7_;
3535 T7_ = (t.data ? t.data->Sup.len : 0);
3536 if (!(T7_ == ((NI) 0))) goto LA8_;
3537 result = ((NI) -1);
3538 goto BeforeRet_;
3539 }
3540 LA8_: ;
3541 T10_ = ((t.data ? t.data->Sup.len : 0)-1);
3542 h = (NI)((*hc) & T10_);
3543 {
3544 while (1) {
3545 NIM_BOOL T13_;
3546 NI T20_;
3547 T13_ = (NIM_BOOL)0;
3548 T13_ = isFilled__pureZcollectionsZsets_38(t.data->data[h].Field0);
3549 if (!T13_) goto LA12;
3550 {
3551 NIM_BOOL T16_;
3552 T16_ = (NIM_BOOL)0;
3553 T16_ = (t.data->data[h].Field0 == (*hc));
3554 if (!(T16_)) goto LA17_;
3555 T16_ = eqeq___msgs_993(t.data->data[h].Field1, key);
3556 LA17_: ;
3557 if (!T16_) goto LA18_;
3558 result = h;
3559 goto BeforeRet_;
3560 }
3561 LA18_: ;
3562 T20_ = ((t.data ? t.data->Sup.len : 0)-1);
3563 h = nextTry__pureZcollectionsZsets_41(h, T20_);
3564 } LA12: ;
3565 }
3566 result = (NI)(((NI) -1) - h);
3567 }BeforeRet_: ;
3568 return result;
3569 }
N_NIMCALL(NIM_BOOL,contains__nilcheck_4315)3570 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__nilcheck_4315)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key) {
3571 NIM_BOOL result;
3572 NI hc;
3573 NI index;
3574 result = (NIM_BOOL)0;
3575 hc = (NI)0;
3576 index = rawGet__nilcheck_4328(s, key, (&hc));
3577 result = (((NI) 0) <= index);
3578 return result;
3579 }
N_INLINE(NI,slotsNeeded__pureZcollectionsZsets_49)3580 static N_INLINE(NI, slotsNeeded__pureZcollectionsZsets_49)(NI count) {
3581 NI result;
3582 result = (NI)0;
3583 result = nextPowerOfTwo__pureZmath_177((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
3584 return result;
3585 }
N_INLINE(NIM_BOOL,mustRehash__nilcheck_4703)3586 static N_INLINE(NIM_BOOL, mustRehash__nilcheck_4703)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA t) {
3587 NIM_BOOL result;
3588 NIM_BOOL T1_;
3589 NI T2_;
3590 NI T4_;
3591 result = (NIM_BOOL)0;
3592 T1_ = (NIM_BOOL)0;
3593 T2_ = (t.data ? t.data->Sup.len : 0);
3594 T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
3595 if (T1_) goto LA3_;
3596 T4_ = (t.data ? t.data->Sup.len : 0);
3597 T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
3598 LA3_: ;
3599 result = T1_;
3600 return result;
3601 }
N_INLINE(NI,rawGetKnownHC__nilcheck_5146)3602 static N_INLINE(NI, rawGetKnownHC__nilcheck_5146)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key, NI hc) {
3603 NI result;
3604 NI h;
3605 NI T6_;
3606 { result = (NI)0;
3607 {
3608 NI T3_;
3609 T3_ = (t.data ? t.data->Sup.len : 0);
3610 if (!(T3_ == ((NI) 0))) goto LA4_;
3611 result = ((NI) -1);
3612 goto BeforeRet_;
3613 }
3614 LA4_: ;
3615 T6_ = ((t.data ? t.data->Sup.len : 0)-1);
3616 h = (NI)(hc & T6_);
3617 {
3618 while (1) {
3619 NIM_BOOL T9_;
3620 NI T16_;
3621 T9_ = (NIM_BOOL)0;
3622 T9_ = isFilled__pureZcollectionsZsets_38(t.data->data[h].Field0);
3623 if (!T9_) goto LA8;
3624 {
3625 NIM_BOOL T12_;
3626 T12_ = (NIM_BOOL)0;
3627 T12_ = (t.data->data[h].Field0 == hc);
3628 if (!(T12_)) goto LA13_;
3629 T12_ = eqeq___msgs_993(t.data->data[h].Field1, key);
3630 LA13_: ;
3631 if (!T12_) goto LA14_;
3632 result = h;
3633 goto BeforeRet_;
3634 }
3635 LA14_: ;
3636 T16_ = ((t.data ? t.data->Sup.len : 0)-1);
3637 h = nextTry__pureZcollectionsZsets_41(h, T16_);
3638 } LA8: ;
3639 }
3640 result = (NI)(((NI) -1) - h);
3641 }BeforeRet_: ;
3642 return result;
3643 }
N_NIMCALL(void,rawInsert__nilcheck_5508)3644 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__nilcheck_5508)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA* s, tySequence__F43jf4nUkSAG8E9cfLj9aQoQ** data, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key, NI hc, NI h) {
3645 {
3646 NI T3_;
3647 NI correctSizeX60gensym48_;
3648 T3_ = ((*data) ? (*data)->Sup.len : 0);
3649 if (!(T3_ == ((NI) 0))) goto LA4_;
3650 correctSizeX60gensym48_ = slotsNeeded__pureZcollectionsZsets_49(((NI) 64));
3651 (*s).counter = ((NI) 0);
3652 unsureAsgnRef((void**) (&(*s).data), (tySequence__F43jf4nUkSAG8E9cfLj9aQoQ*) newSeq((&NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_), ((NI) (correctSizeX60gensym48_))));
3653 }
3654 LA4_: ;
3655 (*data)->data[h].Field1 = key;
3656 (*data)->data[h].Field0 = hc;
3657 }
N_NIMCALL(void,enlarge__nilcheck_4895)3658 N_LIB_PRIVATE N_NIMCALL(void, enlarge__nilcheck_4895)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA* s) {
3659 tySequence__F43jf4nUkSAG8E9cfLj9aQoQ* n;
3660 NI T1_;
3661 tySequence__F43jf4nUkSAG8E9cfLj9aQoQ* T2_;
3662 n = NIM_NIL;
3663 T1_ = ((*s).data ? (*s).data->Sup.len : 0);
3664 n = (tySequence__F43jf4nUkSAG8E9cfLj9aQoQ*) newSeq((&NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_), ((NI) ((NI)(T1_ * ((NI) 2)))));
3665 T2_ = NIM_NIL;
3666 T2_ = (*s).data;
3667 unsureAsgnRef((void**) (&(*s).data), n);
3668 n = T2_;
3669 {
3670 NI i;
3671 NI colontmp_;
3672 NI T4_;
3673 NI res;
3674 i = (NI)0;
3675 colontmp_ = (NI)0;
3676 T4_ = ((n ? n->Sup.len : 0)-1);
3677 colontmp_ = T4_;
3678 res = ((NI) 0);
3679 {
3680 while (1) {
3681 if (!(res <= colontmp_)) goto LA6;
3682 i = res;
3683 {
3684 NIM_BOOL T9_;
3685 NI j;
3686 NI T12_;
3687 T9_ = (NIM_BOOL)0;
3688 T9_ = isFilled__pureZcollectionsZsets_38(n->data[i].Field0);
3689 if (!T9_) goto LA10_;
3690 T12_ = (NI)0;
3691 T12_ = rawGetKnownHC__nilcheck_5146((*s), n->data[i].Field1, n->data[i].Field0);
3692 j = (NI)(((NI) -1) - T12_);
3693 rawInsert__nilcheck_5508(s, (&(*s).data), n->data[i].Field1, n->data[i].Field0, j);
3694 }
3695 LA10_: ;
3696 res += ((NI) 1);
3697 } LA6: ;
3698 }
3699 }
3700 }
N_NIMCALL(void,incl__nilcheck_4610)3701 N_LIB_PRIVATE N_NIMCALL(void, incl__nilcheck_4610)(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q key) {
3702 NI hc;
3703 NI index;
3704 {
3705 NI T3_;
3706 NI correctSizeX60gensym41_;
3707 T3_ = ((*s).data ? (*s).data->Sup.len : 0);
3708 if (!(T3_ == ((NI) 0))) goto LA4_;
3709 correctSizeX60gensym41_ = slotsNeeded__pureZcollectionsZsets_49(((NI) 64));
3710 (*s).counter = ((NI) 0);
3711 unsureAsgnRef((void**) (&(*s).data), (tySequence__F43jf4nUkSAG8E9cfLj9aQoQ*) newSeq((&NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_), ((NI) (correctSizeX60gensym41_))));
3712 }
3713 LA4_: ;
3714 hc = (NI)0;
3715 index = rawGet__nilcheck_4328((*s), key, (&hc));
3716 {
3717 if (!(index < ((NI) 0))) goto LA8_;
3718 {
3719 NIM_BOOL T12_;
3720 T12_ = (NIM_BOOL)0;
3721 T12_ = mustRehash__nilcheck_4703((*s));
3722 if (!T12_) goto LA13_;
3723 enlarge__nilcheck_4895(s);
3724 index = rawGetKnownHC__nilcheck_5146((*s), key, hc);
3725 }
3726 LA13_: ;
3727 rawInsert__nilcheck_5508(s, (&(*s).data), key, hc, (NI)(((NI) -1) - index));
3728 (*s).counter += ((NI) 1);
3729 }
3730 LA8_: ;
3731 }
N_NIMCALL(void,derefWarning__nilcheck_4257)3732 N_LIB_PRIVATE N_NIMCALL(void, derefWarning__nilcheck_4257)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA kind) {
3733 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* a;
3734 NimStringDesc* res;
3735 NimStringDesc* issue;
3736 NimStringDesc* T15_;
3737 NimStringDesc* T16_;
3738 { {
3739 NIM_BOOL T3_;
3740 T3_ = (NIM_BOOL)0;
3741 T3_ = contains__nilcheck_4315((*ctx).warningLocations, (*n).info);
3742 if (!T3_) goto LA4_;
3743 goto BeforeRet_;
3744 }
3745 LA4_: ;
3746 incl__nilcheck_4610((&(*ctx).warningLocations), (*n).info);
3747 a = NIM_NIL;
3748 {
3749 NI16 T10_;
3750 if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA8_;
3751 T10_ = (NI16)0;
3752 T10_ = index__nilcheck_1932(ctx, n);
3753 a = history__nilcheck_1071(map, T10_);
3754 }
3755 LA8_: ;
3756 res = ((NimStringDesc*) NIM_NIL);
3757 switch (kind) {
3758 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3):
3759 {
3760 issue = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_21));
3761 }
3762 break;
3763 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2):
3764 {
3765 issue = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_22));
3766 }
3767 break;
3768 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4):
3769 {
3770 issue = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_23));
3771 }
3772 break;
3773 default:
3774 {
3775 issue = ((NimStringDesc*) NIM_NIL);
3776 }
3777 break;
3778 }
3779 T15_ = NIM_NIL;
3780 T16_ = NIM_NIL;
3781 T16_ = dollar___renderer_2106(n);
3782 T15_ = rawNewString((T16_ ? T16_->Sup.len : 0) + (issue ? issue->Sup.len : 0) + 14);
3783 appendString(T15_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_24));
3784 appendString(T15_, T16_);
3785 appendString(T15_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_25));
3786 appendString(T15_, issue);
3787 res = resizeString(res, (T15_ ? T15_->Sup.len : 0) + 0);
3788 appendString(res, T15_);
3789 {
3790 NI T19_;
3791 T19_ = (a ? a->Sup.len : 0);
3792 if (!(((NI) 0) < T19_)) goto LA20_;
3793 res = resizeString(res, 1);
3794 appendString(res, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_26));
3795 }
3796 LA20_: ;
3797 {
3798 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* b;
3799 NI i;
3800 NI L;
3801 NI T23_;
3802 b = (tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA*)0;
3803 i = ((NI) 0);
3804 T23_ = (a ? a->Sup.len : 0);
3805 L = T23_;
3806 {
3807 while (1) {
3808 NimStringDesc* T26_;
3809 NimStringDesc* T27_;
3810 NimStringDesc* T37_;
3811 NimStringDesc* T38_;
3812 if (!(i < L)) goto LA25;
3813 b = (&a->data[i]);
3814 T26_ = NIM_NIL;
3815 T27_ = NIM_NIL;
3816 switch ((*b).kind) {
3817 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 0):
3818 {
3819 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_28));
3820 }
3821 break;
3822 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 3):
3823 {
3824 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_29));
3825 }
3826 break;
3827 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1):
3828 {
3829 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_30));
3830 }
3831 break;
3832 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 4):
3833 {
3834 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_31));
3835 }
3836 break;
3837 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 5):
3838 {
3839 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_32));
3840 }
3841 break;
3842 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 2):
3843 {
3844 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_33));
3845 }
3846 break;
3847 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 6):
3848 {
3849 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_34));
3850 }
3851 break;
3852 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 7):
3853 {
3854 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_35));
3855 }
3856 break;
3857 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 8):
3858 {
3859 T27_ = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_36));
3860 }
3861 break;
3862 }
3863 T37_ = NIM_NIL;
3864 T37_ = dollar___systemZdollars_9(((NU64) ((*b).info.line)));
3865 T38_ = NIM_NIL;
3866 T38_ = dollar___systemZdollars_3(((NI) ((*b).info.col)));
3867 T26_ = rawNewString((T27_ ? T27_->Sup.len : 0) + (T37_ ? T37_->Sup.len : 0) + (T38_ ? T38_->Sup.len : 0) + 12);
3868 appendString(T26_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_27));
3869 appendString(T26_, T27_);
3870 appendString(T26_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_37));
3871 appendString(T26_, T37_);
3872 appendString(T26_, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_38));
3873 appendString(T26_, T38_);
3874 res = resizeString(res, (T26_ ? T26_->Sup.len : 0) + 0);
3875 appendString(res, T26_);
3876 i += ((NI) 1);
3877 } LA25: ;
3878 }
3879 }
3880 liMessage__msgs_1118((*ctx).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 58), res, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_39, NIM_FALSE);
3881 }BeforeRet_: ;
3882 }
N_NIMCALL(void,handleNilability__nilcheck_5770)3883 N_LIB_PRIVATE N_NIMCALL(void, handleNilability__nilcheck_5770)(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ check, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map) {
3884 switch (check.nilability) {
3885 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3):
3886 {
3887 derefWarning__nilcheck_4257(n, ctx, map, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3));
3888 }
3889 break;
3890 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2):
3891 {
3892 derefWarning__nilcheck_4257(n, ctx, map, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2));
3893 }
3894 break;
3895 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4):
3896 {
3897 derefWarning__nilcheck_4257(n, ctx, map, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4));
3898 }
3899 break;
3900 default:
3901 {
3902 }
3903 break;
3904 }
3905 }
N_NIMCALL(void,checkDeref__nilcheck_5775)3906 N_LIB_PRIVATE N_NIMCALL(void, checkDeref__nilcheck_5775)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
3907 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 0)], ctx, map, Result);
3908 handleNilability__nilcheck_5770((*Result), (*n)._kind_6.sons->data[((NI) 0)], ctx, map);
3909 }
N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw *,copyMap__nilcheck_4039)3910 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, copyMap__nilcheck_4039)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map) {
3911 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* result;
3912 { result = NIM_NIL;
3913 {
3914 if (!(map == 0)) goto LA3_;
3915 result = ((tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*) NIM_NIL);
3916 goto BeforeRet_;
3917 }
3918 LA3_: ;
3919 result = newNilMap__nilcheck_237((*map).parent, ((NI) -1));
3920 genericSeqAssign((&(*result).expressions), (*map).expressions, (&NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_));
3921 genericSeqAssign((&(*result).history), (*map).history, (&NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_));
3922 genericSeqAssign((&(*result).sets), (*map).sets, (&NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_));
3923 genericSeqAssign((&(*result).setIndices), (*map).setIndices, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_));
3924 }BeforeRet_: ;
3925 return result;
3926 }
N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA,reverse__nilcheck_6430)3927 N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA, reverse__nilcheck_6430)(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value) {
3928 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA result;
3929 result = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
3930 switch (value) {
3931 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3):
3932 {
3933 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
3934 }
3935 break;
3936 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2):
3937 {
3938 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
3939 }
3940 break;
3941 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1):
3942 {
3943 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3);
3944 }
3945 break;
3946 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 0):
3947 {
3948 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 0);
3949 }
3950 break;
3951 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4):
3952 {
3953 result = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4);
3954 }
3955 break;
3956 }
3957 return result;
3958 }
N_INLINE(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA *,X5BX5D___nilcheck_6618)3959 static N_INLINE(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA*, X5BX5D___nilcheck_6618)(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* s, NI sLen_0, NI i) {
3960 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* result;
3961 result = (tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA*)0;
3962 result = (&s[(NI)(sLen_0 - i)]);
3963 return result;
3964 }
N_NIMCALL(tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA,reverse__nilcheck_6433)3965 N_LIB_PRIVATE N_NIMCALL(tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA, reverse__nilcheck_6433)(tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA kind) {
3966 tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA result;
3967 result = (tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA)0;
3968 switch (kind) {
3969 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 3):
3970 {
3971 result = ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 6);
3972 }
3973 break;
3974 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 6):
3975 {
3976 result = ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 3);
3977 }
3978 break;
3979 case ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 7):
3980 {
3981 result = ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 7);
3982 }
3983 break;
3984 default:
3985 {
3986 result = kind;
3987 }
3988 break;
3989 }
3990 return result;
3991 }
N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw *,reverseDirect__nilcheck_1214)3992 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, reverseDirect__nilcheck_1214)(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map) {
3993 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* result;
3994 result = NIM_NIL;
3995 result = copyMap__nilcheck_4039(map);
3996 {
3997 NI16 index;
3998 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value;
3999 index = (NI16)0;
4000 value = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4001 {
4002 NI i;
4003 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA element;
4004 tySequence__j9aEZ11m8pCmK2eRUFSgiOA* colontmp_;
4005 NI i_2;
4006 NI L;
4007 NI T3_;
4008 i = (NI)0;
4009 element = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4010 colontmp_ = NIM_NIL;
4011 colontmp_ = (*result).expressions;
4012 i_2 = ((NI) 0);
4013 T3_ = (colontmp_ ? colontmp_->Sup.len : 0);
4014 L = T3_;
4015 {
4016 while (1) {
4017 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T6_;
4018 if (!(i_2 < L)) goto LA5;
4019 i = i_2;
4020 element = colontmp_->data[i_2];
4021 index = ((NI16) (i));
4022 value = element;
4023 T6_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4024 T6_ = reverse__nilcheck_6430(value);
4025 X5BX5Deq___nilcheck_2714((&(*result).expressions), index, T6_);
4026 {
4027 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T9_;
4028 NI T10_;
4029 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T13_;
4030 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* T14_;
4031 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T15_;
4032 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* T16_;
4033 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T17_;
4034 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA* T18_;
4035 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA* T19_;
4036 T9_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
4037 T9_ = X5BX5D___nilcheck_1191((&(*result).history), index);
4038 T10_ = ((*T9_) ? (*T9_)->Sup.len : 0);
4039 if (!(((NI) 0) < T10_)) goto LA11_;
4040 T13_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
4041 T13_ = X5BX5D___nilcheck_1191((&(*result).history), index);
4042 T14_ = (tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA*)0;
4043 T14_ = X5BX5D___nilcheck_6618((*T13_)->data, ((*T13_) ? (*T13_)->Sup.len : 0), ((NI) 1));
4044 T15_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
4045 T15_ = X5BX5D___nilcheck_1191((&(*result).history), index);
4046 T16_ = (tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA*)0;
4047 T16_ = X5BX5D___nilcheck_6618((*T15_)->data, ((*T15_) ? (*T15_)->Sup.len : 0), ((NI) 1));
4048 (*T14_).kind = reverse__nilcheck_6433((*T16_).kind);
4049 T17_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
4050 T17_ = X5BX5D___nilcheck_1191((&(*result).history), index);
4051 T18_ = (tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA*)0;
4052 T18_ = X5BX5D___nilcheck_6618((*T17_)->data, ((*T17_) ? (*T17_)->Sup.len : 0), ((NI) 1));
4053 T19_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA*)0;
4054 T19_ = X5BX5D___nilcheck_989((&(*result).expressions), index);
4055 (*T18_).nilability = (*T19_);
4056 }
4057 LA11_: ;
4058 i_2 += ((NI) 1);
4059 } LA5: ;
4060 }
4061 }
4062 }
4063 return result;
4064 }
N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw *,add__nilcheck_5952)4065 N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*, add__nilcheck_5952)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* l, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* r) {
4066 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* result;
4067 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* common;
4068 NI16 T8_;
4069 { result = NIM_NIL;
4070 {
4071 if (!(l == 0)) goto LA3_;
4072 result = r;
4073 goto BeforeRet_;
4074 }
4075 goto LA1_;
4076 LA3_: ;
4077 {
4078 if (!(r == 0)) goto LA6_;
4079 result = l;
4080 goto BeforeRet_;
4081 }
4082 goto LA1_;
4083 LA6_: ;
4084 LA1_: ;
4085 common = findCommonParent__nilcheck_5833(l, r);
4086 T8_ = (NI16)0;
4087 T8_ = len__nilcheck_5915((*ctx).expressions);
4088 result = newNilMap__nilcheck_237(common, ((NI) (T8_)));
4089 {
4090 NI16 index;
4091 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value;
4092 index = (NI16)0;
4093 value = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4094 {
4095 NI16 index_2;
4096 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA value_2;
4097 index_2 = (NI16)0;
4098 value_2 = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4099 {
4100 NI i;
4101 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA element;
4102 tySequence__j9aEZ11m8pCmK2eRUFSgiOA* colontmp_;
4103 NI i_2;
4104 NI L;
4105 NI T12_;
4106 i = (NI)0;
4107 element = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4108 colontmp_ = NIM_NIL;
4109 colontmp_ = (*l).expressions;
4110 i_2 = ((NI) 0);
4111 T12_ = (colontmp_ ? colontmp_->Sup.len : 0);
4112 L = T12_;
4113 {
4114 while (1) {
4115 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg* h;
4116 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
4117 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T22_;
4118 if (!(i_2 < L)) goto LA14;
4119 i = i_2;
4120 element = colontmp_->data[i_2];
4121 index_2 = ((NI16) (i));
4122 value_2 = element;
4123 index = index_2;
4124 value = X5BX5D___nilcheck_865(l, index_2);
4125 h = history__nilcheck_1071(r, index);
4126 {
4127 NI T17_;
4128 tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA T20_;
4129 T17_ = (h ? h->Sup.len : 0);
4130 if (!(((NI) 0) < T17_)) goto LA18_;
4131 nimZeroMem((void*)(&T20_), sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA));
4132 X5BX5D___nilcheck_5929(h->data, (h ? h->Sup.len : 0), ((NI) 1), (&T20_));
4133 info = T20_.info;
4134 }
4135 goto LA15_;
4136 LA18_: ;
4137 {
4138 nimZeroMem((void*)(&info), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
4139 info.line = ((NU16) 0);
4140 }
4141 LA15_: ;
4142 T22_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4143 {
4144 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T25_;
4145 T25_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4146 T25_ = X5BX5D___nilcheck_865(r, index);
4147 if (!(value == T25_)) goto LA26_;
4148 T22_ = value;
4149 }
4150 goto LA23_;
4151 LA26_: ;
4152 {
4153 if (!(value == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 0))) goto LA29_;
4154 T22_ = X5BX5D___nilcheck_865(r, index);
4155 }
4156 goto LA23_;
4157 LA29_: ;
4158 {
4159 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T32_;
4160 T32_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4161 T32_ = X5BX5D___nilcheck_865(r, index);
4162 if (!(T32_ == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 0))) goto LA33_;
4163 T22_ = value;
4164 }
4165 goto LA23_;
4166 LA33_: ;
4167 {
4168 NIM_BOOL T36_;
4169 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T38_;
4170 T36_ = (NIM_BOOL)0;
4171 T36_ = (value == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4));
4172 if (T36_) goto LA37_;
4173 T38_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4174 T38_ = X5BX5D___nilcheck_865(r, index);
4175 T36_ = (T38_ == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4));
4176 LA37_: ;
4177 if (!T36_) goto LA39_;
4178 T22_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4);
4179 }
4180 goto LA23_;
4181 LA39_: ;
4182 {
4183 if (!(value == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2))) goto LA42_;
4184 T22_ = X5BX5D___nilcheck_865(r, index);
4185 }
4186 goto LA23_;
4187 LA42_: ;
4188 {
4189 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T45_;
4190 T45_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4191 T45_ = X5BX5D___nilcheck_865(r, index);
4192 if (!(T45_ == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2))) goto LA46_;
4193 T22_ = value;
4194 }
4195 goto LA23_;
4196 LA46_: ;
4197 {
4198 T22_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4);
4199 }
4200 LA23_: ;
4201 store__nilcheck_2666(result, ctx, index, T22_, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), info, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
4202 i_2 += ((NI) 1);
4203 } LA14: ;
4204 }
4205 }
4206 }
4207 }
4208 }BeforeRet_: ;
4209 return result;
4210 }
N_NIMCALL(void,checkBranch__nilcheck_1216)4211 N_LIB_PRIVATE N_NIMCALL(void, checkBranch__nilcheck_1216)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4212 check__nilcheck_227(n, ctx, map, Result);
4213 }
N_NIMCALL(NIM_BOOL,hasUnstructuredControlFlowJump__nilcheck_1220)4214 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasUnstructuredControlFlowJump__nilcheck_1220)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4215 NIM_BOOL result;
4216 { result = (NIM_BOOL)0;
4217 switch ((*n).kind) {
4218 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
4219 {
4220 {
4221 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
4222 child = NIM_NIL;
4223 {
4224 NI i;
4225 NI colontmp_;
4226 NI i_2;
4227 i = (NI)0;
4228 colontmp_ = (NI)0;
4229 colontmp_ = safeLen__ast_3191(n);
4230 i_2 = ((NI) 0);
4231 {
4232 while (1) {
4233 if (!(i_2 < colontmp_)) goto LA5;
4234 i = i_2;
4235 child = (*n)._kind_6.sons->data[i];
4236 {
4237 NIM_BOOL T8_;
4238 T8_ = (NIM_BOOL)0;
4239 T8_ = hasUnstructuredControlFlowJump__nilcheck_1220(child);
4240 if (!T8_) goto LA9_;
4241 result = NIM_TRUE;
4242 goto BeforeRet_;
4243 }
4244 LA9_: ;
4245 i_2 += ((NI) 1);
4246 } LA5: ;
4247 }
4248 }
4249 }
4250 }
4251 break;
4252 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109):
4253 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110):
4254 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 111):
4255 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108):
4256 {
4257 result = NIM_TRUE;
4258 goto BeforeRet_;
4259 }
4260 break;
4261 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92):
4262 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48):
4263 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 49):
4264 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
4265 {
4266 result = NIM_FALSE;
4267 goto BeforeRet_;
4268 }
4269 break;
4270 default:
4271 {
4272 }
4273 break;
4274 }
4275 result = NIM_FALSE;
4276 goto BeforeRet_;
4277 }BeforeRet_: ;
4278 return result;
4279 }
N_NIMCALL(void,checkIf__nilcheck_6213)4280 N_LIB_PRIVATE N_NIMCALL(void, checkIf__nilcheck_6213)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4281 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* mapIf;
4282 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* mapCondition;
4283 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* layerHistory;
4284 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* afterLayer;
4285 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA nilability;
4286 (*Result).nilability = 0;
4287 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
4288 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
4289 mapIf = map;
4290 mapCondition = checkCondition__nilcheck_231((*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)], ctx, mapIf, NIM_FALSE, NIM_TRUE);
4291 layerHistory = newNilMap__nilcheck_237(mapIf, ((NI) -1));
4292 afterLayer = NIM_NIL;
4293 nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
4294 {
4295 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** branch;
4296 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
4297 NI i;
4298 NI L;
4299 NI T2_;
4300 branch = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
4301 colontmp_ = NIM_NIL;
4302 colontmp_ = (*n)._kind_6.sons;
4303 i = ((NI) 0);
4304 T2_ = (colontmp_ ? colontmp_->Sup.len : 0);
4305 L = T2_;
4306 {
4307 while (1) {
4308 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* branchConditionLayer;
4309 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* branchLayer;
4310 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* code;
4311 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ branchCheck;
4312 if (!(i < L)) goto LA4;
4313 branch = &colontmp_->data[i];
4314 branchConditionLayer = newNilMap__nilcheck_237(layerHistory, ((NI) -1));
4315 branchLayer = NIM_NIL;
4316 code = NIM_NIL;
4317 {
4318 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* mapCondition_2;
4319 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* reverseMapCondition;
4320 if (!((*(*branch)).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92) || (*(*branch)).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86))) goto LA7_;
4321 mapCondition_2 = checkCondition__nilcheck_231((*(*branch))._kind_6.sons->data[((NI) 0)], ctx, branchConditionLayer, NIM_FALSE, NIM_TRUE);
4322 reverseMapCondition = reverseDirect__nilcheck_1214(mapCondition_2);
4323 layerHistory = add__nilcheck_5952(ctx, layerHistory, reverseMapCondition);
4324 branchLayer = mapCondition_2;
4325 code = (*(*branch))._kind_6.sons->data[((NI) 1)];
4326 }
4327 goto LA5_;
4328 LA7_: ;
4329 {
4330 branchLayer = layerHistory;
4331 code = (*branch);
4332 }
4333 LA5_: ;
4334 nimZeroMem((void*)(&branchCheck), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4335 checkBranch__nilcheck_1216(code, ctx, branchLayer, (&branchCheck));
4336 afterLayer = union__nilcheck_5848(ctx, afterLayer, branchCheck.map);
4337 {
4338 if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92))) goto LA12_;
4339 nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
4340 }
4341 goto LA10_;
4342 LA12_: ;
4343 {
4344 {
4345 if (!(nilability == branchCheck.nilability)) goto LA17_;
4346 nilability = nilability;
4347 }
4348 goto LA15_;
4349 LA17_: ;
4350 {
4351 nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
4352 }
4353 LA15_: ;
4354 }
4355 LA10_: ;
4356 i += ((NI) 1);
4357 } LA4: ;
4358 }
4359 }
4360 {
4361 NI T22_;
4362 T22_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
4363 if (!(((NI) 1) < T22_)) goto LA23_;
4364 unsureAsgnRef((void**) (&(*Result).map), afterLayer);
4365 (*Result).nilability = nilability;
4366 }
4367 goto LA20_;
4368 LA23_: ;
4369 {
4370 {
4371 NIM_BOOL T28_;
4372 T28_ = (NIM_BOOL)0;
4373 T28_ = hasUnstructuredControlFlowJump__nilcheck_1220((*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)]);
4374 if (!!(T28_)) goto LA29_;
4375 unsureAsgnRef((void**) (&(*Result).map), union__nilcheck_5848(ctx, layerHistory, afterLayer));
4376 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
4377 }
4378 goto LA26_;
4379 LA29_: ;
4380 {
4381 unsureAsgnRef((void**) (&(*Result).map), layerHistory);
4382 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
4383 }
4384 LA26_: ;
4385 }
4386 LA20_: ;
4387 }
N_NIMCALL(void,move__nilcheck_3682)4388 N_LIB_PRIVATE N_NIMCALL(void, move__nilcheck_3682)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* target, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* assigned) {
4389 NI16 targetIndex;
4390 NI16 assignedIndex;
4391 NI targetSetIndex;
4392 NI* T1_;
4393 NI assignedSetIndex;
4394 targetIndex = index__nilcheck_1932(ctx, target);
4395 assignedIndex = (NI16)0;
4396 T1_ = (NI*)0;
4397 T1_ = X5BX5D___nilcheck_2460((&(*map).setIndices), targetIndex);
4398 targetSetIndex = (*T1_);
4399 assignedSetIndex = (NI)0;
4400 {
4401 NI* T6_;
4402 if (!((*assigned).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA4_;
4403 assignedIndex = index__nilcheck_1932(ctx, assigned);
4404 T6_ = (NI*)0;
4405 T6_ = X5BX5D___nilcheck_2460((&(*map).setIndices), assignedIndex);
4406 assignedSetIndex = (*T6_);
4407 }
4408 goto LA2_;
4409 LA4_: ;
4410 {
4411 assignedIndex = ((NI16) -1);
4412 assignedSetIndex = ((NI) -1);
4413 }
4414 LA2_: ;
4415 {
4416 NIM_BOOL T10_;
4417 T10_ = (NIM_BOOL)0;
4418 T10_ = eqeq___nilcheck_188(assignedIndex, ((NI16) -1));
4419 if (!T10_) goto LA11_;
4420 moveOut__nilcheck_2975(ctx, map, target);
4421 }
4422 goto LA8_;
4423 LA11_: ;
4424 {
4425 NIM_BOOL T14_;
4426 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T17_;
4427 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T18_;
4428 T14_ = (NIM_BOOL)0;
4429 T14_ = eqeq___nilcheck_215(targetSetIndex, assignedSetIndex);
4430 if (!!(T14_)) goto LA15_;
4431 T17_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
4432 T17_ = X5BX5D___nilcheck_1495((&(*map).sets), targetSetIndex);
4433 excl__reorder_264(T17_, ((NI) (targetIndex)));
4434 T18_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
4435 T18_ = X5BX5D___nilcheck_1495((&(*map).sets), assignedSetIndex);
4436 incl__pureZcollectionsZintsets_55(T18_, ((NI) (targetIndex)));
4437 X5BX5Deq___nilcheck_584((&(*map).setIndices), targetIndex, assignedSetIndex);
4438 }
4439 goto LA8_;
4440 LA15_: ;
4441 LA8_: ;
4442 }
N_NIMCALL(NIM_BOOL,contains__nilcheck_6168)4443 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__nilcheck_6168)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key) {
4444 NIM_BOOL result;
4445 { result = (NIM_BOOL)0;
4446 result = hasKey__nilcheck_1977(t, key);
4447 goto BeforeRet_;
4448 }BeforeRet_: ;
4449 return result;
4450 }
N_NIMCALL(void,checkAsgn__nilcheck_6062)4451 N_LIB_PRIVATE N_NIMCALL(void, checkAsgn__nilcheck_6062)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* target, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* assigned, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4452 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T6_;
4453 {
4454 if (!!(((*assigned).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA3_;
4455 check__nilcheck_227(assigned, ctx, map, Result);
4456 }
4457 goto LA1_;
4458 LA3_: ;
4459 {
4460 (*Result).nilability = 0;
4461 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
4462 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
4463 (*Result).nilability = typeNilability__nilcheck_4049((*target).typ);
4464 unsureAsgnRef((void**) (&(*Result).map), map);
4465 }
4466 LA1_: ;
4467 nimZeroMem((void*)(&T6_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4468 check__nilcheck_227(target, ctx, map, (&T6_));
4469 (void)(T6_);
4470 {
4471 if (!((*Result).map == 0)) goto LA9_;
4472 unsureAsgnRef((void**) (&(*Result).map), map);
4473 }
4474 LA9_: ;
4475 {
4476 NIM_BOOL T13_;
4477 NIM_BOOL T15_;
4478 NI16 t;
4479 T13_ = (NIM_BOOL)0;
4480 T13_ = ((*target).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3) || (*target).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45));
4481 if (T13_) goto LA14_;
4482 T15_ = (NIM_BOOL)0;
4483 T15_ = ((*target).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42));
4484 if (!(T15_)) goto LA16_;
4485 T15_ = ((nkLiterals__ast_3029[(NU)((*(*target)._kind_6.sons->data[((NI) 1)]).kind)>>3] &(1U<<((NU)((*(*target)._kind_6.sons->data[((NI) 1)]).kind)&7U)))!=0);
4486 LA16_: ;
4487 T13_ = T15_;
4488 LA14_: ;
4489 if (!T13_) goto LA17_;
4490 t = index__nilcheck_1932(ctx, target);
4491 move__nilcheck_3682(ctx, map, target, assigned);
4492 switch ((*assigned).kind) {
4493 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
4494 {
4495 store__nilcheck_2666((*Result).map, ctx, t, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3), ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), (*target).info, target);
4496 }
4497 break;
4498 default:
4499 {
4500 store__nilcheck_2666((*Result).map, ctx, t, (*Result).nilability, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), (*target).info, target);
4501 moveOutDependants__nilcheck_3476(ctx, map, target);
4502 storeDependants__nilcheck_3610(ctx, map, target, ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2));
4503 {
4504 if (!((*assigned).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38) || (*assigned).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160))) goto LA23_;
4505 {
4506 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** element;
4507 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA* value;
4508 NI i;
4509 NI L;
4510 NI T26_;
4511 element = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
4512 value = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA*)0;
4513 i = ((NI) 0);
4514 T26_ = ((*Result).elements ? (*Result).elements->Sup.len : 0);
4515 L = T26_;
4516 {
4517 while (1) {
4518 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elementNode;
4519 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T29_;
4520 tyArray__jlWPjgtbdjE069arIWHC9c9bg T30_;
4521 if (!(i < L)) goto LA28;
4522 element = &(*Result).elements->data[i].Field0;
4523 value = (&(*Result).elements->data[i].Field1);
4524 nimZeroMem((void*)T29_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4525 nimZeroMem((void*)T30_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
4526 T30_[0] = target;
4527 T29_[0] = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65), T30_, 1);
4528 T29_[1] = (*element);
4529 elementNode = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45), T29_, 2);
4530 {
4531 NI T33_;
4532 NIM_BOOL T34_;
4533 NI16 elementIndex;
4534 T33_ = (NI)0;
4535 T33_ = symbol__nilcheck_1210(elementNode);
4536 T34_ = (NIM_BOOL)0;
4537 T34_ = contains__nilcheck_6168((*ctx).symbolIndices, T33_);
4538 if (!T34_) goto LA35_;
4539 elementIndex = index__nilcheck_1932(ctx, elementNode);
4540 store__nilcheck_2666((*Result).map, ctx, elementIndex, (*value), ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), (*target).info, elementNode);
4541 }
4542 LA35_: ;
4543 i += ((NI) 1);
4544 } LA28: ;
4545 }
4546 }
4547 }
4548 LA23_: ;
4549 }
4550 break;
4551 }
4552 }
4553 LA17_: ;
4554 }
N_NIMCALL(void,checkFor__nilcheck_6252)4555 N_LIB_PRIVATE N_NIMCALL(void, checkFor__nilcheck_6252)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4556 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* m;
4557 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map0;
4558 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T1_;
4559 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ check2;
4560 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map2;
4561 (*Result).nilability = 0;
4562 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
4563 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
4564 m = copyMap__nilcheck_4039(map);
4565 map0 = copyMap__nilcheck_4039(map);
4566 nimZeroMem((void*)(&T1_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4567 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 2)], ctx, map, (&T1_));
4568 m = copyMap__nilcheck_4039(T1_.map);
4569 {
4570 NI16 T6_;
4571 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T7_;
4572 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA4_;
4573 T6_ = (NI16)0;
4574 T6_ = index__nilcheck_1932(ctx, (*n)._kind_6.sons->data[((NI) 0)]);
4575 T7_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
4576 T7_ = typeNilability__nilcheck_4049((*(*n)._kind_6.sons->data[((NI) 0)]).typ);
4577 store__nilcheck_2666(m, ctx, T6_, T7_, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), (*(*n)._kind_6.sons->data[((NI) 0)]).info, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
4578 }
4579 LA4_: ;
4580 nimZeroMem((void*)(&check2), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4581 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 2)], ctx, m, (&check2));
4582 map2 = check2.map;
4583 unsureAsgnRef((void**) (&(*Result).map), union__nilcheck_5848(ctx, map0, m));
4584 unsureAsgnRef((void**) (&(*Result).map), union__nilcheck_5848(ctx, (*Result).map, map2));
4585 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
4586 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextSymId__ast_3132)4587 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
4588 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
4589 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
4590 (*x).symId += ((NI) 1);
4591 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
4592 result.module = (*x).module;
4593 result.item = (*x).symId;
4594 return result;
4595 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextTypeId__ast_3151)4596 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
4597 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
4598 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
4599 (*x).typeId_0 += ((NI) 1);
4600 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
4601 result.module = (*x).module;
4602 result.item = (*x).typeId_0;
4603 return result;
4604 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,infix__nilcheck_6332)4605 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, infix__nilcheck_6332)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* l, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic) {
4606 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4607 NimStringDesc* name;
4608 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
4609 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op;
4610 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T5_;
4611 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T6_;
4612 tyArray__T6RKPw8xfAeNaoei9aZGzXg T7_;
4613 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T8_;
4614 result = NIM_NIL;
4615 switch (magic) {
4616 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 87):
4617 {
4618 name = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_41));
4619 }
4620 break;
4621 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 109):
4622 {
4623 name = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_42));
4624 }
4625 break;
4626 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110):
4627 {
4628 name = copyString(((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_43));
4629 }
4630 break;
4631 default:
4632 {
4633 name = ((NimStringDesc*) NIM_NIL);
4634 }
4635 break;
4636 }
4637 cache = newIdentCache__idents_152();
4638 T5_ = NIM_NIL;
4639 T5_ = getIdent__idents_143(cache, name);
4640 T6_ = nextSymId__ast_3132((*ctx).idgen);
4641 op = newSym__ast_3445(((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8), T5_, T6_, ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), (*r).info, 0);
4642 (*op).magic = magic;
4643 nimZeroMem((void*)T7_, sizeof(tyArray__T6RKPw8xfAeNaoei9aZGzXg));
4644 T7_[0] = newSymNode__ast_3719(op, (*r).info);
4645 T7_[1] = l;
4646 T7_[2] = r;
4647 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29), T7_, 3);
4648 T8_ = nextTypeId__ast_3151((*ctx).idgen);
4649 asgnRef((void**) (&(*result).typ), newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1), T8_, ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
4650 return result;
4651 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,infixEq__nilcheck_6356)4652 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, infixEq__nilcheck_6356)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* l, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r) {
4653 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4654 result = NIM_NIL;
4655 result = infix__nilcheck_6332(ctx, l, r, ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 87));
4656 return result;
4657 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,infixOr__nilcheck_6361)4658 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, infixOr__nilcheck_6361)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* l, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r) {
4659 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4660 result = NIM_NIL;
4661 result = infix__nilcheck_6332(ctx, l, r, ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110));
4662 return result;
4663 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,prefixNot__nilcheck_6350)4664 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, prefixNot__nilcheck_6350)(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node) {
4665 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
4666 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
4667 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op;
4668 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T1_;
4669 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T2_;
4670 tyArray__AB6yfoUgfWM2NtGe9bzkCmw T3_;
4671 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T4_;
4672 result = NIM_NIL;
4673 cache = newIdentCache__idents_152();
4674 T1_ = NIM_NIL;
4675 T1_ = getIdent__idents_143(cache, ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_44));
4676 T2_ = nextSymId__ast_3132((*ctx).idgen);
4677 op = newSym__ast_3445(((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8), T1_, T2_, ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), (*node).info, 0);
4678 (*op).magic = ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 96);
4679 nimZeroMem((void*)T3_, sizeof(tyArray__AB6yfoUgfWM2NtGe9bzkCmw));
4680 T3_[0] = newSymNode__ast_3719(op, (*node).info);
4681 T3_[1] = node;
4682 result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30), T3_, 2);
4683 T4_ = nextTypeId__ast_3151((*ctx).idgen);
4684 asgnRef((void**) (&(*result).typ), newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1), T4_, ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
4685 return result;
4686 }
N_NIMCALL(void,checkCase__nilcheck_6366)4687 N_LIB_PRIVATE N_NIMCALL(void, checkCase__nilcheck_6366)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4688 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* base;
4689 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
4690 (*Result).nilability = 0;
4691 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
4692 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
4693 base = (*n)._kind_6.sons->data[((NI) 0)];
4694 unsureAsgnRef((void**) (&(*Result).map), copyMap__nilcheck_4039(map));
4695 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
4696 a = NIM_NIL;
4697 {
4698 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
4699 child = NIM_NIL;
4700 {
4701 NI i;
4702 NI colontmp_;
4703 NI i_2;
4704 i = (NI)0;
4705 colontmp_ = (NI)0;
4706 colontmp_ = safeLen__ast_3191(n);
4707 i_2 = ((NI) 0);
4708 {
4709 while (1) {
4710 if (!(i_2 < colontmp_)) goto LA4;
4711 i = i_2;
4712 child = (*n)._kind_6.sons->data[i];
4713 {
4714 switch ((*child).kind) {
4715 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
4716 {
4717 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branchBase;
4718 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* code;
4719 NI T12_;
4720 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* test;
4721 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* conditionMap;
4722 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* T18_;
4723 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ newCheck;
4724 {
4725 NI T9_;
4726 T9_ = (NI)0;
4727 T9_ = len__ast_3198(child);
4728 if (!(T9_ < ((NI) 2))) goto LA10_;
4729 goto LA5;
4730 }
4731 LA10_: ;
4732 branchBase = (*child)._kind_6.sons->data[((NI) 0)];
4733 T12_ = (NI)0;
4734 T12_ = len__ast_3198(child);
4735 code = (*child)._kind_6.sons->data[(NI)(T12_ - ((NI) 1))];
4736 test = infixEq__nilcheck_6356(ctx, base, branchBase);
4737 {
4738 if (!(a == 0)) goto LA15_;
4739 a = test;
4740 }
4741 goto LA13_;
4742 LA15_: ;
4743 {
4744 a = infixOr__nilcheck_6361(ctx, a, test);
4745 }
4746 LA13_: ;
4747 T18_ = NIM_NIL;
4748 T18_ = copyMap__nilcheck_4039(map);
4749 conditionMap = checkCondition__nilcheck_231(test, ctx, T18_, NIM_FALSE, NIM_FALSE);
4750 nimZeroMem((void*)(&newCheck), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4751 checkBranch__nilcheck_1216(code, ctx, conditionMap, (&newCheck));
4752 unsureAsgnRef((void**) (&(*Result).map), union__nilcheck_5848(ctx, (*Result).map, newCheck.map));
4753 {
4754 if (!((*Result).nilability == newCheck.nilability)) goto LA21_;
4755 (*Result).nilability = (*Result).nilability;
4756 }
4757 goto LA19_;
4758 LA21_: ;
4759 {
4760 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
4761 }
4762 LA19_: ;
4763 }
4764 break;
4765 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
4766 {
4767 }
4768 break;
4769 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
4770 {
4771 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* mapElse;
4772 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T26_;
4773 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* T27_;
4774 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ newCheck_2;
4775 T26_ = NIM_NIL;
4776 T26_ = prefixNot__nilcheck_6350(ctx, a);
4777 T27_ = NIM_NIL;
4778 T27_ = copyMap__nilcheck_4039(map);
4779 mapElse = checkCondition__nilcheck_231(T26_, ctx, T27_, NIM_FALSE, NIM_FALSE);
4780 nimZeroMem((void*)(&newCheck_2), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4781 checkBranch__nilcheck_1216((*child)._kind_6.sons->data[((NI) 0)], ctx, mapElse, (&newCheck_2));
4782 unsureAsgnRef((void**) (&(*Result).map), union__nilcheck_5848(ctx, (*Result).map, newCheck_2.map));
4783 {
4784 if (!((*Result).nilability == newCheck_2.nilability)) goto LA30_;
4785 (*Result).nilability = (*Result).nilability;
4786 }
4787 goto LA28_;
4788 LA30_: ;
4789 {
4790 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2);
4791 }
4792 LA28_: ;
4793 }
4794 break;
4795 default:
4796 {
4797 }
4798 break;
4799 }
4800 } LA5: ;
4801 i_2 += ((NI) 1);
4802 } LA4: ;
4803 }
4804 }
4805 }
4806 }
N_NIMCALL(void,checkReturn__nilcheck_6207)4807 N_LIB_PRIVATE N_NIMCALL(void, checkReturn__nilcheck_6207)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4808 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 0)], ctx, map, Result);
4809 store__nilcheck_2666((*Result).map, ctx, ((NI16) 0), (*Result).nilability, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), (*n).info, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
4810 }
N_NIMCALL(void,checkBracketExpr__nilcheck_5819)4811 N_LIB_PRIVATE N_NIMCALL(void, checkBracketExpr__nilcheck_5819)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4812 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T1_;
4813 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T2_;
4814 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 0)], ctx, map, Result);
4815 handleNilability__nilcheck_5770((*Result), (*n)._kind_6.sons->data[((NI) 0)], ctx, map);
4816 nimZeroMem((void*)(&T1_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4817 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 1)], ctx, (*Result).map, (&T1_));
4818 (*Result).nilability = T1_.nilability;
4819 unsureAsgnRef((void**) (&(*Result).map), T1_.map);
4820 unsureAsgnRef((void**) (&(*Result).elements), T1_.elements);
4821 nimZeroMem((void*)(&T2_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4822 checkRefExpr__nilcheck_5782(n, ctx, (*Result), (&T2_));
4823 (*Result).nilability = T2_.nilability;
4824 unsureAsgnRef((void**) (&(*Result).map), T2_.map);
4825 unsureAsgnRef((void**) (&(*Result).elements), T2_.elements);
4826 }
N_NIMCALL(void,checkTry__nilcheck_6403)4827 N_LIB_PRIVATE N_NIMCALL(void, checkTry__nilcheck_6403)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4828 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* newMap;
4829 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* currentMap;
4830 NIM_BOOL canRaise;
4831 NIM_BOOL hasFinally;
4832 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ tryCheck;
4833 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* afterTryMap;
4834 newMap = copyMap__nilcheck_4039(map);
4835 currentMap = map;
4836 canRaise = NIM_FALSE;
4837 hasFinally = NIM_FALSE;
4838 nimZeroMem((void*)(&tryCheck), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4839 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 0)], ctx, currentMap, (&tryCheck));
4840 newMap = union__nilcheck_5848(ctx, currentMap, tryCheck.map);
4841 canRaise = canRaise__ast_5088((*n)._kind_6.sons->data[((NI) 0)]);
4842 afterTryMap = newMap;
4843 {
4844 NI a;
4845 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
4846 a = (NI)0;
4847 branch = NIM_NIL;
4848 {
4849 NI i;
4850 NI colontmp_;
4851 NI i_2;
4852 i = (NI)0;
4853 colontmp_ = (NI)0;
4854 colontmp_ = safeLen__ast_3191(n);
4855 i_2 = ((NI) 0);
4856 {
4857 while (1) {
4858 if (!(i_2 < colontmp_)) goto LA4;
4859 i = i_2;
4860 a = i;
4861 branch = (*n)._kind_6.sons->data[i];
4862 {
4863 if (!(((NI) 0) < a)) goto LA7_;
4864 switch ((*branch).kind) {
4865 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107):
4866 {
4867 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ childCheck;
4868 newMap = union__nilcheck_5848(ctx, afterTryMap, newMap);
4869 nimZeroMem((void*)(&childCheck), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4870 check__nilcheck_227((*branch)._kind_6.sons->data[((NI) 0)], ctx, newMap, (&childCheck));
4871 newMap = union__nilcheck_5848(ctx, newMap, childCheck.map);
4872 hasFinally = NIM_TRUE;
4873 }
4874 break;
4875 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87):
4876 {
4877 {
4878 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ childCheck_2;
4879 NI T15_;
4880 if (!canRaise) goto LA13_;
4881 nimZeroMem((void*)(&childCheck_2), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4882 T15_ = (NI)0;
4883 T15_ = len__ast_3198(branch);
4884 check__nilcheck_227((*branch)._kind_6.sons->data[(NI)(T15_ - ((NI) 1))], ctx, newMap, (&childCheck_2));
4885 newMap = union__nilcheck_5848(ctx, newMap, childCheck_2.map);
4886 }
4887 LA13_: ;
4888 }
4889 break;
4890 default:
4891 {
4892 }
4893 break;
4894 }
4895 }
4896 LA7_: ;
4897 i_2 += ((NI) 1);
4898 } LA4: ;
4899 }
4900 }
4901 }
4902 {
4903 if (!!(hasFinally)) goto LA19_;
4904 newMap = union__nilcheck_5848(ctx, afterTryMap, newMap);
4905 }
4906 LA19_: ;
4907 (*Result).nilability = 0;
4908 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
4909 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
4910 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
4911 unsureAsgnRef((void**) (&(*Result).map), newMap);
4912 }
N_NIMCALL(void,checkWhile__nilcheck_6269)4913 N_LIB_PRIVATE N_NIMCALL(void, checkWhile__nilcheck_6269)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4914 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* m;
4915 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map0;
4916 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T1_;
4917 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map1;
4918 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ check2;
4919 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map2;
4920 (*Result).nilability = 0;
4921 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
4922 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
4923 m = checkCondition__nilcheck_231((*n)._kind_6.sons->data[((NI) 0)], ctx, map, NIM_FALSE, NIM_FALSE);
4924 map0 = copyMap__nilcheck_4039(map);
4925 nimZeroMem((void*)(&T1_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4926 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 1)], ctx, m, (&T1_));
4927 m = T1_.map;
4928 map1 = copyMap__nilcheck_4039(m);
4929 nimZeroMem((void*)(&check2), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
4930 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 1)], ctx, m, (&check2));
4931 map2 = check2.map;
4932 unsureAsgnRef((void**) (&(*Result).map), union__nilcheck_5848(ctx, map0, map1));
4933 unsureAsgnRef((void**) (&(*Result).map), union__nilcheck_5848(ctx, (*Result).map, map2));
4934 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
4935 }
N_NIMCALL(void,check__nilcheck_227)4936 N_LIB_PRIVATE N_NIMCALL(void, check__nilcheck_227)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map, tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ* Result) {
4937 (*Result).nilability = 0;
4938 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
4939 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
4940 switch ((*n).kind) {
4941 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
4942 {
4943 NI16 T2_;
4944 (*Result).nilability = 0;
4945 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
4946 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
4947 T2_ = (NI16)0;
4948 T2_ = index__nilcheck_1932(ctx, n);
4949 (*Result).nilability = X5BX5D___nilcheck_865(map, T2_);
4950 unsureAsgnRef((void**) (&(*Result).map), map);
4951 }
4952 break;
4953 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
4954 {
4955 {
4956 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* callSym;
4957 if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA6_;
4958 callSym = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
4959 switch ((*callSym).magic) {
4960 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 109):
4961 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110):
4962 {
4963 checkInfix__nilcheck_6280(n, ctx, map, Result);
4964 }
4965 break;
4966 case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 143):
4967 {
4968 checkIsNil__nilcheck_6323(n, ctx, map, NIM_FALSE, Result);
4969 }
4970 break;
4971 default:
4972 {
4973 checkCall__nilcheck_4051(n, ctx, map, Result);
4974 }
4975 break;
4976 }
4977 }
4978 goto LA4_;
4979 LA6_: ;
4980 {
4981 checkCall__nilcheck_4051(n, ctx, map, Result);
4982 }
4983 LA4_: ;
4984 }
4985 break;
4986 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
4987 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
4988 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
4989 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34):
4990 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 33):
4991 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
4992 {
4993 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 1)], ctx, map, Result);
4994 }
4995 break;
4996 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
4997 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
4998 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 68):
4999 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 69):
5000 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 70):
5001 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41):
5002 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39):
5003 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37):
5004 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160):
5005 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155):
5006 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
5007 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
5008 {
5009 unsureAsgnRef((void**) (&(*Result).map), map);
5010 {
5011 tySequence__sHfymmN9aVTQTLnu1B0wi3w* elements;
5012 if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160))) goto LA16_;
5013 elements = NIM_NIL;
5014 {
5015 NI i;
5016 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
5017 i = (NI)0;
5018 child = NIM_NIL;
5019 {
5020 NI i_2;
5021 NI colontmp_;
5022 NI i_3;
5023 i_2 = (NI)0;
5024 colontmp_ = (NI)0;
5025 colontmp_ = safeLen__ast_3191(n);
5026 i_3 = ((NI) 0);
5027 {
5028 while (1) {
5029 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T22_;
5030 if (!(i_3 < colontmp_)) goto LA21;
5031 i_2 = i_3;
5032 i = i_2;
5033 child = (*n)._kind_6.sons->data[i_2];
5034 nimZeroMem((void*)(&T22_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
5035 check__nilcheck_227(child, ctx, (*Result).map, (&T22_));
5036 (*Result).nilability = T22_.nilability;
5037 unsureAsgnRef((void**) (&(*Result).map), T22_.map);
5038 unsureAsgnRef((void**) (&(*Result).elements), T22_.elements);
5039 {
5040 if (!(((NI) 0) < i)) goto LA25_;
5041 {
5042 tyTuple__KYzEow2par19cjmb9bTX4xkg T31_;
5043 NI T32_;
5044 if (!((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA29_;
5045 nimZeroMem((void*)(&T31_), sizeof(tyTuple__KYzEow2par19cjmb9bTX4xkg));
5046 T31_.Field0 = (*child)._kind_6.sons->data[((NI) 0)];
5047 T31_.Field1 = (*Result).nilability;
5048 elements = (tySequence__sHfymmN9aVTQTLnu1B0wi3w*) incrSeqV3((TGenericSeq*)(elements), (&NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_));
5049 T32_ = elements->Sup.len++;
5050 asgnRef((void**) (&elements->data[T32_].Field0), T31_.Field0);
5051 elements->data[T32_].Field1 = T31_.Field1;
5052 }
5053 LA29_: ;
5054 }
5055 LA25_: ;
5056 i_3 += ((NI) 1);
5057 } LA21: ;
5058 }
5059 }
5060 }
5061 genericSeqAssign((&(*Result).elements), elements, (&NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_));
5062 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
5063 }
5064 goto LA14_;
5065 LA16_: ;
5066 {
5067 {
5068 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_2;
5069 child_2 = NIM_NIL;
5070 {
5071 NI i_4;
5072 NI colontmp__2;
5073 NI i_5;
5074 i_4 = (NI)0;
5075 colontmp__2 = (NI)0;
5076 colontmp__2 = safeLen__ast_3191(n);
5077 i_5 = ((NI) 0);
5078 {
5079 while (1) {
5080 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T38_;
5081 if (!(i_5 < colontmp__2)) goto LA37;
5082 i_4 = i_5;
5083 child_2 = (*n)._kind_6.sons->data[i_4];
5084 nimZeroMem((void*)(&T38_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
5085 check__nilcheck_227(child_2, ctx, (*Result).map, (&T38_));
5086 (*Result).nilability = T38_.nilability;
5087 unsureAsgnRef((void**) (&(*Result).map), T38_.map);
5088 unsureAsgnRef((void**) (&(*Result).elements), T38_.elements);
5089 i_5 += ((NI) 1);
5090 } LA37: ;
5091 }
5092 }
5093 }
5094 }
5095 LA14_: ;
5096 }
5097 break;
5098 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
5099 {
5100 checkDotExpr__nilcheck_5813(n, ctx, map, Result);
5101 }
5102 break;
5103 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47):
5104 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65):
5105 {
5106 checkDeref__nilcheck_5775(n, ctx, map, Result);
5107 }
5108 break;
5109 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
5110 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
5111 {
5112 check__nilcheck_227((*n)._kind_6.sons->data[((NI) 0)], ctx, map, Result);
5113 }
5114 break;
5115 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92):
5116 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48):
5117 {
5118 checkIf__nilcheck_6213(n, ctx, map, Result);
5119 }
5120 break;
5121 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73):
5122 {
5123 checkAsgn__nilcheck_6062((*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)], ctx, map, Result);
5124 }
5125 break;
5126 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99):
5127 {
5128 unsureAsgnRef((void**) (&(*Result).map), map);
5129 {
5130 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_3;
5131 child_3 = NIM_NIL;
5132 {
5133 NI i_6;
5134 NI colontmp__3;
5135 NI i_7;
5136 i_6 = (NI)0;
5137 colontmp__3 = (NI)0;
5138 colontmp__3 = safeLen__ast_3191(n);
5139 i_7 = ((NI) 0);
5140 {
5141 while (1) {
5142 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T49_;
5143 if (!(i_7 < colontmp__3)) goto LA48;
5144 i_6 = i_7;
5145 child_3 = (*n)._kind_6.sons->data[i_6];
5146 nimZeroMem((void*)(&T49_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
5147 checkAsgn__nilcheck_6062((*child_3)._kind_6.sons->data[((NI) 0)], (*child_3)._kind_6.sons->data[((NI) 2)], ctx, (*Result).map, (&T49_));
5148 (*Result).nilability = T49_.nilability;
5149 unsureAsgnRef((void**) (&(*Result).map), T49_.map);
5150 unsureAsgnRef((void**) (&(*Result).elements), T49_.elements);
5151 i_7 += ((NI) 1);
5152 } LA48: ;
5153 }
5154 }
5155 }
5156 }
5157 break;
5158 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 94):
5159 {
5160 checkFor__nilcheck_6252(n, ctx, map, Result);
5161 }
5162 break;
5163 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97):
5164 {
5165 checkCase__nilcheck_6366(n, ctx, map, Result);
5166 }
5167 break;
5168 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109):
5169 {
5170 checkReturn__nilcheck_6207(n, ctx, map, Result);
5171 }
5172 break;
5173 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42):
5174 {
5175 checkBracketExpr__nilcheck_5819(n, ctx, map, Result);
5176 }
5177 break;
5178 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106):
5179 {
5180 checkTry__nilcheck_6403(n, ctx, map, Result);
5181 }
5182 break;
5183 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
5184 {
5185 checkWhile__nilcheck_6269(n, ctx, map, Result);
5186 }
5187 break;
5188 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
5189 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
5190 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
5191 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79):
5192 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
5193 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 80):
5194 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
5195 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 82):
5196 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83):
5197 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51):
5198 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
5199 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
5200 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101):
5201 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 102):
5202 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 121):
5203 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 116):
5204 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 118):
5205 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 90):
5206 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
5207 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 158):
5208 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 132):
5209 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
5210 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122):
5211 {
5212 (*Result).nilability = 0;
5213 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
5214 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
5215 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3);
5216 unsureAsgnRef((void**) (&(*Result).map), map);
5217 }
5218 break;
5219 default:
5220 {
5221 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* elementMap;
5222 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ elementCheck;
5223 elementMap = copyMap__nilcheck_4039(map);
5224 nimZeroMem((void*)(&elementCheck), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
5225 elementCheck.map = elementMap;
5226 {
5227 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* element;
5228 element = NIM_NIL;
5229 {
5230 NI i_8;
5231 NI colontmp__4;
5232 NI i_9;
5233 i_8 = (NI)0;
5234 colontmp__4 = (NI)0;
5235 colontmp__4 = safeLen__ast_3191(n);
5236 i_9 = ((NI) 0);
5237 {
5238 while (1) {
5239 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ T62_;
5240 if (!(i_9 < colontmp__4)) goto LA61;
5241 i_8 = i_9;
5242 element = (*n)._kind_6.sons->data[i_8];
5243 nimZeroMem((void*)(&T62_), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
5244 check__nilcheck_227(element, ctx, elementCheck.map, (&T62_));
5245 elementCheck.nilability = T62_.nilability;
5246 elementCheck.map = T62_.map;
5247 elementCheck.elements = T62_.elements;
5248 i_9 += ((NI) 1);
5249 } LA61: ;
5250 }
5251 }
5252 }
5253 (*Result).nilability = 0;
5254 unsureAsgnRef((void**)&(*Result).map, NIM_NIL);
5255 unsureAsgnRef((void**)&(*Result).elements, NIM_NIL);
5256 (*Result).nilability = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3);
5257 unsureAsgnRef((void**) (&(*Result).map), elementCheck.map);
5258 }
5259 break;
5260 }
5261 }
N_INLINE(NIM_BOOL,contains__nilcheck_9533)5262 static N_INLINE(NIM_BOOL, contains__nilcheck_9533)(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw s, NI16 value) {
5263 NIM_BOOL result;
5264 NIM_BOOL T1_;
5265 result = (NIM_BOOL)0;
5266 T1_ = (NIM_BOOL)0;
5267 T1_ = lteq___nilcheck_176(s.a, value);
5268 if (!(T1_)) goto LA2_;
5269 T1_ = lteq___nilcheck_176(value, s.b);
5270 LA2_: ;
5271 result = T1_;
5272 return result;
5273 }
N_INLINE(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw,dotdot___nilcheck_9461)5274 static N_INLINE(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw, dotdot___nilcheck_9461)(NI16 a, NI16 b) {
5275 tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw result;
5276 nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw));
5277 nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw));
5278 result.a = a;
5279 result.b = b;
5280 return result;
5281 }
N_NIMCALL(NI16,low__nilcheck_9436)5282 N_LIB_PRIVATE N_NIMCALL(NI16, low__nilcheck_9436)(tySequence__tFZSZSomBEZ9bmg1CrY7ojA* a) {
5283 NI16 result;
5284 result = (NI16)0;
5285 result = ((NI16) 0);
5286 return result;
5287 }
N_NIMCALL(NI16,high__nilcheck_9444)5288 N_LIB_PRIVATE N_NIMCALL(NI16, high__nilcheck_9444)(tySequence__tFZSZSomBEZ9bmg1CrY7ojA* a) {
5289 NI16 result;
5290 NI T1_;
5291 result = (NI16)0;
5292 T1_ = ((a ? a->Sup.len : 0)-1);
5293 result = ((NI16) (T1_));
5294 return result;
5295 }
N_NIMCALL(void,checkResult__nilcheck_6927)5296 N_LIB_PRIVATE N_NIMCALL(void, checkResult__nilcheck_6927)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* ctx, tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map) {
5297 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA resultNilability;
5298 resultNilability = X5BX5D___nilcheck_865(map, ((NI16) 0));
5299 switch (resultNilability) {
5300 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3):
5301 {
5302 liMessage__msgs_1118((*ctx).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 58), ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_45), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_46, NIM_FALSE);
5303 }
5304 break;
5305 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 2):
5306 {
5307 liMessage__msgs_1118((*ctx).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 58), ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_47), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_48, NIM_FALSE);
5308 }
5309 break;
5310 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 4):
5311 {
5312 liMessage__msgs_1118((*ctx).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 58), ((NimStringDesc*) &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_49), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_50, NIM_FALSE);
5313 }
5314 break;
5315 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1):
5316 case ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 0):
5317 {
5318 }
5319 break;
5320 }
5321 }
N_NIMCALL(void,checkNil__nilcheck_9345)5322 N_LIB_PRIVATE N_NIMCALL(void, checkNil__nilcheck_9345)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen) {
5323 NU16 line;
5324 NI fileIndex;
5325 NimStringDesc* filename;
5326 tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* context;
5327 tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA* T1_;
5328 tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw* map;
5329 NI T2_;
5330 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T18_;
5331 tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ res;
5332 NIM_BOOL canCheck;
5333 NI16 T26_;
5334 NI16 T27_;
5335 tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw T28_;
5336 line = (*(*s).ast).info.line;
5337 fileIndex = ((NI) ((*(*s).ast).info.fileIndex));
5338 filename = copyString((*conf).m.fileInfos->data[fileIndex].fullPath);
5339 T1_ = NIM_NIL;
5340 T1_ = (tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA*) newObj((&NTInilcheckercontext__SHCn57BjQ6LjeAGfBicCFg_), sizeof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA));
5341 asgnRef((void**) (&(*T1_).config), conf);
5342 asgnRef((void**) (&(*T1_).idgen), idgen);
5343 context = T1_;
5344 preVisit__nilcheck_8796(context, s, body, conf);
5345 T2_ = (NI)0;
5346 T2_ = len__nilcheck_9409((*context).symbolIndices);
5347 map = newNilMap__nilcheck_237(((tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*) NIM_NIL), T2_);
5348 {
5349 NI i;
5350 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
5351 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
5352 NI i_2;
5353 NI L;
5354 NI T4_;
5355 i = (NI)0;
5356 child = NIM_NIL;
5357 colontmp_ = NIM_NIL;
5358 colontmp_ = (*(*(*s).typ).n)._kind_6.sons;
5359 i_2 = ((NI) 0);
5360 T4_ = (colontmp_ ? colontmp_->Sup.len : 0);
5361 L = T4_;
5362 {
5363 while (1) {
5364 if (!(i_2 < L)) goto LA6;
5365 i = i_2;
5366 child = colontmp_->data[i_2];
5367 {
5368 {
5369 NI16 T16_;
5370 tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA T17_;
5371 if (!(((NI) 0) < i)) goto LA10_;
5372 {
5373 if (!!(((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA14_;
5374 goto LA7;
5375 }
5376 LA14_: ;
5377 T16_ = (NI16)0;
5378 T16_ = index__nilcheck_1932(context, child);
5379 T17_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
5380 T17_ = typeNilability__nilcheck_4049((*child).typ);
5381 store__nilcheck_2666(map, context, T16_, T17_, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 0), (*child).info, child);
5382 }
5383 LA10_: ;
5384 } LA7: ;
5385 i_2 += ((NI) 1);
5386 } LA6: ;
5387 }
5388 }
5389 T18_ = (tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA)0;
5390 {
5391 NIM_BOOL T21_;
5392 T21_ = (NIM_BOOL)0;
5393 T21_ = !(((*(*s).typ).sons->data[((NI) 0)] == 0));
5394 if (!(T21_)) goto LA22_;
5395 T21_ = ((*(*(*s).typ).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22));
5396 LA22_: ;
5397 if (!T21_) goto LA23_;
5398 T18_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 3);
5399 }
5400 goto LA19_;
5401 LA23_: ;
5402 {
5403 T18_ = ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1);
5404 }
5405 LA19_: ;
5406 store__nilcheck_2666(map, context, ((NI16) 0), T18_, ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 5), (*(*s).ast).info, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
5407 nimZeroMem((void*)(&res), sizeof(tyObject_Check__uKZb3vBzej9aQLORQ5CAgWQ));
5408 check__nilcheck_227(body, context, map, (&res));
5409 T26_ = (NI16)0;
5410 T26_ = low__nilcheck_9436((*res.map).history);
5411 T27_ = (NI16)0;
5412 T27_ = high__nilcheck_9444((*res.map).history);
5413 T28_ = dotdot___nilcheck_9461(T26_, T27_);
5414 canCheck = contains__nilcheck_9533(T28_, ((NI16) 0));
5415 {
5416 NIM_BOOL T31_;
5417 NIM_BOOL T32_;
5418 tySequence__RJ9cCbHDTKFvcxBv5qqeJbg** T35_;
5419 NI T36_;
5420 T31_ = (NIM_BOOL)0;
5421 T32_ = (NIM_BOOL)0;
5422 T32_ = (res.nilability == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1));
5423 if (!(T32_)) goto LA33_;
5424 T32_ = canCheck;
5425 LA33_: ;
5426 T31_ = T32_;
5427 if (!(T31_)) goto LA34_;
5428 T35_ = (tySequence__RJ9cCbHDTKFvcxBv5qqeJbg**)0;
5429 T35_ = X5BX5D___nilcheck_1191((&(*res.map).history), ((NI16) 0));
5430 T36_ = ((*T35_) ? (*T35_)->Sup.len : 0);
5431 T31_ = (T36_ <= ((NI) 1));
5432 LA34_: ;
5433 if (!T31_) goto LA37_;
5434 store__nilcheck_2666(res.map, context, ((NI16) 0), ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1), ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), (*(*s).ast).info, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
5435 }
5436 goto LA29_;
5437 LA37_: ;
5438 {
5439 {
5440 if (!(res.nilability == ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1))) goto LA42_;
5441 store__nilcheck_2666(res.map, context, ((NI16) 0), ((tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA) 1), ((tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA) 1), (*(*s).ast).info, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
5442 }
5443 LA42_: ;
5444 }
5445 LA29_: ;
5446 {
5447 NIM_BOOL T46_;
5448 NIM_BOOL T47_;
5449 T46_ = (NIM_BOOL)0;
5450 T47_ = (NIM_BOOL)0;
5451 T47_ = !(((*(*s).typ).sons->data[((NI) 0)] == 0));
5452 if (!(T47_)) goto LA48_;
5453 T47_ = ((*(*(*s).typ).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22));
5454 LA48_: ;
5455 T46_ = T47_;
5456 if (!(T46_)) goto LA49_;
5457 T46_ = (((*(*(*s).typ).sons->data[((NI) 0)]).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 17))&63U)))!=0);
5458 LA49_: ;
5459 if (!T46_) goto LA50_;
5460 checkResult__nilcheck_6927((*s).ast, context, res.map);
5461 }
5462 LA50_: ;
5463 }
N_NIMCALL(void,compiler_nilcheckDatInit000)5464 N_LIB_PRIVATE N_NIMCALL(void, compiler_nilcheckDatInit000)(void) {
5465 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_2_6[6];
5466 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_3_2[2];
5467 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_4_3[3];
5468 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_5_2[2];
5469 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_6_2[2];
5470 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_10_5[5];
5471 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_11_5[5];
5472 NI TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13;
5473 static char* NIM_CONST TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_12[5] = {
5474 "Parent",
5475 "Safe",
5476 "MaybeNil",
5477 "Nil",
5478 "Unreachable"};
5479 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_14_4[4];
5480 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_15_9[9];
5481 NI TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17;
5482 static char* NIM_CONST TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_16[9] = {
5483 "TArg",
5484 "TAssign",
5485 "TType",
5486 "TNil",
5487 "TVarArg",
5488 "TResult",
5489 "TSafe",
5490 "TPotentialAlias",
5491 "TDependant"};
5492 static TNimNode* TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_20_2[2];
5493 static TNimNode TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[50];
5494 NTInilcheckercontext58objecttype__FEwkSv10ehW9bMzwnvRrMwA_.size = sizeof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA);
5495 NTInilcheckercontext58objecttype__FEwkSv10ehW9bMzwnvRrMwA_.align = NIM_ALIGNOF(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA);
5496 NTInilcheckercontext58objecttype__FEwkSv10ehW9bMzwnvRrMwA_.kind = 18;
5497 NTInilcheckercontext58objecttype__FEwkSv10ehW9bMzwnvRrMwA_.base = 0;
5498 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_2_6[0] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[1];
5499 NTItable__mx89bZoYrm9bEaZ0GUM1pBOw_.size = sizeof(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw);
5500 NTItable__mx89bZoYrm9bEaZ0GUM1pBOw_.align = NIM_ALIGNOF(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw);
5501 NTItable__mx89bZoYrm9bEaZ0GUM1pBOw_.kind = 18;
5502 NTItable__mx89bZoYrm9bEaZ0GUM1pBOw_.base = 0;
5503 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_3_2[0] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[3];
5504 NTIkeyvaluepair__X9bWVAqRSgByRpQwn6owzEA_.size = sizeof(tyTuple__X9bWVAqRSgByRpQwn6owzEA);
5505 NTIkeyvaluepair__X9bWVAqRSgByRpQwn6owzEA_.align = NIM_ALIGNOF(tyTuple__X9bWVAqRSgByRpQwn6owzEA);
5506 NTIkeyvaluepair__X9bWVAqRSgByRpQwn6owzEA_.kind = 18;
5507 NTIkeyvaluepair__X9bWVAqRSgByRpQwn6owzEA_.base = 0;
5508 NTIkeyvaluepair__X9bWVAqRSgByRpQwn6owzEA_.flags = 1;
5509 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_4_3[0] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[5];
5510 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[5].kind = 1;
5511 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[5].offset = offsetof(tyTuple__X9bWVAqRSgByRpQwn6owzEA, Field0);
5512 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[5].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
5513 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[5].name = "Field0";
5514 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_4_3[1] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[6];
5515 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[6].kind = 1;
5516 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[6].offset = offsetof(tyTuple__X9bWVAqRSgByRpQwn6owzEA, Field1);
5517 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[6].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
5518 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[6].name = "Field1";
5519 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_4_3[2] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[7];
5520 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[7].kind = 1;
5521 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[7].offset = offsetof(tyTuple__X9bWVAqRSgByRpQwn6owzEA, Field2);
5522 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[7].typ = (&NTIint4954__kDPg4wXyR8DDyA0MeEjIsw_);
5523 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[7].name = "Field2";
5524 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[4].len = 3; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[4].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[4].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_4_3[0];
5525 NTIkeyvaluepair__X9bWVAqRSgByRpQwn6owzEA_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[4];
5526 NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_.size = sizeof(tySequence__dAjyAaabi52TN36Jp0fAXQ*);
5527 NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_.align = NIM_ALIGNOF(tySequence__dAjyAaabi52TN36Jp0fAXQ*);
5528 NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_.kind = 24;
5529 NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_.base = (&NTIkeyvaluepair__X9bWVAqRSgByRpQwn6owzEA_);
5530 NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_.marker = Marker_tySequence__dAjyAaabi52TN36Jp0fAXQ;
5531 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[3].kind = 1;
5532 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[3].offset = offsetof(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw, data);
5533 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[3].typ = (&NTIkeyvaluepairseq__dAjyAaabi52TN36Jp0fAXQ_);
5534 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[3].name = "data";
5535 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_3_2[1] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[8];
5536 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[8].kind = 1;
5537 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[8].offset = offsetof(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw, counter);
5538 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[8].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
5539 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[8].name = "counter";
5540 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[2].len = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[2].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[2].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_3_2[0];
5541 NTItable__mx89bZoYrm9bEaZ0GUM1pBOw_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[2];
5542 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[1].kind = 1;
5543 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[1].offset = offsetof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA, symbolIndices);
5544 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[1].typ = (&NTItable__mx89bZoYrm9bEaZ0GUM1pBOw_);
5545 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[1].name = "symbolIndices";
5546 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_2_6[1] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[9];
5547 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[9].kind = 1;
5548 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[9].offset = offsetof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA, expressions);
5549 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[9].typ = (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_);
5550 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[9].name = "expressions";
5551 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_2_6[2] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[10];
5552 NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_.size = sizeof(tySequence__0a6ZbC0zPSfUDYzqPnO68A*);
5553 NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_.align = NIM_ALIGNOF(tySequence__0a6ZbC0zPSfUDYzqPnO68A*);
5554 NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_.kind = 24;
5555 NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_.base = (&NTIpackedset__IhxwDBRi51nGrosBGFKcsA_);
5556 NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_.marker = Marker_tySequence__0a6ZbC0zPSfUDYzqPnO68A;
5557 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[10].kind = 1;
5558 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[10].offset = offsetof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA, dependants);
5559 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[10].typ = (&NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_);
5560 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[10].name = "dependants";
5561 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_2_6[3] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[11];
5562 NTIhashset__ylUTTG3LIabQ9bY9bfQ5vOwA_.size = sizeof(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA);
5563 NTIhashset__ylUTTG3LIabQ9bY9bfQ5vOwA_.align = NIM_ALIGNOF(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA);
5564 NTIhashset__ylUTTG3LIabQ9bY9bfQ5vOwA_.kind = 18;
5565 NTIhashset__ylUTTG3LIabQ9bY9bfQ5vOwA_.base = 0;
5566 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_5_2[0] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[13];
5567 NTIkeyvaluepair__n5CipyK3lOxrIaiLdb9bDLw_.size = sizeof(tyTuple__n5CipyK3lOxrIaiLdb9bDLw);
5568 NTIkeyvaluepair__n5CipyK3lOxrIaiLdb9bDLw_.align = NIM_ALIGNOF(tyTuple__n5CipyK3lOxrIaiLdb9bDLw);
5569 NTIkeyvaluepair__n5CipyK3lOxrIaiLdb9bDLw_.kind = 18;
5570 NTIkeyvaluepair__n5CipyK3lOxrIaiLdb9bDLw_.base = 0;
5571 NTIkeyvaluepair__n5CipyK3lOxrIaiLdb9bDLw_.flags = 1;
5572 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_6_2[0] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[15];
5573 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[15].kind = 1;
5574 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[15].offset = offsetof(tyTuple__n5CipyK3lOxrIaiLdb9bDLw, Field0);
5575 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[15].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
5576 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[15].name = "Field0";
5577 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_6_2[1] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[16];
5578 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[16].kind = 1;
5579 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[16].offset = offsetof(tyTuple__n5CipyK3lOxrIaiLdb9bDLw, Field1);
5580 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[16].typ = (&NTItlineinfo__WGx4rAexNXnczy1Avn646Q_);
5581 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[16].name = "Field1";
5582 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[14].len = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[14].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[14].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_6_2[0];
5583 NTIkeyvaluepair__n5CipyK3lOxrIaiLdb9bDLw_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[14];
5584 NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_.size = sizeof(tySequence__F43jf4nUkSAG8E9cfLj9aQoQ*);
5585 NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_.align = NIM_ALIGNOF(tySequence__F43jf4nUkSAG8E9cfLj9aQoQ*);
5586 NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_.kind = 24;
5587 NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_.base = (&NTIkeyvaluepair__n5CipyK3lOxrIaiLdb9bDLw_);
5588 NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_.marker = Marker_tySequence__F43jf4nUkSAG8E9cfLj9aQoQ;
5589 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[13].kind = 1;
5590 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[13].offset = offsetof(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA, data);
5591 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[13].typ = (&NTIkeyvaluepairseq__F43jf4nUkSAG8E9cfLj9aQoQ_);
5592 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[13].name = "data";
5593 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_5_2[1] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[17];
5594 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[17].kind = 1;
5595 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[17].offset = offsetof(tyObject_HashSet__ylUTTG3LIabQ9bY9bfQ5vOwA, counter);
5596 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[17].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
5597 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[17].name = "counter";
5598 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[12].len = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[12].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[12].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_5_2[0];
5599 NTIhashset__ylUTTG3LIabQ9bY9bfQ5vOwA_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[12];
5600 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[11].kind = 1;
5601 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[11].offset = offsetof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA, warningLocations);
5602 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[11].typ = (&NTIhashset__ylUTTG3LIabQ9bY9bfQ5vOwA_);
5603 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[11].name = "warningLocations";
5604 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_2_6[4] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[18];
5605 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[18].kind = 1;
5606 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[18].offset = offsetof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA, idgen);
5607 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[18].typ = (&NTIidgenerator__9c0n61DB7aLyPcUMi5meUHQ_);
5608 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[18].name = "idgen";
5609 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_2_6[5] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[19];
5610 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[19].kind = 1;
5611 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[19].offset = offsetof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA, config);
5612 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[19].typ = (&NTIconfigref__a8lycfSA25OQltN3OMeBsA_);
5613 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[19].name = "config";
5614 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[0].len = 6; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[0].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[0].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_2_6[0];
5615 NTInilcheckercontext58objecttype__FEwkSv10ehW9bMzwnvRrMwA_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[0];
5616 NTInilcheckercontext__SHCn57BjQ6LjeAGfBicCFg_.size = sizeof(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA*);
5617 NTInilcheckercontext__SHCn57BjQ6LjeAGfBicCFg_.align = NIM_ALIGNOF(tyObject_NilCheckerContextcolonObjectType___FEwkSv10ehW9bMzwnvRrMwA*);
5618 NTInilcheckercontext__SHCn57BjQ6LjeAGfBicCFg_.kind = 22;
5619 NTInilcheckercontext__SHCn57BjQ6LjeAGfBicCFg_.base = (&NTInilcheckercontext58objecttype__FEwkSv10ehW9bMzwnvRrMwA_);
5620 NTInilcheckercontext__SHCn57BjQ6LjeAGfBicCFg_.marker = Marker_tyRef__SHCn57BjQ6LjeAGfBicCFg;
5621 NTInilmap58objecttype__7KTTiYJtXT6nWGm9adO9cEkw_.size = sizeof(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw);
5622 NTInilmap58objecttype__7KTTiYJtXT6nWGm9adO9cEkw_.align = NIM_ALIGNOF(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw);
5623 NTInilmap58objecttype__7KTTiYJtXT6nWGm9adO9cEkw_.kind = 18;
5624 NTInilmap58objecttype__7KTTiYJtXT6nWGm9adO9cEkw_.base = 0;
5625 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_10_5[0] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[21];
5626 NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_.size = sizeof(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA);
5627 NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_.align = NIM_ALIGNOF(tyEnum_Nilability__9cN6FUkaUivSYPpqgb9cMQ9cA);
5628 NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_.kind = 14;
5629 NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_.base = 0;
5630 NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_.flags = 3;
5631 for (TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13 = 0; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13 < 5; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13++) {
5632 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13+22].kind = 1;
5633 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13+22].offset = TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13;
5634 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13+22].name = TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_12[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13];
5635 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_11_5[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_13+22];
5636 }
5637 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[27].len = 5; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[27].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[27].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_11_5[0];
5638 NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[27];
5639 NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_.size = sizeof(tySequence__j9aEZ11m8pCmK2eRUFSgiOA*);
5640 NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_.align = NIM_ALIGNOF(tySequence__j9aEZ11m8pCmK2eRUFSgiOA*);
5641 NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_.kind = 24;
5642 NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_.base = (&NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_);
5643 NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_.marker = Marker_tySequence__j9aEZ11m8pCmK2eRUFSgiOA;
5644 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[21].kind = 1;
5645 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[21].offset = offsetof(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw, expressions);
5646 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[21].typ = (&NTIseqLnilabilityT__j9aEZ11m8pCmK2eRUFSgiOA_);
5647 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[21].name = "expressions";
5648 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_10_5[1] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[28];
5649 NTIhistory__HvSmlqGq2vKUejgLWJ9cFPA_.size = sizeof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA);
5650 NTIhistory__HvSmlqGq2vKUejgLWJ9cFPA_.align = NIM_ALIGNOF(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA);
5651 NTIhistory__HvSmlqGq2vKUejgLWJ9cFPA_.kind = 18;
5652 NTIhistory__HvSmlqGq2vKUejgLWJ9cFPA_.base = 0;
5653 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_14_4[0] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[30];
5654 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[30].kind = 1;
5655 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[30].offset = offsetof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA, info);
5656 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[30].typ = (&NTItlineinfo__WGx4rAexNXnczy1Avn646Q_);
5657 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[30].name = "info";
5658 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_14_4[1] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[31];
5659 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[31].kind = 1;
5660 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[31].offset = offsetof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA, nilability);
5661 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[31].typ = (&NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_);
5662 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[31].name = "nilability";
5663 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_14_4[2] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[32];
5664 NTItransitionkind__1GzHwTVQ9aW4oTXg2LMytYA_.size = sizeof(tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA);
5665 NTItransitionkind__1GzHwTVQ9aW4oTXg2LMytYA_.align = NIM_ALIGNOF(tyEnum_TransitionKind__1GzHwTVQ9aW4oTXg2LMytYA);
5666 NTItransitionkind__1GzHwTVQ9aW4oTXg2LMytYA_.kind = 14;
5667 NTItransitionkind__1GzHwTVQ9aW4oTXg2LMytYA_.base = 0;
5668 NTItransitionkind__1GzHwTVQ9aW4oTXg2LMytYA_.flags = 3;
5669 for (TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17 = 0; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17 < 9; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17++) {
5670 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17+33].kind = 1;
5671 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17+33].offset = TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17;
5672 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17+33].name = TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_16[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17];
5673 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_15_9[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_17+33];
5674 }
5675 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[42].len = 9; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[42].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[42].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_15_9[0];
5676 NTItransitionkind__1GzHwTVQ9aW4oTXg2LMytYA_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[42];
5677 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[32].kind = 1;
5678 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[32].offset = offsetof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA, kind);
5679 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[32].typ = (&NTItransitionkind__1GzHwTVQ9aW4oTXg2LMytYA_);
5680 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[32].name = "kind";
5681 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_14_4[3] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[43];
5682 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[43].kind = 1;
5683 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[43].offset = offsetof(tyObject_History__HvSmlqGq2vKUejgLWJ9cFPA, node);
5684 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[43].typ = (&NTIpnode__fKfcLzXYiz5jNu3NH3Tv8Q_);
5685 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[43].name = "node";
5686 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[29].len = 4; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[29].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[29].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_14_4[0];
5687 NTIhistory__HvSmlqGq2vKUejgLWJ9cFPA_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[29];
5688 NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_.size = sizeof(tySequence__RJ9cCbHDTKFvcxBv5qqeJbg*);
5689 NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_.align = NIM_ALIGNOF(tySequence__RJ9cCbHDTKFvcxBv5qqeJbg*);
5690 NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_.kind = 24;
5691 NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_.base = (&NTIhistory__HvSmlqGq2vKUejgLWJ9cFPA_);
5692 NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_.marker = Marker_tySequence__RJ9cCbHDTKFvcxBv5qqeJbg;
5693 NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_.size = sizeof(tySequence__tFZSZSomBEZ9bmg1CrY7ojA*);
5694 NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_.align = NIM_ALIGNOF(tySequence__tFZSZSomBEZ9bmg1CrY7ojA*);
5695 NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_.kind = 24;
5696 NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_.base = (&NTIseqLhistoryT__RJ9cCbHDTKFvcxBv5qqeJbg_);
5697 NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_.marker = Marker_tySequence__tFZSZSomBEZ9bmg1CrY7ojA;
5698 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[28].kind = 1;
5699 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[28].offset = offsetof(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw, history);
5700 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[28].typ = (&NTIseqLseqLhistoryTT__tFZSZSomBEZ9bmg1CrY7ojA_);
5701 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[28].name = "history";
5702 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_10_5[2] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[44];
5703 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[44].kind = 1;
5704 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[44].offset = offsetof(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw, setIndices);
5705 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[44].typ = (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_);
5706 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[44].name = "setIndices";
5707 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_10_5[3] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[45];
5708 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[45].kind = 1;
5709 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[45].offset = offsetof(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw, sets);
5710 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[45].typ = (&NTIseqLintsetT__0a6ZbC0zPSfUDYzqPnO68A_);
5711 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[45].name = "sets";
5712 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_10_5[4] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[46];
5713 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[46].kind = 1;
5714 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[46].offset = offsetof(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw, parent);
5715 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[46].typ = (&NTInilmap__jS25SPRyK4NElao6fMJSpg_);
5716 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[46].name = "parent";
5717 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[20].len = 5; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[20].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[20].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_10_5[0];
5718 NTInilmap58objecttype__7KTTiYJtXT6nWGm9adO9cEkw_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[20];
5719 NTInilmap__jS25SPRyK4NElao6fMJSpg_.size = sizeof(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*);
5720 NTInilmap__jS25SPRyK4NElao6fMJSpg_.align = NIM_ALIGNOF(tyObject_NilMapcolonObjectType___7KTTiYJtXT6nWGm9adO9cEkw*);
5721 NTInilmap__jS25SPRyK4NElao6fMJSpg_.kind = 22;
5722 NTInilmap__jS25SPRyK4NElao6fMJSpg_.base = (&NTInilmap58objecttype__7KTTiYJtXT6nWGm9adO9cEkw_);
5723 NTInilmap__jS25SPRyK4NElao6fMJSpg_.marker = Marker_tyRef__jS25SPRyK4NElao6fMJSpg;
5724 NTILpnode_nilabilityT__KYzEow2par19cjmb9bTX4xkg_.size = sizeof(tyTuple__KYzEow2par19cjmb9bTX4xkg);
5725 NTILpnode_nilabilityT__KYzEow2par19cjmb9bTX4xkg_.align = NIM_ALIGNOF(tyTuple__KYzEow2par19cjmb9bTX4xkg);
5726 NTILpnode_nilabilityT__KYzEow2par19cjmb9bTX4xkg_.kind = 18;
5727 NTILpnode_nilabilityT__KYzEow2par19cjmb9bTX4xkg_.base = 0;
5728 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_20_2[0] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[48];
5729 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[48].kind = 1;
5730 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[48].offset = offsetof(tyTuple__KYzEow2par19cjmb9bTX4xkg, Field0);
5731 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[48].typ = (&NTIpnode__fKfcLzXYiz5jNu3NH3Tv8Q_);
5732 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[48].name = "Field0";
5733 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_20_2[1] = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[49];
5734 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[49].kind = 1;
5735 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[49].offset = offsetof(tyTuple__KYzEow2par19cjmb9bTX4xkg, Field1);
5736 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[49].typ = (&NTInilability__9cN6FUkaUivSYPpqgb9cMQ9cA_);
5737 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[49].name = "Field1";
5738 TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[47].len = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[47].kind = 2; TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[47].sons = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_20_2[0];
5739 NTILpnode_nilabilityT__KYzEow2par19cjmb9bTX4xkg_.node = &TM__GuNhuT9bb9aEQwZE9af6i1N9bQ_0[47];
5740 NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_.size = sizeof(tySequence__sHfymmN9aVTQTLnu1B0wi3w*);
5741 NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_.align = NIM_ALIGNOF(tySequence__sHfymmN9aVTQTLnu1B0wi3w*);
5742 NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_.kind = 24;
5743 NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_.base = (&NTILpnode_nilabilityT__KYzEow2par19cjmb9bTX4xkg_);
5744 NTIseqLLpnode_nilabilityTT__sHfymmN9aVTQTLnu1B0wi3w_.marker = Marker_tySequence__sHfymmN9aVTQTLnu1B0wi3w;
5745 }
5746
5747