csources_v2/c_code/2_4/@mnilcheck.nim.c
2022-12-16 10:54:01 +08:00

7525 lines
291 KiB
C

/* Generated by Nim Compiler v1.9.0 */
#define NIM_INTBITS 64
#include "nimbase.h"
#include <string.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
#define nimfr_(x, y)
#define nimln_(x, y)
typedef struct tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA;
typedef struct tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q;
typedef struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg;
typedef struct tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q;
typedef struct tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ;
typedef struct tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ;
typedef struct tySequence__fEh0bUDDOwnFhhuQmQJTNA tySequence__fEh0bUDDOwnFhhuQmQJTNA;
typedef struct tySequence__fEh0bUDDOwnFhhuQmQJTNA_Content tySequence__fEh0bUDDOwnFhhuQmQJTNA_Content;
typedef struct tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ;
typedef struct RootObj RootObj;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw;
typedef struct tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA;
typedef struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA;
typedef struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg;
typedef struct tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA;
typedef struct tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg;
typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ tySequence__xxu3GgaFAGO6lOns9aHaeLQ;
typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content;
typedef struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg;
typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
typedef struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag;
typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA tySequence__npXKLeClRo4ZDs6rPxQ9bRA;
typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content;
typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tySequence__o8paxaScVM7VHajE9a8rbyw tySequence__o8paxaScVM7VHajE9a8rbyw;
typedef struct tySequence__o8paxaScVM7VHajE9a8rbyw_Content tySequence__o8paxaScVM7VHajE9a8rbyw_Content;
typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content tySequence__4eRCaZmrYLLw2k30GPTiMw_Content;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
typedef struct tySequence__SE64IkxZVzsW0aLsNjnJHg tySequence__SE64IkxZVzsW0aLsNjnJHg;
typedef struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content tySequence__SE64IkxZVzsW0aLsNjnJHg_Content;
typedef struct tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ;
typedef struct tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ;
typedef struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg;
typedef struct tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw;
typedef struct tySequence__dAjyAaabi52TN36Jp0fAXQ tySequence__dAjyAaabi52TN36Jp0fAXQ;
typedef struct tySequence__dAjyAaabi52TN36Jp0fAXQ_Content tySequence__dAjyAaabi52TN36Jp0fAXQ_Content;
typedef struct tySequence__0a6ZbC0zPSfUDYzqPnO68A tySequence__0a6ZbC0zPSfUDYzqPnO68A;
typedef struct tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content;
typedef struct tyObject_HashSet__ozdCMJv0qf50Rbb4ExJGdQ tyObject_HashSet__ozdCMJv0qf50Rbb4ExJGdQ;
typedef struct tySequence__CjiF6qhVnW77uIpIJIHh4g tySequence__CjiF6qhVnW77uIpIJIHh4g;
typedef struct tySequence__CjiF6qhVnW77uIpIJIHh4g_Content tySequence__CjiF6qhVnW77uIpIJIHh4g_Content;
typedef struct tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ;
typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content;
typedef struct tyTuple__cyDO9czMbIL47POKM3sIQng tyTuple__cyDO9czMbIL47POKM3sIQng;
typedef struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A;
typedef struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ;
typedef struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content;
typedef struct tySequence__Th9bZ3i8H7r9aIXe20QsLwRw tySequence__Th9bZ3i8H7r9aIXe20QsLwRw;
typedef struct tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content;
typedef struct tySequence__WAoMpel6cRl8wTBAvKwzFQ tySequence__WAoMpel6cRl8wTBAvKwzFQ;
typedef struct tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct tySequence__NE3kNZskLpMeWsT0qd9bxYQ tySequence__NE3kNZskLpMeWsT0qd9bxYQ;
typedef struct tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content;
typedef struct tyObject_History__GvmH1bmZD6bA1ithz47A7w tyObject_History__GvmH1bmZD6bA1ithz47A7w;
typedef struct tyObject_GcEnv__g0b9ao2MXcYnUpu9b4I8eP9bQ tyObject_GcEnv__g0b9ao2MXcYnUpu9b4I8eP9bQ;
typedef struct tyObject_CellSeq__sGle0igznE2T7vk4dBh5SQ tyObject_CellSeq__sGle0igznE2T7vk4dBh5SQ;
typedef struct tyTuple__N4J9cV4JZGem3ljqqj5rT0Q tyTuple__N4J9cV4JZGem3ljqqj5rT0Q;
typedef struct tyObject_CellSeq__z4KasHYddby49cXX2MD4LxQ tyObject_CellSeq__z4KasHYddby49cXX2MD4LxQ;
typedef struct tyTuple__0F3Kz25HWtRatQmCDVHWEA tyTuple__0F3Kz25HWtRatQmCDVHWEA;
typedef struct tyTuple__czAeVAIf9abkuDYbRyH2HPw tyTuple__czAeVAIf9abkuDYbRyH2HPw;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw;
typedef struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ;
typedef struct tyTuple__X9bWVAqRSgByRpQwn6owzEA tyTuple__X9bWVAqRSgByRpQwn6owzEA;
typedef struct tyTuple__Q7CgtBIIaP8AXsO59brAMtw tyTuple__Q7CgtBIIaP8AXsO59brAMtw;
struct NimStrPayload {
NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
NI len;
NimStrPayload* p;
};
typedef NU8 tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w;
struct tySequence__fEh0bUDDOwnFhhuQmQJTNA {
NI len; tySequence__fEh0bUDDOwnFhhuQmQJTNA_Content* p;
};
struct tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ {
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w nilability;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map;
tySequence__fEh0bUDDOwnFhhuQmQJTNA elements;
};
struct TNimTypeV2 {
void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
void* traceImpl;
void* typeInfoV1;
NI flags;
};
struct RootObj {
TNimTypeV2* m_type;
};
struct tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw {
NI32 module;
NI32 item;
};
struct tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ {
RootObj Sup;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw itemId;
};
typedef NU8 tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ;
typedef NU16 tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg;
struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU64 tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg;
typedef NU32 tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg;
typedef NU8 tyEnum_TLocKind__iCEcZjTaghPmL3Wx2e5DQw;
typedef NU8 tyEnum_TStorageLoc__BKvMXWvKko6Yn5329c9aw9afg;
typedef NU16 tySet_tyEnum_TLocFlag__9a7m8BSAfzn6yluCKaq6viw;
struct tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA {
tyEnum_TLocKind__iCEcZjTaghPmL3Wx2e5DQw k;
tyEnum_TStorageLoc__BKvMXWvKko6Yn5329c9aw9afg storage;
tySet_tyEnum_TLocFlag__9a7m8BSAfzn6yluCKaq6viw flags;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* lode;
NimStringV2 r;
};
struct tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA {
tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ Sup;
tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ kind;
union{
struct {tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* gcUnsafetyReason;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* transformedBody;
} _kind_1;
struct {tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* guard;
NI bitsize;
NI alignment;
} _kind_2;
};
tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg magic;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* name;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner;
tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg flags;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* ast;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options;
NI position;
NI offset;
tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA loc;
tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg* annex;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* constraint;
};
typedef NU32 tySet_tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw;
typedef NU8 tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ;
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ {
NI len; tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content* p;
};
struct tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
tySet_tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw flags;
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind;
union{
struct {NI64 intVal;
} _kind_1;
struct {NF floatVal;
} _kind_2;
struct {NimStringV2 strVal;
} _kind_3;
struct {tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym;
} _kind_4;
struct {tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* ident;
} _kind_5;
struct {tySequence__xxu3GgaFAGO6lOns9aHaeLQ sons;
} _kind_6;
};
};
typedef NU8 tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w;
typedef NU8 tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow;
typedef NU8 tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg;
struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg {
tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow targetCPU;
tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow hostCPU;
tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg targetOS;
tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg hostOS;
NI intSize;
NI floatSize;
NI ptrSize;
NimStringV2 tnl;
};
typedef NU64 tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw;
typedef NU8 tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag;
struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA {
NI len; tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content* p;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
tySequence__7lEisrXlQEzwtUKW5pzRCw data;
NI counter;
};
struct tySequence__o8paxaScVM7VHajE9a8rbyw {
NI len; tySequence__o8paxaScVM7VHajE9a8rbyw_Content* p;
};
struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg trackPos;
NIM_BOOL trackPosAttached;
tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag errorOutputs;
tySequence__npXKLeClRo4ZDs6rPxQ9bRA msgContext;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastError;
tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
tySequence__o8paxaScVM7VHajE9a8rbyw fileInfos;
NI32 systemFileIdx;
};
typedef NU8 tyEnum_FilenameOption__hVFMNPLaxRz7xWOSR9cMItQ;
typedef NU8 tyEnum_Command__b145RBTl7bacomLHdBguHg;
typedef NU8 tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg;
typedef NU8 tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ;
typedef NU8 tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ;
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
NI len; tySequence__4eRCaZmrYLLw2k30GPTiMw_Content* p;
};
struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
tySequence__4eRCaZmrYLLw2k30GPTiMw data;
NI counter;
};
typedef NU32 tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA;
typedef NU8 tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g;
typedef NU8 tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg;
typedef NU8 tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g;
typedef NU8 tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw[12];
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
NI Field0;
NI Field1;
NI Field2;
};
typedef NU8 tySet_tyEnum_StdOrrKind__C4nP6ZSJZRe8Um4ny9bnbwA;
struct tySequence__SE64IkxZVzsW0aLsNjnJHg {
NI len; tySequence__SE64IkxZVzsW0aLsNjnJHg_Content* p;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ* result, void* ClE_0);
void* ClE_0;
} tyProc__UwsGaXGCDEc7Akhwij5HRA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringV2 output, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__R4Rvu3XsQ2ynPKxZt1L82g;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, NimStringV2 msg, tyEnum_Severity__R4Rvu3XsQ2ynPKxZt1L82g severity, void* ClE_0);
void* ClE_0;
} tyProc__9a8L4QvXftisHTVzCsMCKUA;
struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg {
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w backend;
tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg target;
NI linesCompiled;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options;
tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw globalOptions;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag m;
tyEnum_FilenameOption__hVFMNPLaxRz7xWOSR9cMItQ filenameOption;
NimStringV2 unitSep;
NI evalTemplateCounter;
NI evalMacroCounter;
NI8 exitcode;
tyEnum_Command__b145RBTl7bacomLHdBguHg cmd;
NimStringV2 cmdInput;
NIM_BOOL projectIsCmd;
NIM_BOOL implicitCmd;
tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg selectedGC;
tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ exc;
NIM_BOOL hintProcessingDots;
NI verbosity;
NI numberOfProcessors;
NF lastCmdTime;
tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ symbolFiles;
NI spellSuggestMax;
tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
NimStringV2 headerFile;
tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA features;
tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g legacyFeatures;
NimStringV2 arguments;
tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg ideCmd;
NIM_BOOL oldNewlines;
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g cCompiler;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw modifiedyNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw cmdlineNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw foreignPackageNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw notes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw warningAsErrors;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw mainPackageNotes;
NI mainPackageId;
NI errorCounter;
NI hintCounter;
NI warnCounter;
NI errorMax;
NI maxLoopIterationsVM;
NIM_BOOL isVmTrace;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimblePaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ searchPaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ lazyPaths;
NimStringV2 outFile;
NimStringV2 outDir;
NimStringV2 jsonBuildFile;
NimStringV2 prefixDir;
NimStringV2 libpath;
NimStringV2 nimcacheDir;
tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
NimStringV2 projectName;
NimStringV2 projectPath;
NimStringV2 projectFull;
NIM_BOOL projectIsStdin;
tySet_tyEnum_StdOrrKind__C4nP6ZSJZRe8Um4ny9bnbwA lastMsgWasDot;
NI32 projectMainIdx;
NI32 projectMainIdx2;
NimStringV2 command;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ commandArgs;
NimStringV2 commandLine;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds;
NIM_BOOL keepComments;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitImports;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitIncludes;
NimStringV2 docSeeSrcUrl;
NimStringV2 docRoot;
NimStringV2 docCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ configFiles;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cIncludes;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLinkedLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ externalToLink;
NimStringV2 linkOptionsCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ compileOptionsCmd;
NimStringV2 linkOptions;
NimStringV2 compileOptions;
NimStringV2 cCompilerPath;
tySequence__SE64IkxZVzsW0aLsNjnJHg toCompile;
tyProc__UwsGaXGCDEc7Akhwij5HRA suggestionResultHook;
NI suggestVersion;
NI suggestMaxResults;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastLineInfo;
tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
tyProc__9a8L4QvXftisHTVzCsMCKUA structuredErrorHook;
NimStringV2 cppCustomNamespace;
NimStringV2 nimMainPrefix;
tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ* vmProfileData;
};
struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg {
NimStringV2 fullPath;
NimStringV2 projPath;
NimStringV2 shortName;
NimStringV2 quotedName;
NimStringV2 quotedFullName;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ lines;
NimStringV2 dirtyFile;
NimStringV2 hash;
NIM_BOOL dirty;
};
struct tySequence__dAjyAaabi52TN36Jp0fAXQ {
NI len; tySequence__dAjyAaabi52TN36Jp0fAXQ_Content* p;
};
struct tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw {
tySequence__dAjyAaabi52TN36Jp0fAXQ data;
NI counter;
};
struct tySequence__0a6ZbC0zPSfUDYzqPnO68A {
NI len; tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content* p;
};
struct tySequence__CjiF6qhVnW77uIpIJIHh4g {
NI len; tySequence__CjiF6qhVnW77uIpIJIHh4g_Content* p;
};
struct tyObject_HashSet__ozdCMJv0qf50Rbb4ExJGdQ {
tySequence__CjiF6qhVnW77uIpIJIHh4g data;
NI counter;
};
struct tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q {
tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw symbolIndices;
tySequence__xxu3GgaFAGO6lOns9aHaeLQ expressions;
tySequence__0a6ZbC0zPSfUDYzqPnO68A dependants;
tyObject_HashSet__ozdCMJv0qf50Rbb4ExJGdQ warningLocations;
tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config;
};
struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
NI len; tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content* p;
};
typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
NI elems;
NI counter;
NI max;
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
tySequence__Bre9bNyuQOg1EJKitjSzn8w data;
tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
};
struct tyTuple__cyDO9czMbIL47POKM3sIQng {
NI Field0;
NI16 Field1;
};
typedef tyTuple__cyDO9czMbIL47POKM3sIQng tyArray__brqof9bq2QWioDkbae3wZsw[1];
typedef tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* tyArray__ves2GtSi5FewHyZ4nBr7Ag[8192];
struct tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ {
tyArray__ves2GtSi5FewHyZ4nBr7Ag buckets;
NI wordCounter;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* idAnon;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* idDelegator;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* emptyIdent;
};
struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A {
NI rc;
NI rootIdx;
};
struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA {
NI id;
NimStringV2 s;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* next;
NI h;
};
typedef NU8 tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ;
typedef NU8 tyEnum_TCallingConvention__XL1p2EKvOAlAHpc68ecZPw;
typedef NU64 tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q;
struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ {
NI len; tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content* p;
};
struct tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA {
tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ Sup;
tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ kind;
tyEnum_TCallingConvention__XL1p2EKvOAlAHpc68ecZPw callConv;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q flags;
tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ sons;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym;
NI64 size;
NI16 align;
NI16 paddingAtEnd;
tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA loc;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typeInst;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw uniqueId;
};
typedef NU8 tySet_tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ[21];
typedef NU8 tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q;
struct tySequence__Th9bZ3i8H7r9aIXe20QsLwRw {
NI len; tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content* p;
};
struct tySequence__WAoMpel6cRl8wTBAvKwzFQ {
NI len; tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content* p;
};
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ {
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw expressions;
tySequence__WAoMpel6cRl8wTBAvKwzFQ history;
tySequence__qwqHTkRvwhrRyENtudHQ7g setIndices;
tySequence__0a6ZbC0zPSfUDYzqPnO68A sets;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* parent;
};
struct tySequence__NE3kNZskLpMeWsT0qd9bxYQ {
NI len; tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content* p;
};
typedef NU8 tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg;
struct tyObject_History__GvmH1bmZD6bA1ithz47A7w {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w nilability;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg kind;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node;
};
struct tyObject_CellSeq__sGle0igznE2T7vk4dBh5SQ {
NI len;
NI cap;
tyTuple__N4J9cV4JZGem3ljqqj5rT0Q* d;
};
struct tyObject_CellSeq__z4KasHYddby49cXX2MD4LxQ {
NI len;
NI cap;
tyTuple__0F3Kz25HWtRatQmCDVHWEA* d;
};
struct tyObject_GcEnv__g0b9ao2MXcYnUpu9b4I8eP9bQ {
tyObject_CellSeq__sGle0igznE2T7vk4dBh5SQ traceStack;
tyObject_CellSeq__z4KasHYddby49cXX2MD4LxQ toFree;
NI freed;
NI touched;
NI edges;
NI rcSum;
NIM_BOOL keepThreshold;
};
struct tyTuple__N4J9cV4JZGem3ljqqj5rT0Q {
void** Field0;
TNimTypeV2* Field1;
};
typedef tyTuple__N4J9cV4JZGem3ljqqj5rT0Q tyUncheckedArray__72XmdLy0QAaMtx66AmNKfA[1];
typedef NU tyArray__VqSA39cBDWnwnJySTumCdjw[8];
struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA {
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* next;
NI key;
tyArray__VqSA39cBDWnwnJySTumCdjw bits;
};
struct tyTuple__czAeVAIf9abkuDYbRyH2HPw {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* Field0;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w Field1;
};
typedef NU8 tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA;
typedef NU8 tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
NimStringV2 Field0;
NI Field1;
NI Field2;
};
typedef tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tyArray__FIZq7sI4PRP59aHmJ2Mmqwg[2];
typedef tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tyArray__ITlg8UhAbnS7vsiPAhcspQ[1];
struct tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag {
NI32 module;
NI32 symId;
NI32 typeId_0;
NIM_BOOL sealed;
};
typedef tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tyArray__wysJI6hInaI5ABj9aoPL4Dw[3];
struct tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw {
NI16 a;
NI16 b;
};
#ifndef tySequence__fEh0bUDDOwnFhhuQmQJTNA_Content_PP
#define tySequence__fEh0bUDDOwnFhhuQmQJTNA_Content_PP
struct tySequence__fEh0bUDDOwnFhhuQmQJTNA_Content { NI cap; tyTuple__czAeVAIf9abkuDYbRyH2HPw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
#define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg Field0;
NimStringV2 Field1;
};
#ifndef tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content_PP
#define tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content_PP
struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content { NI cap; tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringV2 Field1;
NI32 Field2;
};
#ifndef tySequence__7lEisrXlQEzwtUKW5pzRCw_Content_PP
#define tySequence__7lEisrXlQEzwtUKW5pzRCw_Content_PP
struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__o8paxaScVM7VHajE9a8rbyw_Content_PP
#define tySequence__o8paxaScVM7VHajE9a8rbyw_Content_PP
struct tySequence__o8paxaScVM7VHajE9a8rbyw_Content { NI cap; tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
NI Field0;
NimStringV2 Field1;
};
#ifndef tySequence__4eRCaZmrYLLw2k30GPTiMw_Content_PP
#define tySequence__4eRCaZmrYLLw2k30GPTiMw_Content_PP
struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content { NI cap; tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
typedef NU8 tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og;
struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ {
NimStringV2 nimname;
NimStringV2 cname;
NimStringV2 obj;
tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og flags;
NimStringV2 customArgs;
};
#ifndef tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP
#define tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP
struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content { NI cap; tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__X9bWVAqRSgByRpQwn6owzEA {
NI Field0;
NI Field1;
NI16 Field2;
};
#ifndef tySequence__dAjyAaabi52TN36Jp0fAXQ_Content_PP
#define tySequence__dAjyAaabi52TN36Jp0fAXQ_Content_PP
struct tySequence__dAjyAaabi52TN36Jp0fAXQ_Content { NI cap; tyTuple__X9bWVAqRSgByRpQwn6owzEA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
#define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content_PP
#define tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content_PP
struct tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content { NI cap; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__Q7CgtBIIaP8AXsO59brAMtw {
NI Field0;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg Field1;
};
#ifndef tySequence__CjiF6qhVnW77uIpIJIHh4g_Content_PP
#define tySequence__CjiF6qhVnW77uIpIJIHh4g_Content_PP
struct tySequence__CjiF6qhVnW77uIpIJIHh4g_Content { NI cap; tyTuple__Q7CgtBIIaP8AXsO59brAMtw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content_PP
#define tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content_PP
struct tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content { NI cap; tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
#define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
#define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content_PP
#define tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content_PP
struct tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content { NI cap; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content_PP
#define tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content_PP
struct tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content { NI cap; tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content_PP
#define tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content_PP
struct tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content { NI cap; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content_PP
#define tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content_PP
struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content { NI cap; tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content_PP
#define tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content_PP
struct tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content { NI cap; tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content_PP
#define tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content_PP
struct tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content { NI cap; tySequence__NE3kNZskLpMeWsT0qd9bxYQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
#define tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content_PP
#define tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content_PP
struct tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content { NI cap; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content_PP
#define tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content_PP
struct tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content { NI cap; tyObject_History__GvmH1bmZD6bA1ithz47A7w data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content_PP
#define tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content_PP
struct tySequence__Th9bZ3i8H7r9aIXe20QsLwRw_Content { NI cap; tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content_PP
#define tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content_PP
struct tySequence__WAoMpel6cRl8wTBAvKwzFQ_Content { NI cap; tySequence__NE3kNZskLpMeWsT0qd9bxYQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
#define tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content_PP
#define tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content_PP
struct tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content { NI cap; tyObject_History__GvmH1bmZD6bA1ithz47A7w data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content_PP
#define tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content_PP
struct tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content { NI cap; tyObject_History__GvmH1bmZD6bA1ithz47A7w data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__dAjyAaabi52TN36Jp0fAXQ_Content_PP
#define tySequence__dAjyAaabi52TN36Jp0fAXQ_Content_PP
struct tySequence__dAjyAaabi52TN36Jp0fAXQ_Content { NI cap; tyTuple__X9bWVAqRSgByRpQwn6owzEA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__CjiF6qhVnW77uIpIJIHh4g_Content_PP
#define tySequence__CjiF6qhVnW77uIpIJIHh4g_Content_PP
struct tySequence__CjiF6qhVnW77uIpIJIHh4g_Content { NI cap; tyTuple__Q7CgtBIIaP8AXsO59brAMtw data[SEQ_DECL_SIZE];};
#endif
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObj)(NI size, NI alignment);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___options_3378)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg** dest, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* src);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3247)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag** dest, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* src, NIM_BOOL cyclic);
N_LIB_PRIVATE N_NIMCALL(void, preVisit__nilcheck_10252)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_10343)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* dest, tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw src);
N_LIB_PRIVATE N_NIMCALL(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw, toTable__nilcheck_10257)(tyTuple__cyDO9czMbIL47POKM3sIQng* pairs, NI pairsLen_0);
N_LIB_PRIVATE N_NIMCALL(tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ*, newIdentCache__idents_175)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_2394)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest, tySequence__xxu3GgaFAGO6lOns9aHaeLQ src);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_2374)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest);
static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p);
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3466)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* dest);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p, NI alignment);
N_LIB_PRIVATE N_NIMCALL(void, alignedDealloc)(void* p, NI align);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap, NI elemSize, NI elemAlign);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newIdentNode__ast_4780)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* ident, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA*, getIdent__idents_166)(tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* ic, NimStringV2 identifier);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_1349)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_36)(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_56)(tySequence__Bre9bNyuQOg1EJKitjSzn8w* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3726)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest, tySequence__xxu3GgaFAGO6lOns9aHaeLQ src);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3457)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src);
N_LIB_PRIVATE N_NIMCALL(NI, symbol__nilcheck_2001)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NI, hashTree__treetab_6)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__nilcheck_2974)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_8621)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t, NI key, NI16 val);
N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_7325)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ a);
N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_9817)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_4147)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* x, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3723)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3454)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest);
N_LIB_PRIVATE N_NIMCALL(void, preVisitNode__nilcheck_8459)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NI16*, X5BX5D___nilcheck_3424)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw* t, NI key);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_3)(NI x);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___nilcheck_180)(NI16 a, NI16 b);
N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_10148)(tySequence__0a6ZbC0zPSfUDYzqPnO68A a);
N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_10156)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a, NI16 length);
N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_1268)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* s, NI newlen);
N_LIB_PRIVATE N_NIMCALL(NI16, plus___nilcheck_199)(NI16 a, NI16 b);
N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_202)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*, X5BX5D___nilcheck_4664)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a, NI16 index);
static N_INLINE(NI, safeLen__ast_3318)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(NI, len__ast_3325)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___nilcheck_164)(NI16 a, NI16 b);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_181)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_133)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA** dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_263)(tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ** dest);
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, newNilMap__nilcheck_244)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* parent, NI count);
N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_307)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw a);
N_LIB_PRIVATE N_NIMCALL(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw, newSeqOfDistinct__nilcheck_494)(NI length);
N_LIB_PRIVATE N_NIMCALL(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw, newSeq__nilcheck_478)(NI len);
N_LIB_PRIVATE N_NIMCALL(tySequence__WAoMpel6cRl8wTBAvKwzFQ, newSeqOfDistinct__nilcheck_841)(NI length);
N_LIB_PRIVATE N_NIMCALL(tySequence__WAoMpel6cRl8wTBAvKwzFQ, newSeq__nilcheck_515)(NI len);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_605)(tySequence__NE3kNZskLpMeWsT0qd9bxYQ* dest);
N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g, newSeqOfDistinct__nilcheck_1020)(NI length);
N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g, newSeq__nilcheck_862)(NI len);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_1575)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ** dest, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* src, NIM_BOOL cyclic);
static N_INLINE(void, nimIncRefCyclic)(void* p, NIM_BOOL cyclic);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p, TNimTypeV2* desc);
N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_3143)(NIM_BOOL isDestroyAction, tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* s, TNimTypeV2* desc);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_1585)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_316)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_773)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_960)(tySequence__qwqHTkRvwhrRyENtudHQ7g* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_1250)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_1594)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* dest, void* env);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_782)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* dest, void* env);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_1259)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest, void* env);
static N_INLINE(void, nimTraceRef)(void* q, TNimTypeV2* desc, void* env);
static N_INLINE(void, add__system_2688)(tyObject_CellSeq__sGle0igznE2T7vk4dBh5SQ* s, void** c, TNimTypeV2* t);
N_LIB_PRIVATE N_NOCONV(void*, allocImpl__system_1735)(NI size);
static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NOCONV(void, dealloc)(void* p);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_322)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* dest, tySequence__Th9bZ3i8H7r9aIXe20QsLwRw src);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_451)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* dest, tySequence__Th9bZ3i8H7r9aIXe20QsLwRw src);
N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_332)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* s, NI newlen);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_1128)(tySequence__qwqHTkRvwhrRyENtudHQ7g* a, NI16 index, NI value);
static N_INLINE(void, initIntSet__pureZcollectionsZintsets_389)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_16)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_1184)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* value);
N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_1189)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* x, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* value);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___pureZcollectionsZintsets_184)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* dest, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* src);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_1256)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest, tySequence__0a6ZbC0zPSfUDYzqPnO68A src);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_1357)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest, tySequence__0a6ZbC0zPSfUDYzqPnO68A src);
static N_INLINE(void, nimIncRef)(void* p);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___pureZcollectionsZintsets_59)(tySequence__Bre9bNyuQOg1EJKitjSzn8w* dest, tySequence__Bre9bNyuQOg1EJKitjSzn8w src);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___pureZcollectionsZintsets_187)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* dest, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* src);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_966)(tySequence__qwqHTkRvwhrRyENtudHQ7g* dest, tySequence__qwqHTkRvwhrRyENtudHQ7g src);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_1002)(tySequence__qwqHTkRvwhrRyENtudHQ7g* dest, tySequence__qwqHTkRvwhrRyENtudHQ7g src);
N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_874)(tySequence__qwqHTkRvwhrRyENtudHQ7g* s, NI newlen);
N_LIB_PRIVATE N_NIMCALL(NI, len__nilcheck_10907)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t);
N_LIB_PRIVATE N_NIMCALL(void, store__nilcheck_3782)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, NI16 index, tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value, tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_192)(NI16 a, NI16 b);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_3830)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* a, NI16 index, tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value);
N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_3898)(tySequence__NE3kNZskLpMeWsT0qd9bxYQ* x, tyObject_History__GvmH1bmZD6bA1ithz47A7w value);
N_LIB_PRIVATE N_NIMCALL(tySequence__NE3kNZskLpMeWsT0qd9bxYQ*, X5BX5D___nilcheck_1952)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* a, NI16 index);
N_LIB_PRIVATE N_NIMCALL(void, aliasSet__nilcheck_3653)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NI16 index, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*, X5BX5D___nilcheck_2488)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a, NI index);
N_LIB_PRIVATE N_NIMCALL(NI*, X5BX5D___nilcheck_3573)(tySequence__qwqHTkRvwhrRyENtudHQ7g* a, NI16 index);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_4017)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* a, NI16 index, tySequence__NE3kNZskLpMeWsT0qd9bxYQ value);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_608)(tySequence__NE3kNZskLpMeWsT0qd9bxYQ* dest, tySequence__NE3kNZskLpMeWsT0qd9bxYQ src);
N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_623)(tySequence__NE3kNZskLpMeWsT0qd9bxYQ* s, NI newlen);
static N_INLINE(NI, pluspercent___system_770)(NI x, NI y);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___pureZcollectionsZintsets_27)(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA** dest, tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* src);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_24)(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA** dest);
N_LIB_PRIVATE N_NIMCALL(NI16, index__nilcheck_2929)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w, typeNilability__nilcheck_5175)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ);
N_LIB_PRIVATE N_NIMCALL(void, check__nilcheck_234)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w, X5BX5D___nilcheck_1623)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NI16 index);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, gteq___nilcheck_188)(NI16 a, NI16 b);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_1572)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ** dest);
N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w*, X5BX5D___nilcheck_1747)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* a, NI16 index);
N_LIB_PRIVATE N_NIMCALL(void, checkInfix__nilcheck_7694)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, checkCondition__nilcheck_238)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NIM_BOOL reverse, NIM_BOOL base);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_5372)(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_5386)(tySequence__fEh0bUDDOwnFhhuQmQJTNA* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_1579)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ** dest, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, union__nilcheck_7258)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* l, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* r);
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, findCommonParent__nilcheck_7243)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* l, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* r);
N_LIB_PRIVATE N_NIMCALL(tySequence__NE3kNZskLpMeWsT0qd9bxYQ, history__nilcheck_1832)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NI16 index);
static N_INLINE(void, X5BX5D___nilcheck_7339)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* s, NI sLen_0, NI i, tyObject_History__GvmH1bmZD6bA1ithz47A7w* Result);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_662)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* dest, tyObject_History__GvmH1bmZD6bA1ithz47A7w src);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_659)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* dest);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___renderer_2511)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b);
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_13)(NimStringV2* dest);
N_LIB_PRIVATE N_NIMCALL(void, checkIsNil__nilcheck_7737)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NIM_BOOL isElse, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, checkCall__nilcheck_5177)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, moveOut__nilcheck_4101)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* target);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_222)(NI a, NI b);
static N_INLINE(NI, len__nilcheck_2768)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s);
N_LIB_PRIVATE N_NIMCALL(void, excl__reorder_448)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(NI, minus___nilcheck_230)(NI a, NI b);
N_LIB_PRIVATE N_NIMCALL(NI, len__nilcheck_4548)(tySequence__0a6ZbC0zPSfUDYzqPnO68A a);
N_LIB_PRIVATE N_NIMCALL(void, moveOutDependants__nilcheck_4602)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**, X5BX5D___nilcheck_2356)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* a, NI16 index);
N_LIB_PRIVATE N_NIMCALL(void, storeDependants__nilcheck_4736)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node, tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_5378)(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* dest, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* src);
N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_8403)(tySequence__fEh0bUDDOwnFhhuQmQJTNA* x, tyTuple__czAeVAIf9abkuDYbRyH2HPw value);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_5392)(tySequence__fEh0bUDDOwnFhhuQmQJTNA* dest, tySequence__fEh0bUDDOwnFhhuQmQJTNA src);
N_LIB_PRIVATE N_NIMCALL(void, checkDotExpr__nilcheck_7223)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, checkRefExpr__nilcheck_7192)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* check, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_5375)(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* dest, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* src);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_5389)(tySequence__fEh0bUDDOwnFhhuQmQJTNA* dest, tySequence__fEh0bUDDOwnFhhuQmQJTNA src);
N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_5404)(tySequence__fEh0bUDDOwnFhhuQmQJTNA* s, NI newlen);
N_LIB_PRIVATE N_NIMCALL(void, checkDeref__nilcheck_7185)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, handleNilability__nilcheck_7180)(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* check, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map);
N_LIB_PRIVATE N_NIMCALL(void, derefWarning__nilcheck_5542)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w kind);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__nilcheck_5600)(tyObject_HashSet__ozdCMJv0qf50Rbb4ExJGdQ s, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg key);
N_LIB_PRIVATE N_NIMCALL(void, incl__nilcheck_6008)(tyObject_HashSet__ozdCMJv0qf50Rbb4ExJGdQ* s, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg key);
static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s, NI addlen);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_9)(NU64 x);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1172)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg, NimStringV2 arg, tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w* info2, NIM_BOOL isRaw);
N_LIB_PRIVATE N_NIMCALL(void, checkIf__nilcheck_7627)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, reverseDirect__nilcheck_2005)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map);
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, copyMap__nilcheck_5165)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_820)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* dest, tySequence__WAoMpel6cRl8wTBAvKwzFQ src);
N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_527)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* s, NI newlen);
N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w, reverse__nilcheck_7862)(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value);
static N_INLINE(tyObject_History__GvmH1bmZD6bA1ithz47A7w*, X5BX5D___nilcheck_8050)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* s, NI sLen_0, NI i);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg, reverse__nilcheck_7865)(tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg kind);
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, add__nilcheck_7369)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* l, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* r);
N_LIB_PRIVATE N_NIMCALL(void, checkBranch__nilcheck_2007)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasUnstructuredControlFlowJump__nilcheck_2011)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, checkAsgn__nilcheck_7479)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* target, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* assigned, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, move__nilcheck_4808)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* target, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* assigned);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newTree__ast_3975)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** children, NI childrenLen_0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__nilcheck_7585)(tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw t, NI key);
N_LIB_PRIVATE N_NIMCALL(void, checkFor__nilcheck_7666)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, checkCase__nilcheck_7798)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, infixEq__nilcheck_7788)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* l, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, infix__nilcheck_7746)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* l, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r, tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg magic);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, newSym__ast_4028)(tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ symKind, tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* name, tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw id, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options);
static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextSymId__ast_3268)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* x);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newSymNode__ast_4787)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_3549)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA** dest, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, newType__ast_4969)(tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ kind, tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw id, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner);
static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextTypeId__ast_3291)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* x);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_4060)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA** dest);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_3460)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, infixOr__nilcheck_7793)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* l, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, prefixNot__nilcheck_7782)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node);
N_LIB_PRIVATE N_NIMCALL(void, checkReturn__nilcheck_7621)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, checkBracketExpr__nilcheck_7229)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, checkTry__nilcheck_7835)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canRaise__ast_6541)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* fn);
static N_INLINE(void, nimMarkCyclic)(void* p);
N_LIB_PRIVATE N_NIMCALL(void, checkWhile__nilcheck_7683)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result);
static N_INLINE(NIM_BOOL, contains__nilcheck_11040)(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw s, NI16 value);
static N_INLINE(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw, dotdot___nilcheck_10965)(NI16 a, NI16 b);
N_LIB_PRIVATE N_NIMCALL(NI16, low__nilcheck_10934)(tySequence__WAoMpel6cRl8wTBAvKwzFQ a);
N_LIB_PRIVATE N_NIMCALL(NI16, high__nilcheck_10942)(tySequence__WAoMpel6cRl8wTBAvKwzFQ a);
N_LIB_PRIVATE N_NIMCALL(void, checkResult__nilcheck_8365)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_11166)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q** dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_11135)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_3248)(tySequence__dAjyAaabi52TN36Jp0fAXQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_5869)(tySequence__CjiF6qhVnW77uIpIJIHh4g* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3232)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___options_3149)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_11144)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* dest, void* env);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_3257)(tySequence__dAjyAaabi52TN36Jp0fAXQ* dest, void* env);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___ast_3732)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest, void* env);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_5878)(tySequence__CjiF6qhVnW77uIpIJIHh4g* dest, void* env);
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_3 = { 6 | NIM_STRLIT_FLAG, "result" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_4 = {6, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_3};
N_LIB_PRIVATE TNimTypeV2 NTIv2__bj6rY6P7ZUHwppEHheXbKQ_;
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_6 = { 4 | NIM_STRLIT_FLAG, "true" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_7 = {4, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_6};
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_8 = { 5 | NIM_STRLIT_FLAG, "false" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_9 = {5, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_8};
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_10 = {4, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_6};
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_11 = {5, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_8};
static const struct {
NI cap; NIM_CHAR data[0+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_12 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_13 = {0, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_12};
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_14 = { 9 | NIM_STRLIT_FLAG, "it is nil" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_15 = {9, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_14};
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_16 = { 15 | NIM_STRLIT_FLAG, "it might be nil" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_17 = {15, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_16};
static const struct {
NI cap; NIM_CHAR data[17+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_18 = { 17 | NIM_STRLIT_FLAG, "it is unreachable" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_19 = {17, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_18};
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_20 = {0, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_12};
static const struct {
NI cap; NIM_CHAR data[12+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_21 = { 12 | NIM_STRLIT_FLAG, "can\'t deref " };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_22 = {12, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_21};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_23 = { 2 | NIM_STRLIT_FLAG, ", " };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_24 = {2, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_23};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_25 = { 1 | NIM_STRLIT_FLAG, "\012" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_26 = {1, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_25};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_27 = { 2 | NIM_STRLIT_FLAG, " " };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_28 = {2, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_27};
static const struct {
NI cap; NIM_CHAR data[23+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_29 = { 23 | NIM_STRLIT_FLAG, "param with nilable type" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_30 = {23, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_29};
static const struct {
NI cap; NIM_CHAR data[25+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_31 = { 25 | NIM_STRLIT_FLAG, "it returns true for isNil" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_32 = {25, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_31};
static const struct {
NI cap; NIM_CHAR data[34+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_33 = { 34 | NIM_STRLIT_FLAG, "assigns a value which might be nil" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_34 = {34, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_33};
static const struct {
NI cap; NIM_CHAR data[48+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_35 = { 48 | NIM_STRLIT_FLAG, "passes it as a var arg which might change to nil" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_36 = {48, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_35};
static const struct {
NI cap; NIM_CHAR data[20+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_37 = { 20 | NIM_STRLIT_FLAG, "it is nil by default" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_38 = {20, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_37};
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_39 = { 15 | NIM_STRLIT_FLAG, "it has ref type" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_40 = {15, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_39};
static const struct {
NI cap; NIM_CHAR data[45+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_41 = { 45 | NIM_STRLIT_FLAG, "it is safe here as it returns false for isNil" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_42 = {45, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_41};
static const struct {
NI cap; NIM_CHAR data[48+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_43 = { 48 | NIM_STRLIT_FLAG, "it might be changed directly or through an alias" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_44 = {48, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_43};
static const struct {
NI cap; NIM_CHAR data[53+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_45 = { 53 | NIM_STRLIT_FLAG, "it might be changed because its base might be changed" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_46 = {53, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_45};
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_47 = { 9 | NIM_STRLIT_FLAG, " on line " };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_48 = {9, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_47};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_49 = { 1 | NIM_STRLIT_FLAG, ":" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_50 = {1, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_49};
static const struct {
NI cap; NIM_CHAR data[38+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_52 = { 38 | NIM_STRLIT_FLAG, "/home/wind/nimv2/compiler/nilcheck.nim" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_53 = { 2 | NIM_STRLIT_FLAG, "==" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_54 = {2, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_53};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_55 = { 3 | NIM_STRLIT_FLAG, "and" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_56 = {3, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_55};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_57 = { 2 | NIM_STRLIT_FLAG, "or" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_58 = {2, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_57};
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_59 = {0, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_12};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_60 = { 3 | NIM_STRLIT_FLAG, "not" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_61 = {3, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_60};
static const struct {
NI cap; NIM_CHAR data[19+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_62 = { 19 | NIM_STRLIT_FLAG, "return value is nil" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_63 = {19, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_62};
static const struct {
NI cap; NIM_CHAR data[25+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_65 = { 25 | NIM_STRLIT_FLAG, "return value might be nil" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_66 = {25, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_65};
static const struct {
NI cap; NIM_CHAR data[27+1];
} TM__9a75rVZu7sg4HRrHPMS3VUw_68 = { 27 | NIM_STRLIT_FLAG, "return value is unreachable" };
static const NimStringV2 TM__9a75rVZu7sg4HRrHPMS3VUw_69 = {27, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_68};
N_LIB_PRIVATE TNimTypeV2 NTIv2__LCzH79cvZlNof6AWyaJPu5Q_;
extern TNimTypeV2 NTIv2__C1k2TcDRT9cU4DEatQIT09ag_;
static NIM_CONST tyArray__brqof9bq2QWioDkbae3wZsw TM__9a75rVZu7sg4HRrHPMS3VUw_2 = {{((NI)-1),
((NI16)0)}
}
;
extern NIM_CONST tySet_tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ nkLiterals__ast_3180;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__9a75rVZu7sg4HRrHPMS3VUw_51 = {{38, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_52},
((NI)578),
((NI)9)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__9a75rVZu7sg4HRrHPMS3VUw_64 = {{38, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_52},
((NI)1181),
((NI)11)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__9a75rVZu7sg4HRrHPMS3VUw_67 = {{38, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_52},
((NI)1183),
((NI)11)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__9a75rVZu7sg4HRrHPMS3VUw_70 = {{38, (NimStrPayload*)&TM__9a75rVZu7sg4HRrHPMS3VUw_52},
((NI)1185),
((NI)11)}
;
extern NIM_BOOL nimInErrorMode__system_3980;
static NIM_CONST NU32 TM__9a75rVZu7sg4HRrHPMS3VUw_5[1] = {1051419392};
N_LIB_PRIVATE TNimTypeV2 NTIv2__bj6rY6P7ZUHwppEHheXbKQ_ = {.destructor = (void*)eqdestroy___nilcheck_1585, .size = sizeof(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ), .align = (NI16) NIM_ALIGNOF(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ), .depth = 0, .display = TM__9a75rVZu7sg4HRrHPMS3VUw_5, .traceImpl = (void*)eqtrace___nilcheck_1594, .flags = 0};
static NIM_CONST NU32 TM__9a75rVZu7sg4HRrHPMS3VUw_71[1] = {751300352};
N_LIB_PRIVATE TNimTypeV2 NTIv2__LCzH79cvZlNof6AWyaJPu5Q_ = {.destructor = (void*)eqdestroy___nilcheck_11135, .size = sizeof(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q), .align = (NI16) NIM_ALIGNOF(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q), .depth = 0, .display = TM__9a75rVZu7sg4HRrHPMS3VUw_71, .traceImpl = (void*)eqtrace___nilcheck_11144, .flags = 0};
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
NIM_BOOL* result;
result = (NIM_BOOL*)0;
result = (&nimInErrorMode__system_3980);
return result;
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimSetMem__systemZmemory_7(p, ((int)0), size);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_2920)(NI a, NI b) {
NIM_BOOL result;
result = (NIM_BOOL)0;
result = (a == b);
return result;
}
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y) {
NI result;
result = (NI)0;
result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
return result;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p) {
NIM_BOOL result;
result = (NIM_BOOL)0;
{
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell;
NI T5_;
if (!!((p == NIM_NIL))) goto LA3_;
T5_ = (NI)0;
T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)16));
cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_));
{
if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
result = NIM_TRUE;
}
goto LA6_;
LA8_: ;
{
(*cell).rc -= ((NI)16);
}
LA6_: ;
}
LA3_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_2374)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest) {
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmp_ = ((NI)0);
{
while (1) {
NI T3_;
T3_ = (*dest).len;
if (!(colontmp_ < T3_)) goto LA2 ;
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = nimDecRefIsLast((*dest).p->data[colontmp_]);
if (!T6_) goto LA7_;
eqdestroy___ast_3466((*dest).p->data[colontmp_]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).p->data[colontmp_], ((NI)8));
}
LA7_: ;
colontmp_ += ((NI)1);
} LA2: ;
}
if ((*dest).p && !((*dest).p->cap & NIM_STRLIT_FLAG)) {
alignedDealloc((*dest).p, NIM_ALIGNOF(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*));
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_2394)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest, tySequence__xxu3GgaFAGO6lOns9aHaeLQ src) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
if ((*dest).p != src.p) { eqdestroy___nilcheck_2374(dest);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
(*dest).len = src.len; (*dest).p = src.p;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_1349)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest) {
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmp_ = ((NI)0);
{
while (1) {
NI T3_;
T3_ = (*dest).len;
if (!(colontmp_ < T3_)) goto LA2 ;
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = nimDecRefIsLast((*dest).p->data[colontmp_].head);
if (!T6_) goto LA7_;
eqdestroy___pureZcollectionsZintsets_36((*dest).p->data[colontmp_].head);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).p->data[colontmp_].head, ((NI)8));
}
LA7_: ;
eqdestroy___pureZcollectionsZintsets_56((&(*dest).p->data[colontmp_].data));
colontmp_ += ((NI)1);
} LA2: ;
}
if ((*dest).p && !((*dest).p->cap & NIM_STRLIT_FLAG)) {
alignedDealloc((*dest).p, NIM_ALIGNOF(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, symbol__nilcheck_2001)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
switch ((*n).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2):
{
result = ((NI)-2);
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3):
{
{
if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)11))) goto LA5_;
result = ((NI)-1);
}
goto LA3_;
LA5_: ;
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym10_;
xX60gensym10_ = NIM_NIL;
xX60gensym10_ = (*n)._kind_4.sym;
result = (NI)((NI)((NU64)(((NI) ((*xX60gensym10_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym10_).Sup.itemId.item)));
}
LA3_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)64):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)63):
{
result = symbol__nilcheck_2001((*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
default:
{
result = hashTree__treetab_6(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_7325)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ a) {
NI16 result;
NI T1_;
result = (NI16)0;
T1_ = a.len;
result = ((NI16) (T1_));
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_9817)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmpD_ = NIM_NIL;
colontmpD_ = 0;
eqcopy___ast_3457(&colontmpD_, value);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
add__ast_4147((&(*a)), colontmpD_);
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___nilcheck_2924)(NI a) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = dollar___systemZdollars_3(a);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___nilcheck_180)(NI16 a, NI16 b) {
NIM_BOOL result;
result = (NIM_BOOL)0;
result = (a <= b);
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_10148)(tySequence__0a6ZbC0zPSfUDYzqPnO68A a) {
NI16 result;
NI T1_;
result = (NI16)0;
T1_ = a.len;
result = ((NI16) (T1_));
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setLen__nilcheck_10156)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a, NI16 length) {
setLen__nilcheck_1268((&(*a)), ((NI) (length)));
}
N_LIB_PRIVATE N_NIMCALL(NI16, plus___nilcheck_199)(NI16 a, NI16 b) {
NI16 result;
result = (NI16)0;
result = (NI16)(a + b);
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*, X5BX5D___nilcheck_4664)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a, NI16 index) {
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* result;
result = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
result = (&(*a).p->data[index]);
return result;
}
static N_INLINE(NI, len__ast_3325)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NI result;
NI T1_;
result = (NI)0;
T1_ = (*n)._kind_6.sons.len;
result = T1_;
return result;
}
static N_INLINE(NI, safeLen__ast_3318)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
{
if (!((*n).kind >= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0) && (*n).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23))) goto LA3_;
result = ((NI)0);
}
goto LA1_;
LA3_: ;
{
result = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA1_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, preVisitNode__nilcheck_8459)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NIM_BOOL oldNimErrFin31_;
NIM_BOOL oldNimErrFin64_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
NIM_BOOL T5_;
NI nodeSymbol;
T3_ = (NIM_BOOL)0;
T3_ = ((*node).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3) || (*node).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45));
if (T3_) goto LA4_;
T5_ = (NIM_BOOL)0;
T5_ = ((*node).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42));
if (!(T5_)) goto LA6_;
T5_ = ((nkLiterals__ast_3180[(NU)(((*(*node)._kind_6.sons.p->data[((NI)1)]).kind))>>3] &(1U<<((NU)(((*(*node)._kind_6.sons.p->data[((NI)1)]).kind))&7U)))!=0);
LA6_: ;
T3_ = T5_;
LA4_: ;
if (!T3_) goto LA7_;
nodeSymbol = symbol__nilcheck_2001(node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T11_;
NI16 T14_;
T11_ = (NIM_BOOL)0;
T11_ = hasKey__nilcheck_2974((*ctx).symbolIndices, nodeSymbol);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!!(T11_)) goto LA12_;
T14_ = (NI16)0;
T14_ = len__nilcheck_7325((*ctx).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
X5BX5Deq___nilcheck_8621((&(*ctx).symbolIndices), nodeSymbol, T14_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
add__nilcheck_9817((&(*ctx).expressions), node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA12_: ;
{
if (!((*node).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45) || (*node).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42))) goto LA17_;
{
NIM_BOOL T21_;
NIM_BOOL T22_;
NIM_BOOL T24_;
NIM_BOOL T25_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* base;
NI16 index;
NI16* T32_;
NI16 baseIndex;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T33_;
T21_ = (NIM_BOOL)0;
T22_ = (NIM_BOOL)0;
T22_ = ((*node).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45));
if (!(T22_)) goto LA23_;
T24_ = (NIM_BOOL)0;
T25_ = (NIM_BOOL)0;
T25_ = !(((*node).typ == 0));
if (!(T25_)) goto LA26_;
T25_ = ((*(*node).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22));
LA26_: ;
T24_ = T25_;
if (!(T24_)) goto LA27_;
T24_ = !((((*(*node).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)17)))&63U)))!=0));
LA27_: ;
T22_ = T24_;
LA23_: ;
T21_ = T22_;
if (T21_) goto LA28_;
T21_ = ((*node).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42));
LA28_: ;
if (!T21_) goto LA29_;
base = NIM_NIL;
T32_ = (NI16*)0;
T32_ = X5BX5D___nilcheck_3424((&(*ctx).symbolIndices), nodeSymbol);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
index = (*T32_);
baseIndex = ((NI16)-1);
T33_ = NIM_NIL;
{
if (!!(((*(*node)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3) || (*(*node)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2)))) goto LA36_;
eqcopy___ast_3457(&base, (*(*node)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
}
goto LA34_;
LA36_: ;
{
eqcopy___ast_3457(&base, (*node)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
}
LA34_: ;
{
NI baseSymbol;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T57_;
if (!!(((*base).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2)))) goto LA41_;
baseSymbol = symbol__nilcheck_2001(base);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
{
NIM_BOOL T45_;
T45_ = (NIM_BOOL)0;
T45_ = hasKey__nilcheck_2974((*ctx).symbolIndices, baseSymbol);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
if (!!(T45_)) goto LA46_;
baseIndex = len__nilcheck_7325((*ctx).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
}
goto LA43_;
LA46_: ;
{
NI16* T49_;
T49_ = (NI16*)0;
T49_ = X5BX5D___nilcheck_3424((&(*ctx).symbolIndices), baseSymbol);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
baseIndex = (*T49_);
}
LA43_: ;
{
NI16 T52_;
NIM_BOOL T53_;
NI16 T56_;
T52_ = (NI16)0;
T52_ = len__nilcheck_10148((*ctx).dependants);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
T53_ = (NIM_BOOL)0;
T53_ = lteq___nilcheck_180(T52_, baseIndex);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
if (!T53_) goto LA54_;
T56_ = (NI16)0;
T56_ = plus___nilcheck_199(baseIndex, ((NI16)1));
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
setLen__nilcheck_10156((&(*ctx).dependants), T56_);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
}
LA54_: ;
T57_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T57_ = X5BX5D___nilcheck_4664((&(*ctx).dependants), baseIndex);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
incl__pureZcollectionsZintsets_202(T57_, ((NI) (index)));
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
}
LA41_: ;
{
LA31_:;
}
{
oldNimErrFin31_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&base);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin31_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA29_: ;
}
LA17_: ;
}
LA7_: ;
switch ((*node).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)4):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)5) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)15):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)16) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)18):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)20) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)22):
{
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45):
{
preVisitNode__nilcheck_8459(ctx, (*node)._kind_6.sons.p->data[((NI)0)], conf);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
default:
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* element;
element = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(node);
if (NIM_UNLIKELY(*nimErr_)) goto LA64_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA67 ;
i = i_2;
eqcopy___ast_3457(&element, (*node)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA64_;
preVisitNode__nilcheck_8459(ctx, element, conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA64_;
i_2 += ((NI)1);
} LA67: ;
}
}
{
LA64_:;
}
{
oldNimErrFin64_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&element);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin64_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
break;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___nilcheck_164)(NI16 a, NI16 b) {
NIM_BOOL result;
result = (NIM_BOOL)0;
result = (a < b);
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, preVisit__nilcheck_10252)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* colontmpD_;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA emptySet;
tyObject_Table__mx89bZoYrm9bEaZ0GUM1pBOw T2_;
tySequence__xxu3GgaFAGO6lOns9aHaeLQ T3_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T4_;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA blitTmp;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
cache = NIM_NIL;
colontmpD_ = NIM_NIL;
nimZeroMem((void*)(&emptySet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
T2_ = toTable__nilcheck_10257(TM__9a75rVZu7sg4HRrHPMS3VUw_2, 1);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_10343((&(*ctx).symbolIndices), T2_);
cache = newIdentCache__idents_175();
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T3_.len = 0; T3_.p = NIM_NIL;
T3_.len = 1; T3_.p = (tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content*) newSeqPayload(1, sizeof(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*), NIM_ALIGNOF(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*));
colontmpD_ = getIdent__idents_166(cache, TM__9a75rVZu7sg4HRrHPMS3VUw_4);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T4_ = NIM_NIL;
T4_ = newIdentNode__ast_4780(colontmpD_, (*(*s).ast).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T3_.p->data[0] = T4_;
eqsink___nilcheck_2394((&(*ctx).expressions), T3_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___nilcheck_1349((&(*ctx).dependants));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*ctx).dependants.len = 1; (*ctx).dependants.p = (tySequence__0a6ZbC0zPSfUDYzqPnO68A_Content*) newSeqPayload(1, sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA), NIM_ALIGNOF(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
nimZeroMem((void*)(&blitTmp), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
blitTmp = emptySet;
nimZeroMem((void*)(&emptySet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
(*ctx).dependants.p->data[0] = blitTmp;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arg;
tySequence__xxu3GgaFAGO6lOns9aHaeLQ colontmp_;
NI i;
NI i_2;
NI L;
NI T7_;
arg = NIM_NIL;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
i = (NI)0;
eqcopy___ast_3726((&colontmp_), (*(*(*s).typ).n)._kind_6.sons);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
i_2 = ((NI)0);
T7_ = colontmp_.len;
L = T7_;
{
while (1) {
if (!(i_2 < L)) goto LA9 ;
i = i_2;
eqcopy___ast_3457(&arg, colontmp_.p->data[i_2]);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
{
{
NI argSymbol;
if (!(((NI)0) < i)) goto LA13_;
{
if (!!(((*arg).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)))) goto LA17_;
goto LA10;
}
LA17_: ;
argSymbol = symbol__nilcheck_2001(arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
{
NIM_BOOL T21_;
NI16 T24_;
T21_ = (NIM_BOOL)0;
T21_ = hasKey__nilcheck_2974((*ctx).symbolIndices, argSymbol);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
if (!!(T21_)) goto LA22_;
T24_ = (NI16)0;
T24_ = len__nilcheck_7325((*ctx).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
X5BX5Deq___nilcheck_8621((&(*ctx).symbolIndices), argSymbol, T24_);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
add__nilcheck_9817((&(*ctx).expressions), arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
}
LA22_: ;
}
LA13_: ;
} LA10: ;
i_2 += ((NI)1);
} LA9: ;
}
{
LA6_:;
}
{
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3723((&colontmp_));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin6_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
preVisitNode__nilcheck_8459(ctx, body, conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI16 T29_;
NI16 T30_;
NIM_BOOL T31_;
NI16 T34_;
T29_ = (NI16)0;
T29_ = len__nilcheck_10148((*ctx).dependants);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T30_ = (NI16)0;
T30_ = len__nilcheck_7325((*ctx).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T31_ = (NIM_BOOL)0;
T31_ = lt___nilcheck_164(T29_, T30_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T31_) goto LA32_;
T34_ = (NI16)0;
T34_ = len__nilcheck_7325((*ctx).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
setLen__nilcheck_10156((&(*ctx).dependants), T34_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA32_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_181((&emptySet));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___idents_133(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___idents_263(&cache);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI16, len__nilcheck_307)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw a) {
NI16 result;
NI T1_;
result = (NI16)0;
T1_ = a.len;
result = ((NI16) (T1_));
return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw, newSeqOfDistinct__nilcheck_494)(NI length) {
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw result;
result.len = 0; result.p = NIM_NIL;
result = newSeq__nilcheck_478(((NI) (length)));
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_605)(tySequence__NE3kNZskLpMeWsT0qd9bxYQ* dest) {
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmp_ = ((NI)0);
{
while (1) {
NI T3_;
T3_ = (*dest).len;
if (!(colontmp_ < T3_)) goto LA2 ;
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = nimDecRefIsLast((*dest).p->data[colontmp_].node);
if (!T6_) goto LA7_;
eqdestroy___ast_3466((*dest).p->data[colontmp_].node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).p->data[colontmp_].node, ((NI)8));
}
LA7_: ;
colontmp_ += ((NI)1);
} LA2: ;
}
if ((*dest).p && !((*dest).p->cap & NIM_STRLIT_FLAG)) {
alignedDealloc((*dest).p, NIM_ALIGNOF(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_611)(tySequence__NE3kNZskLpMeWsT0qd9bxYQ* dest, tySequence__NE3kNZskLpMeWsT0qd9bxYQ src) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
if ((*dest).p != src.p) { eqdestroy___nilcheck_605(dest);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
(*dest).len = src.len; (*dest).p = src.p;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__WAoMpel6cRl8wTBAvKwzFQ, newSeqOfDistinct__nilcheck_841)(NI length) {
tySequence__WAoMpel6cRl8wTBAvKwzFQ result;
result.len = 0; result.p = NIM_NIL;
result = newSeq__nilcheck_515(((NI) (length)));
return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g, newSeqOfDistinct__nilcheck_1020)(NI length) {
tySequence__qwqHTkRvwhrRyENtudHQ7g result;
result.len = 0; result.p = NIM_NIL;
result = newSeq__nilcheck_862(((NI) (length)));
return result;
}
static N_INLINE(void, nimIncRefCyclic)(void* p, NIM_BOOL cyclic) {
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* h;
NI T1_;
T1_ = (NI)0;
T1_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)16));
h = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T1_));
(*h).rc += ((NI)16);
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p, TNimTypeV2* desc) {
NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
{
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell;
NI T5_;
if (!!((p == NIM_NIL))) goto LA3_;
T5_ = (NI)0;
T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)16));
cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_));
{
if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
result = NIM_TRUE;
}
goto LA6_;
LA8_: ;
{
(*cell).rc -= ((NI)16);
}
LA6_: ;
rememberCycle__system_3143(result, cell, desc);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_316)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* dest) {
if ((*dest).p && !((*dest).p->cap & NIM_STRLIT_FLAG)) {
alignedDealloc((*dest).p, NIM_ALIGNOF(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w));
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_1250)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest) {
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmp_ = ((NI)0);
{
while (1) {
NI T3_;
T3_ = (*dest).len;
if (!(colontmp_ < T3_)) goto LA2 ;
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = nimDecRefIsLast((*dest).p->data[colontmp_].head);
if (!T6_) goto LA7_;
eqdestroy___pureZcollectionsZintsets_36((*dest).p->data[colontmp_].head);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).p->data[colontmp_].head, ((NI)8));
}
LA7_: ;
eqdestroy___pureZcollectionsZintsets_56((&(*dest).p->data[colontmp_].data));
colontmp_ += ((NI)1);
} LA2: ;
}
if ((*dest).p && !((*dest).p->cap & NIM_STRLIT_FLAG)) {
alignedDealloc((*dest).p, NIM_ALIGNOF(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_1585)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* dest) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
eqdestroy___nilcheck_316((&(*dest).expressions));
eqdestroy___nilcheck_773((&(*dest).history));
eqdestroy___nilcheck_960((&(*dest).setIndices));
eqdestroy___nilcheck_1250((&(*dest).sets));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicStatic((*dest).parent, (&NTIv2__bj6rY6P7ZUHwppEHheXbKQ_));
if (!T3_) goto LA4_;
eqdestroy___nilcheck_1585((*dest).parent);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).parent, ((NI)8));
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_614)(tySequence__NE3kNZskLpMeWsT0qd9bxYQ* dest, void* env) {
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_1259)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest, void* env) {
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memcpy(dest, source, ((size_t) (size)));
}
static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size) {
nimCopyMem(dest, source, size);
}
static N_INLINE(void, add__system_2688)(tyObject_CellSeq__sGle0igznE2T7vk4dBh5SQ* s, void** c, TNimTypeV2* t) {
void** colontmp_;
TNimTypeV2* colontmp__2;
{
tyTuple__N4J9cV4JZGem3ljqqj5rT0Q* d;
void* T5_;
if (!((*s).cap <= (*s).len)) goto LA3_;
(*s).cap = (NI)((NI)((*s).cap * ((NI)3)) / ((NI)2));
T5_ = (void*)0;
T5_ = allocImpl__system_1735(((NI) ((NI)((*s).cap * ((NI)16)))));
d = ((tyTuple__N4J9cV4JZGem3ljqqj5rT0Q*) (T5_));
copyMem__system_1719(((void*) (d)), ((void*) ((*s).d)), ((NI) ((NI)((*s).len * ((NI)16)))));
dealloc(((void*) ((*s).d)));
(*s).d = d;
}
LA3_: ;
colontmp_ = c;
colontmp__2 = t;
(*s).d[(*s).len].Field0 = colontmp_;
(*s).d[(*s).len].Field1 = colontmp__2;
(*s).len += ((NI)1);
}
static N_INLINE(void, nimTraceRef)(void* q, TNimTypeV2* desc, void* env) {
void** p;
p = ((void**) (q));
{
tyObject_GcEnv__g0b9ao2MXcYnUpu9b4I8eP9bQ* j;
if (!!(((*p) == NIM_NIL))) goto LA3_;
j = ((tyObject_GcEnv__g0b9ao2MXcYnUpu9b4I8eP9bQ*) (env));
add__system_2688((&(*j).traceStack), p, desc);
}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_1594)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* dest, void* env) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
eqtrace___nilcheck_782((&(*dest).history), env);
eqtrace___nilcheck_1259((&(*dest).sets), env);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimTraceRef(&(*dest).parent, (&NTIv2__bj6rY6P7ZUHwppEHheXbKQ_), env);
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_1575)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ** dest, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* src, NIM_BOOL cyclic) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmp_ = (*dest);
{
if (!src) goto LA3_;
nimIncRefCyclic(src, cyclic);
}
LA3_: ;
(*dest) = src;
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = nimDecRefIsLastCyclicStatic(colontmp_, (&NTIv2__bj6rY6P7ZUHwppEHheXbKQ_));
if (!T7_) goto LA8_;
eqdestroy___nilcheck_1585(colontmp_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose(colontmp_, ((NI)8));
}
LA8_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_322)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* dest, tySequence__Th9bZ3i8H7r9aIXe20QsLwRw src) {
if ((*dest).p != src.p) { eqdestroy___nilcheck_316(dest);
}
(*dest).len = src.len; (*dest).p = src.p;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_451)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* dest, tySequence__Th9bZ3i8H7r9aIXe20QsLwRw src) {
NI T1_;
NI colontmp_;
T1_ = src.len;
setLen__nilcheck_332((&(*dest)), T1_);
colontmp_ = ((NI)0);
{
while (1) {
NI T4_;
T4_ = (*dest).len;
if (!(colontmp_ < T4_)) goto LA3 ;
(*dest).p->data[colontmp_] = src.p->data[colontmp_];
colontmp_ += ((NI)1);
} LA3: ;
}
}
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_1128)(tySequence__qwqHTkRvwhrRyENtudHQ7g* a, NI16 index, NI value) {
(*a).p->data[index] = value;
}
static N_INLINE(void, initIntSet__pureZcollectionsZintsets_389)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
initPackedSet__pureZcollectionsZintsets_16(Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, add__nilcheck_1184)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* value) {
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
eqcopy___pureZcollectionsZintsets_184((&colontmpD_), value);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
add__nilcheck_1189((&(*a)), (&colontmpD_));
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_1256)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest, tySequence__0a6ZbC0zPSfUDYzqPnO68A src) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
if ((*dest).p != src.p) { eqdestroy___nilcheck_1250(dest);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
(*dest).len = src.len; (*dest).p = src.p;
}BeforeRet_: ;
}
static N_INLINE(void, nimIncRef)(void* p) {
NI T1_;
T1_ = (NI)0;
T1_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)16));
(*((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T1_))).rc += ((NI)16);
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_1357)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* dest, tySequence__0a6ZbC0zPSfUDYzqPnO68A src) {
NI T1_;
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
T1_ = src.len;
setLen__nilcheck_1268((&(*dest)), T1_);
colontmp_ = ((NI)0);
{
while (1) {
NI T4_;
T4_ = (*dest).len;
if (!(colontmp_ < T4_)) goto LA3 ;
(*dest).p->data[colontmp_].elems = src.p->data[colontmp_].elems;
(*dest).p->data[colontmp_].counter = src.p->data[colontmp_].counter;
(*dest).p->data[colontmp_].max = src.p->data[colontmp_].max;
{
if (!src.p->data[colontmp_].head) goto LA7_;
nimIncRef(src.p->data[colontmp_].head);
}
LA7_: ;
{
NIM_BOOL T11_;
T11_ = (NIM_BOOL)0;
T11_ = nimDecRefIsLast((*dest).p->data[colontmp_].head);
if (!T11_) goto LA12_;
eqdestroy___pureZcollectionsZintsets_36((*dest).p->data[colontmp_].head);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).p->data[colontmp_].head, ((NI)8));
}
LA12_: ;
(*dest).p->data[colontmp_].head = src.p->data[colontmp_].head;
eqcopy___pureZcollectionsZintsets_59((&(*dest).p->data[colontmp_].data), src.p->data[colontmp_].data);
nimCopyMem((void*)(*dest).p->data[colontmp_].a, (NIM_CONST void*)src.p->data[colontmp_].a, sizeof(tyArray__emiAJ8okywrJw7ZHLzlXbQ));
colontmp_ += ((NI)1);
} LA3: ;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_1002)(tySequence__qwqHTkRvwhrRyENtudHQ7g* dest, tySequence__qwqHTkRvwhrRyENtudHQ7g src) {
NI T1_;
NI colontmp_;
T1_ = src.len;
setLen__nilcheck_874((&(*dest)), T1_);
colontmp_ = ((NI)0);
{
while (1) {
NI T4_;
T4_ = (*dest).len;
if (!(colontmp_ < T4_)) goto LA3 ;
(*dest).p->data[colontmp_] = src.p->data[colontmp_];
colontmp_ += ((NI)1);
} LA3: ;
}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, newNilMap__nilcheck_244)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* parent, NI count) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* result;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmpD_;
NI expressionsCount;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T9_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
colontmpD_ = NIM_NIL;
expressionsCount = ((NI)0);
{
if (!!((count == ((NI)-1)))) goto LA3_;
expressionsCount = count;
}
goto LA1_;
LA3_: ;
{
NI16 T8_;
if (!!((parent == 0))) goto LA6_;
T8_ = (NI16)0;
T8_ = len__nilcheck_307((*parent).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
expressionsCount = ((NI) (T8_));
}
goto LA1_;
LA6_: ;
LA1_: ;
T9_ = NIM_NIL;
T9_ = (tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*) nimNewObj(sizeof(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ), NIM_ALIGNOF(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ));
(*T9_).expressions = newSeqOfDistinct__nilcheck_494(expressionsCount);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*T9_).history = newSeqOfDistinct__nilcheck_841(expressionsCount);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*T9_).setIndices = newSeqOfDistinct__nilcheck_1020(expressionsCount);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
colontmpD_ = 0;
eqcopy___nilcheck_1575(&colontmpD_, parent, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*T9_).parent = colontmpD_;
result = T9_;
{
if (!(parent == 0)) goto LA12_;
{
NI16 i;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w expr;
i = (NI16)0;
expr = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw colontmp_;
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw colontmpD__2;
NI i_2;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w element;
NI i_3;
NI L;
NI T16_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
i_2 = (NI)0;
element = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
eqcopy___nilcheck_451((&colontmpD__2), (*result).expressions);
eqsink___nilcheck_322((&colontmp_), colontmpD__2);
i_3 = ((NI)0);
T16_ = colontmp_.len;
L = T16_;
{
while (1) {
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA newSet;
if (!(i_3 < L)) goto LA18 ;
nimZeroMem((void*)(&newSet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
i_2 = i_3;
element = colontmp_.p->data[i_3];
i = ((NI16) (i_2));
expr = element;
X5BX5Deq___nilcheck_1128((&(*result).setIndices), i, ((NI) (i)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
initIntSet__pureZcollectionsZintsets_389((&newSet));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
incl__pureZcollectionsZintsets_202((&newSet), ((NI) (i)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
add__nilcheck_1184((&(*result).sets), (&newSet));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_3 += ((NI)1);
eqdestroy___pureZcollectionsZintsets_181((&newSet));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA18: ;
}
eqdestroy___nilcheck_316((&colontmp_));
}
}
}
goto LA10_;
LA12_: ;
{
{
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA exprs;
NI i_4;
nimZeroMem((void*)(&exprs), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
i_4 = (NI)0;
{
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA element_2;
tySequence__0a6ZbC0zPSfUDYzqPnO68A colontmp__2;
tySequence__0a6ZbC0zPSfUDYzqPnO68A colontmpD__3;
NI i_5;
NI i_6;
NI L_2;
NI T22_;
nimZeroMem((void*)(&element_2), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
colontmp__2.len = 0; colontmp__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
i_5 = (NI)0;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
eqcopy___nilcheck_1357((&colontmpD__3), (*parent).sets);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___nilcheck_1256((&colontmp__2), colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_6 = ((NI)0);
T22_ = colontmp__2.len;
L_2 = T22_;
{
while (1) {
if (!(i_6 < L_2)) goto LA24 ;
i_5 = i_6;
eqcopy___pureZcollectionsZintsets_184((&element_2), (&colontmp__2.p->data[i_6]));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_4 = i_5;
eqsink___pureZcollectionsZintsets_187((&exprs), (&element_2));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimZeroMem((void*)(&element_2), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
add__nilcheck_1184((&(*result).sets), (&exprs));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_6 += ((NI)1);
} LA24: ;
}
eqdestroy___nilcheck_1250((&colontmp__2));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___pureZcollectionsZintsets_181((&element_2));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
eqdestroy___pureZcollectionsZintsets_181((&exprs));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
{
NI16 i_7;
NI index;
i_7 = (NI16)0;
index = (NI)0;
{
tySequence__qwqHTkRvwhrRyENtudHQ7g colontmp__3;
tySequence__qwqHTkRvwhrRyENtudHQ7g colontmpD__4;
NI i_8;
NI element_3;
NI i_9;
NI L_3;
NI T27_;
colontmp__3.len = 0; colontmp__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
i_8 = (NI)0;
element_3 = (NI)0;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
eqcopy___nilcheck_1002((&colontmpD__4), (*parent).setIndices);
eqsink___nilcheck_966((&colontmp__3), colontmpD__4);
i_9 = ((NI)0);
T27_ = colontmp__3.len;
L_3 = T27_;
{
while (1) {
if (!(i_9 < L_3)) goto LA29 ;
i_8 = i_9;
element_3 = colontmp__3.p->data[i_9];
i_7 = ((NI16) (i_8));
index = element_3;
X5BX5Deq___nilcheck_1128((&(*result).setIndices), i_7, index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_9 += ((NI)1);
} LA29: ;
}
eqdestroy___nilcheck_960((&colontmp__3));
}
}
}
LA10_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_192)(NI16 a, NI16 b) {
NIM_BOOL result;
result = (NIM_BOOL)0;
result = (a == b);
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_3830)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* a, NI16 index, tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value) {
(*a).p->data[index] = value;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__NE3kNZskLpMeWsT0qd9bxYQ*, X5BX5D___nilcheck_1952)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* a, NI16 index) {
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* result;
result = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
result = (&(*a).p->data[index]);
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*, X5BX5D___nilcheck_2488)(tySequence__0a6ZbC0zPSfUDYzqPnO68A* a, NI index) {
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* result;
result = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
result = (&(*a).p->data[index]);
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI*, X5BX5D___nilcheck_3573)(tySequence__qwqHTkRvwhrRyENtudHQ7g* a, NI16 index) {
NI* result;
result = (NI*)0;
result = (&(*a).p->data[index]);
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, aliasSet__nilcheck_3653)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NI16 index, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) {
NI* T1_;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
T1_ = (NI*)0;
T1_ = X5BX5D___nilcheck_3573((&(*map).setIndices), index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T2_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T2_ = X5BX5D___nilcheck_2488((&(*map).sets), (*T1_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___pureZcollectionsZintsets_184(Result, (&(*T2_)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_665)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* dest, tyObject_History__GvmH1bmZD6bA1ithz47A7w src) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
(*dest).info.line = src.info.line;
(*dest).info.col = src.info.col;
(*dest).info.fileIndex = src.info.fileIndex;
(*dest).nilability = src.nilability;
(*dest).kind = src.kind;
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLast((*dest).node);
if (!T3_) goto LA4_;
eqdestroy___ast_3466((*dest).node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).node, ((NI)8));
}
LA4_: ;
(*dest).node = src.node;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_608)(tySequence__NE3kNZskLpMeWsT0qd9bxYQ* dest, tySequence__NE3kNZskLpMeWsT0qd9bxYQ src) {
NI T1_;
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
T1_ = src.len;
setLen__nilcheck_623((&(*dest)), T1_);
colontmp_ = ((NI)0);
{
while (1) {
NI T4_;
T4_ = (*dest).len;
if (!(colontmp_ < T4_)) goto LA3 ;
(*dest).p->data[colontmp_].info.line = src.p->data[colontmp_].info.line;
(*dest).p->data[colontmp_].info.col = src.p->data[colontmp_].info.col;
(*dest).p->data[colontmp_].info.fileIndex = src.p->data[colontmp_].info.fileIndex;
(*dest).p->data[colontmp_].nilability = src.p->data[colontmp_].nilability;
(*dest).p->data[colontmp_].kind = src.p->data[colontmp_].kind;
{
if (!src.p->data[colontmp_].node) goto LA7_;
nimIncRef(src.p->data[colontmp_].node);
}
LA7_: ;
{
NIM_BOOL T11_;
T11_ = (NIM_BOOL)0;
T11_ = nimDecRefIsLast((*dest).p->data[colontmp_].node);
if (!T11_) goto LA12_;
eqdestroy___ast_3466((*dest).p->data[colontmp_].node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).p->data[colontmp_].node, ((NI)8));
}
LA12_: ;
(*dest).p->data[colontmp_].node = src.p->data[colontmp_].node;
colontmp_ += ((NI)1);
} LA3: ;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___nilcheck_4017)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* a, NI16 index, tySequence__NE3kNZskLpMeWsT0qd9bxYQ value) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
eqcopy___nilcheck_608((&(*a).p->data[index]), value);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(NI, pluspercent___system_770)(NI x, NI y) {
NI result;
result = (NI)0;
result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, store__nilcheck_3782)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, NI16 index, tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value, tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node) {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD_;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg colontmpD__2;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__4;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA exprAliases;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T7_;
tyObject_History__GvmH1bmZD6bA1ithz47A7w T8_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
colontmpD__2 = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
colontmpD__3 = NIM_NIL;
colontmpD__4 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
nimZeroMem((void*)(&exprAliases), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
{
NIM_BOOL T4_;
T4_ = (NIM_BOOL)0;
T4_ = eqeq___nilcheck_192(index, ((NI16)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T4_) goto LA5_;
eqdestroy___pureZcollectionsZintsets_181((&exprAliases));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA5_: ;
X5BX5Deq___nilcheck_3830((&(*map).expressions), index, value);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T7_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T7_ = X5BX5D___nilcheck_1952((&(*map).history), index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
nimZeroMem((void*)(&T8_), sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
nimZeroMem((void*)(&T8_), sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
colontmpD_ = info;
T8_.info = colontmpD_;
colontmpD__2 = kind;
T8_.kind = colontmpD__2;
colontmpD__3 = 0;
eqcopy___ast_3457(&colontmpD__3, node);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T8_.node = colontmpD__3;
colontmpD__4 = value;
T8_.nilability = colontmpD__4;
add__nilcheck_3898((&(*T7_)), T8_);
aliasSet__nilcheck_3653(ctx, map, index, (&exprAliases));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI a;
a = (NI)0;
{
if (!(exprAliases.elems <= ((NI)34))) goto LA12_;
{
NI i;
NI i_2;
i = (NI)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < exprAliases.elems)) goto LA16 ;
i = i_2;
a = exprAliases.a[(i)- 0];
{
NIM_BOOL T19_;
T19_ = (NIM_BOOL)0;
T19_ = eqeq___nilcheck_192(((NI16) (a)), index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T19_)) goto LA20_;
X5BX5Deq___nilcheck_3830((&(*map).expressions), ((NI16) (a)), value);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
tySequence__NE3kNZskLpMeWsT0qd9bxYQ T26_;
if (!(value == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1))) goto LA24_;
T26_.len = 0; T26_.p = NIM_NIL;
T26_.len = 0; T26_.p = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content*) newSeqPayload(0, sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w), NIM_ALIGNOF(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
X5BX5Deq___nilcheck_4017((&(*map).history), ((NI16) (a)), T26_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA22_;
LA24_: ;
{
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__5;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__6;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__7;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T28_;
tyObject_History__GvmH1bmZD6bA1ithz47A7w T29_;
nimZeroMem((void*)(&colontmpD__5), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
colontmpD__6 = NIM_NIL;
colontmpD__7 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T28_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T28_ = X5BX5D___nilcheck_1952((&(*map).history), ((NI16) (a)));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
nimZeroMem((void*)(&T29_), sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
nimZeroMem((void*)(&T29_), sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
colontmpD__5 = info;
T29_.info = colontmpD__5;
T29_.kind = ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)7);
colontmpD__6 = 0;
eqcopy___ast_3457(&colontmpD__6, node);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T29_.node = colontmpD__6;
colontmpD__7 = value;
T29_.nilability = colontmpD__7;
add__nilcheck_3898((&(*T28_)), T29_);
}
LA22_: ;
}
LA20_: ;
i_2 += ((NI)1);
} LA16: ;
}
}
}
goto LA10_;
LA12_: ;
{
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
r = NIM_NIL;
r = exprAliases.head;
exprAliases.head = 0;
{
while (1) {
NI i_3;
if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA32 ;
i_3 = ((NI)0);
{
while (1) {
NU w;
NI j;
if (!(i_3 <= ((NI)7))) goto LA34 ;
w = (*r).bits[(i_3)- 0];
j = ((NI)0);
{
while (1) {
if (!!((w == ((NU)0)))) goto LA36 ;
{
NI T41_;
if (!!(((NU)(w & ((NU)1)) == ((NU)0)))) goto LA39_;
T41_ = (NI)0;
T41_ = pluspercent___system_770((NI)((NU64)(i_3) << (NU64)(((NI)6))), j);
a = (NI)((NI)((NU64)((*r).key) << (NU64)(((NI)9))) | T41_);
{
NIM_BOOL T44_;
T44_ = (NIM_BOOL)0;
T44_ = eqeq___nilcheck_192(((NI16) (a)), index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T44_)) goto LA45_;
X5BX5Deq___nilcheck_3830((&(*map).expressions), ((NI16) (a)), value);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
tySequence__NE3kNZskLpMeWsT0qd9bxYQ T51_;
if (!(value == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1))) goto LA49_;
T51_.len = 0; T51_.p = NIM_NIL;
T51_.len = 0; T51_.p = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content*) newSeqPayload(0, sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w), NIM_ALIGNOF(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
X5BX5Deq___nilcheck_4017((&(*map).history), ((NI16) (a)), T51_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA47_;
LA49_: ;
{
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__8;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__9;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__10;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T53_;
tyObject_History__GvmH1bmZD6bA1ithz47A7w T54_;
nimZeroMem((void*)(&colontmpD__8), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
colontmpD__9 = NIM_NIL;
colontmpD__10 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T53_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T53_ = X5BX5D___nilcheck_1952((&(*map).history), ((NI16) (a)));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
nimZeroMem((void*)(&T54_), sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
nimZeroMem((void*)(&T54_), sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
colontmpD__8 = info;
T54_.info = colontmpD__8;
T54_.kind = ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)7);
colontmpD__9 = 0;
eqcopy___ast_3457(&colontmpD__9, node);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T54_.node = colontmpD__9;
colontmpD__10 = value;
T54_.nilability = colontmpD__10;
add__nilcheck_3898((&(*T53_)), T54_);
}
LA47_: ;
}
LA45_: ;
}
LA39_: ;
j += ((NI)1);
w = (NU)((NU64)(w) >> (NU64)(((NI)1)));
} LA36: ;
}
i_3 += ((NI)1);
} LA34: ;
}
eqcopy___pureZcollectionsZintsets_27(&r, (*r).next);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA32: ;
}
eqdestroy___pureZcollectionsZintsets_24(&r);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA10_: ;
}
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_181((&exprAliases));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI16, index__nilcheck_2929)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NI16 result;
NI a;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI16)0;
a = symbol__nilcheck_2001(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
NI16* T6_;
T3_ = (NIM_BOOL)0;
T3_ = hasKey__nilcheck_2974((*ctx).symbolIndices, a);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T3_) goto LA4_;
T6_ = (NI16*)0;
T6_ = X5BX5D___nilcheck_3424((&(*ctx).symbolIndices), a);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
result = (*T6_);
goto BeforeRet_;
}
goto LA1_;
LA4_: ;
{
result = ((NI16)-1);
goto BeforeRet_;
}
LA1_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w, typeNilability__nilcheck_5175)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ) {
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w result;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__2;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__3;
result = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__2 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__3 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
if (!(((*typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)17)))&63U)))!=0)) goto LA3_;
colontmpD_ = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
result = colontmpD_;
}
goto LA1_;
LA3_: ;
{
if (!((*typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22) || (*typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)29) || (*typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)21) || (*typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)26))) goto LA6_;
colontmpD__2 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
result = colontmpD__2;
}
goto LA1_;
LA6_: ;
{
colontmpD__3 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
result = colontmpD__3;
}
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, gteq___nilcheck_188)(NI16 a, NI16 b) {
NIM_BOOL result;
result = (NIM_BOOL)0;
result = (b <= a);
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_1572)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ** dest) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicStatic((*dest), (&NTIv2__bj6rY6P7ZUHwppEHheXbKQ_));
if (!T3_) goto LA4_;
eqdestroy___nilcheck_1585((*dest));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest), ((NI)8));
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w*, X5BX5D___nilcheck_1747)(tySequence__Th9bZ3i8H7r9aIXe20QsLwRw* a, NI16 index) {
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w* result;
result = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w*)0;
result = (&(*a).p->data[index]);
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w, X5BX5D___nilcheck_1623)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NI16 index) {
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w result;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* now;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
now = NIM_NIL;
{
NIM_BOOL T4_;
NI16 T6_;
T4_ = (NIM_BOOL)0;
T4_ = lt___nilcheck_164(index, ((NI16)0));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (T4_) goto LA5_;
T6_ = (NI16)0;
T6_ = len__nilcheck_307((*map).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T4_ = gteq___nilcheck_188(index, T6_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA5_: ;
if (!T4_) goto LA7_;
result = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
eqdestroy___nilcheck_1572(&now);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA7_: ;
eqcopy___nilcheck_1575(&now, map, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
while (1) {
if (!!((now == 0))) goto LA10 ;
{
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w* T13_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w* T16_;
T13_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w*)0;
T13_ = X5BX5D___nilcheck_1747((&(*now).expressions), index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(((*T13_) == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0)))) goto LA14_;
T16_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w*)0;
T16_ = X5BX5D___nilcheck_1747((&(*now).expressions), index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
result = (*T16_);
eqdestroy___nilcheck_1572(&now);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA14_: ;
eqcopy___nilcheck_1575(&now, (*now).parent, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA10: ;
}
result = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
eqdestroy___nilcheck_1572(&now);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&now);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_5386)(tySequence__fEh0bUDDOwnFhhuQmQJTNA* dest) {
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmp_ = ((NI)0);
{
while (1) {
NI T3_;
T3_ = (*dest).len;
if (!(colontmp_ < T3_)) goto LA2 ;
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = nimDecRefIsLast((*dest).p->data[colontmp_].Field0);
if (!T6_) goto LA7_;
eqdestroy___ast_3466((*dest).p->data[colontmp_].Field0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).p->data[colontmp_].Field0, ((NI)8));
}
LA7_: ;
colontmp_ += ((NI)1);
} LA2: ;
}
if ((*dest).p && !((*dest).p->cap & NIM_STRLIT_FLAG)) {
alignedDealloc((*dest).p, NIM_ALIGNOF(tyTuple__czAeVAIf9abkuDYbRyH2HPw));
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_5372)(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* dest) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicStatic((*dest).map, (&NTIv2__bj6rY6P7ZUHwppEHheXbKQ_));
if (!T3_) goto LA4_;
eqdestroy___nilcheck_1585((*dest).map);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).map, ((NI)8));
}
LA4_: ;
eqdestroy___nilcheck_5386((&(*dest).elements));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_1579)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ** dest, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* src) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmp_ = (*dest);
(*dest) = src;
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicStatic(colontmp_, (&NTIv2__bj6rY6P7ZUHwppEHheXbKQ_));
if (!T3_) goto LA4_;
eqdestroy___nilcheck_1585(colontmp_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose(colontmp_, ((NI)8));
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, checkCondition__nilcheck_238)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NIM_BOOL reverse, NIM_BOOL base) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* result;
NIM_BOOL oldNimErrFin18_;
NIM_BOOL oldNimErrFin22_;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin33_;
NIM_BOOL oldNimErrFin70_;
NIM_BOOL oldNimErrFin74_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
{
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27))) goto LA3_;
result = newNilMap__nilcheck_244(map, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* element;
element = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA9 ;
i = i_2;
eqcopy___ast_3457(&element, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
{
NIM_BOOL T12_;
NIM_BOOL T13_;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ colontmpD_;
T12_ = (NIM_BOOL)0;
T13_ = (NIM_BOOL)0;
T13_ = ((*element).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65));
if (!(T13_)) goto LA14_;
T13_ = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
LA14_: ;
T12_ = T13_;
if (!(T12_)) goto LA15_;
T12_ = ((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)143));
LA15_: ;
if (!T12_) goto LA16_;
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
check__nilcheck_234((*element)._kind_6.sons.p->data[((NI)0)], ctx, result, (&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
eqcopy___nilcheck_1575(&result, colontmpD_.map, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
{
LA18_:;
}
{
oldNimErrFin18_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
*nimErr_ = oldNimErrFin18_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
}
goto LA10_;
LA16_: ;
{
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ colontmpD__2;
nimZeroMem((void*)(&colontmpD__2), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
check__nilcheck_234(element, ctx, result, (&colontmpD__2));
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
eqcopy___nilcheck_1575(&result, colontmpD__2.map, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
{
LA22_:;
}
{
oldNimErrFin22_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&colontmpD__2));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
*nimErr_ = oldNimErrFin22_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
}
LA10_: ;
i_2 += ((NI)1);
} LA9: ;
}
}
{
LA6_:;
}
{
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&element);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin6_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
{
NIM_BOOL T29_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arg;
T29_ = (NIM_BOOL)0;
T29_ = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T29_)) goto LA30_;
T29_ = ((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)143));
LA30_: ;
if (!T29_) goto LA31_;
arg = NIM_NIL;
eqcopy___ast_3457(&arg, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
while (1) {
if (!((*arg).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65))) goto LA35 ;
eqcopy___ast_3457(&arg, (*arg)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
} LA35: ;
}
{
NIM_BOOL T38_;
NIM_BOOL T40_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__3;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__4;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg colontmpD__5;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg colontmpD__6;
NI16 a;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T44_;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg T50_;
T38_ = (NIM_BOOL)0;
T38_ = ((*arg).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3) || (*arg).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45));
if (T38_) goto LA39_;
T40_ = (NIM_BOOL)0;
T40_ = ((*arg).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42));
if (!(T40_)) goto LA41_;
T40_ = ((nkLiterals__ast_3180[(NU)(((*(*arg)._kind_6.sons.p->data[((NI)1)]).kind))>>3] &(1U<<((NU)(((*(*arg)._kind_6.sons.p->data[((NI)1)]).kind))&7U)))!=0);
LA41_: ;
T38_ = T40_;
LA39_: ;
if (!T38_) goto LA42_;
colontmpD__3 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__4 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__5 = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
colontmpD__6 = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
a = index__nilcheck_2929(ctx, arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T44_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
if (!!(reverse)) goto LA47_;
colontmpD__3 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3);
T44_ = colontmpD__3;
}
goto LA45_;
LA47_: ;
{
colontmpD__4 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
T44_ = colontmpD__4;
}
LA45_: ;
T50_ = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
{
if (!!(reverse)) goto LA53_;
colontmpD__5 = ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)3);
T50_ = colontmpD__5;
}
goto LA51_;
LA53_: ;
{
colontmpD__6 = ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)6);
T50_ = colontmpD__6;
}
LA51_: ;
store__nilcheck_3782(result, ctx, a, T44_, T50_, (*n).info, arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
goto LA36_;
LA42_: ;
{
}
LA36_: ;
{
LA33_:;
}
{
oldNimErrFin33_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&arg);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin33_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA27_;
LA31_: ;
{
}
LA27_: ;
}
goto LA1_;
LA3_: ;
{
NIM_BOOL T61_;
NIM_BOOL T62_;
T61_ = (NIM_BOOL)0;
T62_ = (NIM_BOOL)0;
T62_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30));
if (!(T62_)) goto LA63_;
T62_ = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
LA63_: ;
T61_ = T62_;
if (!(T61_)) goto LA64_;
T61_ = ((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)96));
LA64_: ;
if (!T61_) goto LA65_;
result = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)1)], ctx, map, !(reverse), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA65_: ;
{
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ colontmpD__7;
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29))) goto LA68_;
nimZeroMem((void*)(&colontmpD__7), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
result = newNilMap__nilcheck_244(map, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
checkInfix__nilcheck_7694(n, ctx, result, (&colontmpD__7));
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
eqcopy___nilcheck_1575(&result, colontmpD__7.map, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
{
LA70_:;
}
{
oldNimErrFin70_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&colontmpD__7));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin70_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA68_: ;
{
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ colontmpD__8;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T75_;
nimZeroMem((void*)(&colontmpD__8), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
check__nilcheck_234(n, ctx, map, (&colontmpD__8));
if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
eqcopy___nilcheck_1575(&result, colontmpD__8.map, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
T75_ = NIM_NIL;
T75_ = newNilMap__nilcheck_244(map, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
eqsink___nilcheck_1579(&result, T75_);
if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
{
LA74_:;
}
{
oldNimErrFin74_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&colontmpD__8));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin74_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA1_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, findCommonParent__nilcheck_7243)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* l, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* r) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
eqcopy___nilcheck_1575(&result, (*l).parent, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
while (1) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* rparent;
if (!!((result == 0))) goto LA2 ;
rparent = NIM_NIL;
rparent = (*r).parent;
{
while (1) {
if (!!((rparent == 0))) goto LA4 ;
{
if (!(result == rparent)) goto LA7_;
goto BeforeRet_;
}
LA7_: ;
rparent = (*rparent).parent;
} LA4: ;
}
eqcopy___nilcheck_1575(&result, (*result).parent, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA2: ;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__NE3kNZskLpMeWsT0qd9bxYQ, history__nilcheck_1832)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NI16 index) {
tySequence__NE3kNZskLpMeWsT0qd9bxYQ result;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
T1_.len = 0; T1_.p = NIM_NIL;
{
NI16 T4_;
NIM_BOOL T5_;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T8_;
T4_ = (NI16)0;
T4_ = len__nilcheck_307((*map).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T5_ = (NIM_BOOL)0;
T5_ = lt___nilcheck_164(index, T4_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T5_) goto LA6_;
T8_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T8_ = X5BX5D___nilcheck_1952((&(*map).history), index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___nilcheck_608((&result), (*T8_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA2_;
LA6_: ;
{
result.len = 0; result.p = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ_Content*) newSeqPayload(0, sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w), NIM_ALIGNOF(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
}
LA2_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_662)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* dest, tyObject_History__GvmH1bmZD6bA1ithz47A7w src) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
(*dest).info.line = src.info.line;
(*dest).info.col = src.info.col;
(*dest).info.fileIndex = src.info.fileIndex;
(*dest).nilability = src.nilability;
(*dest).kind = src.kind;
{
if (!src.node) goto LA3_;
nimIncRef(src.node);
}
LA3_: ;
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = nimDecRefIsLast((*dest).node);
if (!T7_) goto LA8_;
eqdestroy___ast_3466((*dest).node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).node, ((NI)8));
}
LA8_: ;
(*dest).node = src.node;
}BeforeRet_: ;
}
static N_INLINE(void, X5BX5D___nilcheck_7339)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* s, NI sLen_0, NI i, tyObject_History__GvmH1bmZD6bA1ithz47A7w* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
eqcopy___nilcheck_662(Result, s[(NI)(sLen_0 - i)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_659)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* dest) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLast((*dest).node);
if (!T3_) goto LA4_;
eqdestroy___ast_3466((*dest).node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).node, ((NI)8));
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, union__nilcheck_7258)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* l, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* r) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* result;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* common;
NI16 T9_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
common = NIM_NIL;
{
if (!(l == 0)) goto LA4_;
eqcopy___nilcheck_1575(&result, r, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___nilcheck_1572(&common);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
goto LA2_;
LA4_: ;
{
if (!(r == 0)) goto LA7_;
eqcopy___nilcheck_1575(&result, l, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___nilcheck_1572(&common);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
goto LA2_;
LA7_: ;
LA2_: ;
common = findCommonParent__nilcheck_7243(l, r);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T9_ = (NI16)0;
T9_ = len__nilcheck_7325((*ctx).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
result = newNilMap__nilcheck_244(common, ((NI) (T9_)));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI16 index;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value;
index = (NI16)0;
value = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
NI16 index_2;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value_2;
index_2 = (NI16)0;
value_2 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw colontmp_;
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw colontmpD_;
NI i;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w element;
NI i_2;
NI L;
NI T13_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
i = (NI)0;
element = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___nilcheck_451((&colontmpD_), (*l).expressions);
eqsink___nilcheck_322((&colontmp_), colontmpD_);
i_2 = ((NI)0);
T13_ = colontmp_.len;
L = T13_;
{
while (1) {
tySequence__NE3kNZskLpMeWsT0qd9bxYQ h;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__2;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__3;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__4;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__5;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T22_;
if (!(i_2 < L)) goto LA15 ;
h.len = 0; h.p = NIM_NIL;
nimZeroMem((void*)(&colontmpD__2), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
nimZeroMem((void*)(&colontmpD__3), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
colontmpD__4 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__5 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
i = i_2;
element = colontmp_.p->data[i_2];
index_2 = ((NI16) (i));
value_2 = element;
index = index_2;
value = X5BX5D___nilcheck_1623(l, index_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
h = history__nilcheck_1832(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI T18_;
tyObject_History__GvmH1bmZD6bA1ithz47A7w colontmpD__6;
T18_ = h.len;
if (!(((NI)0) < T18_)) goto LA19_;
nimZeroMem((void*)(&colontmpD__6), sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
X5BX5D___nilcheck_7339(((h).p) ? (h.p->data) : NIM_NIL, h.len, ((NI)1), (&colontmpD__6));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__2 = colontmpD__6.info;
eqdestroy___nilcheck_659((&colontmpD__6));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
info = colontmpD__2;
}
goto LA16_;
LA19_: ;
{
nimZeroMem((void*)(&colontmpD__3), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
colontmpD__3.line = ((NU16)0);
info = colontmpD__3;
}
LA16_: ;
T22_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T25_;
T25_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T25_ = X5BX5D___nilcheck_1623(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(value == T25_)) goto LA26_;
colontmpD__4 = value;
T22_ = colontmpD__4;
}
goto LA23_;
LA26_: ;
{
colontmpD__5 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
T22_ = colontmpD__5;
}
LA23_: ;
store__nilcheck_3782(result, ctx, index, T22_, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), info, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 += ((NI)1);
eqdestroy___nilcheck_605((&h));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA15: ;
}
eqdestroy___nilcheck_316((&colontmp_));
}
}
}
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&common);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
int result;
result = (int)0;
result = memcmp(a, b, ((size_t) (size)));
return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size) {
NIM_BOOL result;
int T1_;
result = (NIM_BOOL)0;
T1_ = (int)0;
T1_ = nimCmpMem(a, b, size);
result = (T1_ == ((NI32)0));
return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b) {
NIM_BOOL result;
NI alen;
NI blen;
{ result = (NIM_BOOL)0;
alen = a.len;
blen = b.len;
{
if (!(alen == blen)) goto LA3_;
{
if (!(alen == ((NI)0))) goto LA7_;
result = NIM_TRUE;
goto BeforeRet_;
}
LA7_: ;
result = equalMem__system_1727(((void*) ((&a.p->data[((NI)0)]))), ((void*) ((&b.p->data[((NI)0)]))), ((NI) (alen)));
goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, checkInfix__nilcheck_7694)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
NIM_BOOL oldNimErrFin5_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* mapL;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* mapR;
if (!((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA3_;
mapL = NIM_NIL;
mapR = NIM_NIL;
{
if (!!(((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)109) || (*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)87)))) goto LA8_;
mapL = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)1)], ctx, map, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
mapR = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)2)], ctx, map, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
LA8_: ;
switch ((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic) {
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)110):
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T11_;
T11_ = NIM_NIL;
T11_ = union__nilcheck_7258(ctx, mapL, mapR);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
eqsink___nilcheck_1579(&(*Result).map, T11_);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
break;
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)109):
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T13_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T14_;
T13_ = NIM_NIL;
T13_ = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)1)], ctx, map, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
eqsink___nilcheck_1579(&(*Result).map, T13_);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
T14_ = NIM_NIL;
T14_ = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)2)], ctx, (*Result).map, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
eqsink___nilcheck_1579(&(*Result).map, T14_);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
break;
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)87):
{
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
if (!((*(*n)._kind_6.sons.p->data[((NI)2)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)6))) goto LA18_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T25_;
colontmpD_ = dollar___renderer_2511((*n)._kind_6.sons.p->data[((NI)2)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
if (!eqStrings(colontmpD_, TM__9a75rVZu7sg4HRrHPMS3VUw_7)) goto LA23_;
T25_ = NIM_NIL;
T25_ = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)1)], ctx, map, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
eqsink___nilcheck_1579(&(*Result).map, T25_);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
}
goto LA21_;
LA23_: ;
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T29_;
colontmpD__2 = dollar___renderer_2511((*n)._kind_6.sons.p->data[((NI)2)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
if (!eqStrings(colontmpD__2, TM__9a75rVZu7sg4HRrHPMS3VUw_9)) goto LA27_;
T29_ = NIM_NIL;
T29_ = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)1)], ctx, map, NIM_TRUE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
eqsink___nilcheck_1579(&(*Result).map, T29_);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
}
goto LA21_;
LA27_: ;
LA21_: ;
{
LA20_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
goto LA16_;
LA18_: ;
{
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
if (!((*(*n)._kind_6.sons.p->data[((NI)1)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)6))) goto LA33_;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T40_;
colontmpD__3 = dollar___renderer_2511((*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
if (!eqStrings(colontmpD__3, TM__9a75rVZu7sg4HRrHPMS3VUw_10)) goto LA38_;
T40_ = NIM_NIL;
T40_ = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)2)], ctx, map, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
eqsink___nilcheck_1579(&(*Result).map, T40_);
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
}
goto LA36_;
LA38_: ;
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T44_;
colontmpD__4 = dollar___renderer_2511((*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
if (!eqStrings(colontmpD__4, TM__9a75rVZu7sg4HRrHPMS3VUw_11)) goto LA42_;
T44_ = NIM_NIL;
T44_ = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)2)], ctx, map, NIM_TRUE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
eqsink___nilcheck_1579(&(*Result).map, T44_);
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
}
goto LA36_;
LA42_: ;
LA36_: ;
{
LA35_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
goto LA16_;
LA33_: ;
LA16_: ;
{
if (!((*Result).map == 0)) goto LA49_;
eqcopy___nilcheck_1575(&(*Result).map, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
LA49_: ;
}
break;
default:
{
eqcopy___nilcheck_1575(&(*Result).map, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
break;
}
{
LA5_:;
}
{
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&mapR);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&mapL);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin5_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA3_: ;
{
eqcopy___nilcheck_1575(&(*Result).map, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA1_: ;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkIsNil__nilcheck_7737)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, NIM_BOOL isElse, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__2;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T1_;
NI16 T2_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
value = NIM_NIL;
colontmpD_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__2 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T1_ = NIM_NIL;
T1_ = newNilMap__nilcheck_244(map, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___nilcheck_1579(&(*Result).map, T1_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
value = (*n)._kind_6.sons.p->data[((NI)1)];
T2_ = (NI16)0;
T2_ = index__nilcheck_2929(ctx, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T3_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
if (!!(isElse)) goto LA6_;
colontmpD_ = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3);
T3_ = colontmpD_;
}
goto LA4_;
LA6_: ;
{
colontmpD__2 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
T3_ = colontmpD__2;
}
LA4_: ;
store__nilcheck_3782((*Result).map, ctx, T2_, T3_, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0), (*n).info, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___nilcheck_222)(NI a, NI b) {
NIM_BOOL result;
result = (NIM_BOOL)0;
result = (a == b);
return result;
}
static N_INLINE(NI, len__nilcheck_2768)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s) {
NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
{
if (!((*s).elems < ((NI)34))) goto LA3_;
result = (*s).elems;
}
goto LA1_;
LA3_: ;
{
result = ((NI)0);
{
NI _;
_ = (NI)0;
{
if (!((*s).elems <= ((NI)34))) goto LA9_;
{
NI i;
NI i_2;
i = (NI)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < (*s).elems)) goto LA13 ;
i = i_2;
_ = (*s).a[(i)- 0];
result += ((NI)1);
i_2 += ((NI)1);
} LA13: ;
}
}
}
goto LA7_;
LA9_: ;
{
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
r = NIM_NIL;
eqcopy___pureZcollectionsZintsets_27(&r, (*s).head);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
while (1) {
NI i_3;
if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA16 ;
i_3 = ((NI)0);
{
while (1) {
NU w;
NI j;
if (!(i_3 <= ((NI)7))) goto LA18 ;
w = (*r).bits[(i_3)- 0];
j = ((NI)0);
{
while (1) {
if (!!((w == ((NU)0)))) goto LA20 ;
{
NI T25_;
if (!!(((NU)(w & ((NU)1)) == ((NU)0)))) goto LA23_;
T25_ = (NI)0;
T25_ = pluspercent___system_770((NI)((NU64)(i_3) << (NU64)(((NI)6))), j);
_ = (NI)((NI)((NU64)((*r).key) << (NU64)(((NI)9))) | T25_);
result += ((NI)1);
}
LA23_: ;
j += ((NI)1);
w = (NU)((NU64)(w) >> (NU64)(((NI)1)));
} LA20: ;
}
i_3 += ((NI)1);
} LA18: ;
}
eqcopy___pureZcollectionsZintsets_27(&r, (*r).next);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA16: ;
}
eqdestroy___pureZcollectionsZintsets_24(&r);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA7_: ;
}
}
LA1_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, minus___nilcheck_230)(NI a, NI b) {
NI result;
result = (NI)0;
result = (NI)(a - b);
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, len__nilcheck_4548)(tySequence__0a6ZbC0zPSfUDYzqPnO68A a) {
NI result;
NI T1_;
result = (NI)0;
T1_ = a.len;
result = T1_;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, moveOut__nilcheck_4101)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* target) {
NI16 targetIndex;
NI targetSetIndex;
NI* T1_;
NIM_BOOL oldNimErrFin29_;
NIM_BOOL oldNimErrFin14_;
NIM_BOOL oldNimErrFin7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
targetIndex = index__nilcheck_2929(ctx, target);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T1_ = (NI*)0;
T1_ = X5BX5D___nilcheck_3573((&(*map).setIndices), targetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
targetSetIndex = (*T1_);
{
NIM_BOOL T4_;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA targetSet;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T8_;
T4_ = (NIM_BOOL)0;
T4_ = eqeq___nilcheck_222(targetSetIndex, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!!(T4_)) goto LA5_;
nimZeroMem((void*)(&targetSet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
T8_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T8_ = X5BX5D___nilcheck_2488((&(*map).sets), targetSetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
eqcopy___pureZcollectionsZintsets_184((&targetSet), (&(*T8_)));
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
{
NI T11_;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA newSet;
NI16 other;
NI* T48_;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T49_;
NI T50_;
NI T51_;
T11_ = (NI)0;
T11_ = len__nilcheck_2768((&targetSet));
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
if (!(((NI)1) < T11_)) goto LA12_;
nimZeroMem((void*)(&newSet), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
other = (NI16)0;
{
NI element;
element = (NI)0;
{
if (!(targetSet.elems <= ((NI)34))) goto LA18_;
{
NI i;
NI i_2;
i = (NI)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < targetSet.elems)) goto LA22 ;
i = i_2;
element = targetSet.a[(i)- 0];
{
NIM_BOOL T25_;
T25_ = (NIM_BOOL)0;
T25_ = eqeq___nilcheck_192(((NI16) (element)), targetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
if (!!(T25_)) goto LA26_;
other = ((NI16) (element));
goto LA15;
}
LA26_: ;
i_2 += ((NI)1);
} LA22: ;
}
}
}
goto LA16_;
LA18_: ;
{
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
r = NIM_NIL;
r = targetSet.head;
targetSet.head = 0;
{
while (1) {
NI i_3;
if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA31 ;
i_3 = ((NI)0);
{
while (1) {
NU w;
NI j;
if (!(i_3 <= ((NI)7))) goto LA33 ;
w = (*r).bits[(i_3)- 0];
j = ((NI)0);
{
while (1) {
if (!!((w == ((NU)0)))) goto LA35 ;
{
NI T40_;
if (!!(((NU)(w & ((NU)1)) == ((NU)0)))) goto LA38_;
T40_ = (NI)0;
T40_ = pluspercent___system_770((NI)((NU64)(i_3) << (NU64)(((NI)6))), j);
element = (NI)((NI)((NU64)((*r).key) << (NU64)(((NI)9))) | T40_);
{
NIM_BOOL T43_;
T43_ = (NIM_BOOL)0;
T43_ = eqeq___nilcheck_192(((NI16) (element)), targetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
if (!!(T43_)) goto LA44_;
other = ((NI16) (element));
eqdestroy___pureZcollectionsZintsets_24(&r);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
goto LA15;
}
LA44_: ;
}
LA38_: ;
j += ((NI)1);
w = (NU)((NU64)(w) >> (NU64)(((NI)1)));
} LA35: ;
}
i_3 += ((NI)1);
} LA33: ;
}
eqcopy___pureZcollectionsZintsets_27(&r, (*r).next);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
} LA31: ;
}
{
LA29_:;
}
{
oldNimErrFin29_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_24(&r);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
*nimErr_ = oldNimErrFin29_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
}
LA16_: ;
} LA15: ;
T48_ = (NI*)0;
T48_ = X5BX5D___nilcheck_3573((&(*map).setIndices), other);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T49_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T49_ = X5BX5D___nilcheck_2488((&(*map).sets), (*T48_));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
excl__reorder_448(T49_, ((NI) (targetIndex)));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
initIntSet__pureZcollectionsZintsets_389((&newSet));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
incl__pureZcollectionsZintsets_202((&newSet), ((NI) (targetIndex)));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
add__nilcheck_1184((&(*map).sets), (&newSet));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T50_ = (NI)0;
T50_ = len__nilcheck_4548((*map).sets);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T51_ = (NI)0;
T51_ = minus___nilcheck_230(T50_, ((NI)1));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
X5BX5Deq___nilcheck_1128((&(*map).setIndices), targetIndex, T51_);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
{
LA14_:;
}
{
oldNimErrFin14_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_181((&newSet));
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
*nimErr_ = oldNimErrFin14_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
}
LA12_: ;
{
LA7_:;
}
{
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_181((&targetSet));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin7_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA5_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**, X5BX5D___nilcheck_2356)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* a, NI16 index) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** result;
result = (tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**)0;
result = &(*a).p->data[index];
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, moveOutDependants__nilcheck_4602)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node) {
NI16 index;
NIM_BOOL oldNimErrFin14_;
NIM_BOOL oldNimErrFin2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
index = index__nilcheck_2929(ctx, node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA colontmp_;
NI dependant;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T3_;
nimZeroMem((void*)(&colontmp_), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
dependant = (NI)0;
T3_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T3_ = X5BX5D___nilcheck_4664((&(*ctx).dependants), index);
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
eqcopy___pureZcollectionsZintsets_184((&colontmp_), (&(*T3_)));
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
{
if (!(colontmp_.elems <= ((NI)34))) goto LA6_;
{
NI i;
NI i_2;
i = (NI)0;
i_2 = ((NI)0);
{
while (1) {
tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* T11_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** T12_;
if (!(i_2 < colontmp_.elems)) goto LA10 ;
i = i_2;
dependant = colontmp_.a[(i)- 0];
T11_ = NIM_NIL;
T11_ = ctx;
T12_ = (tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**)0;
T12_ = X5BX5D___nilcheck_2356((&(*ctx).expressions), ((NI16) (dependant)));
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
moveOut__nilcheck_4101(T11_, map, (*T12_));
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
i_2 += ((NI)1);
} LA10: ;
}
}
}
goto LA4_;
LA6_: ;
{
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
r = NIM_NIL;
r = colontmp_.head;
colontmp_.head = 0;
{
while (1) {
NI i_3;
if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA16 ;
i_3 = ((NI)0);
{
while (1) {
NU w;
NI j;
if (!(i_3 <= ((NI)7))) goto LA18 ;
w = (*r).bits[(i_3)- 0];
j = ((NI)0);
{
while (1) {
if (!!((w == ((NU)0)))) goto LA20 ;
{
NI T25_;
tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* T26_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** T27_;
if (!!(((NU)(w & ((NU)1)) == ((NU)0)))) goto LA23_;
T25_ = (NI)0;
T25_ = pluspercent___system_770((NI)((NU64)(i_3) << (NU64)(((NI)6))), j);
dependant = (NI)((NI)((NU64)((*r).key) << (NU64)(((NI)9))) | T25_);
T26_ = NIM_NIL;
T26_ = ctx;
T27_ = (tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**)0;
T27_ = X5BX5D___nilcheck_2356((&(*ctx).expressions), ((NI16) (dependant)));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
moveOut__nilcheck_4101(T26_, map, (*T27_));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
}
LA23_: ;
j += ((NI)1);
w = (NU)((NU64)(w) >> (NU64)(((NI)1)));
} LA20: ;
}
i_3 += ((NI)1);
} LA18: ;
}
eqcopy___pureZcollectionsZintsets_27(&r, (*r).next);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
} LA16: ;
}
{
LA14_:;
}
{
oldNimErrFin14_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_24(&r);
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
*nimErr_ = oldNimErrFin14_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
}
LA4_: ;
{
LA2_:;
}
{
oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_181((&colontmp_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin2_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, storeDependants__nilcheck_4736)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node, tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value) {
NI16 index;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
index = index__nilcheck_2929(ctx, node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA colontmp_;
NI dependant;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T2_;
nimZeroMem((void*)(&colontmp_), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
dependant = (NI)0;
T2_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T2_ = X5BX5D___nilcheck_4664((&(*ctx).dependants), index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___pureZcollectionsZintsets_184((&colontmp_), (&(*T2_)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!(colontmp_.elems <= ((NI)34))) goto LA5_;
{
NI i;
NI i_2;
i = (NI)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_.elems)) goto LA9 ;
i = i_2;
dependant = colontmp_.a[(i)- 0];
store__nilcheck_3782(map, ctx, ((NI16) (dependant)), value, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)8), (*node).info, node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 += ((NI)1);
} LA9: ;
}
}
}
goto LA3_;
LA5_: ;
{
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
r = NIM_NIL;
r = colontmp_.head;
colontmp_.head = 0;
{
while (1) {
NI i_3;
if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA12 ;
i_3 = ((NI)0);
{
while (1) {
NU w;
NI j;
if (!(i_3 <= ((NI)7))) goto LA14 ;
w = (*r).bits[(i_3)- 0];
j = ((NI)0);
{
while (1) {
if (!!((w == ((NU)0)))) goto LA16 ;
{
NI T21_;
if (!!(((NU)(w & ((NU)1)) == ((NU)0)))) goto LA19_;
T21_ = (NI)0;
T21_ = pluspercent___system_770((NI)((NU64)(i_3) << (NU64)(((NI)6))), j);
dependant = (NI)((NI)((NU64)((*r).key) << (NU64)(((NI)9))) | T21_);
store__nilcheck_3782(map, ctx, ((NI16) (dependant)), value, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)8), (*node).info, node);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA19_: ;
j += ((NI)1);
w = (NU)((NU64)(w) >> (NU64)(((NI)1)));
} LA16: ;
}
i_3 += ((NI)1);
} LA14: ;
}
eqcopy___pureZcollectionsZintsets_27(&r, (*r).next);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA12: ;
}
eqdestroy___pureZcollectionsZintsets_24(&r);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
eqdestroy___pureZcollectionsZintsets_181((&colontmp_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkCall__nilcheck_5177)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
NIM_BOOL isNew;
NIM_BOOL oldNimErrFin21_;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin2_;
NIM_BOOL oldNimErrFin70_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
isNew = NIM_FALSE;
eqcopy___nilcheck_1575(&(*Result).map, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child;
NI i;
child = NIM_NIL;
i = (NI)0;
{
NI i_2;
NI colontmp_;
NI i_3;
i_2 = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
i_3 = ((NI)0);
{
while (1) {
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ colontmpD_;
if (!(i_3 < colontmp_)) goto LA5 ;
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
i_2 = i_3;
i = i_2;
eqcopy___ast_3457(&child, (*n)._kind_6.sons.p->data[i_2]);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
check__nilcheck_234(child, ctx, map, (&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
(void)(colontmpD_);
{
if (!(((NI)0) < i)) goto LA9_;
{
NIM_BOOL T13_;
NIM_BOOL T14_;
NIM_BOOL T15_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arg;
NI16 a;
T13_ = (NIM_BOOL)0;
T14_ = (NIM_BOOL)0;
T15_ = (NIM_BOOL)0;
T15_ = ((*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)64));
if (!(T15_)) goto LA16_;
T15_ = !(((*child).typ == 0));
LA16_: ;
T14_ = T15_;
if (!(T14_)) goto LA17_;
T14_ = ((*(*child).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23));
LA17_: ;
T13_ = T14_;
if (!(T13_)) goto LA18_;
T13_ = ((*(*(*child).typ).sons.p->data[((NI)0)]).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22));
LA18_: ;
if (!T13_) goto LA19_;
arg = NIM_NIL;
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T26_;
if (!!(isNew)) goto LA24_;
T26_ = NIM_NIL;
T26_ = newNilMap__nilcheck_244(map, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
eqsink___nilcheck_1579(&(*Result).map, T26_);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
isNew = NIM_TRUE;
}
LA24_: ;
arg = child;
child = 0;
{
while (1) {
if (!((*arg).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)64))) goto LA28 ;
eqcopy___ast_3457(&arg, (*arg)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
} LA28: ;
}
a = index__nilcheck_2929(ctx, arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
{
NIM_BOOL T31_;
T31_ = (NIM_BOOL)0;
T31_ = eqeq___nilcheck_192(a, ((NI16)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
if (!!(T31_)) goto LA32_;
moveOut__nilcheck_4101(ctx, (*Result).map, arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
moveOutDependants__nilcheck_4602(ctx, (*Result).map, arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
store__nilcheck_3782((*Result).map, ctx, a, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2), ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)4), (*n).info, arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
storeDependants__nilcheck_4736(ctx, (*Result).map, arg, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2));
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
}
LA32_: ;
{
LA21_:;
}
{
oldNimErrFin21_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
*nimErr_ = oldNimErrFin21_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
}
goto LA11_;
LA19_: ;
{
NIM_BOOL T37_;
T37_ = (NIM_BOOL)0;
T37_ = !(((*child).typ == 0));
if (!(T37_)) goto LA38_;
T37_ = ((*(*child).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22));
LA38_: ;
if (!T37_) goto LA39_;
{
NIM_BOOL T43_;
NIM_BOOL T45_;
NI16 a_2;
T43_ = (NIM_BOOL)0;
T43_ = ((*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3) || (*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45));
if (T43_) goto LA44_;
T45_ = (NIM_BOOL)0;
T45_ = ((*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42));
if (!(T45_)) goto LA46_;
T45_ = ((nkLiterals__ast_3180[(NU)(((*(*child)._kind_6.sons.p->data[((NI)1)]).kind))>>3] &(1U<<((NU)(((*(*child)._kind_6.sons.p->data[((NI)1)]).kind))&7U)))!=0);
LA46_: ;
T43_ = T45_;
LA44_: ;
if (!T43_) goto LA47_;
a_2 = index__nilcheck_2929(ctx, child);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
{
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T51_;
NI T52_;
T51_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T51_ = X5BX5D___nilcheck_4664((&(*ctx).dependants), a_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
T52_ = (NI)0;
T52_ = len__nilcheck_2768((&(*T51_)));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
if (!(((NI)0) < T52_)) goto LA53_;
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T59_;
if (!!(isNew)) goto LA57_;
T59_ = NIM_NIL;
T59_ = newNilMap__nilcheck_244(map, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
eqsink___nilcheck_1579(&(*Result).map, T59_);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
isNew = NIM_TRUE;
}
LA57_: ;
moveOutDependants__nilcheck_4602(ctx, (*Result).map, child);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
storeDependants__nilcheck_4736(ctx, (*Result).map, child, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
}
LA53_: ;
}
LA47_: ;
}
goto LA11_;
LA39_: ;
LA11_: ;
}
LA9_: ;
i_3 += ((NI)1);
{
LA6_:;
}
{
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
*nimErr_ = oldNimErrFin6_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
} LA5: ;
}
}
{
LA2_:;
}
{
oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&child);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin2_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
{
NIM_BOOL T66_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T71_;
NI16 b;
T66_ = (NIM_BOOL)0;
T66_ = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T66_)) goto LA67_;
T66_ = ((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)32));
LA67_: ;
if (!T66_) goto LA68_;
value = NIM_NIL;
T71_ = NIM_NIL;
{
if (!((*(*n)._kind_6.sons.p->data[((NI)1)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65))) goto LA74_;
eqcopy___ast_3457(&value, (*(*n)._kind_6.sons.p->data[((NI)1)])._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
}
goto LA72_;
LA74_: ;
{
eqcopy___ast_3457(&value, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
}
LA72_: ;
b = index__nilcheck_2929(ctx, value);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
store__nilcheck_3782((*Result).map, ctx, b, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1), ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), (*value).info, value);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
{
LA70_:;
}
{
oldNimErrFin70_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&value);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin70_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA64_;
LA68_: ;
{
{
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T84_;
if (!!(((*n).typ == 0))) goto LA82_;
T84_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T84_ = typeNilability__nilcheck_5175((*n).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*Result).nilability = T84_;
}
goto LA80_;
LA82_: ;
{
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
}
LA80_: ;
}
LA64_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_5378)(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* dest, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* src) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
(*dest).nilability = (*src).nilability;
colontmp_ = (*dest).map;
(*dest).map = (*src).map;
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicStatic(colontmp_, (&NTIv2__bj6rY6P7ZUHwppEHheXbKQ_));
if (!T3_) goto LA4_;
eqdestroy___nilcheck_1585(colontmp_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose(colontmp_, ((NI)8));
}
LA4_: ;
if ((*dest).elements.p != (*src).elements.p) { eqdestroy___nilcheck_5386((&(*dest).elements));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
(*dest).elements.len = (*src).elements.len; (*dest).elements.p = (*src).elements.p;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_5392)(tySequence__fEh0bUDDOwnFhhuQmQJTNA* dest, tySequence__fEh0bUDDOwnFhhuQmQJTNA src) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
if ((*dest).p != src.p) { eqdestroy___nilcheck_5386(dest);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
(*dest).len = src.len; (*dest).p = src.p;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___nilcheck_5446)(tyTuple__czAeVAIf9abkuDYbRyH2HPw* dest, tyTuple__czAeVAIf9abkuDYbRyH2HPw src) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLast((*dest).Field0);
if (!T3_) goto LA4_;
eqdestroy___ast_3466((*dest).Field0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).Field0, ((NI)8));
}
LA4_: ;
(*dest).Field0 = src.Field0;
(*dest).Field1 = src.Field1;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_5389)(tySequence__fEh0bUDDOwnFhhuQmQJTNA* dest, tySequence__fEh0bUDDOwnFhhuQmQJTNA src) {
NI T1_;
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
T1_ = src.len;
setLen__nilcheck_5404((&(*dest)), T1_);
colontmp_ = ((NI)0);
{
while (1) {
NI T4_;
T4_ = (*dest).len;
if (!(colontmp_ < T4_)) goto LA3 ;
{
if (!src.p->data[colontmp_].Field0) goto LA7_;
nimIncRef(src.p->data[colontmp_].Field0);
}
LA7_: ;
{
NIM_BOOL T11_;
T11_ = (NIM_BOOL)0;
T11_ = nimDecRefIsLast((*dest).p->data[colontmp_].Field0);
if (!T11_) goto LA12_;
eqdestroy___ast_3466((*dest).p->data[colontmp_].Field0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).p->data[colontmp_].Field0, ((NI)8));
}
LA12_: ;
(*dest).p->data[colontmp_].Field0 = src.p->data[colontmp_].Field0;
(*dest).p->data[colontmp_].Field1 = src.p->data[colontmp_].Field1;
colontmp_ += ((NI)1);
} LA3: ;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_5375)(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* dest, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* src) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
(*dest).nilability = (*src).nilability;
colontmp_ = (*dest).map;
{
if (!(*src).map) goto LA3_;
nimIncRefCyclic((*src).map, NIM_TRUE);
}
LA3_: ;
(*dest).map = (*src).map;
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = nimDecRefIsLastCyclicStatic(colontmp_, (&NTIv2__bj6rY6P7ZUHwppEHheXbKQ_));
if (!T7_) goto LA8_;
eqdestroy___nilcheck_1585(colontmp_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose(colontmp_, ((NI)8));
}
LA8_: ;
eqcopy___nilcheck_5389((&(*dest).elements), (*src).elements);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkRefExpr__nilcheck_7192)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* check, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
eqcopy___nilcheck_5375(Result, check);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T5_;
if (!!(((*(*n).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22)))) goto LA3_;
T5_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T5_ = typeNilability__nilcheck_5175((*n).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*Result).nilability = T5_;
}
goto LA1_;
LA3_: ;
{
if (!!((((*(*n).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)17)))&63U)))!=0))) goto LA7_;
{
NIM_BOOL T11_;
NIM_BOOL T13_;
NI16 key;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T17_;
T11_ = (NIM_BOOL)0;
T11_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45));
if (T11_) goto LA12_;
T13_ = (NIM_BOOL)0;
T13_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42));
if (!(T13_)) goto LA14_;
T13_ = ((nkLiterals__ast_3180[(NU)(((*(*n)._kind_6.sons.p->data[((NI)1)]).kind))>>3] &(1U<<((NU)(((*(*n)._kind_6.sons.p->data[((NI)1)]).kind))&7U)))!=0);
LA14_: ;
T11_ = T13_;
LA12_: ;
if (!T11_) goto LA15_;
key = index__nilcheck_2929(ctx, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T17_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T17_ = X5BX5D___nilcheck_1623((*Result).map, key);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*Result).nilability = T17_;
}
goto LA9_;
LA15_: ;
{
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42))) goto LA19_;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
}
goto LA9_;
LA19_: ;
{
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
}
LA9_: ;
}
goto LA1_;
LA7_: ;
LA1_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkDotExpr__nilcheck_7223)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)0)], ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimZeroMem((void*)(&T1_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
checkRefExpr__nilcheck_7192(n, ctx, Result, (&T1_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___nilcheck_5378(Result, (&T1_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src) {
{
if (!(((NI)0) < src.len)) goto LA3_;
copyMem__system_1719(((void*) ((&(*(*dest).p).data[(*dest).len]))), ((void*) ((&(*src.p).data[((NI)0)]))), ((NI) ((NI)(src.len + ((NI)1)))));
(*dest).len += src.len;
}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, derefWarning__nilcheck_5542)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w kind) {
tySequence__NE3kNZskLpMeWsT0qd9bxYQ a;
NimStringV2 res;
NimStringV2 issue;
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 T12_;
NimStringV2 T17_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
a.len = 0; a.p = NIM_NIL;
res.len = 0; res.p = NIM_NIL;
issue.len = 0; issue.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
{
NIM_BOOL T4_;
T4_ = (NIM_BOOL)0;
T4_ = contains__nilcheck_5600((*ctx).warningLocations, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T4_) goto LA5_;
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&res));
eqdestroy___nilcheck_605((&a));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA5_: ;
incl__nilcheck_6008((&(*ctx).warningLocations), (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI16 T11_;
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA9_;
T11_ = (NI16)0;
T11_ = index__nilcheck_2929(ctx, n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
a = history__nilcheck_1832(map, T11_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA9_: ;
res = TM__9a75rVZu7sg4HRrHPMS3VUw_13;
T12_.len = 0; T12_.p = NIM_NIL;
switch (kind) {
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3):
{
issue = TM__9a75rVZu7sg4HRrHPMS3VUw_15;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2):
{
issue = TM__9a75rVZu7sg4HRrHPMS3VUw_17;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4):
{
issue = TM__9a75rVZu7sg4HRrHPMS3VUw_19;
}
break;
default:
{
issue = TM__9a75rVZu7sg4HRrHPMS3VUw_20;
}
break;
}
T17_.len = 0; T17_.p = NIM_NIL;
colontmpD_ = dollar___renderer_2511(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T17_ = rawNewString(colontmpD_.len + issue.len + 14);
appendString((&T17_), TM__9a75rVZu7sg4HRrHPMS3VUw_22);
appendString((&T17_), colontmpD_);
appendString((&T17_), TM__9a75rVZu7sg4HRrHPMS3VUw_24);
appendString((&T17_), issue);
colontmpD__2 = T17_;
prepareAdd((&res), colontmpD__2.len + 0);
appendString((&res), colontmpD__2);
{
NI T20_;
T20_ = a.len;
if (!(((NI)0) < T20_)) goto LA21_;
prepareAdd((&res), 1);
appendString((&res), TM__9a75rVZu7sg4HRrHPMS3VUw_26);
}
LA21_: ;
{
tyObject_History__GvmH1bmZD6bA1ithz47A7w* b;
NI i;
NI L;
NI T24_;
b = (tyObject_History__GvmH1bmZD6bA1ithz47A7w*)0;
i = ((NI)0);
T24_ = a.len;
L = T24_;
{
while (1) {
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
NimStringV2 colontmpD__5;
NimStringV2 colontmpD__6;
NimStringV2 colontmpD__7;
NimStringV2 colontmpD__8;
NimStringV2 colontmpD__9;
NimStringV2 colontmpD__10;
NimStringV2 colontmpD__11;
NimStringV2 colontmpD__12;
NimStringV2 colontmpD__13;
NimStringV2 colontmpD__14;
NimStringV2 T27_;
NimStringV2 T28_;
if (!(i < L)) goto LA26 ;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
b = (&a.p->data[i]);
T27_.len = 0; T27_.p = NIM_NIL;
T28_.len = 0; T28_.p = NIM_NIL;
switch ((*b).kind) {
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0):
{
colontmpD__3 = TM__9a75rVZu7sg4HRrHPMS3VUw_30;
T28_ = colontmpD__3;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)3):
{
colontmpD__4 = TM__9a75rVZu7sg4HRrHPMS3VUw_32;
T28_ = colontmpD__4;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1):
{
colontmpD__5 = TM__9a75rVZu7sg4HRrHPMS3VUw_34;
T28_ = colontmpD__5;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)4):
{
colontmpD__6 = TM__9a75rVZu7sg4HRrHPMS3VUw_36;
T28_ = colontmpD__6;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)5):
{
colontmpD__7 = TM__9a75rVZu7sg4HRrHPMS3VUw_38;
T28_ = colontmpD__7;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)2):
{
colontmpD__8 = TM__9a75rVZu7sg4HRrHPMS3VUw_40;
T28_ = colontmpD__8;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)6):
{
colontmpD__9 = TM__9a75rVZu7sg4HRrHPMS3VUw_42;
T28_ = colontmpD__9;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)7):
{
colontmpD__10 = TM__9a75rVZu7sg4HRrHPMS3VUw_44;
T28_ = colontmpD__10;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)8):
{
colontmpD__11 = TM__9a75rVZu7sg4HRrHPMS3VUw_46;
T28_ = colontmpD__11;
}
break;
}
colontmpD__12 = dollar___systemZdollars_9(((NU64) ((*b).info.line)));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__13 = dollar___systemZdollars_3(((NI) ((*b).info.col)));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T27_ = rawNewString(T28_.len + colontmpD__12.len + colontmpD__13.len + 12);
appendString((&T27_), TM__9a75rVZu7sg4HRrHPMS3VUw_28);
appendString((&T27_), T28_);
appendString((&T27_), TM__9a75rVZu7sg4HRrHPMS3VUw_48);
appendString((&T27_), colontmpD__12);
appendString((&T27_), TM__9a75rVZu7sg4HRrHPMS3VUw_50);
appendString((&T27_), colontmpD__13);
colontmpD__14 = T27_;
prepareAdd((&res), colontmpD__14.len + 0);
appendString((&res), colontmpD__14);
i += ((NI)1);
eqdestroy___stdZassertions_13((&colontmpD__14));
eqdestroy___stdZassertions_13((&colontmpD__13));
eqdestroy___stdZassertions_13((&colontmpD__12));
eqdestroy___stdZassertions_13((&colontmpD__11));
eqdestroy___stdZassertions_13((&colontmpD__10));
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&colontmpD__8));
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
} LA26: ;
}
}
liMessage__msgs_1172((*ctx).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)62), res, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__9a75rVZu7sg4HRrHPMS3VUw_51), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&res));
eqdestroy___nilcheck_605((&a));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, handleNilability__nilcheck_7180)(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* check, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
switch ((*check).nilability) {
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3):
{
derefWarning__nilcheck_5542(n, ctx, map, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2):
{
derefWarning__nilcheck_5542(n, ctx, map, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4):
{
derefWarning__nilcheck_5542(n, ctx, map, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
default:
{
}
break;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkDeref__nilcheck_7185)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)0)], ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
handleNilability__nilcheck_7180(Result, (*n)._kind_6.sons.p->data[((NI)0)], ctx, map);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___nilcheck_820)(tySequence__WAoMpel6cRl8wTBAvKwzFQ* dest, tySequence__WAoMpel6cRl8wTBAvKwzFQ src) {
NI T1_;
NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
T1_ = src.len;
setLen__nilcheck_527((&(*dest)), T1_);
colontmp_ = ((NI)0);
{
while (1) {
NI T4_;
T4_ = (*dest).len;
if (!(colontmp_ < T4_)) goto LA3 ;
eqcopy___nilcheck_608((&(*dest).p->data[colontmp_]), src.p->data[colontmp_]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
colontmp_ += ((NI)1);
} LA3: ;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, copyMap__nilcheck_5165)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
{
if (!(map == 0)) goto LA3_;
result = ((tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*) NIM_NIL);
goto BeforeRet_;
}
LA3_: ;
result = newNilMap__nilcheck_244((*map).parent, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___nilcheck_451((&(*result).expressions), (*map).expressions);
eqcopy___nilcheck_820((&(*result).history), (*map).history);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___nilcheck_1357((&(*result).sets), (*map).sets);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___nilcheck_1002((&(*result).setIndices), (*map).setIndices);
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w, reverse__nilcheck_7862)(tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value) {
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w result;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__2;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__3;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__4;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__5;
result = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__2 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__3 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__4 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__5 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
switch (value) {
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3):
{
colontmpD_ = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
result = colontmpD_;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2):
{
colontmpD__2 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
result = colontmpD__2;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1):
{
colontmpD__3 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3);
result = colontmpD__3;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0):
{
colontmpD__4 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0);
result = colontmpD__4;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4):
{
colontmpD__5 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4);
result = colontmpD__5;
}
break;
}
return result;
}
static N_INLINE(tyObject_History__GvmH1bmZD6bA1ithz47A7w*, X5BX5D___nilcheck_8050)(tyObject_History__GvmH1bmZD6bA1ithz47A7w* s, NI sLen_0, NI i) {
tyObject_History__GvmH1bmZD6bA1ithz47A7w* result;
result = (tyObject_History__GvmH1bmZD6bA1ithz47A7w*)0;
result = (&s[(NI)(sLen_0 - i)]);
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg, reverse__nilcheck_7865)(tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg kind) {
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg result;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg colontmpD_;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg colontmpD__2;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg colontmpD__3;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg colontmpD__4;
result = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
colontmpD_ = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
colontmpD__2 = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
colontmpD__3 = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
colontmpD__4 = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
switch (kind) {
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)3):
{
colontmpD_ = ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)6);
result = colontmpD_;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)6):
{
colontmpD__2 = ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)3);
result = colontmpD__2;
}
break;
case ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)7):
{
colontmpD__3 = ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)7);
result = colontmpD__3;
}
break;
default:
{
colontmpD__4 = kind;
result = colontmpD__4;
}
break;
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, reverseDirect__nilcheck_2005)(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
result = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NI16 index;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value;
index = (NI16)0;
value = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw colontmp_;
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw colontmpD_;
NI i;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w element;
NI i_2;
NI L;
NI T3_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
i = (NI)0;
element = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___nilcheck_451((&colontmpD_), (*result).expressions);
eqsink___nilcheck_322((&colontmp_), colontmpD_);
i_2 = ((NI)0);
T3_ = colontmp_.len;
L = T3_;
{
while (1) {
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T6_;
if (!(i_2 < L)) goto LA5 ;
i = i_2;
element = colontmp_.p->data[i_2];
index = ((NI16) (i));
value = element;
T6_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T6_ = reverse__nilcheck_7862(value);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
X5BX5Deq___nilcheck_3830((&(*result).expressions), index, T6_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T9_;
NI T10_;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T13_;
tyObject_History__GvmH1bmZD6bA1ithz47A7w* T14_;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T15_;
tyObject_History__GvmH1bmZD6bA1ithz47A7w* T16_;
tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg T17_;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T18_;
tyObject_History__GvmH1bmZD6bA1ithz47A7w* T19_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w* T20_;
T9_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T9_ = X5BX5D___nilcheck_1952((&(*result).history), index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T10_ = (*T9_).len;
if (!(((NI)0) < T10_)) goto LA11_;
T13_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T13_ = X5BX5D___nilcheck_1952((&(*result).history), index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T14_ = (tyObject_History__GvmH1bmZD6bA1ithz47A7w*)0;
T14_ = X5BX5D___nilcheck_8050(((*T13_).p) ? ((*T13_).p->data) : NIM_NIL, (*T13_).len, ((NI)1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T15_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T15_ = X5BX5D___nilcheck_1952((&(*result).history), index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T16_ = (tyObject_History__GvmH1bmZD6bA1ithz47A7w*)0;
T16_ = X5BX5D___nilcheck_8050(((*T15_).p) ? ((*T15_).p->data) : NIM_NIL, (*T15_).len, ((NI)1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T17_ = (tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0;
T17_ = reverse__nilcheck_7865((*T16_).kind);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*T14_).kind = T17_;
T18_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T18_ = X5BX5D___nilcheck_1952((&(*result).history), index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T19_ = (tyObject_History__GvmH1bmZD6bA1ithz47A7w*)0;
T19_ = X5BX5D___nilcheck_8050(((*T18_).p) ? ((*T18_).p->data) : NIM_NIL, (*T18_).len, ((NI)1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T20_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w*)0;
T20_ = X5BX5D___nilcheck_1747((&(*result).expressions), index);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*T19_).nilability = (*T20_);
}
LA11_: ;
i_2 += ((NI)1);
} LA5: ;
}
eqdestroy___nilcheck_316((&colontmp_));
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*, add__nilcheck_7369)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* l, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* r) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* result;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* common;
NI16 T9_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
common = NIM_NIL;
{
if (!(l == 0)) goto LA4_;
eqcopy___nilcheck_1575(&result, r, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___nilcheck_1572(&common);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
goto LA2_;
LA4_: ;
{
if (!(r == 0)) goto LA7_;
eqcopy___nilcheck_1575(&result, l, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___nilcheck_1572(&common);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
goto LA2_;
LA7_: ;
LA2_: ;
common = findCommonParent__nilcheck_7243(l, r);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T9_ = (NI16)0;
T9_ = len__nilcheck_7325((*ctx).expressions);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
result = newNilMap__nilcheck_244(common, ((NI) (T9_)));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI16 index;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value;
index = (NI16)0;
value = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
NI16 index_2;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w value_2;
index_2 = (NI16)0;
value_2 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw colontmp_;
tySequence__Th9bZ3i8H7r9aIXe20QsLwRw colontmpD_;
NI i;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w element;
NI i_2;
NI L;
NI T13_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
i = (NI)0;
element = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___nilcheck_451((&colontmpD_), (*l).expressions);
eqsink___nilcheck_322((&colontmp_), colontmpD_);
i_2 = ((NI)0);
T13_ = colontmp_.len;
L = T13_;
{
while (1) {
tySequence__NE3kNZskLpMeWsT0qd9bxYQ h;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__2;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__3;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__4;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__5;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__6;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__7;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__8;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__9;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__10;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T22_;
if (!(i_2 < L)) goto LA15 ;
h.len = 0; h.p = NIM_NIL;
nimZeroMem((void*)(&colontmpD__2), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
nimZeroMem((void*)(&colontmpD__3), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
colontmpD__4 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__5 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__6 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__7 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__8 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__9 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__10 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
i = i_2;
element = colontmp_.p->data[i_2];
index_2 = ((NI16) (i));
value_2 = element;
index = index_2;
value = X5BX5D___nilcheck_1623(l, index_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
h = history__nilcheck_1832(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI T18_;
tyObject_History__GvmH1bmZD6bA1ithz47A7w colontmpD__11;
T18_ = h.len;
if (!(((NI)0) < T18_)) goto LA19_;
nimZeroMem((void*)(&colontmpD__11), sizeof(tyObject_History__GvmH1bmZD6bA1ithz47A7w));
X5BX5D___nilcheck_7339(((h).p) ? (h.p->data) : NIM_NIL, h.len, ((NI)1), (&colontmpD__11));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__2 = colontmpD__11.info;
eqdestroy___nilcheck_659((&colontmpD__11));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
info = colontmpD__2;
}
goto LA16_;
LA19_: ;
{
nimZeroMem((void*)(&colontmpD__3), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
colontmpD__3.line = ((NU16)0);
info = colontmpD__3;
}
LA16_: ;
T22_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T25_;
T25_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T25_ = X5BX5D___nilcheck_1623(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(value == T25_)) goto LA26_;
colontmpD__4 = value;
T22_ = colontmpD__4;
}
goto LA23_;
LA26_: ;
{
if (!(value == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0))) goto LA29_;
colontmpD__5 = X5BX5D___nilcheck_1623(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T22_ = colontmpD__5;
}
goto LA23_;
LA29_: ;
{
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T32_;
T32_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T32_ = X5BX5D___nilcheck_1623(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(T32_ == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0))) goto LA33_;
colontmpD__6 = value;
T22_ = colontmpD__6;
}
goto LA23_;
LA33_: ;
{
NIM_BOOL T36_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T38_;
T36_ = (NIM_BOOL)0;
T36_ = (value == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4));
if (T36_) goto LA37_;
T38_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T38_ = X5BX5D___nilcheck_1623(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T36_ = (T38_ == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4));
LA37_: ;
if (!T36_) goto LA39_;
colontmpD__7 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4);
T22_ = colontmpD__7;
}
goto LA23_;
LA39_: ;
{
if (!(value == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2))) goto LA42_;
colontmpD__8 = X5BX5D___nilcheck_1623(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T22_ = colontmpD__8;
}
goto LA23_;
LA42_: ;
{
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T45_;
T45_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T45_ = X5BX5D___nilcheck_1623(r, index);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(T45_ == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2))) goto LA46_;
colontmpD__9 = value;
T22_ = colontmpD__9;
}
goto LA23_;
LA46_: ;
{
colontmpD__10 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4);
T22_ = colontmpD__10;
}
LA23_: ;
store__nilcheck_3782(result, ctx, index, T22_, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), info, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 += ((NI)1);
eqdestroy___nilcheck_605((&h));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA15: ;
}
eqdestroy___nilcheck_316((&colontmp_));
}
}
}
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&common);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, checkBranch__nilcheck_2007)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
check__nilcheck_234(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasUnstructuredControlFlowJump__nilcheck_2011)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL result;
NIM_BOOL oldNimErrFin3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
switch ((*n).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115):
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child;
child = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA6 ;
i = i_2;
eqcopy___ast_3457(&child, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
{
NIM_BOOL T9_;
T9_ = (NIM_BOOL)0;
T9_ = hasUnstructuredControlFlowJump__nilcheck_2011(child);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
if (!T9_) goto LA10_;
result = NIM_TRUE;
eqdestroy___ast_3454(&child);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA10_: ;
i_2 += ((NI)1);
} LA6: ;
}
}
{
LA3_:;
}
{
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&child);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin3_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)109):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)110):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)111):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)108):
{
result = NIM_TRUE;
goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)92):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)48):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)49):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88):
{
result = NIM_FALSE;
goto BeforeRet_;
}
break;
default:
{
}
break;
}
result = NIM_FALSE;
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, checkIf__nilcheck_7627)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* mapIf;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* mapCondition;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* layerHistory;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* afterLayer;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w nilability;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL oldNimErrFin7_;
NIM_BOOL oldNimErrFin3_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
mapIf = NIM_NIL;
mapCondition = NIM_NIL;
layerHistory = NIM_NIL;
afterLayer = NIM_NIL;
eqcopy___nilcheck_1575(&mapIf, map, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
mapCondition = checkCondition__nilcheck_238((*(*n)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)0)], ctx, mapIf, NIM_FALSE, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
layerHistory = newNilMap__nilcheck_244(mapIf, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
{
tySequence__xxu3GgaFAGO6lOns9aHaeLQ colontmp_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** branch;
NI i;
NI L;
NI T4_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
branch = (tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**)0;
eqcopy___ast_3726((&colontmp_), (*n)._kind_6.sons);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
i = ((NI)0);
T4_ = colontmp_.len;
L = T4_;
{
while (1) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* branchConditionLayer;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* branchLayer;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* code;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ branchCheck;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__2;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T17_;
if (!(i < L)) goto LA6 ;
branchConditionLayer = NIM_NIL;
branchLayer = NIM_NIL;
code = NIM_NIL;
nimZeroMem((void*)(&branchCheck), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
colontmpD_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__2 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
branch = &colontmp_.p->data[i];
branchConditionLayer = newNilMap__nilcheck_244(layerHistory, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
branchLayer = 0;
code = 0;
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* mapCondition_2;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* reverseMapCondition;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T13_;
if (!((*(*branch)).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)92) || (*(*branch)).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)86))) goto LA10_;
mapCondition_2 = NIM_NIL;
reverseMapCondition = NIM_NIL;
mapCondition_2 = checkCondition__nilcheck_238((*(*branch))._kind_6.sons.p->data[((NI)0)], ctx, branchConditionLayer, NIM_FALSE, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
reverseMapCondition = reverseDirect__nilcheck_2005(mapCondition_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
T13_ = NIM_NIL;
T13_ = add__nilcheck_7369(ctx, layerHistory, reverseMapCondition);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
eqsink___nilcheck_1579(&layerHistory, T13_);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
branchLayer = mapCondition_2;
mapCondition_2 = 0;
eqcopy___ast_3457(&code, (*(*branch))._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
{
LA12_:;
}
{
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&reverseMapCondition);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
eqdestroy___nilcheck_1572(&mapCondition_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
*nimErr_ = oldNimErrFin12_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
}
goto LA8_;
LA10_: ;
{
eqcopy___nilcheck_1575(&branchLayer, layerHistory, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
eqcopy___ast_3457(&code, (*branch));
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
}
LA8_: ;
checkBranch__nilcheck_2007(code, ctx, branchLayer, (&branchCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
T17_ = NIM_NIL;
T17_ = union__nilcheck_7258(ctx, afterLayer, branchCheck.map);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
eqsink___nilcheck_1579(&afterLayer, T17_);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
{
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)92))) goto LA20_;
colontmpD_ = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
nilability = colontmpD_;
}
goto LA18_;
LA20_: ;
{
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__3;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__4;
colontmpD__3 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__4 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
if (!(nilability == branchCheck.nilability)) goto LA25_;
colontmpD__3 = nilability;
colontmpD__2 = colontmpD__3;
}
goto LA23_;
LA25_: ;
{
colontmpD__4 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
colontmpD__2 = colontmpD__4;
}
LA23_: ;
nilability = colontmpD__2;
}
LA18_: ;
i += ((NI)1);
{
LA7_:;
}
{
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&branchCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
eqdestroy___ast_3454(&code);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
eqdestroy___nilcheck_1572(&branchLayer);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
eqdestroy___nilcheck_1572(&branchConditionLayer);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
*nimErr_ = oldNimErrFin7_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
} LA6: ;
}
{
LA3_:;
}
{
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3723((&colontmp_));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin3_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
{
NI T34_;
T34_ = (*n)._kind_6.sons.len;
if (!(((NI)1) < T34_)) goto LA35_;
eqsink___nilcheck_1579(&(*Result).map, afterLayer);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
afterLayer = 0;
(*Result).nilability = nilability;
}
goto LA32_;
LA35_: ;
{
{
NIM_BOOL T40_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T43_;
T40_ = (NIM_BOOL)0;
T40_ = hasUnstructuredControlFlowJump__nilcheck_2011((*(*n)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T40_)) goto LA41_;
T43_ = NIM_NIL;
T43_ = union__nilcheck_7258(ctx, layerHistory, afterLayer);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&(*Result).map, T43_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
}
goto LA38_;
LA41_: ;
{
eqsink___nilcheck_1579(&(*Result).map, layerHistory);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
layerHistory = 0;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
}
LA38_: ;
}
LA32_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&afterLayer);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&layerHistory);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&mapCondition);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&mapIf);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, move__nilcheck_4808)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* target, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* assigned) {
NI16 targetIndex;
NI16 assignedIndex;
NI targetSetIndex;
NI* T1_;
NI assignedSetIndex;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
targetIndex = index__nilcheck_2929(ctx, target);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
assignedIndex = (NI16)0;
T1_ = (NI*)0;
T1_ = X5BX5D___nilcheck_3573((&(*map).setIndices), targetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
targetSetIndex = (*T1_);
assignedSetIndex = (NI)0;
{
NI* T6_;
if (!((*assigned).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA4_;
assignedIndex = index__nilcheck_2929(ctx, assigned);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T6_ = (NI*)0;
T6_ = X5BX5D___nilcheck_3573((&(*map).setIndices), assignedIndex);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
assignedSetIndex = (*T6_);
}
goto LA2_;
LA4_: ;
{
assignedIndex = ((NI16)-1);
assignedSetIndex = ((NI)-1);
}
LA2_: ;
{
NIM_BOOL T10_;
T10_ = (NIM_BOOL)0;
T10_ = eqeq___nilcheck_192(assignedIndex, ((NI16)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T10_) goto LA11_;
moveOut__nilcheck_4101(ctx, map, target);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA8_;
LA11_: ;
{
NIM_BOOL T14_;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T17_;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* T18_;
T14_ = (NIM_BOOL)0;
T14_ = eqeq___nilcheck_222(targetSetIndex, assignedSetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!!(T14_)) goto LA15_;
T17_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T17_ = X5BX5D___nilcheck_2488((&(*map).sets), targetSetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
excl__reorder_448(T17_, ((NI) (targetIndex)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T18_ = (tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA*)0;
T18_ = X5BX5D___nilcheck_2488((&(*map).sets), assignedSetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
incl__pureZcollectionsZintsets_202(T18_, ((NI) (targetIndex)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
X5BX5Deq___nilcheck_1128((&(*map).setIndices), targetIndex, assignedSetIndex);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA8_;
LA15_: ;
LA8_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkAsgn__nilcheck_7479)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* target, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* assigned, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ colontmpD_;
NIM_BOOL oldNimErrFin30_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
{
if (!!(((*assigned).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA4_;
check__nilcheck_234(assigned, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA2_;
LA4_: ;
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmpD__2;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T7_;
colontmpD__2 = NIM_NIL;
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
T7_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T7_ = typeNilability__nilcheck_5175((*target).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*Result).nilability = T7_;
colontmpD__2 = 0;
eqcopy___nilcheck_1575(&colontmpD__2, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*Result).map = colontmpD__2;
}
LA2_: ;
check__nilcheck_234(target, ctx, map, (&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(void)(colontmpD_);
{
if (!((*Result).map == 0)) goto LA10_;
eqcopy___nilcheck_1575(&(*Result).map, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA10_: ;
{
NIM_BOOL T14_;
NIM_BOOL T16_;
NI16 t;
T14_ = (NIM_BOOL)0;
T14_ = ((*target).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3) || (*target).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45));
if (T14_) goto LA15_;
T16_ = (NIM_BOOL)0;
T16_ = ((*target).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42));
if (!(T16_)) goto LA17_;
T16_ = ((nkLiterals__ast_3180[(NU)(((*(*target)._kind_6.sons.p->data[((NI)1)]).kind))>>3] &(1U<<((NU)(((*(*target)._kind_6.sons.p->data[((NI)1)]).kind))&7U)))!=0);
LA17_: ;
T14_ = T16_;
LA15_: ;
if (!T14_) goto LA18_;
t = index__nilcheck_2929(ctx, target);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
move__nilcheck_4808(ctx, map, target, assigned);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
switch ((*assigned).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23):
{
store__nilcheck_3782((*Result).map, ctx, t, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3), ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), (*target).info, target);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
break;
default:
{
store__nilcheck_3782((*Result).map, ctx, t, (*Result).nilability, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), (*target).info, target);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
moveOutDependants__nilcheck_4602(ctx, map, target);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
storeDependants__nilcheck_4736(ctx, map, target, ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!((*assigned).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)38) || (*assigned).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)160))) goto LA24_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** element;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w* value;
NI i;
NI L;
NI T27_;
element = (tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**)0;
value = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w*)0;
i = ((NI)0);
T27_ = (*Result).elements.len;
L = T27_;
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* elementNode;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
tyArray__FIZq7sI4PRP59aHmJ2Mmqwg T31_;
tyArray__ITlg8UhAbnS7vsiPAhcspQ T32_;
if (!(i < L)) goto LA29 ;
elementNode = NIM_NIL;
colontmpD__3 = NIM_NIL;
element = &(*Result).elements.p->data[i].Field0;
value = (&(*Result).elements.p->data[i].Field1);
nimZeroMem((void*)T31_, sizeof(tyArray__FIZq7sI4PRP59aHmJ2Mmqwg));
nimZeroMem((void*)T32_, sizeof(tyArray__ITlg8UhAbnS7vsiPAhcspQ));
T32_[0] = target;
colontmpD__3 = newTree__ast_3975(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65), T32_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
T31_[0] = colontmpD__3;
T31_[1] = (*element);
elementNode = newTree__ast_3975(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45), T31_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
{
NI T35_;
NIM_BOOL T36_;
NI16 elementIndex;
T35_ = (NI)0;
T35_ = symbol__nilcheck_2001(elementNode);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
T36_ = (NIM_BOOL)0;
T36_ = contains__nilcheck_7585((*ctx).symbolIndices, T35_);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
if (!T36_) goto LA37_;
elementIndex = index__nilcheck_2929(ctx, elementNode);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
store__nilcheck_3782((*Result).map, ctx, elementIndex, (*value), ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), (*target).info, elementNode);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
LA37_: ;
i += ((NI)1);
{
LA30_:;
}
{
oldNimErrFin30_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&elementNode);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin30_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA29: ;
}
}
}
LA24_: ;
}
break;
}
}
LA18_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkFor__nilcheck_7666)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* m;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map0;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ colontmpD_;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ check2;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map2;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T2_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T9_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T10_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
m = NIM_NIL;
map0 = NIM_NIL;
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
nimZeroMem((void*)(&check2), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
map2 = NIM_NIL;
m = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
map0 = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)2)], ctx, map, (&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T2_ = NIM_NIL;
T2_ = copyMap__nilcheck_5165(colontmpD_.map);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&m, T2_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI16 T7_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T8_;
if (!((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA5_;
T7_ = (NI16)0;
T7_ = index__nilcheck_2929(ctx, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T8_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T8_ = typeNilability__nilcheck_5175((*(*n)._kind_6.sons.p->data[((NI)0)]).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
store__nilcheck_3782(m, ctx, T7_, T8_, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), (*(*n)._kind_6.sons.p->data[((NI)0)]).info, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA5_: ;
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)2)], ctx, m, (&check2));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
map2 = check2.map;
check2.map = 0;
T9_ = NIM_NIL;
T9_ = union__nilcheck_7258(ctx, map0, m);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&(*Result).map, T9_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T10_ = NIM_NIL;
T10_ = union__nilcheck_7258(ctx, (*Result).map, map2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&(*Result).map, T10_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&map2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_5372((&check2));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_5372((&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&map0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&m);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextSymId__ast_3268)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* x) {
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw result;
NI32 colontmpD_;
NI32 colontmpD__2;
nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw));
colontmpD_ = (NI32)0;
colontmpD__2 = (NI32)0;
(*x).symId += ((NI)1);
nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw));
colontmpD_ = (*x).module;
result.module = colontmpD_;
colontmpD__2 = (*x).symId;
result.item = colontmpD__2;
return result;
}
static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextTypeId__ast_3291)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* x) {
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw result;
NI32 colontmpD_;
NI32 colontmpD__2;
nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw));
colontmpD_ = (NI32)0;
colontmpD__2 = (NI32)0;
(*x).typeId_0 += ((NI)1);
nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw));
colontmpD_ = (*x).module;
result.module = colontmpD_;
colontmpD__2 = (*x).typeId_0;
result.item = colontmpD__2;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, infix__nilcheck_7746)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* l, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r, tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg magic) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
NimStringV2 name;
tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* op;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* colontmpD_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
NimStringV2 T1_;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw T6_;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg T7_;
tyArray__wysJI6hInaI5ABj9aoPL4Dw T8_;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw T9_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* T10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
name.len = 0; name.p = NIM_NIL;
cache = NIM_NIL;
op = NIM_NIL;
colontmpD_ = NIM_NIL;
colontmpD__2 = NIM_NIL;
T1_.len = 0; T1_.p = NIM_NIL;
switch (magic) {
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)87):
{
name = TM__9a75rVZu7sg4HRrHPMS3VUw_54;
}
break;
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)109):
{
name = TM__9a75rVZu7sg4HRrHPMS3VUw_56;
}
break;
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)110):
{
name = TM__9a75rVZu7sg4HRrHPMS3VUw_58;
}
break;
default:
{
name = TM__9a75rVZu7sg4HRrHPMS3VUw_59;
}
break;
}
cache = newIdentCache__idents_175();
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
colontmpD_ = getIdent__idents_166(cache, name);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T6_ = nextSymId__ast_3268((*ctx).idgen);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T7_ = 0;
op = newSym__ast_4028(((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)8), colontmpD_, T6_, ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL), (*r).info, T7_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*op).magic = magic;
nimZeroMem((void*)T8_, sizeof(tyArray__wysJI6hInaI5ABj9aoPL4Dw));
colontmpD__2 = newSymNode__ast_4787(op, (*r).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T8_[0] = colontmpD__2;
T8_[1] = l;
T8_[2] = r;
result = newTree__ast_3975(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29), T8_, 3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T9_ = nextTypeId__ast_3291((*ctx).idgen);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T10_ = NIM_NIL;
T10_ = newType__ast_4969(((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)1), T9_, ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3549(&(*result).typ, T10_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___idents_133(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_4060(&op);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___idents_263(&cache);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, infixEq__nilcheck_7788)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* l, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
result = infix__nilcheck_7746(ctx, l, r, ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)87));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, infixOr__nilcheck_7793)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* l, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
result = infix__nilcheck_7746(ctx, l, r, ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)110));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, prefixNot__nilcheck_7782)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* op;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* colontmpD_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw T1_;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg T2_;
tyArray__FIZq7sI4PRP59aHmJ2Mmqwg T3_;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw T4_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* T5_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
cache = NIM_NIL;
op = NIM_NIL;
colontmpD_ = NIM_NIL;
colontmpD__2 = NIM_NIL;
cache = newIdentCache__idents_175();
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
colontmpD_ = getIdent__idents_166(cache, TM__9a75rVZu7sg4HRrHPMS3VUw_61);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T1_ = nextSymId__ast_3268((*ctx).idgen);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T2_ = 0;
op = newSym__ast_4028(((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)8), colontmpD_, T1_, ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL), (*node).info, T2_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*op).magic = ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)96);
nimZeroMem((void*)T3_, sizeof(tyArray__FIZq7sI4PRP59aHmJ2Mmqwg));
colontmpD__2 = newSymNode__ast_4787(op, (*node).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T3_[0] = colontmpD__2;
T3_[1] = node;
result = newTree__ast_3975(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30), T3_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T4_ = nextTypeId__ast_3291((*ctx).idgen);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T5_ = NIM_NIL;
T5_ = newType__ast_4969(((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)1), T4_, ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3549(&(*result).typ, T5_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___idents_133(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_4060(&op);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___idents_263(&cache);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, checkCase__nilcheck_7798)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* base;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T2_;
NIM_BOOL oldNimErrFin10_;
NIM_BOOL oldNimErrFin33_;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
base = NIM_NIL;
a = NIM_NIL;
eqcopy___ast_3457(&base, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T2_ = NIM_NIL;
T2_ = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&(*Result).map, T2_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child;
child = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA7 ;
i = i_2;
eqcopy___ast_3457(&child, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
{
switch ((*child).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)85):
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branchBase;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* code;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* test;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* conditionMap;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmpD_;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ newCheck;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__2;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__3;
NI T16_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T23_;
branchBase = NIM_NIL;
code = NIM_NIL;
test = NIM_NIL;
conditionMap = NIM_NIL;
colontmpD_ = NIM_NIL;
nimZeroMem((void*)(&newCheck), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
colontmpD__2 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__3 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
NI T13_;
T13_ = (NI)0;
T13_ = len__ast_3325(child);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
if (!(T13_ < ((NI)2))) goto LA14_;
eqdestroy___nilcheck_5372((&newCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___nilcheck_1572(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___nilcheck_1572(&conditionMap);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___ast_3454(&test);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___ast_3454(&code);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___ast_3454(&branchBase);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
goto LA8;
}
LA14_: ;
eqcopy___ast_3457(&branchBase, (*child)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
T16_ = (NI)0;
T16_ = len__ast_3325(child);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
eqcopy___ast_3457(&code, (*child)._kind_6.sons.p->data[(NI)(T16_ - ((NI)1))]);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
test = infixEq__nilcheck_7788(ctx, base, branchBase);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
{
if (!(a == 0)) goto LA19_;
eqcopy___ast_3457(&a, test);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
}
goto LA17_;
LA19_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T22_;
T22_ = NIM_NIL;
T22_ = infixOr__nilcheck_7793(ctx, a, test);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
eqsink___ast_3460(&a, T22_);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
}
LA17_: ;
colontmpD_ = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
conditionMap = checkCondition__nilcheck_238(test, ctx, colontmpD_, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
checkBranch__nilcheck_2007(code, ctx, conditionMap, (&newCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
T23_ = NIM_NIL;
T23_ = union__nilcheck_7258(ctx, (*Result).map, newCheck.map);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
eqsink___nilcheck_1579(&(*Result).map, T23_);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
{
if (!((*Result).nilability == newCheck.nilability)) goto LA26_;
colontmpD__2 = (*Result).nilability;
(*Result).nilability = colontmpD__2;
}
goto LA24_;
LA26_: ;
{
colontmpD__3 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
(*Result).nilability = colontmpD__3;
}
LA24_: ;
{
LA10_:;
}
{
oldNimErrFin10_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&newCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___nilcheck_1572(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___nilcheck_1572(&conditionMap);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___ast_3454(&test);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___ast_3454(&code);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___ast_3454(&branchBase);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
*nimErr_ = oldNimErrFin10_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)86):
{
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88):
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* mapElse;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__4;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmpD__5;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ newCheck_2;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__6;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__7;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T34_;
mapElse = NIM_NIL;
colontmpD__4 = NIM_NIL;
colontmpD__5 = NIM_NIL;
nimZeroMem((void*)(&newCheck_2), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
colontmpD__6 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__7 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__4 = prefixNot__nilcheck_7782(ctx, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
colontmpD__5 = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
mapElse = checkCondition__nilcheck_238(colontmpD__4, ctx, colontmpD__5, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
checkBranch__nilcheck_2007((*child)._kind_6.sons.p->data[((NI)0)], ctx, mapElse, (&newCheck_2));
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T34_ = NIM_NIL;
T34_ = union__nilcheck_7258(ctx, (*Result).map, newCheck_2.map);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
eqsink___nilcheck_1579(&(*Result).map, T34_);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
if (!((*Result).nilability == newCheck_2.nilability)) goto LA37_;
colontmpD__6 = (*Result).nilability;
(*Result).nilability = colontmpD__6;
}
goto LA35_;
LA37_: ;
{
colontmpD__7 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2);
(*Result).nilability = colontmpD__7;
}
LA35_: ;
{
LA33_:;
}
{
oldNimErrFin33_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&newCheck_2));
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___nilcheck_1572(&colontmpD__5);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___ast_3454(&colontmpD__4);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
eqdestroy___nilcheck_1572(&mapElse);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
*nimErr_ = oldNimErrFin33_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
}
break;
default:
{
}
break;
}
} LA8: ;
i_2 += ((NI)1);
} LA7: ;
}
}
{
LA4_:;
}
{
oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&child);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin4_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&a);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&base);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkReturn__nilcheck_7621)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)0)], ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
store__nilcheck_3782((*Result).map, ctx, ((NI16)0), (*Result).nilability, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), (*n).info, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkBracketExpr__nilcheck_7229)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ T1_;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)0)], ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
handleNilability__nilcheck_7180(Result, (*n)._kind_6.sons.p->data[((NI)0)], ctx, map);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimZeroMem((void*)(&T1_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)1)], ctx, (*Result).map, (&T1_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___nilcheck_5378(Result, (&T1_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimZeroMem((void*)(&T2_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
checkRefExpr__nilcheck_7192(n, ctx, Result, (&T2_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___nilcheck_5378(Result, (&T2_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(void, nimMarkCyclic)(void* p) {
}
N_LIB_PRIVATE N_NIMCALL(void, checkTry__nilcheck_7835)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* newMap;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* currentMap;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ tryCheck;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* afterTryMap;
NIM_BOOL canRaise;
NIM_BOOL hasFinally;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T2_;
NIM_BOOL oldNimErrFin13_;
NIM_BOOL oldNimErrFin23_;
NIM_BOOL oldNimErrFin4_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* blitTmp;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
newMap = NIM_NIL;
currentMap = NIM_NIL;
nimZeroMem((void*)(&tryCheck), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
afterTryMap = NIM_NIL;
newMap = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqcopy___nilcheck_1575(&currentMap, map, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
canRaise = NIM_FALSE;
hasFinally = NIM_FALSE;
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)0)], ctx, currentMap, (&tryCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T2_ = NIM_NIL;
T2_ = union__nilcheck_7258(ctx, currentMap, tryCheck.map);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&newMap, T2_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
canRaise = canRaise__ast_6541((*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqcopy___nilcheck_1575(&afterTryMap, newMap, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch;
NI a;
branch = NIM_NIL;
a = (NI)0;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA7 ;
i = i_2;
a = i;
eqcopy___ast_3457(&branch, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
{
if (!(((NI)0) < a)) goto LA10_;
switch ((*branch).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)107):
{
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ childCheck;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T14_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T15_;
nimZeroMem((void*)(&childCheck), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
T14_ = NIM_NIL;
T14_ = union__nilcheck_7258(ctx, afterTryMap, newMap);
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
eqsink___nilcheck_1579(&newMap, T14_);
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
check__nilcheck_234((*branch)._kind_6.sons.p->data[((NI)0)], ctx, newMap, (&childCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
T15_ = NIM_NIL;
T15_ = union__nilcheck_7258(ctx, newMap, childCheck.map);
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
eqsink___nilcheck_1579(&newMap, T15_);
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
hasFinally = NIM_TRUE;
{
LA13_:;
}
{
oldNimErrFin13_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&childCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
*nimErr_ = oldNimErrFin13_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)87):
{
{
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ childCheck_2;
NI T24_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T25_;
if (!canRaise) goto LA21_;
nimZeroMem((void*)(&childCheck_2), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
T24_ = (NI)0;
T24_ = len__ast_3325(branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
check__nilcheck_234((*branch)._kind_6.sons.p->data[(NI)(T24_ - ((NI)1))], ctx, newMap, (&childCheck_2));
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
T25_ = NIM_NIL;
T25_ = union__nilcheck_7258(ctx, newMap, childCheck_2.map);
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
eqsink___nilcheck_1579(&newMap, T25_);
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
{
LA23_:;
}
{
oldNimErrFin23_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&childCheck_2));
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
*nimErr_ = oldNimErrFin23_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
}
LA21_: ;
}
break;
default:
{
}
break;
}
}
LA10_: ;
i_2 += ((NI)1);
} LA7: ;
}
}
{
LA4_:;
}
{
oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin4_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T35_;
if (!!(hasFinally)) goto LA33_;
T35_ = NIM_NIL;
T35_ = union__nilcheck_7258(ctx, afterTryMap, newMap);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&newMap, T35_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA33_: ;
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
blitTmp = newMap;
nimMarkCyclic(newMap);
newMap = 0;
(*Result).map = blitTmp;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&afterTryMap);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_5372((&tryCheck));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&currentMap);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&newMap);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkWhile__nilcheck_7683)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* m;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map0;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ colontmpD_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map1;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ check2;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map2;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T2_;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* T3_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
m = NIM_NIL;
map0 = NIM_NIL;
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
map1 = NIM_NIL;
nimZeroMem((void*)(&check2), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
map2 = NIM_NIL;
m = checkCondition__nilcheck_238((*n)._kind_6.sons.p->data[((NI)0)], ctx, map, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
map0 = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)1)], ctx, m, (&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqcopy___nilcheck_1575(&m, colontmpD_.map, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
map1 = copyMap__nilcheck_5165(m);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)1)], ctx, m, (&check2));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
map2 = check2.map;
check2.map = 0;
T2_ = NIM_NIL;
T2_ = union__nilcheck_7258(ctx, map0, map1);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&(*Result).map, T2_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T3_ = NIM_NIL;
T3_ = union__nilcheck_7258(ctx, (*Result).map, map2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___nilcheck_1579(&(*Result).map, T3_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_1572(&map2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_5372((&check2));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&map1);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_5372((&colontmpD_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&map0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&m);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, check__nilcheck_234)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map, tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ* Result) {
NIM_BOOL oldNimErrFin21_;
NIM_BOOL oldNimErrFin19_;
NIM_BOOL oldNimErrFin41_;
NIM_BOOL oldNimErrFin55_;
NIM_BOOL oldNimErrFin72_;
NIM_BOOL oldNimErrFin70_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
switch ((*n).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3):
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmpD_;
NI16 T2_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T3_;
colontmpD_ = NIM_NIL;
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
T2_ = (NI16)0;
T2_ = index__nilcheck_2929(ctx, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T3_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T3_ = X5BX5D___nilcheck_1623(map, T2_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*Result).nilability = T3_;
colontmpD_ = 0;
eqcopy___nilcheck_1575(&colontmpD_, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*Result).map = colontmpD_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32):
{
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* callSym;
if (!((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA7_;
callSym = NIM_NIL;
callSym = (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym;
switch ((*callSym).magic) {
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)109):
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)110):
{
checkInfix__nilcheck_7694(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)143):
{
checkIsNil__nilcheck_7737(n, ctx, map, NIM_FALSE, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
default:
{
checkCall__nilcheck_5177(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
}
}
goto LA5_;
LA7_: ;
{
checkCall__nilcheck_5177(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA5_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)58):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)59):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)60):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)33):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)61):
{
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)1)], ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)126):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)68):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)69):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)70):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)41):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)39):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)37):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)160):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)155):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)38):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88):
{
eqcopy___nilcheck_1575(&(*Result).map, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
tySequence__fEh0bUDDOwnFhhuQmQJTNA elements;
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)38) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)160))) goto LA17_;
elements.len = 0; elements.p = NIM_NIL;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child;
NI i;
child = NIM_NIL;
i = (NI)0;
{
NI i_2;
NI colontmp_;
NI i_3;
i_2 = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
i_3 = ((NI)0);
{
while (1) {
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ T25_;
if (!(i_3 < colontmp_)) goto LA24 ;
i_2 = i_3;
i = i_2;
eqcopy___ast_3457(&child, (*n)._kind_6.sons.p->data[i_2]);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
nimZeroMem((void*)(&T25_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
check__nilcheck_234(child, ctx, (*Result).map, (&T25_));
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
eqsink___nilcheck_5378(Result, (&T25_));
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
{
if (!(((NI)0) < i)) goto LA28_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
tyTuple__czAeVAIf9abkuDYbRyH2HPw T34_;
if (!((*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34))) goto LA32_;
colontmpD__2 = NIM_NIL;
nimZeroMem((void*)(&T34_), sizeof(tyTuple__czAeVAIf9abkuDYbRyH2HPw));
colontmpD__2 = 0;
eqcopy___ast_3457(&colontmpD__2, (*child)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
T34_.Field0 = colontmpD__2;
T34_.Field1 = (*Result).nilability;
add__nilcheck_8403((&elements), T34_);
}
LA32_: ;
}
LA28_: ;
i_3 += ((NI)1);
} LA24: ;
}
}
{
LA21_:;
}
{
oldNimErrFin21_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&child);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
*nimErr_ = oldNimErrFin21_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
}
eqsink___nilcheck_5392((&(*Result).elements), elements);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
elements.len = 0; elements.p = NIM_NIL;
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
{
LA19_:;
}
{
oldNimErrFin19_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5386((&elements));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin19_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA15_;
LA17_: ;
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child_2;
child_2 = NIM_NIL;
{
NI i_4;
NI colontmp__2;
NI i_5;
i_4 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
i_5 = ((NI)0);
{
while (1) {
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ T45_;
if (!(i_5 < colontmp__2)) goto LA44 ;
i_4 = i_5;
eqcopy___ast_3457(&child_2, (*n)._kind_6.sons.p->data[i_4]);
if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
nimZeroMem((void*)(&T45_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
check__nilcheck_234(child_2, ctx, (*Result).map, (&T45_));
if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
eqsink___nilcheck_5378(Result, (&T45_));
if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
i_5 += ((NI)1);
} LA44: ;
}
}
{
LA41_:;
}
{
oldNimErrFin41_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&child_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin41_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
LA15_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45):
{
checkDotExpr__nilcheck_7223(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)47):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65):
{
checkDeref__nilcheck_7185(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)63):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)64):
{
check__nilcheck_234((*n)._kind_6.sons.p->data[((NI)0)], ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)92):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)48):
{
checkIf__nilcheck_7627(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)73):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)74):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)149):
{
checkAsgn__nilcheck_7479((*n)._kind_6.sons.p->data[((NI)0)], (*n)._kind_6.sons.p->data[((NI)1)], ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)99):
{
eqcopy___nilcheck_1575(&(*Result).map, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child_3;
child_3 = NIM_NIL;
{
NI i_6;
NI colontmp__3;
NI i_7;
i_6 = (NI)0;
colontmp__3 = (NI)0;
colontmp__3 = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
i_7 = ((NI)0);
{
while (1) {
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ T59_;
if (!(i_7 < colontmp__3)) goto LA58 ;
i_6 = i_7;
eqcopy___ast_3457(&child_3, (*n)._kind_6.sons.p->data[i_6]);
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
nimZeroMem((void*)(&T59_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
checkAsgn__nilcheck_7479((*child_3)._kind_6.sons.p->data[((NI)0)], (*child_3)._kind_6.sons.p->data[((NI)2)], ctx, (*Result).map, (&T59_));
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
eqsink___nilcheck_5378(Result, (&T59_));
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
i_7 += ((NI)1);
} LA58: ;
}
}
{
LA55_:;
}
{
oldNimErrFin55_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&child_3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin55_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)94):
{
checkFor__nilcheck_7666(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)97):
{
checkCase__nilcheck_7798(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)109):
{
checkReturn__nilcheck_7621(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42):
{
checkBracketExpr__nilcheck_7229(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)106):
{
checkTry__nilcheck_7835(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)96):
{
checkWhile__nilcheck_7683(n, ctx, map, Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)4) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)98):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)79):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)81):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)80):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)82):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)83):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)51):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)52):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)159):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)101):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)102):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)121):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)116):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)118):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)90):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)125):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)158):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)132):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)123):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)122):
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* colontmpD__3;
colontmpD__3 = NIM_NIL;
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3);
colontmpD__3 = 0;
eqcopy___nilcheck_1575(&colontmpD__3, map, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*Result).map = colontmpD__3;
}
break;
default:
{
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* elementMap;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ elementCheck;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* blitTmp;
elementMap = NIM_NIL;
nimZeroMem((void*)(&elementCheck), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
elementMap = copyMap__nilcheck_5165(map);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
eqsink___nilcheck_1579(&elementCheck.map, elementMap);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
elementMap = 0;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* element;
element = NIM_NIL;
{
NI i_8;
NI colontmp__4;
NI i_9;
i_8 = (NI)0;
colontmp__4 = (NI)0;
colontmp__4 = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA72_;
i_9 = ((NI)0);
{
while (1) {
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ T76_;
if (!(i_9 < colontmp__4)) goto LA75 ;
i_8 = i_9;
eqcopy___ast_3457(&element, (*n)._kind_6.sons.p->data[i_8]);
if (NIM_UNLIKELY(*nimErr_)) goto LA72_;
nimZeroMem((void*)(&T76_), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
check__nilcheck_234(element, ctx, elementCheck.map, (&T76_));
if (NIM_UNLIKELY(*nimErr_)) goto LA72_;
eqsink___nilcheck_5378((&elementCheck), (&T76_));
if (NIM_UNLIKELY(*nimErr_)) goto LA72_;
i_9 += ((NI)1);
} LA75: ;
}
}
{
LA72_:;
}
{
oldNimErrFin72_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&element);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
*nimErr_ = oldNimErrFin72_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
}
nimZeroMem((void*)Result, sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
(*Result).nilability = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3);
blitTmp = elementCheck.map;
nimMarkCyclic(elementCheck.map);
elementCheck.map = 0;
(*Result).map = blitTmp;
{
LA70_:;
}
{
oldNimErrFin70_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&elementCheck));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&elementMap);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin70_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
}
}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, contains__nilcheck_11040)(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw s, NI16 value) {
NIM_BOOL result;
NIM_BOOL T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = lteq___nilcheck_180(s.a, value);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(T1_)) goto LA2_;
T1_ = lteq___nilcheck_180(value, s.b);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA2_: ;
result = T1_;
}BeforeRet_: ;
return result;
}
static N_INLINE(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw, dotdot___nilcheck_10965)(NI16 a, NI16 b) {
tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw result;
nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw));
nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw));
result.a = a;
result.b = b;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI16, low__nilcheck_10934)(tySequence__WAoMpel6cRl8wTBAvKwzFQ a) {
NI16 result;
result = (NI16)0;
result = ((NI16)0);
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI16, high__nilcheck_10942)(tySequence__WAoMpel6cRl8wTBAvKwzFQ a) {
NI16 result;
NI T1_;
result = (NI16)0;
T1_ = (a.len-1);
result = ((NI16) (T1_));
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, checkResult__nilcheck_8365)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* ctx, tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map) {
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w resultNilability;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
resultNilability = X5BX5D___nilcheck_1623(map, ((NI16)0));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
switch (resultNilability) {
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3):
{
liMessage__msgs_1172((*ctx).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)62), TM__9a75rVZu7sg4HRrHPMS3VUw_63, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__9a75rVZu7sg4HRrHPMS3VUw_64), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)2):
{
liMessage__msgs_1172((*ctx).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)62), TM__9a75rVZu7sg4HRrHPMS3VUw_66, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__9a75rVZu7sg4HRrHPMS3VUw_67), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)4):
{
liMessage__msgs_1172((*ctx).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)62), TM__9a75rVZu7sg4HRrHPMS3VUw_69, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__9a75rVZu7sg4HRrHPMS3VUw_70), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1):
case ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0):
{
}
break;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_11135)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* dest) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
eqdestroy___nilcheck_3248((&(*dest).symbolIndices.data));
eqdestroy___ast_3723((&(*dest).expressions));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1250((&(*dest).dependants));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_5869((&(*dest).warningLocations.data));
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicStatic((*dest).idgen, (&NTIv2__C1k2TcDRT9cU4DEatQIT09ag_));
if (!T3_) goto LA4_;
eqdestroy___ast_3232((*dest).idgen);
nimRawDispose((*dest).idgen, ((NI)4));
}
LA4_: ;
{
NIM_BOOL T8_;
T8_ = (NIM_BOOL)0;
T8_ = nimDecRefIsLast((*dest).config);
if (!T8_) goto LA9_;
eqdestroy___options_3149((*dest).config);
nimRawDispose((*dest).config, ((NI)8));
}
LA9_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___nilcheck_11144)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* dest, void* env) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
eqtrace___nilcheck_3257((&(*dest).symbolIndices.data), env);
eqtrace___ast_3732((&(*dest).expressions), env);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqtrace___nilcheck_1259((&(*dest).dependants), env);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqtrace___nilcheck_5878((&(*dest).warningLocations.data), env);
nimTraceRef(&(*dest).idgen, (&NTIv2__C1k2TcDRT9cU4DEatQIT09ag_), env);
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___nilcheck_11166)(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q** dest) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicStatic((*dest), (&NTIv2__LCzH79cvZlNof6AWyaJPu5Q_));
if (!T3_) goto LA4_;
eqdestroy___nilcheck_11135((*dest));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest), ((NI)8));
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkNil__nilcheck_10843)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen) {
NimStringV2 filename;
tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* context;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* colontmpD_;
tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* colontmpD__2;
tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ* map;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__3;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w colontmpD__4;
tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ res;
NU16 line;
NI fileIndex;
tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q* T2_;
NI T3_;
NIM_BOOL oldNimErrFin5_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T22_;
NIM_BOOL canCheck;
NI16 T30_;
NI16 T31_;
tyObject_HSlice__6VfXE1cAxJ0GQh9aCi1zhkw T32_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
filename.len = 0; filename.p = NIM_NIL;
context = NIM_NIL;
colontmpD_ = NIM_NIL;
colontmpD__2 = NIM_NIL;
map = NIM_NIL;
colontmpD__3 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
colontmpD__4 = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
nimZeroMem((void*)(&res), sizeof(tyObject_Check__WFDGOCzFyOu8g6MOkaTrDQ));
line = (*(*s).ast).info.line;
fileIndex = ((NI) ((*(*s).ast).info.fileIndex));
filename = (*conf).m.fileInfos.p->data[fileIndex].fullPath;
T2_ = NIM_NIL;
T2_ = (tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q*) nimNewObj(sizeof(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q), NIM_ALIGNOF(tyObject_NilCheckerContextcolonObjectType___LCzH79cvZlNof6AWyaJPu5Q));
colontmpD_ = 0;
eqcopy___options_3378(&colontmpD_, conf);
(*T2_).config = colontmpD_;
colontmpD__2 = 0;
eqcopy___ast_3247(&colontmpD__2, idgen, NIM_TRUE);
(*T2_).idgen = colontmpD__2;
context = T2_;
preVisit__nilcheck_10252(context, s, body, conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T3_ = (NI)0;
T3_ = len__nilcheck_10907((*context).symbolIndices);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
map = newNilMap__nilcheck_244(((tyObject_NilMapcolonObjectType___bj6rY6P7ZUHwppEHheXbKQ*) NIM_NIL), T3_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child;
tySequence__xxu3GgaFAGO6lOns9aHaeLQ colontmp_;
NI i;
NI i_2;
NI L;
NI T6_;
child = NIM_NIL;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
i = (NI)0;
eqcopy___ast_3726((&colontmp_), (*(*(*s).typ).n)._kind_6.sons);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
i_2 = ((NI)0);
T6_ = colontmp_.len;
L = T6_;
{
while (1) {
if (!(i_2 < L)) goto LA8 ;
i = i_2;
eqcopy___ast_3457(&child, colontmp_.p->data[i_2]);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
{
{
NI16 T18_;
tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w T19_;
if (!(((NI)0) < i)) goto LA12_;
{
if (!!(((*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)))) goto LA16_;
goto LA9;
}
LA16_: ;
T18_ = (NI16)0;
T18_ = index__nilcheck_2929(context, child);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
T19_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
T19_ = typeNilability__nilcheck_5175((*child).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
store__nilcheck_3782(map, context, T18_, T19_, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)0), (*child).info, child);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
LA12_: ;
} LA9: ;
i_2 += ((NI)1);
} LA8: ;
}
{
LA5_:;
}
{
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3723((&colontmp_));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&child);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin5_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
T22_ = (tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)0;
{
NIM_BOOL T25_;
T25_ = (NIM_BOOL)0;
T25_ = !(((*(*s).typ).sons.p->data[((NI)0)] == 0));
if (!(T25_)) goto LA26_;
T25_ = ((*(*(*s).typ).sons.p->data[((NI)0)]).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22));
LA26_: ;
if (!T25_) goto LA27_;
colontmpD__3 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)3);
T22_ = colontmpD__3;
}
goto LA23_;
LA27_: ;
{
colontmpD__4 = ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1);
T22_ = colontmpD__4;
}
LA23_: ;
store__nilcheck_3782(map, context, ((NI16)0), T22_, ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)5), (*(*s).ast).info, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
check__nilcheck_234(body, context, map, (&res));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T30_ = (NI16)0;
T30_ = low__nilcheck_10934((*res.map).history);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T31_ = (NI16)0;
T31_ = high__nilcheck_10942((*res.map).history);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T32_ = dotdot___nilcheck_10965(T30_, T31_);
canCheck = contains__nilcheck_11040(T32_, ((NI16)0));
{
NIM_BOOL T35_;
NIM_BOOL T36_;
tySequence__NE3kNZskLpMeWsT0qd9bxYQ* T39_;
NI T40_;
T35_ = (NIM_BOOL)0;
T36_ = (NIM_BOOL)0;
T36_ = (res.nilability == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1));
if (!(T36_)) goto LA37_;
T36_ = canCheck;
LA37_: ;
T35_ = T36_;
if (!(T35_)) goto LA38_;
T39_ = (tySequence__NE3kNZskLpMeWsT0qd9bxYQ*)0;
T39_ = X5BX5D___nilcheck_1952((&(*res.map).history), ((NI16)0));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T40_ = (*T39_).len;
T35_ = (T40_ <= ((NI)1));
LA38_: ;
if (!T35_) goto LA41_;
store__nilcheck_3782(res.map, context, ((NI16)0), ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1), ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), (*(*s).ast).info, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA33_;
LA41_: ;
{
{
if (!(res.nilability == ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1))) goto LA46_;
store__nilcheck_3782(res.map, context, ((NI16)0), ((tyEnum_Nilability__jLZmLgZ19aea5C6c8s60k0w)1), ((tyEnum_TransitionKind__RnJG7vr34PrgdLvvoOJsfg)1), (*(*s).ast).info, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA46_: ;
}
LA33_: ;
{
NIM_BOOL T50_;
NIM_BOOL T51_;
T50_ = (NIM_BOOL)0;
T51_ = (NIM_BOOL)0;
T51_ = !(((*(*s).typ).sons.p->data[((NI)0)] == 0));
if (!(T51_)) goto LA52_;
T51_ = ((*(*(*s).typ).sons.p->data[((NI)0)]).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22));
LA52_: ;
T50_ = T51_;
if (!(T50_)) goto LA53_;
T50_ = (((*(*(*s).typ).sons.p->data[((NI)0)]).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)17)))&63U)))!=0);
LA53_: ;
if (!T50_) goto LA54_;
checkResult__nilcheck_8365((*s).ast, context, res.map);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA54_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___nilcheck_5372((&res));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_1572(&map);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___nilcheck_11166(&context);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}