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