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