/* Generated by Nim Compiler v0.16.0 */ /* (c) 2017 Andreas Rumpf */ /* The generated code is subject to the original license. */ #define NIM_INTBITS 32 #include "nimbase.h" #include #undef linux typedef struct Tsym_AXG7xcvKqaxY6koRX1xkCw Tsym_AXG7xcvKqaxY6koRX1xkCw; typedef struct Tnode_bROa11lyF5vxEN9aYNbHmhw Tnode_bROa11lyF5vxEN9aYNbHmhw; typedef struct Tidobj_raN9cHVgzmvaXisezY9aGg9cg Tidobj_raN9cHVgzmvaXisezY9aGg9cg; typedef struct TNimObject TNimObject; typedef struct TNimType TNimType; typedef struct TNimNode TNimNode; typedef struct TY_zuqP4Riz26Oi5fWgPYVEgA TY_zuqP4Riz26Oi5fWgPYVEgA; typedef struct TY_DXS6mEo7PVUFJkirsQ9bNQA TY_DXS6mEo7PVUFJkirsQ9bNQA; typedef struct Tstrtable_f07aOS3dr28kGa5wcE29aFA Tstrtable_f07aOS3dr28kGa5wcE29aFA; typedef struct TY_sksVpmPRIkNR9axiwtD1Guw TY_sksVpmPRIkNR9axiwtD1Guw; typedef struct Ttype_LTUWCZolpovw9cWE3JBWSUw Ttype_LTUWCZolpovw9cWE3JBWSUw; typedef struct Tident_4umxGerWTHGPwUms7Yqu3g Tident_4umxGerWTHGPwUms7Yqu3g; typedef struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw; typedef struct Tloc_EtHNvCB0bgfu9bFjzx9cb6aA Tloc_EtHNvCB0bgfu9bFjzx9cb6aA; typedef struct Ropeobj_HF4qJnb6xiOddgPmsxodtQ Ropeobj_HF4qJnb6xiOddgPmsxodtQ; typedef struct Tlib_4f9aBgmqEuj7uWJdBBGcRgA Tlib_4f9aBgmqEuj7uWJdBBGcRgA; typedef struct TY_iGkpo9aKQdr3NWelKC4cnJA TY_iGkpo9aKQdr3NWelKC4cnJA; typedef struct NimStringDesc NimStringDesc; typedef struct TGenericSeq TGenericSeq; typedef struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ TY_ehmV9bTklH2Gt9cXHV9c0HLeQ; typedef struct Intset_PQrmFm4BXFkFSVOUl1ojSg Intset_PQrmFm4BXFkFSVOUl1ojSg; typedef struct Trunk_ul49aWfv9aes8cutmeltT3gQ Trunk_ul49aWfv9aes8cutmeltT3gQ; typedef struct TY_9brg1xNurxcus33lU4IE1Dw TY_9brg1xNurxcus33lU4IE1Dw; typedef struct TY_XOVT24GHXwqiEj5GCsEGCA TY_XOVT24GHXwqiEj5GCsEGCA; typedef struct Teffects_vxIpB3oPhn77OqeaB81hCA Teffects_vxIpB3oPhn77OqeaB81hCA; typedef struct TY_qwqHTkRvwhrRyENtudHQ7g TY_qwqHTkRvwhrRyENtudHQ7g; typedef struct Cell_1zcF9cV8XIAtbN8h5HRUB8g Cell_1zcF9cV8XIAtbN8h5HRUB8g; typedef struct Cellseq_Axo1XVm9aaQueTOldv8le5w Cellseq_Axo1XVm9aaQueTOldv8le5w; typedef struct Gcheap_1TRH1TZMaVZTnLNcIHuNFQ Gcheap_1TRH1TZMaVZTnLNcIHuNFQ; typedef struct Gcstack_7fytPA5bBsob6See21YMRA Gcstack_7fytPA5bBsob6See21YMRA; typedef struct Memregion_x81NhDv59b8ercDZ9bi85jyg Memregion_x81NhDv59b8ercDZ9bi85jyg; typedef struct Smallchunk_tXn60W2f8h3jgAYdEmy5NQ Smallchunk_tXn60W2f8h3jgAYdEmy5NQ; typedef struct Llchunk_XsENErzHIZV9bhvyJx56wGw Llchunk_XsENErzHIZV9bhvyJx56wGw; typedef struct Bigchunk_Rv9c70Uhp2TytkX7eH78qEg Bigchunk_Rv9c70Uhp2TytkX7eH78qEg; typedef struct Intset_EZObFrE3NC9bIb3YMkY9crZA Intset_EZObFrE3NC9bIb3YMkY9crZA; typedef struct Trunk_W0r8S0Y3UGke6T9bIUWnnuw Trunk_W0r8S0Y3UGke6T9bIUWnnuw; typedef struct Avlnode_IaqjtwKhxLEpvDS9bct9blEw Avlnode_IaqjtwKhxLEpvDS9bct9blEw; typedef struct Gcstat_0RwLoVBHZPfUAcLczmfQAg Gcstat_0RwLoVBHZPfUAcLczmfQAg; typedef struct Cellset_jG87P0AI9aZtss9ccTYBIISQ Cellset_jG87P0AI9aZtss9ccTYBIISQ; typedef struct Pagedesc_fublkgIY4LG3mT51LU2WHg Pagedesc_fublkgIY4LG3mT51LU2WHg; typedef struct TY_8Np6tlClE5az1CyqZdN19bQ TY_8Np6tlClE5az1CyqZdN19bQ; typedef struct TY_1v9bKyksXWMsm0vNwmZ4EuQ TY_1v9bKyksXWMsm0vNwmZ4EuQ; typedef struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA; typedef struct Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q; typedef struct TY_a09bGTAl9ceOKTAytYdkbyKg TY_a09bGTAl9ceOKTAytYdkbyKg; typedef struct Basechunk_Sdq7WpT6qAH858F5ZEdG3w Basechunk_Sdq7WpT6qAH858F5ZEdG3w; typedef struct Freecell_u6M5LHprqzkn9axr04yg9bGQ Freecell_u6M5LHprqzkn9axr04yg9bGQ; typedef NU8 Tnimkind_jIBKr1ejBgsfM33Kxw4j7A; typedef NU8 Tnimtypeflag_v8QUszD1sWlSIWZz7mC4bQ_Set; typedef N_NIMCALL_PTR(void, TY_ojoeKfW4VYIm36I9cpDTQIg) (void* p0, NI op0); typedef N_NIMCALL_PTR(void*, TY_WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p0); struct TNimType { NI size; Tnimkind_jIBKr1ejBgsfM33Kxw4j7A kind; Tnimtypeflag_v8QUszD1sWlSIWZz7mC4bQ_Set flags; TNimType* base; TNimNode* node; void* finalizer; TY_ojoeKfW4VYIm36I9cpDTQIg marker; TY_WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy; }; struct TNimObject { TNimType* m_type; }; struct Tidobj_raN9cHVgzmvaXisezY9aGg9cg { TNimObject Sup; NI id; }; typedef NU8 Tsymkind_cNCW9acsSznmEccl1fgQwkw; struct Tstrtable_f07aOS3dr28kGa5wcE29aFA { NI counter; TY_sksVpmPRIkNR9axiwtD1Guw* data; }; typedef NU16 Tmagic_shZhZOdbVC5nnFvcXQAImg; struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw { NI16 line; NI16 col; NI32 fileindex; }; typedef NU32 Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw_Set; typedef NU32 Toption_WspMeQySXNP2XoTWR5MTgg_Set; typedef NU8 Tlockind_O7PRFZKuiBBWbku09cayVBg; typedef NU8 Tstorageloc_JK9cKMX3XnqHaUky9b6gkGEw; typedef NU16 Tlocflag_o2bqJgR4ceIupnUSpxiudA_Set; struct Tloc_EtHNvCB0bgfu9bFjzx9cb6aA { Tlockind_O7PRFZKuiBBWbku09cayVBg k; Tstorageloc_JK9cKMX3XnqHaUky9b6gkGEw s; Tlocflag_o2bqJgR4ceIupnUSpxiudA_Set flags; Ttype_LTUWCZolpovw9cWE3JBWSUw* t; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* r; }; struct Tsym_AXG7xcvKqaxY6koRX1xkCw { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; Tsymkind_cNCW9acsSznmEccl1fgQwkw kind; union{ struct {TY_zuqP4Riz26Oi5fWgPYVEgA* typeinstcache; } S1; struct {TY_DXS6mEo7PVUFJkirsQ9bNQA* procinstcache; Tsym_AXG7xcvKqaxY6koRX1xkCw* gcunsafetyreason; } S2; struct {TY_DXS6mEo7PVUFJkirsQ9bNQA* usedgenerics; Tstrtable_f07aOS3dr28kGa5wcE29aFA tab; } S3; struct {Tsym_AXG7xcvKqaxY6koRX1xkCw* guard; NI bitsize; } S4; } kindU; Tmagic_shZhZOdbVC5nnFvcXQAImg magic; Ttype_LTUWCZolpovw9cWE3JBWSUw* typ; Tident_4umxGerWTHGPwUms7Yqu3g* name; Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info; Tsym_AXG7xcvKqaxY6koRX1xkCw* owner; Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw_Set flags; Tnode_bROa11lyF5vxEN9aYNbHmhw* ast; Toption_WspMeQySXNP2XoTWR5MTgg_Set options; NI position; NI offset; Tloc_EtHNvCB0bgfu9bFjzx9cb6aA loc; Tlib_4f9aBgmqEuj7uWJdBBGcRgA* annex; Tnode_bROa11lyF5vxEN9aYNbHmhw* constraint; }; typedef NU8 Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag; typedef NU8 Tcallingconvention_yjAJ8w0h1PBaSwSGJ3P7IA; typedef NU32 Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw_Set; struct Ttype_LTUWCZolpovw9cWE3JBWSUw { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag kind; Tcallingconvention_yjAJ8w0h1PBaSwSGJ3P7IA callconv; Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw_Set flags; TY_zuqP4Riz26Oi5fWgPYVEgA* sons; Tnode_bROa11lyF5vxEN9aYNbHmhw* n; Tsym_AXG7xcvKqaxY6koRX1xkCw* owner; Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; Tsym_AXG7xcvKqaxY6koRX1xkCw* destructor; Tsym_AXG7xcvKqaxY6koRX1xkCw* deepcopy; Tsym_AXG7xcvKqaxY6koRX1xkCw* assignment; TY_iGkpo9aKQdr3NWelKC4cnJA* methods; NI64 size; NI16 align; NI16 locklevel; Tloc_EtHNvCB0bgfu9bFjzx9cb6aA loc; Ttype_LTUWCZolpovw9cWE3JBWSUw* typeinst; }; typedef NU16 Tnodeflag_jyh9acXHkhZANSSvPIY7ZLg_Set; typedef NU8 Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw; struct TGenericSeq { NI len; NI reserved; }; struct NimStringDesc { TGenericSeq Sup; NIM_CHAR data[SEQ_DECL_SIZE]; }; struct Tnode_bROa11lyF5vxEN9aYNbHmhw { Ttype_LTUWCZolpovw9cWE3JBWSUw* typ; Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info; Tnodeflag_jyh9acXHkhZANSSvPIY7ZLg_Set flags; Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind; union{ struct {NI64 intval; } S1; struct {NF floatval; } S2; struct {NimStringDesc* strval; } S3; struct {Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; } S4; struct {Tident_4umxGerWTHGPwUms7Yqu3g* ident; } S5; struct {TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* sons; } S6; } kindU; NimStringDesc* comment; }; typedef NU16 Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw; typedef N_NIMCALL_PTR(NIM_BOOL, TY_cCu1Pvbk4q0wqQM2LggvMQ) (Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0); struct Intset_PQrmFm4BXFkFSVOUl1ojSg { NI counter; NI max; Trunk_ul49aWfv9aes8cutmeltT3gQ* head; TY_9brg1xNurxcus33lU4IE1Dw* data; }; typedef NU16 Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw; typedef NU8 Tprefereddesc_tnd4qt9c4xddV8oKV5zyusw; typedef NU8 Trenderflag_wrPgUo1ExBlHvFnXN2nSHw_Set; typedef NU64 Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag_Set; typedef NU8 Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw; struct Tident_4umxGerWTHGPwUms7Yqu3g { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; NimStringDesc* s; Tident_4umxGerWTHGPwUms7Yqu3g* next; NI h; }; typedef NimStringDesc* TY_Re75IspeoxXy2oCZHwcRrA[2]; struct TY_XOVT24GHXwqiEj5GCsEGCA { NimStringDesc* Field0; NI Field1; }; struct Teffects_vxIpB3oPhn77OqeaB81hCA { Tnode_bROa11lyF5vxEN9aYNbHmhw* exc; Tnode_bROa11lyF5vxEN9aYNbHmhw* tags; NI bottom; NI intrystmt; Tsym_AXG7xcvKqaxY6koRX1xkCw* owner; TY_qwqHTkRvwhrRyENtudHQ7g* init; TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* guards; TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* locked; NIM_BOOL gcunsafe; NIM_BOOL isrecursive; NIM_BOOL istoplevel; NIM_BOOL hassideeffect; NI16 maxlocklevel; NI16 currlocklevel; }; typedef NU8 Tnimnodekind_unfNsxrcATrufDZmpBq4HQ; struct TNimNode { Tnimnodekind_unfNsxrcATrufDZmpBq4HQ kind; NI offset; TNimType* typ; NCSTRING name; NI len; TNimNode** sons; }; struct Cell_1zcF9cV8XIAtbN8h5HRUB8g { NI refcount; TNimType* typ; }; struct Cellseq_Axo1XVm9aaQueTOldv8le5w { NI len; NI cap; Cell_1zcF9cV8XIAtbN8h5HRUB8g** d; }; typedef Smallchunk_tXn60W2f8h3jgAYdEmy5NQ* TY_SiRwrEKZdLgxqz9a9aoVBglg[512]; typedef Trunk_W0r8S0Y3UGke6T9bIUWnnuw* TY_lh2A89ahMmYg9bCmpVaplLbA[256]; struct Intset_EZObFrE3NC9bIb3YMkY9crZA { TY_lh2A89ahMmYg9bCmpVaplLbA data; }; struct Memregion_x81NhDv59b8ercDZ9bi85jyg { NI minlargeobj; NI maxlargeobj; TY_SiRwrEKZdLgxqz9a9aoVBglg freesmallchunks; Llchunk_XsENErzHIZV9bhvyJx56wGw* llmem; NI currmem; NI maxmem; NI freemem; NI lastsize; Bigchunk_Rv9c70Uhp2TytkX7eH78qEg* freechunkslist; Intset_EZObFrE3NC9bIb3YMkY9crZA chunkstarts; Avlnode_IaqjtwKhxLEpvDS9bct9blEw* root; Avlnode_IaqjtwKhxLEpvDS9bct9blEw* deleted; Avlnode_IaqjtwKhxLEpvDS9bct9blEw* last; Avlnode_IaqjtwKhxLEpvDS9bct9blEw* freeavlnodes; NIM_BOOL locked; NIM_BOOL blockchunksizeincrease; NI nextchunksize; }; struct Gcstat_0RwLoVBHZPfUAcLczmfQAg { NI stackscans; NI cyclecollections; NI maxthreshold; NI maxstacksize; NI maxstackcells; NI cycletablesize; NI64 maxpause; }; struct Cellset_jG87P0AI9aZtss9ccTYBIISQ { NI counter; NI max; Pagedesc_fublkgIY4LG3mT51LU2WHg* head; Pagedesc_fublkgIY4LG3mT51LU2WHg** data; }; struct Gcheap_1TRH1TZMaVZTnLNcIHuNFQ { Gcstack_7fytPA5bBsob6See21YMRA* stack; void* stackbottom; NI cyclethreshold; Cellseq_Axo1XVm9aaQueTOldv8le5w zct; Cellseq_Axo1XVm9aaQueTOldv8le5w decstack; Cellseq_Axo1XVm9aaQueTOldv8le5w tempstack; NI recgclock; Memregion_x81NhDv59b8ercDZ9bi85jyg region; Gcstat_0RwLoVBHZPfUAcLczmfQAg stat; Cellset_jG87P0AI9aZtss9ccTYBIISQ marked; Cellseq_Axo1XVm9aaQueTOldv8le5w additionalroots; }; typedef NU8 Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw; typedef NU8 Ttypecmpflag_72pgRXSg7774cr9aCWVPORw_Set; typedef NU8 Tcommands_VH3ghgQVwLSg3krOAoXigw; typedef NU64 Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA_Set; typedef NU16 Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA; typedef NU8 Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw_Set[20]; typedef NU8 Timplication_t4F29a8ejY1DFQTYTML9c9byA; struct TY_1v9bKyksXWMsm0vNwmZ4EuQ { NI Field0; NI Field1; }; typedef NU64 Tglobaloption_RAfAEZqjnKMDumgyKKc1qw_Set; typedef NU8 Tglobaloption_RAfAEZqjnKMDumgyKKc1qw; typedef Tnode_bROa11lyF5vxEN9aYNbHmhw* TY_AB6yfoUgfWM2NtGe9bzkCmw[2]; typedef NimStringDesc* TY_P8Cd4JyxAQgoTKxTI9bscQw[265]; struct Ropeobj_HF4qJnb6xiOddgPmsxodtQ { TNimObject Sup; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* left; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* right; NI length; NimStringDesc* data; }; struct Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q { TNimObject Sup; Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q* prev; Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q* next; }; typedef NU8 Tlibkind_9b8v60kso59bBaw9cp8B9a9apKQ; struct Tlib_4f9aBgmqEuj7uWJdBBGcRgA { Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q Sup; Tlibkind_9b8v60kso59bBaw9cp8B9a9apKQ kind; NIM_BOOL generated; NIM_BOOL isoverriden; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* name; Tnode_bROa11lyF5vxEN9aYNbHmhw* path; }; struct TY_a09bGTAl9ceOKTAytYdkbyKg { NI Field0; Tsym_AXG7xcvKqaxY6koRX1xkCw* Field1; }; typedef NI TY_9agrCtWKhCnWWMJpKKugJag[16]; struct Trunk_ul49aWfv9aes8cutmeltT3gQ { Trunk_ul49aWfv9aes8cutmeltT3gQ* next; NI key; TY_9agrCtWKhCnWWMJpKKugJag bits; }; struct Gcstack_7fytPA5bBsob6See21YMRA { Gcstack_7fytPA5bBsob6See21YMRA* prev; Gcstack_7fytPA5bBsob6See21YMRA* next; void* starts; void* pos; NI maxstacksize; }; struct Basechunk_Sdq7WpT6qAH858F5ZEdG3w { NI prevsize; NI size; NIM_BOOL used; }; struct Smallchunk_tXn60W2f8h3jgAYdEmy5NQ { Basechunk_Sdq7WpT6qAH858F5ZEdG3w Sup; Smallchunk_tXn60W2f8h3jgAYdEmy5NQ* next; Smallchunk_tXn60W2f8h3jgAYdEmy5NQ* prev; Freecell_u6M5LHprqzkn9axr04yg9bGQ* freelist; NI free; NI acc; NF data; }; struct Llchunk_XsENErzHIZV9bhvyJx56wGw { NI size; NI acc; Llchunk_XsENErzHIZV9bhvyJx56wGw* next; }; struct Bigchunk_Rv9c70Uhp2TytkX7eH78qEg { Basechunk_Sdq7WpT6qAH858F5ZEdG3w Sup; Bigchunk_Rv9c70Uhp2TytkX7eH78qEg* next; Bigchunk_Rv9c70Uhp2TytkX7eH78qEg* prev; NI align; NF data; }; struct Trunk_W0r8S0Y3UGke6T9bIUWnnuw { Trunk_W0r8S0Y3UGke6T9bIUWnnuw* next; NI key; TY_9agrCtWKhCnWWMJpKKugJag bits; }; typedef Avlnode_IaqjtwKhxLEpvDS9bct9blEw* TY_0aOLqZchNi8nWtMTi8ND8w[2]; struct Avlnode_IaqjtwKhxLEpvDS9bct9blEw { TY_0aOLqZchNi8nWtMTi8ND8w link; NI key; NI upperbound; NI level; }; struct Pagedesc_fublkgIY4LG3mT51LU2WHg { Pagedesc_fublkgIY4LG3mT51LU2WHg* next; NI key; TY_9agrCtWKhCnWWMJpKKugJag bits; }; struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA { Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; TY_zuqP4Riz26Oi5fWgPYVEgA* concretetypes; NI compilesid; }; struct Freecell_u6M5LHprqzkn9axr04yg9bGQ { Freecell_u6M5LHprqzkn9axr04yg9bGQ* next; NI zerofield; }; struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ { TGenericSeq Sup; Tnode_bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE]; }; struct TY_qwqHTkRvwhrRyENtudHQ7g { TGenericSeq Sup; NI data[SEQ_DECL_SIZE]; }; struct TY_8Np6tlClE5az1CyqZdN19bQ { TGenericSeq Sup; TY_1v9bKyksXWMsm0vNwmZ4EuQ data[SEQ_DECL_SIZE]; }; struct TY_zuqP4Riz26Oi5fWgPYVEgA { TGenericSeq Sup; Ttype_LTUWCZolpovw9cWE3JBWSUw* data[SEQ_DECL_SIZE]; }; struct TY_DXS6mEo7PVUFJkirsQ9bNQA { TGenericSeq Sup; Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA* data[SEQ_DECL_SIZE]; }; struct TY_sksVpmPRIkNR9axiwtD1Guw { TGenericSeq Sup; Tsym_AXG7xcvKqaxY6koRX1xkCw* data[SEQ_DECL_SIZE]; }; struct TY_iGkpo9aKQdr3NWelKC4cnJA { TGenericSeq Sup; TY_a09bGTAl9ceOKTAytYdkbyKg data[SEQ_DECL_SIZE]; }; struct TY_9brg1xNurxcus33lU4IE1Dw { TGenericSeq Sup; Trunk_ul49aWfv9aes8cutmeltT3gQ* data[SEQ_DECL_SIZE]; }; static N_INLINE(NI, len_CdME9baJhvveuPEDZE9bXoxAlambdalifting)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, effectspec_moLWESUCyAl2D9aSBCKe3kQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw effecttype0); N_NIMCALL(NI, sonslen_qPWPHw7WgJeEVYUdcaRIig)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw, whichpragma_tadMdqrtQd2cek9aFwyE1XQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newnodei_PIqgSH9b0m7nFpOyXf9cpz5w)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(void, add_gCCf68XrWL79bKes6htzFjQ_3)(Tnode_bROa11lyF5vxEN9aYNbHmhw* father0, Tnode_bROa11lyF5vxEN9aYNbHmhw* son0); N_NIMCALL(void, checkraisesspec_lcJDZNSq3lnAKHEXQRlWUw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* spec0, Tnode_bROa11lyF5vxEN9aYNbHmhw* real0, NimStringDesc* msg0, NIM_BOOL hints0, TY_cCu1Pvbk4q0wqQM2LggvMQ effectpredicate0); N_NIMCALL(void, initintset_a9a80eJplB17xrdZJ41Baww)(Intset_PQrmFm4BXFkFSVOUl1ojSg* Result); N_NOINLINE(void, chckNil)(void* p0); static N_INLINE(Tnode_bROa11lyF5vxEN9aYNbHmhw*, HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI i0); N_NIMCALL(void, incl_iUpE9bYmIR0fROyJskQwN8g)(Intset_PQrmFm4BXFkFSVOUl1ojSg* s0, NI key0); N_NIMCALL(void, pushinfocontext_zQWo2MALtrYvLPyMtv28iA)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(void, localerror_VpilfPWbplGz6ny7O9cfr2g)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw msg0, NimStringDesc* arg0); static N_INLINE(void, appendString)(NimStringDesc* dest0, NimStringDesc* src0); static N_INLINE(void, copymem_fPlwH3r9agN9aEHB6yCPMh0wsystem)(void* dest0, void* source0, NI size0); N_NIMCALL(NimStringDesc*, typetostring_iUZlBdvGqNPVN17wd9aVBNw)(Ttype_LTUWCZolpovw9cWE3JBWSUw* typ0, Tprefereddesc_tnd4qt9c4xddV8oKV5zyusw prefer0); N_NIMCALL(NimStringDesc*, rawNewString)(NI space0); N_NIMCALL(void, popinfocontext_GmmyRSXe1noER8ex1U9aGUA)(void); N_NIMCALL(NIM_BOOL, contains_sYBLNwnPJlAFi0nfWU79awg)(Intset_PQrmFm4BXFkFSVOUl1ojSg s0, NI key0); N_NIMCALL(void, message_VpilfPWbplGz6ny7O9cfr2g_2)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw msg0, NimStringDesc* arg0); N_NIMCALL(NimStringDesc*, rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Trenderflag_wrPgUo1ExBlHvFnXN2nSHw_Set renderflags0); N_NIMCALL(NIM_BOOL, subtyperelation_M00uo9aleL8TBs39bwgoExTw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* spec0, Tnode_bROa11lyF5vxEN9aYNbHmhw* real0); N_NIMCALL(NI, safeinheritancediff_kaOr3lZpnYFOzmAx9cN5LiA)(Ttype_LTUWCZolpovw9cWE3JBWSUw* a0, Ttype_LTUWCZolpovw9cWE3JBWSUw* b0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, exctype_1oEaXP9cHbjngXxYtGNn7kw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, getebase_5cjPYNu4a89bUklW3nB77zQ)(void); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, getcompilerproc_shbCpG9bVTG0JrTOcXxC2hQ_2)(NimStringDesc* name0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, systypefromname_vnIahA154tB9cPaKezatdMg)(NimStringDesc* name0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, skiptypes_pLCdCGDuirMe9cspwviV9aVA)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0, Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag_Set kinds0); N_NIMCALL(void, localerror_GarD0CQJ5aQhoHekHYinVQ)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, NimStringDesc* arg0); N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr0, NimStringDesc* a0); N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr0, NimStringDesc** a0, NI a0Len0); N_NIMCALL(NimStringDesc*, HEX24_7U5mhhMT9aokoOIuJFuFlgw)(NI16 x0); N_NIMCALL(void, internalerror_5XY9cUy7hZmUusM38U9cYYdw)(NimStringDesc* errmsg0); N_NIMCALL(NimStringDesc*, HEX24_k53Ge4e9cDjc7y9c5uML7sPQ)(TY_XOVT24GHXwqiEj5GCsEGCA x0); N_NIMCALL(void, initeffects_RYVfPwn9b13diyy9buOINzkA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* effects0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, Teffects_vxIpB3oPhn77OqeaB81hCA* t0); static N_INLINE(void, nimGCunrefNoCycle)(void* p0); static N_INLINE(Cell_1zcF9cV8XIAtbN8h5HRUB8g*, usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem)(void* usr0); static N_INLINE(void, rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0); N_NOINLINE(void, addzct_fCDI7oO1NNVXXURtxSzsRw)(Cellseq_Axo1XVm9aaQueTOldv8le5w* s0, Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0); N_NIMCALL(void*, newSeqRC1)(TNimType* typ0, NI len0); static N_INLINE(void, asgnRefNoCycle)(void** dest0, void* src0); N_NIMCALL(void, unsureAsgnRef)(void** dest0, void* src0); N_NIMCALL(void*, newSeq)(TNimType* typ0, NI len0); N_NIMCALL(void, track_BxqWoS9czp4uFup6HfSkCeA)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, usevar_v49b6RRBfUBabmq9bN9c9bCQLA)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NIM_BOOL, islocalvar_hJxGjBBc61Rzd2LeDUBRAw)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); static N_INLINE(NIM_BOOL, contains_P6sCVNQ9cdTFh3rtVXMEtxgsempass2)(NI* a0, NI a0Len0, NI item0); static N_INLINE(NI, find_b2asjP2y9cPDPwOLa1pD5PAsempass2)(NI* a0, NI a0Len0, NI item0); N_NIMCALL(TGenericSeq*, incrSeqV2)(TGenericSeq* seq0, NI elemsize0); N_NIMCALL(void, guardglobal_TOoIKESz4jHxdO1QSOu9bzw)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* guard0); static N_INLINE(NIM_BOOL, isgcedmem_9bToMoy0nns9a3tJPtRpLUVAast)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0); N_NIMCALL(void, markgcunsafe_PslzNyj6t2HjCNRQMnzDUg)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* reason0); N_NIMCALL(void, addeffect_eJ2D5TmuKzX0jubAt504mA)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* e0, NIM_BOOL uselineinfo0); N_NIMCALL(NIM_BOOL, sametype_EjIk4Kwv9bxfpaU9cx49cCrBQ)(Ttype_LTUWCZolpovw9cWE3JBWSUw* a0, Ttype_LTUWCZolpovw9cWE3JBWSUw* b0, Ttypecmpflag_72pgRXSg7774cr9aCWVPORw_Set flags0); N_NIMCALL(NIM_BOOL, HEX3DHEX3D_JLrVYZ9bD3rT9ae9c3QGG3gSQ)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw a0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw b0); N_NIMCALL(void, throws_8SMM69akiDkPrxEvTr4q42w)(Tnode_bROa11lyF5vxEN9aYNbHmhw* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); static N_INLINE(NI, safelen_CdME9baJhvveuPEDZE9bXoxAsigmatch)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, mergelocklevels_HPKPawBmCdQfQSjvglxVug)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI16 locklevel0); N_NIMCALL(NI16, getlocklevel_SJJx5MIal33f6MnOCwqang)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); N_NIMCALL(void, propagateeffects_Ysbcp8Z79b69ciU1ZeC2G6cw)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); N_NIMCALL(void, mergeeffects_Rh0mhUmoZCBMPFUCtmsUAA)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0, Tnode_bROa11lyF5vxEN9aYNbHmhw* comesfrom0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, createraise_HsAzVpYNmEMOvEcNLtls3Q)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newnode_IgnRxkID5wXTWvTZf9ct0rA)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0); N_NIMCALL(void, mergetags_Rh0mhUmoZCBMPFUCtmsUAA_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0, Tnode_bROa11lyF5vxEN9aYNbHmhw* comesfrom0); N_NIMCALL(void, addtag_eJ2D5TmuKzX0jubAt504mA_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* e0, NIM_BOOL uselineinfo0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, createtag_HsAzVpYNmEMOvEcNLtls3Q_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, warnaboutgcunsafe_THB3y38Lyu9a9cY8RL3a6G2Q)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NIM_BOOL, isforwardedproc_x2WBguhYfuvedcuzkSd07A)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NIM_BOOL, isindirectcall_jHyzG4KZtlai0h9bwX2U5HQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* owner0); N_NIMCALL(void, assumetheworst_lk9bBGAb9aAAVczJ0aoChmFg)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Ttype_LTUWCZolpovw9cWE3JBWSUw* op0); N_NIMCALL(NIM_BOOL, importedfromc_x2WBguhYfuvedcuzkSd07A_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, markgcunsafe_y3MhwBrBGxbSZl2Nb9aztzw)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* reason0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, newsym_2uJTpCZGZAi7a4eAm1ds8Q)(Tsymkind_cNCW9acsSznmEccl1fgQwkw symkind0, Tident_4umxGerWTHGPwUms7Yqu3g* name0, Tsym_AXG7xcvKqaxY6koRX1xkCw* owner0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(Tident_4umxGerWTHGPwUms7Yqu3g*, getident_oH8GBf4tG3b1F5BIuNPwtA)(NimStringDesc* identifier0); N_NIMCALL(void, trackoperand_moLv8x7t3OqIHLKaKpj2Hw)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Ttype_LTUWCZolpovw9cWE3JBWSUw* paramtype0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, skipconvandclosure_5R14FnfRuiaUrK9cQGEILPw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, skipconv_6rsSLwtlU9c53a6w69be5JlQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NIM_BOOL, isownedprocvar_jHyzG4KZtlai0h9bwX2U5HQ_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* owner0); N_NIMCALL(void, notnilcheck_moLv8x7t3OqIHLKaKpj2Hw_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n_T3epUv9bSu9ceQU3R9a1OvmhA, Ttype_LTUWCZolpovw9cWE3JBWSUw* paramtype0); N_NIMCALL(NIM_BOOL, containsnode_vtJbTerB9bjOPfqY2DqeCGA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw_Set kinds0); N_NIMCALL(Timplication_t4F29a8ejY1DFQTYTML9c9byA, impliesnotnil_D4M9bwHtiPRz9aILf3OZIjoQ)(TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* facts0, Tnode_bROa11lyF5vxEN9aYNbHmhw* arg0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, paramtype_dS203LqYxVja1p5iofO9bLw)(Ttype_LTUWCZolpovw9cWE3JBWSUw* op0, NI i0); N_NIMCALL(NI, len_gG7hUAX9cA629ahMLVL3xN4w_2)(Ttype_LTUWCZolpovw9cWE3JBWSUw* n0); N_NIMCALL(void, initvarvianew_9bI3pbGIB124GYbyqLwFHAw)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, initvar_XjunQy9bxEenZdEOUz9a4h5Q)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NIM_BOOL volatilecheck0); static N_INLINE(void, makevolatile_Cb8TmZsRz9aPx53Li2H9b9afQsempass2)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, getmodule_0lPlu1uOok1rRK50z1V70A)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, lastson_E41DMKHtT9c6sAMyyvhmSIw)(Ttype_LTUWCZolpovw9cWE3JBWSUw* n0); N_NIMCALL(NimStringDesc*, HEX24_qX5C9b0n9bOP7jk69amC8dA7A_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, guarddotaccess_v49b6RRBfUBabmq9bN9c9bCQLA_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, lookupinrecord_s51A17ot5EKQXx9bfMBO03w)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tident_4umxGerWTHGPwUms7Yqu3g* field0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newnodei_jIQp9ciM8if1a6TX6toZelw)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, NI children0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newsymnode_1ARBpggFQuvUDBVYjBelcw)(Tsym_AXG7xcvKqaxY6koRX1xkCw* sym0); N_NIMCALL(NIM_BOOL, sametree_UXwZN9alTEPMzSE3TdR3S3g)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0); N_NIMCALL(void, checkfieldaccess_s2xvRrhcmIZPVuKsaSJ7ow)(TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* m0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, tracktrystmt_BxqWoS9czp4uFup6HfSkCeA_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, addtointersection_9a8VhAKQURDd2iUkgv5N6Ug)(TY_8Np6tlClE5az1CyqZdN19bQ** inter0, NI s0); N_NIMCALL(void, catchesall_jpeqSEu9cCNHBS8UhL39bpnA)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0); N_NIMCALL(TGenericSeq*, setLengthSeq)(TGenericSeq* seq0, NI elemsize0, NI newlen0); N_NIMCALL(void, catches_0T87Fuy3YQ1lmdc8Xv009ag)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Ttype_LTUWCZolpovw9cWE3JBWSUw* e_u4V8FXgzm7hT2Jrfw7it2w); N_NIMCALL(void, trackpragmastmt_BxqWoS9czp4uFup6HfSkCeA_3)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, listeffects_xF9av1b77SGV0Yx9cMchZI5w)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0); N_NIMCALL(void, invalidatefacts_2fXEB59aU5I0E4FRGsGvo1g)(TY_ehmV9bTklH2Gt9cXHV9c0HLeQ** m0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, addasgnfact_7r5ckpggojVUN9b8WgQQTHw)(TY_ehmV9bTklH2Gt9cXHV9c0HLeQ** m0, Tnode_bROa11lyF5vxEN9aYNbHmhw* key0, Tnode_bROa11lyF5vxEN9aYNbHmhw* value0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, lastson_esDJA7239bJDiq4UrX9aHCjg)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, trackcase_BxqWoS9czp4uFup6HfSkCeA_4)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NIM_BOOL, interestingcaseexpr_SZ9c1ZlAi6ZuGW55LEObgVA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* m0); N_NIMCALL(void, addcasebranchfacts_gZtGxxJKZnN0rgrwfXEsHg)(TY_ehmV9bTklH2Gt9cXHV9c0HLeQ** m0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI i0); N_NIMCALL(NIM_BOOL, breaksblock_x2WBguhYfuvedcuzkSd07A_3)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, trackif_BxqWoS9czp4uFup6HfSkCeA_5)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, addfact_bFUEMjbKo9b9auJEiVd0ZQYQ)(TY_ehmV9bTklH2Gt9cXHV9c0HLeQ** m0, Tnode_bROa11lyF5vxEN9aYNbHmhw* nn0); N_NIMCALL(void, addfactneg_LmMi9c61EBrvHqw6xJyWX9bg)(TY_ehmV9bTklH2Gt9cXHV9c0HLeQ** m0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n_g0kMHlrTYSq9cNM74l2lUNg); N_NIMCALL(void, trackblock_BxqWoS9czp4uFup6HfSkCeA_6)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NIM_BOOL, hassubnodewith_yQ1XZBwJ9cR9cPomikkptX6g)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0); N_NIMCALL(NIM_BOOL, istrue_x2WBguhYfuvedcuzkSd07A_4)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, adddiscriminantfact_3m4Lz9csEwXE9aVZb2DbaqTg)(TY_ehmV9bTklH2Gt9cXHV9c0HLeQ** m0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, locklocations_lHiCtldbW2F1ISjGLbel5Q)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* pragma0); N_NIMCALL(NI16, getlocklevel_uQWauSCOrFL2i3ywbLfseQ)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t_MQCwMqCC8010ctyUeDd9aRw); static N_INLINE(NIM_BOOL, isemptytype_9bToMoy0nns9a3tJPtRpLUVAvmgen)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0); N_NIMCALL(void, listgcunsafety_84UYAO9cXlV45DIsx0LTHGA)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, NIM_BOOL onlywarning0); N_NIMCALL(void, listgcunsafety_H87Ro7tWa0D2E8CF45etng)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, NIM_BOOL onlywarning0, Intset_PQrmFm4BXFkFSVOUl1ojSg* cyclecheck0); N_NIMCALL(NIM_BOOL, containsorincl_B0EhVMrh5BBBZOOtYjAvVg)(Intset_PQrmFm4BXFkFSVOUl1ojSg* s0, NI key0); N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newnode_o9aHrUvOCIeQhfywzvo7yOA)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* sons0, Ttype_LTUWCZolpovw9cWE3JBWSUw* typ0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, documenteffect_I3nWvvBlkYBuHxAmQisQ7A)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tnode_bROa11lyF5vxEN9aYNbHmhw* x0, Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw effecttype0, NI idx0); N_NIMCALL(NIM_BOOL, nsuStartsWith)(NimStringDesc* s0, NimStringDesc* prefix0); N_NIMCALL(NimStringDesc*, copyStr)(NimStringDesc* s0, NI start0); N_NIMCALL(NimStringDesc*, copyStr)(NimStringDesc* s0, NI first0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newidentnode_G82iaTfj9aP4Nw5aup9b62iQ)(Tident_4umxGerWTHGPwUms7Yqu3g* ident0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, documentwriteeffect_fU6x6Jj8Kwot8l9bg5bTXPw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw flag0, NimStringDesc* pragmaname0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, documentneweffect_tggSHgn9bVx4tsLKexGkvYg)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); extern TNimType NTI_ehmV9bTklH2Gt9cXHV9c0HLeQ; extern Gcheap_1TRH1TZMaVZTnLNcIHuNFQ gch_IcYaEuuWivYAS86vFMTS3Q; extern Tnode_bROa11lyF5vxEN9aYNbHmhw* emptynode_69ccLGuQ2mITw7zylZYtWcA; extern TNimType NTI_qwqHTkRvwhrRyENtudHQ7g; extern Tcommands_VH3ghgQVwLSg3krOAoXigw gcmd_0oKScFtMiSKnjiHF9cU9c5GQ; extern Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA_Set gnotes_ra0BBMaJz6cOxn1JA3c6Bg; extern TNimType NTI_8Np6tlClE5az1CyqZdN19bQ; extern Tglobaloption_RAfAEZqjnKMDumgyKKc1qw_Set gglobaloptions_j042VVDC9cT5ENYoXnmhhVg; STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_2, "can raise an unlisted exception: ", 33); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_3, "Exception", 9); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_4, "Exception", 9); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_5, "E_Base", 6); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_6, "can have an unlisted effect: ", 29); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_7, "base method is GC-safe, but \'$1\' is not", 39); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_8, "base method has lock level $1, but dispatcher has $2", 52); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_10, "sempass2.nim", 12); NIM_CONST TY_XOVT24GHXwqiEj5GCsEGCA T_wkTG4eaV3t1uo3x09apjcwA_9 = {((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_10), ((NI) 901)} ; STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_11, "unguarded access: ", 18); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_12, "expected lock level < ", 22); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_13, " but got lock level ", 20); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_14, "RootEffect", 10); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_15, "RootEffect", 10); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_16, "TEffect", 7); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_17, "", 9); NIM_CONST TY_XOVT24GHXwqiEj5GCsEGCA T_wkTG4eaV3t1uo3x09apjcwA_18 = {((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_10), ((NI) 551)} ; static NIM_CONST Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw_Set T_wkTG4eaV3t1uo3x09apjcwA_19 = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} ; STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_20, "cannot prove \'$1\' is not nil", 28); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_21, "\'$1\' is provably nil", 20); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_22, "invalid guard field: ", 21); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_23, "locks pragma without argument", 29); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_24, "invalid lock level: ", 20); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_25, "multi-lock requires the same static lock level for every operan" "d", 64); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_26, "invalid nested locking", 22); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_27, "result", 6); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_28, "\'$#\' is not GC-safe as it accesses \'$#\' which is a global using" " GC\'ed memory", 76); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_29, "\'$#\' is not GC-safe as it calls \'$#\'", 36); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_30, "\'$#\' is not GC-safe as it performs an indirect call via \'$#\'", 60); NIM_CONST TY_XOVT24GHXwqiEj5GCsEGCA T_wkTG4eaV3t1uo3x09apjcwA_31 = {((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_10), ((NI) 224)} ; STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_32, "\'$#\' is not GC-safe as it performs an indirect call here", 56); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_33, "declared lock level is $1, but real lock level is $2", 52); NIM_CONST TY_XOVT24GHXwqiEj5GCsEGCA T_wkTG4eaV3t1uo3x09apjcwA_34 = {((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_10), ((NI) 872)} ; NIM_CONST TY_XOVT24GHXwqiEj5GCsEGCA T_wkTG4eaV3t1uo3x09apjcwA_35 = {((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_10), ((NI) 878)} ; STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_36, "ref ", 4); extern NIM_CONST TY_P8Cd4JyxAQgoTKxTI9bscQw specialwords_jS3I1dUcvbZAEuApBSUHng; STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_37, "writes", 6); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_38, "new", 3); STRING_LITERAL(T_wkTG4eaV3t1uo3x09apjcwA_39, "escapes", 7); static N_INLINE(NI, len_CdME9baJhvveuPEDZE9bXoxAlambdalifting)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NI result0; result0 = (NI)0; { if (!((*n0).kindU.S6.sons == 0)) goto LA3; result0 = ((NI) 0); } goto LA1; LA3: ; { result0 = ((*n0).kindU.S6.sons ? (*n0).kindU.S6.sons->Sup.len : 0); } LA1: ; return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, effectspec_moLWESUCyAl2D9aSBCKe3kQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw effecttype0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; { result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; { NI i_v0hshbIeOSsx7gCl4qkgZQ; NI HEX3Atmp_ml8tN0ApRXTph8F9ccRQw8w; NI LOC2; NI res_ND29axfBqc69bh689c6JdSBCA; i_v0hshbIeOSsx7gCl4qkgZQ = (NI)0; HEX3Atmp_ml8tN0ApRXTph8F9ccRQw8w = (NI)0; LOC2 = (NI)0; LOC2 = sonslen_qPWPHw7WgJeEVYUdcaRIig(n0); HEX3Atmp_ml8tN0ApRXTph8F9ccRQw8w = (NI)(LOC2 - ((NI) 1)); res_ND29axfBqc69bh689c6JdSBCA = ((NI) 0); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* it0; if (!(res_ND29axfBqc69bh689c6JdSBCA <= HEX3Atmp_ml8tN0ApRXTph8F9ccRQw8w)) goto LA4; i_v0hshbIeOSsx7gCl4qkgZQ = res_ND29axfBqc69bh689c6JdSBCA; it0 = (*n0).kindU.S6.sons->data[i_v0hshbIeOSsx7gCl4qkgZQ]; { NIM_BOOL LOC7; Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw LOC9; LOC7 = (NIM_BOOL)0; LOC7 = ((*it0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 34)); if (!(LOC7)) goto LA8; LOC9 = (Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw)0; LOC9 = whichpragma_tadMdqrtQd2cek9aFwyE1XQ(it0); LOC7 = (LOC9 == effecttype0); LA8: ; if (!LOC7) goto LA10; result0 = (*it0).kindU.S6.sons->data[((NI) 1)]; { if (!!(((*result0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 39) || (*result0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 41)))) goto LA14; result0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 39), (*result0).info); add_gCCf68XrWL79bKes6htzFjQ_3(result0, (*it0).kindU.S6.sons->data[((NI) 1)]); } LA14: ; goto BeforeRet; } LA10: ; res_ND29axfBqc69bh689c6JdSBCA += ((NI) 1); } LA4: ; } } }BeforeRet: ; return result0; } static N_INLINE(Tnode_bROa11lyF5vxEN9aYNbHmhw*, HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI i0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = (*n0).kindU.S6.sons->data[i0]; return result0; } static N_INLINE(void, copymem_fPlwH3r9agN9aEHB6yCPMh0wsystem)(void* dest0, void* source0, NI size0) { void* LOC1; LOC1 = (void*)0; LOC1 = memcpy(dest0, source0, ((size_t) (size0))); } static N_INLINE(void, appendString)(NimStringDesc* dest0, NimStringDesc* src0) { copymem_fPlwH3r9agN9aEHB6yCPMh0wsystem(((void*) ((&(*dest0).data[((*dest0).Sup.len)- 0]))), ((void*) ((*src0).data)), ((NI) ((NI)((*src0).Sup.len + ((NI) 1))))); (*dest0).Sup.len += (*src0).Sup.len; } N_NIMCALL(void, checkraisesspec_lcJDZNSq3lnAKHEXQRlWUw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* spec0, Tnode_bROa11lyF5vxEN9aYNbHmhw* real0, NimStringDesc* msg0, NIM_BOOL hints0, TY_cCu1Pvbk4q0wqQM2LggvMQ effectpredicate0) { Intset_PQrmFm4BXFkFSVOUl1ojSg used0; memset((void*)(&used0), 0, sizeof(used0)); chckNil((void*)(&used0)); memset((void*)(&used0), 0, sizeof(used0)); initintset_a9a80eJplB17xrdZJ41Baww((&used0)); { Tnode_bROa11lyF5vxEN9aYNbHmhw* r_a3qbmmQ6nDC3Wb39aSc6hBg; r_a3qbmmQ6nDC3Wb39aSc6hBg = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; { NI i_i0qgqY5Yf4bPkq4g0Cj2cQ; NI HEX3Atmp_ORD5skskcDSbAT6wGYRXsA; NI LOC3; NI res_yH4grxWxlQaDPdxMBAK9cTw; i_i0qgqY5Yf4bPkq4g0Cj2cQ = (NI)0; HEX3Atmp_ORD5skskcDSbAT6wGYRXsA = (NI)0; LOC3 = (NI)0; LOC3 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(real0); HEX3Atmp_ORD5skskcDSbAT6wGYRXsA = (LOC3 - 1); res_yH4grxWxlQaDPdxMBAK9cTw = ((NI) 0); { while (1) { if (!(res_yH4grxWxlQaDPdxMBAK9cTw <= HEX3Atmp_ORD5skskcDSbAT6wGYRXsA)) goto LA5; i_i0qgqY5Yf4bPkq4g0Cj2cQ = res_yH4grxWxlQaDPdxMBAK9cTw; r_a3qbmmQ6nDC3Wb39aSc6hBg = (*real0).kindU.S6.sons->data[i_i0qgqY5Yf4bPkq4g0Cj2cQ]; { NimStringDesc* LOC17; NimStringDesc* LOC18; { NI s_qPb46asiwTatWF9aoqCWUAQ; NI HEX3Atmp_ORD5skskcDSbAT6wGYRXsA_2; NI LOC8; NI res_yH4grxWxlQaDPdxMBAK9cTw_2; s_qPb46asiwTatWF9aoqCWUAQ = (NI)0; HEX3Atmp_ORD5skskcDSbAT6wGYRXsA_2 = (NI)0; LOC8 = (NI)0; LOC8 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(spec0); HEX3Atmp_ORD5skskcDSbAT6wGYRXsA_2 = (LOC8 - 1); res_yH4grxWxlQaDPdxMBAK9cTw_2 = ((NI) 0); { while (1) { if (!(res_yH4grxWxlQaDPdxMBAK9cTw_2 <= HEX3Atmp_ORD5skskcDSbAT6wGYRXsA_2)) goto LA10; s_qPb46asiwTatWF9aoqCWUAQ = res_yH4grxWxlQaDPdxMBAK9cTw_2; { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC13; NIM_BOOL LOC14; LOC13 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC13 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(spec0, s_qPb46asiwTatWF9aoqCWUAQ); LOC14 = (NIM_BOOL)0; LOC14 = effectpredicate0(LOC13, r_a3qbmmQ6nDC3Wb39aSc6hBg); if (!LOC14) goto LA15; incl_iUpE9bYmIR0fROyJskQwN8g((&used0), s_qPb46asiwTatWF9aoqCWUAQ); goto LA6; } LA15: ; res_yH4grxWxlQaDPdxMBAK9cTw_2 += ((NI) 1); } LA10: ; } } pushinfocontext_zQWo2MALtrYvLPyMtv28iA((*spec0).info); LOC17 = (NimStringDesc*)0; LOC18 = (NimStringDesc*)0; LOC18 = typetostring_iUZlBdvGqNPVN17wd9aVBNw((*r_a3qbmmQ6nDC3Wb39aSc6hBg).typ, ((Tprefereddesc_tnd4qt9c4xddV8oKV5zyusw) 0)); LOC17 = rawNewString(msg0->Sup.len + LOC18->Sup.len + 0); appendString(LOC17, msg0); appendString(LOC17, LOC18); localerror_VpilfPWbplGz6ny7O9cfr2g((*r_a3qbmmQ6nDC3Wb39aSc6hBg).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), LOC17); popinfocontext_GmmyRSXe1noER8ex1U9aGUA(); } LA6: ; res_yH4grxWxlQaDPdxMBAK9cTw += ((NI) 1); } LA5: ; } } } { if (!hints0) goto LA21; { NI s_qPb46asiwTatWF9aoqCWUAQ_2; NI HEX3Atmp_ORD5skskcDSbAT6wGYRXsA_3; NI LOC24; NI res_yH4grxWxlQaDPdxMBAK9cTw_3; s_qPb46asiwTatWF9aoqCWUAQ_2 = (NI)0; HEX3Atmp_ORD5skskcDSbAT6wGYRXsA_3 = (NI)0; LOC24 = (NI)0; LOC24 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(spec0); HEX3Atmp_ORD5skskcDSbAT6wGYRXsA_3 = (LOC24 - 1); res_yH4grxWxlQaDPdxMBAK9cTw_3 = ((NI) 0); { while (1) { if (!(res_yH4grxWxlQaDPdxMBAK9cTw_3 <= HEX3Atmp_ORD5skskcDSbAT6wGYRXsA_3)) goto LA26; s_qPb46asiwTatWF9aoqCWUAQ_2 = res_yH4grxWxlQaDPdxMBAK9cTw_3; { NIM_BOOL LOC29; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC32; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC33; NimStringDesc* LOC34; LOC29 = (NIM_BOOL)0; LOC29 = contains_sYBLNwnPJlAFi0nfWU79awg(used0, s_qPb46asiwTatWF9aoqCWUAQ_2); if (!!(LOC29)) goto LA30; LOC32 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC32 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(spec0, s_qPb46asiwTatWF9aoqCWUAQ_2); LOC33 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC33 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(spec0, s_qPb46asiwTatWF9aoqCWUAQ_2); LOC34 = (NimStringDesc*)0; LOC34 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(LOC33, 0); message_VpilfPWbplGz6ny7O9cfr2g_2((*LOC32).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 270), LOC34); } LA30: ; res_yH4grxWxlQaDPdxMBAK9cTw_3 += ((NI) 1); } LA26: ; } } } LA21: ; } N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, getebase_5cjPYNu4a89bUklW3nB77zQ)(void) { Ttype_LTUWCZolpovw9cWE3JBWSUw* result0; result0 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; { Tsym_AXG7xcvKqaxY6koRX1xkCw* LOC3; LOC3 = (Tsym_AXG7xcvKqaxY6koRX1xkCw*)0; LOC3 = getcompilerproc_shbCpG9bVTG0JrTOcXxC2hQ_2(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_3)); if (!!((LOC3 == NIM_NIL))) goto LA4; result0 = systypefromname_vnIahA154tB9cPaKezatdMg(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_4)); } goto LA1; LA4: ; { result0 = systypefromname_vnIahA154tB9cPaKezatdMg(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_5)); } LA1: ; return result0; } N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, exctype_1oEaXP9cHbjngXxYtGNn7kw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Ttype_LTUWCZolpovw9cWE3JBWSUw* result0; Ttype_LTUWCZolpovw9cWE3JBWSUw* t0; result0 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1)); if (LOC3) goto LA4; LOC3 = ((*n0).typ == 0); LA4: ; if (!LOC3) goto LA5; t0 = getebase_5cjPYNu4a89bUklW3nB77zQ(); } goto LA1; LA5: ; { t0 = (*n0).typ; } LA1: ; result0 = skiptypes_pLCdCGDuirMe9cspwviV9aVA(t0, 14682384); return result0; } N_NIMCALL(NIM_BOOL, subtyperelation_M00uo9aleL8TBs39bwgoExTw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* spec0, Tnode_bROa11lyF5vxEN9aYNbHmhw* real0) { NIM_BOOL result0; Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC1; NI LOC2; result0 = (NIM_BOOL)0; LOC1 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC1 = exctype_1oEaXP9cHbjngXxYtGNn7kw(real0); LOC2 = (NI)0; LOC2 = safeinheritancediff_kaOr3lZpnYFOzmAx9cN5LiA(LOC1, (*spec0).typ); result0 = (LOC2 <= ((NI) 0)); return result0; } N_NIMCALL(void, checkmethodeffects_74hyMLeBrMSJPWGEi5EzGQ)(Tsym_AXG7xcvKqaxY6koRX1xkCw* disp0, Tsym_AXG7xcvKqaxY6koRX1xkCw* branch0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* actual0; Tnode_bROa11lyF5vxEN9aYNbHmhw* p0; Tnode_bROa11lyF5vxEN9aYNbHmhw* raisesspec0; Tnode_bROa11lyF5vxEN9aYNbHmhw* tagsspec0; { actual0 = (*(*(*branch0).typ).n).kindU.S6.sons->data[((NI) 0)]; { NI LOC3; LOC3 = (NI)0; LOC3 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(actual0); if (!!((LOC3 == ((NI) 4)))) goto LA4; goto BeforeRet; } LA4: ; p0 = (*(*disp0).ast).kindU.S6.sons->data[((NI) 4)]; raisesspec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(p0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 159)); { if (!!((raisesspec0 == 0))) goto LA8; checkraisesspec_lcJDZNSq3lnAKHEXQRlWUw(raisesspec0, (*actual0).kindU.S6.sons->data[((NI) 0)], ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_2), NIM_FALSE, subtyperelation_M00uo9aleL8TBs39bwgoExTw); } LA8: ; tagsspec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(p0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 164)); { if (!!((tagsspec0 == 0))) goto LA12; checkraisesspec_lcJDZNSq3lnAKHEXQRlWUw(tagsspec0, (*actual0).kindU.S6.sons->data[((NI) 3)], ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_6), NIM_FALSE, subtyperelation_M00uo9aleL8TBs39bwgoExTw); } LA12: ; { NIM_BOOL LOC16; NimStringDesc* LOC20; LOC16 = (NIM_BOOL)0; LOC16 = (((*disp0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 22))&31U)))!=0); if (!(LOC16)) goto LA17; LOC16 = ((130 & (*(*branch0).typ).flags) == 0); LA17: ; if (!LOC16) goto LA18; LOC20 = (NimStringDesc*)0; LOC20 = nsuFormatSingleElem(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_7), (*(*branch0).name).s); localerror_GarD0CQJ5aQhoHekHYinVQ((*branch0).info, LOC20); } LA18: ; { TY_Re75IspeoxXy2oCZHwcRrA LOC25; NimStringDesc* LOC26; if (!((*(*disp0).typ).locklevel < (*(*branch0).typ).locklevel)) goto LA23; memset((void*)LOC25, 0, sizeof(LOC25)); LOC25[0] = HEX24_7U5mhhMT9aokoOIuJFuFlgw((*(*branch0).typ).locklevel); LOC25[1] = HEX24_7U5mhhMT9aokoOIuJFuFlgw((*(*disp0).typ).locklevel); LOC26 = (NimStringDesc*)0; LOC26 = nsuFormatOpenArray(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_8), LOC25, 2); message_VpilfPWbplGz6ny7O9cfr2g_2((*branch0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 264), LOC26); } LA23: ; }BeforeRet: ; } static N_INLINE(Cell_1zcF9cV8XIAtbN8h5HRUB8g*, usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem)(void* usr0) { Cell_1zcF9cV8XIAtbN8h5HRUB8g* result0; result0 = (Cell_1zcF9cV8XIAtbN8h5HRUB8g*)0; result0 = ((Cell_1zcF9cV8XIAtbN8h5HRUB8g*) ((NI)((NU32)(((NI) (usr0))) - (NU32)(((NI)sizeof(Cell_1zcF9cV8XIAtbN8h5HRUB8g)))))); return result0; } static N_INLINE(void, rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0) { addzct_fCDI7oO1NNVXXURtxSzsRw((&gch_IcYaEuuWivYAS86vFMTS3Q.zct), c0); } static N_INLINE(void, nimGCunrefNoCycle)(void* p0) { Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0; c0 = usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem(p0); { (*c0).refcount -= ((NI) 8); if (!((NU32)((*c0).refcount) < (NU32)(((NI) 8)))) goto LA3; rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system(c0); } LA3: ; } static N_INLINE(void, asgnRefNoCycle)(void** dest0, void* src0) { { Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0; if (!!((src0 == NIM_NIL))) goto LA3; c0 = usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem(src0); (*c0).refcount += ((NI) 8); } LA3: ; { Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0; if (!!(((*dest0) == NIM_NIL))) goto LA7; c0 = usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem((*dest0)); { (*c0).refcount -= ((NI) 8); if (!((NU32)((*c0).refcount) < (NU32)(((NI) 8)))) goto LA11; rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system(c0); } LA11: ; } LA7: ; (*dest0) = src0; } N_NIMCALL(void, initeffects_RYVfPwn9b13diyy9buOINzkA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* effects0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, Teffects_vxIpB3oPhn77OqeaB81hCA* t0) { if ((*effects0).kindU.S6.sons) nimGCunrefNoCycle((*effects0).kindU.S6.sons); (*effects0).kindU.S6.sons = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeqRC1((&NTI_ehmV9bTklH2Gt9cXHV9c0HLeQ), ((NI) 4)); asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[((NI) 0)]), newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152), (*s0).info)); asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[((NI) 3)]), newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152), (*s0).info)); asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[((NI) 1)]), emptynode_69ccLGuQ2mITw7zylZYtWcA); asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[((NI) 2)]), emptynode_69ccLGuQ2mITw7zylZYtWcA); unsureAsgnRef((void**) (&(*t0).exc), (*effects0).kindU.S6.sons->data[((NI) 0)]); unsureAsgnRef((void**) (&(*t0).tags), (*effects0).kindU.S6.sons->data[((NI) 3)]); unsureAsgnRef((void**) (&(*t0).owner), s0); unsureAsgnRef((void**) (&(*t0).init), (TY_qwqHTkRvwhrRyENtudHQ7g*) newSeq((&NTI_qwqHTkRvwhrRyENtudHQ7g), 0)); unsureAsgnRef((void**) (&(*t0).guards), (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeq((&NTI_ehmV9bTklH2Gt9cXHV9c0HLeQ), 0)); unsureAsgnRef((void**) (&(*t0).locked), (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeq((&NTI_ehmV9bTklH2Gt9cXHV9c0HLeQ), 0)); } N_NIMCALL(NIM_BOOL, islocalvar_hJxGjBBc61Rzd2LeDUBRAw)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { NIM_BOOL result0; NIM_BOOL LOC1; NIM_BOOL LOC2; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC2 = (NIM_BOOL)0; LOC2 = ((2304 &(1U<<((NU)((*s0).kind)&31U)))!=0); if (!(LOC2)) goto LA3; LOC2 = !((((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 3))&31U)))!=0)); LA3: ; LOC1 = LOC2; if (!(LOC1)) goto LA4; LOC1 = ((*s0).owner == (*a0).owner); LA4: ; result0 = LOC1; return result0; } static N_INLINE(NI, find_b2asjP2y9cPDPwOLa1pD5PAsempass2)(NI* a0, NI a0Len0, NI item0) { NI result0; { result0 = (NI)0; { NI i_PK51OczLhe60IMTnpDtj2Q; NI i_PK51OczLhe60IMTnpDtj2Q_2; i_PK51OczLhe60IMTnpDtj2Q = (NI)0; i_PK51OczLhe60IMTnpDtj2Q_2 = ((NI) 0); { while (1) { if (!(i_PK51OczLhe60IMTnpDtj2Q_2 < a0Len0)) goto LA3; i_PK51OczLhe60IMTnpDtj2Q = a0[i_PK51OczLhe60IMTnpDtj2Q_2]; { if (!(i_PK51OczLhe60IMTnpDtj2Q == item0)) goto LA6; goto BeforeRet; } LA6: ; result0 += ((NI) 1); i_PK51OczLhe60IMTnpDtj2Q_2 += ((NI) 1); } LA3: ; } } result0 = ((NI) -1); }BeforeRet: ; return result0; } static N_INLINE(NIM_BOOL, contains_P6sCVNQ9cdTFh3rtVXMEtxgsempass2)(NI* a0, NI a0Len0, NI item0) { NIM_BOOL result0; NI LOC1; { result0 = (NIM_BOOL)0; LOC1 = (NI)0; LOC1 = find_b2asjP2y9cPDPwOLa1pD5PAsempass2(a0, a0Len0, item0); result0 = (((NI) 0) <= LOC1); goto BeforeRet; }BeforeRet: ; return result0; } N_NIMCALL(void, guardglobal_TOoIKESz4jHxdO1QSOu9bzw)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* guard0) { { { Tnode_bROa11lyF5vxEN9aYNbHmhw* L_2Yg3aCcA1OWwaXUZbtiM0w; TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* HEX3Atmp_FYvHZJIfbZP5sP6eq49adqw; NI i_GB9a0FMQ6Hwk9cwFSNeiNRKw; NI L_2Yg3aCcA1OWwaXUZbtiM0w_2; L_2Yg3aCcA1OWwaXUZbtiM0w = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_FYvHZJIfbZP5sP6eq49adqw = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*)0; HEX3Atmp_FYvHZJIfbZP5sP6eq49adqw = (*a0).locked; i_GB9a0FMQ6Hwk9cwFSNeiNRKw = ((NI) 0); L_2Yg3aCcA1OWwaXUZbtiM0w_2 = (HEX3Atmp_FYvHZJIfbZP5sP6eq49adqw ? HEX3Atmp_FYvHZJIfbZP5sP6eq49adqw->Sup.len : 0); { while (1) { if (!(i_GB9a0FMQ6Hwk9cwFSNeiNRKw < L_2Yg3aCcA1OWwaXUZbtiM0w_2)) goto LA3; L_2Yg3aCcA1OWwaXUZbtiM0w = HEX3Atmp_FYvHZJIfbZP5sP6eq49adqw->data[i_GB9a0FMQ6Hwk9cwFSNeiNRKw]; { NIM_BOOL LOC6; LOC6 = (NIM_BOOL)0; LOC6 = ((*L_2Yg3aCcA1OWwaXUZbtiM0w).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC6)) goto LA7; LOC6 = ((*L_2Yg3aCcA1OWwaXUZbtiM0w).kindU.S4.sym == guard0); LA7: ; if (!LOC6) goto LA8; goto BeforeRet; } LA8: ; i_GB9a0FMQ6Hwk9cwFSNeiNRKw += ((NI) 1); } LA3: ; } } { NimStringDesc* LOC14; NimStringDesc* LOC15; if (!!((*a0).istoplevel)) goto LA12; LOC14 = (NimStringDesc*)0; LOC15 = (NimStringDesc*)0; LOC15 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(n0, 0); LOC14 = rawNewString(LOC15->Sup.len + 18); appendString(LOC14, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_11)); appendString(LOC14, LOC15); localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), LOC14); } LA12: ; }BeforeRet: ; } static N_INLINE(NIM_BOOL, isgcedmem_9bToMoy0nns9a3tJPtRpLUVAast)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0) { NIM_BOOL result0; NIM_BOOL LOC1; NIM_BOOL LOC3; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC1 = ((*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 28) || (*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 24)); if (LOC1) goto LA2; LOC3 = (NIM_BOOL)0; LOC3 = ((*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 25)); if (!(LOC3)) goto LA4; LOC3 = ((*t0).callconv == ((Tcallingconvention_yjAJ8w0h1PBaSwSGJ3P7IA) 8)); LA4: ; LOC1 = LOC3; LA2: ; result0 = LOC1; return result0; } N_NIMCALL(void, markgcunsafe_PslzNyj6t2HjCNRQMnzDUg)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* reason0) { (*a0).gcunsafe = NIM_TRUE; { if (!((258048 &(1U<<((NU)((*(*a0).owner).kind)&31U)))!=0)) goto LA3; asgnRefNoCycle((void**) (&(*(*a0).owner).kindU.S2.gcunsafetyreason), reason0); } LA3: ; } N_NIMCALL(void, usevar_v49b6RRBfUBabmq9bN9c9bCQLA)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; s0 = (*n0).kindU.S4.sym; { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = islocalvar_hJxGjBBc61Rzd2LeDUBRAw(a0, s0); if (!LOC3) goto LA4; { NIM_BOOL LOC8; LOC8 = (NIM_BOOL)0; LOC8 = contains_P6sCVNQ9cdTFh3rtVXMEtxgsempass2((*a0).init->data, (*a0).init->Sup.len, (*s0).Sup.id); if (!!(LOC8)) goto LA9; { if (!!(((196608 & (*(*s0).typ).flags) == 0))) goto LA13; message_VpilfPWbplGz6ny7O9cfr2g_2((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 256), (*(*s0).name).s); } goto LA11; LA13: ; { message_VpilfPWbplGz6ny7O9cfr2g_2((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 261), (*(*s0).name).s); } LA11: ; (*a0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) incrSeqV2(&((*a0).init)->Sup, sizeof(NI)); (*a0).init->data[(*a0).init->Sup.len] = (*s0).Sup.id; ++(*a0).init->Sup.len; } LA9: ; } LA4: ; { NIM_BOOL LOC18; NIM_BOOL LOC19; LOC18 = (NIM_BOOL)0; LOC19 = (NIM_BOOL)0; LOC19 = !(((4194312 & (*s0).flags) == 0)); if (!(LOC19)) goto LA20; LOC19 = ((768 &(1U<<((NU)((*s0).kind)&31U)))!=0); LA20: ; LOC18 = LOC19; if (!(LOC18)) goto LA21; LOC18 = !(((*s0).magic == ((Tmagic_shZhZOdbVC5nnFvcXQAImg) 261))); LA21: ; if (!LOC18) goto LA22; { if (!!(((*s0).kindU.S4.guard == NIM_NIL))) goto LA26; guardglobal_TOoIKESz4jHxdO1QSOu9bzw(a0, n0, (*s0).kindU.S4.guard); } LA26: ; { NIM_BOOL LOC30; NIM_BOOL LOC32; LOC30 = (NIM_BOOL)0; LOC30 = ((4194312 & (*s0).flags) == 8); if (!(LOC30)) goto LA31; LOC32 = (NIM_BOOL)0; LOC32 = (((*(*s0).typ).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 20))&31U)))!=0); if (LOC32) goto LA33; LOC32 = isgcedmem_9bToMoy0nns9a3tJPtRpLUVAast((*s0).typ); LA33: ; LOC30 = LOC32; LA31: ; if (!LOC30) goto LA34; markgcunsafe_PslzNyj6t2HjCNRQMnzDUg(a0, s0); } goto LA28; LA34: ; { (*a0).hassideeffect = NIM_TRUE; } LA28: ; } LA22: ; } N_NIMCALL(void, throws_8SMM69akiDkPrxEvTr4q42w)(Tnode_bROa11lyF5vxEN9aYNbHmhw* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = ((*n0).typ == NIM_NIL); if (LOC3) goto LA4; LOC3 = !(((*(*n0).typ).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 50))); LA4: ; if (!LOC3) goto LA5; add_gCCf68XrWL79bKes6htzFjQ_3(tracked0, n0); } LA5: ; } N_NIMCALL(void, addeffect_eJ2D5TmuKzX0jubAt504mA)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* e0, NIM_BOOL uselineinfo0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* aa0; { aa0 = (*a0).exc; { NI i_vEuEVYJwoKSZh2EteqQHZQ; NI HEX3Atmp_dW7WFSMlfuIHQdt08PSywA; NI HEX3Atmp_dW7WFSMlfuIHQdt08PSywA_2; NI LOC2; NI res_dO9bOKVDaaFdtpp8G3yKmrg; i_vEuEVYJwoKSZh2EteqQHZQ = (NI)0; HEX3Atmp_dW7WFSMlfuIHQdt08PSywA = (NI)0; HEX3Atmp_dW7WFSMlfuIHQdt08PSywA_2 = (NI)0; HEX3Atmp_dW7WFSMlfuIHQdt08PSywA = (*a0).bottom; LOC2 = (NI)0; LOC2 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(aa0); HEX3Atmp_dW7WFSMlfuIHQdt08PSywA_2 = (LOC2 - 1); res_dO9bOKVDaaFdtpp8G3yKmrg = HEX3Atmp_dW7WFSMlfuIHQdt08PSywA; { while (1) { if (!(res_dO9bOKVDaaFdtpp8G3yKmrg <= HEX3Atmp_dW7WFSMlfuIHQdt08PSywA_2)) goto LA4; i_vEuEVYJwoKSZh2EteqQHZQ = res_dO9bOKVDaaFdtpp8G3yKmrg; { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC7; Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC8; Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC9; NIM_BOOL LOC10; LOC7 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC7 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(aa0, i_vEuEVYJwoKSZh2EteqQHZQ); LOC8 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC8 = exctype_1oEaXP9cHbjngXxYtGNn7kw(LOC7); LOC9 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC9 = exctype_1oEaXP9cHbjngXxYtGNn7kw(e0); LOC10 = (NIM_BOOL)0; LOC10 = sametype_EjIk4Kwv9bxfpaU9cx49cCrBQ(LOC8, LOC9, 0); if (!LOC10) goto LA11; { NIM_BOOL LOC15; LOC15 = (NIM_BOOL)0; LOC15 = !(uselineinfo0); if (LOC15) goto LA16; LOC15 = (gcmd_0oKScFtMiSKnjiHF9cU9c5GQ == ((Tcommands_VH3ghgQVwLSg3krOAoXigw) 9)); LA16: ; if (!LOC15) goto LA17; goto BeforeRet; } goto LA13; LA17: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC20; NIM_BOOL LOC21; LOC20 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC20 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(aa0, i_vEuEVYJwoKSZh2EteqQHZQ); LOC21 = (NIM_BOOL)0; LOC21 = HEX3DHEX3D_JLrVYZ9bD3rT9ae9c3QGG3gSQ((*LOC20).info, (*e0).info); if (!LOC21) goto LA22; goto BeforeRet; } goto LA13; LA22: ; LA13: ; } LA11: ; res_dO9bOKVDaaFdtpp8G3yKmrg += ((NI) 1); } LA4: ; } } throws_8SMM69akiDkPrxEvTr4q42w((*a0).exc, e0); }BeforeRet: ; } static N_INLINE(NI, safelen_CdME9baJhvveuPEDZE9bXoxAsigmatch)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NI result0; result0 = (NI)0; { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = ((*n0).kind >= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n0).kind <= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23)); if (LOC3) goto LA4; LOC3 = ((*n0).kindU.S6.sons == 0); LA4: ; if (!LOC3) goto LA5; result0 = ((NI) 0); } goto LA1; LA5: ; { result0 = ((*n0).kindU.S6.sons ? (*n0).kindU.S6.sons->Sup.len : 0); } LA1: ; return result0; } N_NIMCALL(void, mergelocklevels_HPKPawBmCdQfQSjvglxVug)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI16 locklevel0) { { if (!((*tracked0).currlocklevel <= locklevel0)) goto LA3; { NimStringDesc* LOC9; NimStringDesc* LOC10; NimStringDesc* LOC11; if (!(((NI16) 0) < (*tracked0).currlocklevel)) goto LA7; LOC9 = (NimStringDesc*)0; LOC10 = (NimStringDesc*)0; LOC10 = HEX24_7U5mhhMT9aokoOIuJFuFlgw((*tracked0).currlocklevel); LOC11 = (NimStringDesc*)0; LOC11 = HEX24_7U5mhhMT9aokoOIuJFuFlgw(locklevel0); LOC9 = rawNewString(LOC10->Sup.len + LOC11->Sup.len + 42); appendString(LOC9, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_12)); appendString(LOC9, LOC10); appendString(LOC9, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_13)); appendString(LOC9, LOC11); localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), LOC9); } LA7: ; (*tracked0).maxlocklevel = (((*tracked0).maxlocklevel >= locklevel0) ? (*tracked0).maxlocklevel : locklevel0); } LA3: ; } N_NIMCALL(NI16, getlocklevel_SJJx5MIal33f6MnOCwqang)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { NI16 result0; result0 = (NI16)0; result0 = (*(*s0).typ).locklevel; { if (!(result0 == ((NI16) -1))) goto LA3; { NIM_BOOL LOC7; LOC7 = (NIM_BOOL)0; LOC7 = !(((1056 & (*s0).flags) == 0)); if (LOC7) goto LA8; LOC7 = (((*(*s0).typ).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 1))&31U)))!=0); LA8: ; if (!LOC7) goto LA9; result0 = ((NI16) 0); } goto LA5; LA9: ; { result0 = ((NI16) 1001); } LA5: ; } LA3: ; return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, createraise_HsAzVpYNmEMOvEcNLtls3Q)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = newnode_IgnRxkID5wXTWvTZf9ct0rA(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 4)); asgnRefNoCycle((void**) (&(*result0).typ), getebase_5cjPYNu4a89bUklW3nB77zQ()); { if (!!((n0 == 0))) goto LA3; (*result0).info = (*n0).info; } LA3: ; return result0; } N_NIMCALL(void, mergeeffects_Rh0mhUmoZCBMPFUCtmsUAA)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0, Tnode_bROa11lyF5vxEN9aYNbHmhw* comesfrom0) { { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC5; if (!(b0 == 0)) goto LA3; LOC5 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC5 = createraise_HsAzVpYNmEMOvEcNLtls3Q(comesfrom0); addeffect_eJ2D5TmuKzX0jubAt504mA(a0, LOC5, NIM_TRUE); } goto LA1; LA3: ; { { Tnode_bROa11lyF5vxEN9aYNbHmhw* effect_ru8pdxE2hSgr9c7WDc2W1qQ; effect_ru8pdxE2hSgr9c7WDc2W1qQ = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; { NI i_Z0dUDSxW83HY3iwyeg4QKg; NI HEX3Atmp_7aG8em49aDbQkLVUQZhNPVQ; NI LOC9; NI res_LiUC8Oe49cF4UMwt45B2KTQ; i_Z0dUDSxW83HY3iwyeg4QKg = (NI)0; HEX3Atmp_7aG8em49aDbQkLVUQZhNPVQ = (NI)0; LOC9 = (NI)0; LOC9 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(b0); HEX3Atmp_7aG8em49aDbQkLVUQZhNPVQ = (LOC9 - 1); res_LiUC8Oe49cF4UMwt45B2KTQ = ((NI) 0); { while (1) { if (!(res_LiUC8Oe49cF4UMwt45B2KTQ <= HEX3Atmp_7aG8em49aDbQkLVUQZhNPVQ)) goto LA11; i_Z0dUDSxW83HY3iwyeg4QKg = res_LiUC8Oe49cF4UMwt45B2KTQ; effect_ru8pdxE2hSgr9c7WDc2W1qQ = (*b0).kindU.S6.sons->data[i_Z0dUDSxW83HY3iwyeg4QKg]; addeffect_eJ2D5TmuKzX0jubAt504mA(a0, effect_ru8pdxE2hSgr9c7WDc2W1qQ, !((comesfrom0 == NIM_NIL))); res_LiUC8Oe49cF4UMwt45B2KTQ += ((NI) 1); } LA11: ; } } } } LA1: ; } N_NIMCALL(void, addtag_eJ2D5TmuKzX0jubAt504mA_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* e0, NIM_BOOL uselineinfo0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* aa0; { aa0 = (*a0).tags; { NI i_f9cE9cX19aTAeH9arWBD9b2M4Tg; NI HEX3Atmp_eEByQNGw9cB21OekUQIqe7Q; NI LOC2; NI res_KOEvwq2i5XvodeYR9bWinNA; i_f9cE9cX19aTAeH9arWBD9b2M4Tg = (NI)0; HEX3Atmp_eEByQNGw9cB21OekUQIqe7Q = (NI)0; LOC2 = (NI)0; LOC2 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(aa0); HEX3Atmp_eEByQNGw9cB21OekUQIqe7Q = (LOC2 - 1); res_KOEvwq2i5XvodeYR9bWinNA = ((NI) 0); { while (1) { if (!(res_KOEvwq2i5XvodeYR9bWinNA <= HEX3Atmp_eEByQNGw9cB21OekUQIqe7Q)) goto LA4; i_f9cE9cX19aTAeH9arWBD9b2M4Tg = res_KOEvwq2i5XvodeYR9bWinNA; { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC7; Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC8; Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC9; NIM_BOOL LOC10; LOC7 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC7 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(aa0, i_f9cE9cX19aTAeH9arWBD9b2M4Tg); LOC8 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC8 = skiptypes_pLCdCGDuirMe9cspwviV9aVA((*LOC7).typ, 14682384); LOC9 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC9 = skiptypes_pLCdCGDuirMe9cspwviV9aVA((*e0).typ, 14682384); LOC10 = (NIM_BOOL)0; LOC10 = sametype_EjIk4Kwv9bxfpaU9cx49cCrBQ(LOC8, LOC9, 0); if (!LOC10) goto LA11; { NIM_BOOL LOC15; LOC15 = (NIM_BOOL)0; LOC15 = !(uselineinfo0); if (LOC15) goto LA16; LOC15 = (gcmd_0oKScFtMiSKnjiHF9cU9c5GQ == ((Tcommands_VH3ghgQVwLSg3krOAoXigw) 9)); LA16: ; if (!LOC15) goto LA17; goto BeforeRet; } goto LA13; LA17: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC20; NIM_BOOL LOC21; LOC20 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC20 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(aa0, i_f9cE9cX19aTAeH9arWBD9b2M4Tg); LOC21 = (NIM_BOOL)0; LOC21 = HEX3DHEX3D_JLrVYZ9bD3rT9ae9c3QGG3gSQ((*LOC20).info, (*e0).info); if (!LOC21) goto LA22; goto BeforeRet; } goto LA13; LA22: ; LA13: ; } LA11: ; res_KOEvwq2i5XvodeYR9bWinNA += ((NI) 1); } LA4: ; } } throws_8SMM69akiDkPrxEvTr4q42w((*a0).tags, e0); }BeforeRet: ; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, createtag_HsAzVpYNmEMOvEcNLtls3Q_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = newnode_IgnRxkID5wXTWvTZf9ct0rA(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 4)); { Tsym_AXG7xcvKqaxY6koRX1xkCw* LOC3; LOC3 = (Tsym_AXG7xcvKqaxY6koRX1xkCw*)0; LOC3 = getcompilerproc_shbCpG9bVTG0JrTOcXxC2hQ_2(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_14)); if (!!((LOC3 == NIM_NIL))) goto LA4; asgnRefNoCycle((void**) (&(*result0).typ), systypefromname_vnIahA154tB9cPaKezatdMg(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_15))); } goto LA1; LA4: ; { asgnRefNoCycle((void**) (&(*result0).typ), systypefromname_vnIahA154tB9cPaKezatdMg(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_16))); } LA1: ; { if (!!((n0 == 0))) goto LA9; (*result0).info = (*n0).info; } LA9: ; return result0; } N_NIMCALL(void, mergetags_Rh0mhUmoZCBMPFUCtmsUAA_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0, Tnode_bROa11lyF5vxEN9aYNbHmhw* comesfrom0) { { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC5; if (!(b0 == 0)) goto LA3; LOC5 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC5 = createtag_HsAzVpYNmEMOvEcNLtls3Q_2(comesfrom0); addtag_eJ2D5TmuKzX0jubAt504mA_2(a0, LOC5, NIM_TRUE); } goto LA1; LA3: ; { { Tnode_bROa11lyF5vxEN9aYNbHmhw* effect_xwU9aWLsPTglMdQHkH5WBaA; effect_xwU9aWLsPTglMdQHkH5WBaA = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; { NI i_uvjKdizAvVSTCfu5YmRxDQ; NI HEX3Atmp_7cDlOnZpfYaF3eonWHGj9cQ; NI LOC9; NI res_faldIbMooBW9cy9aDZ5zvijA; i_uvjKdizAvVSTCfu5YmRxDQ = (NI)0; HEX3Atmp_7cDlOnZpfYaF3eonWHGj9cQ = (NI)0; LOC9 = (NI)0; LOC9 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(b0); HEX3Atmp_7cDlOnZpfYaF3eonWHGj9cQ = (LOC9 - 1); res_faldIbMooBW9cy9aDZ5zvijA = ((NI) 0); { while (1) { if (!(res_faldIbMooBW9cy9aDZ5zvijA <= HEX3Atmp_7cDlOnZpfYaF3eonWHGj9cQ)) goto LA11; i_uvjKdizAvVSTCfu5YmRxDQ = res_faldIbMooBW9cy9aDZ5zvijA; effect_xwU9aWLsPTglMdQHkH5WBaA = (*b0).kindU.S6.sons->data[i_uvjKdizAvVSTCfu5YmRxDQ]; addtag_eJ2D5TmuKzX0jubAt504mA_2(a0, effect_xwU9aWLsPTglMdQHkH5WBaA, !((comesfrom0 == NIM_NIL))); res_faldIbMooBW9cy9aDZ5zvijA += ((NI) 1); } LA11: ; } } } } LA1: ; } N_NIMCALL(void, warnaboutgcunsafe_THB3y38Lyu9a9cY8RL3a6G2Q)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NimStringDesc* LOC1; LOC1 = (NimStringDesc*)0; LOC1 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(n0, 0); message_VpilfPWbplGz6ny7O9cfr2g_2((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 259), LOC1); } N_NIMCALL(void, propagateeffects_Ysbcp8Z79b69ciU1ZeC2G6cw)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* pragma0; Tnode_bROa11lyF5vxEN9aYNbHmhw* spec0; Tnode_bROa11lyF5vxEN9aYNbHmhw* tagspec0; NI16 LOC15; pragma0 = (*(*s0).ast).kindU.S6.sons->data[((NI) 4)]; spec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(pragma0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 159)); mergeeffects_Rh0mhUmoZCBMPFUCtmsUAA(tracked0, spec0, n0); tagspec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(pragma0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 164)); mergetags_Rh0mhUmoZCBMPFUCtmsUAA_2(tracked0, tagspec0, n0); { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = ((130 & (*(*s0).typ).flags) == 0); if (!(LOC3)) goto LA4; LOC3 = !((((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 5))&31U)))!=0)); LA4: ; if (!LOC3) goto LA5; { if (!((gnotes_ra0BBMaJz6cOxn1JA3c6Bg &((NU64)1<<((NU)((((Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA) 259)- 236))&63U)))!=0)) goto LA9; warnaboutgcunsafe_THB3y38Lyu9a9cY8RL3a6G2Q(n0); } LA9: ; markgcunsafe_PslzNyj6t2HjCNRQMnzDUg(tracked0, s0); } LA5: ; { if (!!((((*(*s0).typ).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 1))&31U)))!=0))) goto LA13; (*tracked0).hassideeffect = NIM_TRUE; } LA13: ; LOC15 = (NI16)0; LOC15 = getlocklevel_SJJx5MIal33f6MnOCwqang(s0); mergelocklevels_HPKPawBmCdQfQSjvglxVug(tracked0, n0, LOC15); } N_NIMCALL(NIM_BOOL, isforwardedproc_x2WBguhYfuvedcuzkSd07A)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NIM_BOOL result0; NIM_BOOL LOC1; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC1 = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC1)) goto LA2; LOC1 = (((*(*n0).kindU.S4.sym).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 4))&31U)))!=0); LA2: ; result0 = LOC1; return result0; } N_NIMCALL(NIM_BOOL, isindirectcall_jHyzG4KZtlai0h9bwX2U5HQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* owner0) { NIM_BOOL result0; result0 = (NIM_BOOL)0; { if (!!(((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3; result0 = NIM_TRUE; } goto LA1; LA3: ; { NIM_BOOL LOC8; if (!((*(*n0).kindU.S4.sym).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 3))) goto LA6; LOC8 = (NIM_BOOL)0; LOC8 = !((owner0 == (*(*n0).kindU.S4.sym).owner)); if (LOC8) goto LA9; LOC8 = (owner0 == NIM_NIL); LA9: ; result0 = LOC8; } goto LA1; LA6: ; { if (!!(((258048 &(1U<<((NU)((*(*n0).kindU.S4.sym).kind)&31U)))!=0))) goto LA11; result0 = NIM_TRUE; } goto LA1; LA11: ; LA1: ; return result0; } N_NIMCALL(void, assumetheworst_lk9bBGAb9aAAVczJ0aoChmFg)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Ttype_LTUWCZolpovw9cWE3JBWSUw* op0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC1; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC2; NI16 locklevel0; LOC1 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC1 = createraise_HsAzVpYNmEMOvEcNLtls3Q(n0); addeffect_eJ2D5TmuKzX0jubAt504mA(tracked0, LOC1, NIM_TRUE); LOC2 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC2 = createtag_HsAzVpYNmEMOvEcNLtls3Q_2(n0); addtag_eJ2D5TmuKzX0jubAt504mA_2(tracked0, LOC2, NIM_TRUE); { if (!((*op0).locklevel == ((NI16) -1))) goto LA5; locklevel0 = ((NI16) 1001); } goto LA3; LA5: ; { locklevel0 = (*op0).locklevel; } LA3: ; mergelocklevels_HPKPawBmCdQfQSjvglxVug(tracked0, n0, locklevel0); } N_NIMCALL(NIM_BOOL, importedfromc_x2WBguhYfuvedcuzkSd07A_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NIM_BOOL result0; NIM_BOOL LOC1; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC1 = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC1)) goto LA2; LOC1 = (((*(*n0).kindU.S4.sym).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 5))&31U)))!=0); LA2: ; result0 = LOC1; return result0; } N_NIMCALL(void, markgcunsafe_y3MhwBrBGxbSZl2Nb9aztzw)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* reason0) { (*a0).gcunsafe = NIM_TRUE; { if (!((258048 &(1U<<((NU)((*(*a0).owner).kind)&31U)))!=0)) goto LA3; { if (!((*reason0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA7; asgnRefNoCycle((void**) (&(*(*a0).owner).kindU.S2.gcunsafetyreason), (*reason0).kindU.S4.sym); } goto LA5; LA7: ; { Tident_4umxGerWTHGPwUms7Yqu3g* LOC10; LOC10 = (Tident_4umxGerWTHGPwUms7Yqu3g*)0; LOC10 = getident_oH8GBf4tG3b1F5BIuNPwtA(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_17)); asgnRefNoCycle((void**) (&(*(*a0).owner).kindU.S2.gcunsafetyreason), newsym_2uJTpCZGZAi7a4eAm1ds8Q(((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 0), LOC10, (*a0).owner, (*reason0).info)); } LA5: ; } LA3: ; } N_NIMCALL(NIM_BOOL, isownedprocvar_jHyzG4KZtlai0h9bwX2U5HQ_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* owner0) { NIM_BOOL result0; NIM_BOOL LOC1; NIM_BOOL LOC2; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC2 = (NIM_BOOL)0; LOC2 = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC2)) goto LA3; LOC2 = ((*(*n0).kindU.S4.sym).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 3)); LA3: ; LOC1 = LOC2; if (!(LOC1)) goto LA4; LOC1 = (owner0 == (*(*n0).kindU.S4.sym).owner); LA4: ; result0 = LOC1; return result0; } N_NIMCALL(void, notnilcheck_moLv8x7t3OqIHLKaKpj2Hw_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n_T3epUv9bSu9ceQU3R9a1OvmhA, Ttype_LTUWCZolpovw9cWE3JBWSUw* paramtype0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* n0; { n0 = skipconv_6rsSLwtlU9c53a6w69be5JlQ(n_T3epUv9bSu9ceQU3R9a1OvmhA); { NIM_BOOL LOC3; NIM_BOOL LOC4; NIM_BOOL LOC5; Timplication_t4F29a8ejY1DFQTYTML9c9byA LOC27; LOC3 = (NIM_BOOL)0; LOC4 = (NIM_BOOL)0; LOC5 = (NIM_BOOL)0; LOC5 = !((paramtype0 == NIM_NIL)); if (!(LOC5)) goto LA6; LOC5 = (((*paramtype0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 16))&31U)))!=0); LA6: ; LOC4 = LOC5; if (!(LOC4)) goto LA7; LOC4 = !(((*n0).typ == NIM_NIL)); LA7: ; LOC3 = LOC4; if (!(LOC3)) goto LA8; LOC3 = !((((*(*n0).typ).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 16))&31U)))!=0)); LA8: ; if (!LOC3) goto LA9; { if (!((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 63))) goto LA13; { NIM_BOOL LOC17; LOC17 = (NIM_BOOL)0; LOC17 = containsnode_vtJbTerB9bjOPfqY2DqeCGA(n0, T_wkTG4eaV3t1uo3x09apjcwA_19); if (!!(LOC17)) goto LA18; goto BeforeRet; } LA18: ; } goto LA11; LA13: ; { NIM_BOOL LOC21; NIM_BOOL LOC22; LOC21 = (NIM_BOOL)0; LOC22 = (NIM_BOOL)0; LOC22 = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC22)) goto LA23; LOC22 = ((258048 &(1U<<((NU)((*(*n0).kindU.S4.sym).kind)&31U)))!=0); LA23: ; LOC21 = LOC22; if (LOC21) goto LA24; LOC21 = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 38) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 41) || (*n0).kind >= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 51) && (*n0).kind <= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 52) || (*n0).kind >= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 79) && (*n0).kind <= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 81) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 84)); LA24: ; if (!LOC21) goto LA25; goto BeforeRet; } goto LA11; LA25: ; LA11: ; LOC27 = (Timplication_t4F29a8ejY1DFQTYTML9c9byA)0; LOC27 = impliesnotnil_D4M9bwHtiPRz9aILf3OZIjoQ((*tracked0).guards, n0); switch (LOC27) { case ((Timplication_t4F29a8ejY1DFQTYTML9c9byA) 0): { NimStringDesc* LOC29; NimStringDesc* LOC30; LOC29 = (NimStringDesc*)0; LOC29 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(n0, 0); LOC30 = (NimStringDesc*)0; LOC30 = nsuFormatSingleElem(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_20), LOC29); message_VpilfPWbplGz6ny7O9cfr2g_2((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), LOC30); } break; case ((Timplication_t4F29a8ejY1DFQTYTML9c9byA) 1): { NimStringDesc* LOC32; NimStringDesc* LOC33; LOC32 = (NimStringDesc*)0; LOC32 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(n0, 0); LOC33 = (NimStringDesc*)0; LOC33 = nsuFormatSingleElem(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_21), LOC32); message_VpilfPWbplGz6ny7O9cfr2g_2((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), LOC33); } break; case ((Timplication_t4F29a8ejY1DFQTYTML9c9byA) 2): { } break; } } LA9: ; }BeforeRet: ; } N_NIMCALL(void, trackoperand_moLv8x7t3OqIHLKaKpj2Hw)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Ttype_LTUWCZolpovw9cWE3JBWSUw* paramtype0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* a0; Ttype_LTUWCZolpovw9cWE3JBWSUw* op0; a0 = skipconvandclosure_5R14FnfRuiaUrK9cQGEILPw(n0); op0 = (*a0).typ; { NIM_BOOL LOC3; NIM_BOOL LOC4; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC7; Tnode_bROa11lyF5vxEN9aYNbHmhw* effectlist0; Tnode_bROa11lyF5vxEN9aYNbHmhw* s0; LOC3 = (NIM_BOOL)0; LOC4 = (NIM_BOOL)0; LOC4 = !((op0 == NIM_NIL)); if (!(LOC4)) goto LA5; LOC4 = ((*op0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA5: ; LOC3 = LOC4; if (!(LOC3)) goto LA6; LOC7 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC7 = skipconv_6rsSLwtlU9c53a6w69be5JlQ(n0); LOC3 = !(((*LOC7).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23))); LA6: ; if (!LOC3) goto LA8; { NimStringDesc* LOC14; if (!!(((*(*(*op0).n).kindU.S6.sons->data[((NI) 0)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152)))) goto LA12; LOC14 = (NimStringDesc*)0; LOC14 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_wkTG4eaV3t1uo3x09apjcwA_18); internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC14); } LA12: ; effectlist0 = (*(*op0).n).kindU.S6.sons->data[((NI) 0)]; s0 = skipconv_6rsSLwtlU9c53a6w69be5JlQ(n0); { NIM_BOOL LOC17; LOC17 = (NIM_BOOL)0; LOC17 = ((*s0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC17)) goto LA18; LOC17 = ((258048 &(1U<<((NU)((*(*s0).kindU.S4.sym).kind)&31U)))!=0); LA18: ; if (!LOC17) goto LA19; propagateeffects_Ysbcp8Z79b69ciU1ZeC2G6cw(tracked0, n0, (*s0).kindU.S4.sym); } goto LA15; LA19: ; { NI LOC22; LOC22 = (NI)0; LOC22 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(effectlist0); if (!(LOC22 == ((NI) 0))) goto LA23; { NIM_BOOL LOC27; LOC27 = (NIM_BOOL)0; LOC27 = isforwardedproc_x2WBguhYfuvedcuzkSd07A(n0); if (!LOC27) goto LA28; propagateeffects_Ysbcp8Z79b69ciU1ZeC2G6cw(tracked0, n0, (*n0).kindU.S4.sym); } goto LA25; LA28: ; { NIM_BOOL LOC31; LOC31 = (NIM_BOOL)0; LOC31 = isownedprocvar_jHyzG4KZtlai0h9bwX2U5HQ_2(a0, (*tracked0).owner); if (!!(LOC31)) goto LA32; assumetheworst_lk9bBGAb9aAAVczJ0aoChmFg(tracked0, n0, op0); } goto LA25; LA32: ; LA25: ; { NIM_BOOL LOC36; NIM_BOOL LOC38; LOC36 = (NIM_BOOL)0; LOC36 = ((130 & (*op0).flags) == 0); if (!(LOC36)) goto LA37; LOC38 = (NIM_BOOL)0; LOC38 = isownedprocvar_jHyzG4KZtlai0h9bwX2U5HQ_2(a0, (*tracked0).owner); LOC36 = !(LOC38); LA37: ; if (!LOC36) goto LA39; { if (!((gnotes_ra0BBMaJz6cOxn1JA3c6Bg &((NU64)1<<((NU)((((Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA) 259)- 236))&63U)))!=0)) goto LA43; warnaboutgcunsafe_THB3y38Lyu9a9cY8RL3a6G2Q(n0); } LA43: ; markgcunsafe_y3MhwBrBGxbSZl2Nb9aztzw(tracked0, a0); } goto LA34; LA39: ; { NIM_BOOL LOC46; NIM_BOOL LOC48; LOC46 = (NIM_BOOL)0; LOC46 = !((((*op0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 1))&31U)))!=0)); if (!(LOC46)) goto LA47; LOC48 = (NIM_BOOL)0; LOC48 = isownedprocvar_jHyzG4KZtlai0h9bwX2U5HQ_2(a0, (*tracked0).owner); LOC46 = !(LOC48); LA47: ; if (!LOC46) goto LA49; (*tracked0).hassideeffect = NIM_TRUE; } goto LA34; LA49: ; LA34: ; } goto LA15; LA23: ; { mergeeffects_Rh0mhUmoZCBMPFUCtmsUAA(tracked0, (*effectlist0).kindU.S6.sons->data[((NI) 0)], n0); mergetags_Rh0mhUmoZCBMPFUCtmsUAA_2(tracked0, (*effectlist0).kindU.S6.sons->data[((NI) 3)], n0); { if (!((130 & (*op0).flags) == 0)) goto LA54; { if (!((gnotes_ra0BBMaJz6cOxn1JA3c6Bg &((NU64)1<<((NU)((((Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA) 259)- 236))&63U)))!=0)) goto LA58; warnaboutgcunsafe_THB3y38Lyu9a9cY8RL3a6G2Q(n0); } LA58: ; markgcunsafe_y3MhwBrBGxbSZl2Nb9aztzw(tracked0, a0); } goto LA52; LA54: ; { if (!!((((*op0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 1))&31U)))!=0))) goto LA61; (*tracked0).hassideeffect = NIM_TRUE; } goto LA52; LA61: ; LA52: ; } LA15: ; } LA8: ; notnilcheck_moLv8x7t3OqIHLKaKpj2Hw_2(tracked0, n0, paramtype0); } N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, paramtype_dS203LqYxVja1p5iofO9bLw)(Ttype_LTUWCZolpovw9cWE3JBWSUw* op0, NI i0) { Ttype_LTUWCZolpovw9cWE3JBWSUw* result0; result0 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; { NIM_BOOL LOC3; NI LOC5; LOC3 = (NIM_BOOL)0; LOC3 = !((op0 == NIM_NIL)); if (!(LOC3)) goto LA4; LOC5 = (NI)0; LOC5 = len_gG7hUAX9cA629ahMLVL3xN4w_2(op0); LOC3 = (i0 < LOC5); LA4: ; if (!LOC3) goto LA6; result0 = (*op0).sons->data[i0]; } LA6: ; return result0; } static N_INLINE(void, makevolatile_Cb8TmZsRz9aPx53Li2H9b9afQsempass2)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { { NIM_BOOL LOC3; NIM_BOOL LOC5; Tsym_AXG7xcvKqaxY6koRX1xkCw* LOC7; LOC3 = (NIM_BOOL)0; LOC3 = (((NI) 0) < (*a0).intrystmt); if (!(LOC3)) goto LA4; LOC5 = (NIM_BOOL)0; LOC5 = (gcmd_0oKScFtMiSKnjiHF9cU9c5GQ == ((Tcommands_VH3ghgQVwLSg3krOAoXigw) 2)); if (LOC5) goto LA6; LOC7 = (Tsym_AXG7xcvKqaxY6koRX1xkCw*)0; LOC7 = getmodule_0lPlu1uOok1rRK50z1V70A((*a0).owner); LOC5 = (((*LOC7).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 27))&31U)))!=0); LA6: ; LOC3 = !(LOC5); LA4: ; if (!LOC3) goto LA8; (*s0).flags |= ((NU32)1)<<((((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 7))%(sizeof(NU32)*8)); } LA8: ; } N_NIMCALL(void, initvar_XjunQy9bxEenZdEOUz9a4h5Q)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NIM_BOOL volatilecheck0) { Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; { { if (!!(((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3; goto BeforeRet; } LA3: ; s0 = (*n0).kindU.S4.sym; { NIM_BOOL LOC7; LOC7 = (NIM_BOOL)0; LOC7 = islocalvar_hJxGjBBc61Rzd2LeDUBRAw(a0, s0); if (!LOC7) goto LA8; { if (!volatilecheck0) goto LA12; makevolatile_Cb8TmZsRz9aPx53Li2H9b9afQsempass2(a0, s0); } LA12: ; { NI x_lyfht4BlQY0f1gFzkdOMYQ; TY_qwqHTkRvwhrRyENtudHQ7g* HEX3Atmp_U5kijhlw8eUux7NKn1bj2g; NI i_WPAxlFXv7uIufNI5a19cHsw; NI L_TYwqGD1kyVr09cguLWN3PDw; x_lyfht4BlQY0f1gFzkdOMYQ = (NI)0; HEX3Atmp_U5kijhlw8eUux7NKn1bj2g = (TY_qwqHTkRvwhrRyENtudHQ7g*)0; HEX3Atmp_U5kijhlw8eUux7NKn1bj2g = (*a0).init; i_WPAxlFXv7uIufNI5a19cHsw = ((NI) 0); L_TYwqGD1kyVr09cguLWN3PDw = (HEX3Atmp_U5kijhlw8eUux7NKn1bj2g ? HEX3Atmp_U5kijhlw8eUux7NKn1bj2g->Sup.len : 0); { while (1) { if (!(i_WPAxlFXv7uIufNI5a19cHsw < L_TYwqGD1kyVr09cguLWN3PDw)) goto LA16; x_lyfht4BlQY0f1gFzkdOMYQ = HEX3Atmp_U5kijhlw8eUux7NKn1bj2g->data[i_WPAxlFXv7uIufNI5a19cHsw]; { if (!(x_lyfht4BlQY0f1gFzkdOMYQ == (*s0).Sup.id)) goto LA19; goto BeforeRet; } LA19: ; i_WPAxlFXv7uIufNI5a19cHsw += ((NI) 1); } LA16: ; } } (*a0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) incrSeqV2(&((*a0).init)->Sup, sizeof(NI)); (*a0).init->data[(*a0).init->Sup.len] = (*s0).Sup.id; ++(*a0).init->Sup.len; } LA8: ; }BeforeRet: ; } N_NIMCALL(void, initvarvianew_9bI3pbGIB124GYbyqLwFHAw)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; { { if (!!(((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3; goto BeforeRet; } LA3: ; s0 = (*n0).kindU.S4.sym; { if (!(((196608 & (*(*s0).typ).flags) & ~ 65536)==0)) goto LA7; initvar_XjunQy9bxEenZdEOUz9a4h5Q(a0, n0, NIM_TRUE); } goto LA5; LA7: ; { NIM_BOOL LOC10; LOC10 = (NIM_BOOL)0; LOC10 = islocalvar_hJxGjBBc61Rzd2LeDUBRAw(a0, s0); if (!LOC10) goto LA11; makevolatile_Cb8TmZsRz9aPx53Li2H9b9afQsempass2(a0, s0); } goto LA5; LA11: ; LA5: ; }BeforeRet: ; } N_NIMCALL(void, guarddotaccess_v49b6RRBfUBabmq9bN9c9bCQLA_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* ri0; Tsym_AXG7xcvKqaxY6koRX1xkCw* g0; { ri0 = (*n0).kindU.S6.sons->data[((NI) 1)]; { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = !(((*ri0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3))); if (LOC3) goto LA4; LOC3 = !(((*(*ri0).kindU.S4.sym).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 18))); LA4: ; if (!LOC3) goto LA5; goto BeforeRet; } LA5: ; g0 = (*(*ri0).kindU.S4.sym).kindU.S4.guard; { NIM_BOOL LOC9; LOC9 = (NIM_BOOL)0; LOC9 = (g0 == 0); if (LOC9) goto LA10; LOC9 = (*a0).istoplevel; LA10: ; if (!LOC9) goto LA11; goto BeforeRet; } LA11: ; { Tsym_AXG7xcvKqaxY6koRX1xkCw* field0; Ttype_LTUWCZolpovw9cWE3JBWSUw* ty0; if (!((*g0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 0))) goto LA15; field0 = NIM_NIL; ty0 = skiptypes_pLCdCGDuirMe9cspwviV9aVA((*(*n0).kindU.S6.sons->data[((NI) 0)]).typ, 14723344); { NIM_BOOL LOC19; LOC19 = (NIM_BOOL)0; LOC19 = ((*ty0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 18)); if (!(LOC19)) goto LA20; LOC19 = !(((*ty0).n == 0)); LA20: ; if (!LOC19) goto LA21; field0 = lookupinrecord_s51A17ot5EKQXx9bfMBO03w((*ty0).n, (*g0).name); } goto LA17; LA21: ; { { while (1) { NIM_BOOL LOC26; LOC26 = (NIM_BOOL)0; LOC26 = !((ty0 == NIM_NIL)); if (!(LOC26)) goto LA27; LOC26 = ((*ty0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 17)); LA27: ; if (!LOC26) goto LA25; field0 = lookupinrecord_s51A17ot5EKQXx9bfMBO03w((*ty0).n, (*g0).name); { if (!!((field0 == NIM_NIL))) goto LA30; goto LA24; } LA30: ; ty0 = (*ty0).sons->data[((NI) 0)]; { if (!(ty0 == NIM_NIL)) goto LA34; goto LA24; } LA34: ; ty0 = skiptypes_pLCdCGDuirMe9cspwviV9aVA(ty0, 14682384); } LA25: ; } LA24: ; } LA17: ; { NimStringDesc* LOC40; if (!(field0 == NIM_NIL)) goto LA38; LOC40 = (NimStringDesc*)0; LOC40 = rawNewString((*(*g0).name).s->Sup.len + 21); appendString(LOC40, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_22)); appendString(LOC40, (*(*g0).name).s); localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), LOC40); goto BeforeRet; } LA38: ; g0 = field0; } LA15: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* dot0; NimStringDesc* LOC53; NimStringDesc* LOC54; if (!((*g0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 18))) goto LA43; dot0 = newnodei_jIQp9ciM8if1a6TX6toZelw(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 45), (*n0).info, ((NI) 2)); asgnRefNoCycle((void**) (&(*dot0).kindU.S6.sons->data[((NI) 0)]), (*n0).kindU.S6.sons->data[((NI) 0)]); asgnRefNoCycle((void**) (&(*dot0).kindU.S6.sons->data[((NI) 1)]), newsymnode_1ARBpggFQuvUDBVYjBelcw(g0)); asgnRefNoCycle((void**) (&(*dot0).typ), (*g0).typ); { Tnode_bROa11lyF5vxEN9aYNbHmhw* L_OOcOf9bemcm2GNTcE4DKnQw; TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* HEX3Atmp_mVB7N0uzZXeg4r8Jo9bD9bwg; NI i_Xu9cgH0sXDFIYUS6yBD48RQ; NI L_OOcOf9bemcm2GNTcE4DKnQw_2; L_OOcOf9bemcm2GNTcE4DKnQw = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_mVB7N0uzZXeg4r8Jo9bD9bwg = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*)0; HEX3Atmp_mVB7N0uzZXeg4r8Jo9bD9bwg = (*a0).locked; i_Xu9cgH0sXDFIYUS6yBD48RQ = ((NI) 0); L_OOcOf9bemcm2GNTcE4DKnQw_2 = (HEX3Atmp_mVB7N0uzZXeg4r8Jo9bD9bwg ? HEX3Atmp_mVB7N0uzZXeg4r8Jo9bD9bwg->Sup.len : 0); { while (1) { if (!(i_Xu9cgH0sXDFIYUS6yBD48RQ < L_OOcOf9bemcm2GNTcE4DKnQw_2)) goto LA47; L_OOcOf9bemcm2GNTcE4DKnQw = HEX3Atmp_mVB7N0uzZXeg4r8Jo9bD9bwg->data[i_Xu9cgH0sXDFIYUS6yBD48RQ]; { NIM_BOOL LOC50; LOC50 = (NIM_BOOL)0; LOC50 = sametree_UXwZN9alTEPMzSE3TdR3S3g(dot0, L_OOcOf9bemcm2GNTcE4DKnQw); if (!LOC50) goto LA51; goto BeforeRet; } LA51: ; i_Xu9cgH0sXDFIYUS6yBD48RQ += ((NI) 1); } LA47: ; } } LOC53 = (NimStringDesc*)0; LOC54 = (NimStringDesc*)0; LOC54 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(n0, 0); LOC53 = rawNewString(LOC54->Sup.len + 18); appendString(LOC53, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_11)); appendString(LOC53, LOC54); localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), LOC53); } goto LA41; LA43: ; { guardglobal_TOoIKESz4jHxdO1QSOu9bzw(a0, n0, g0); } LA41: ; }BeforeRet: ; } N_NIMCALL(void, addtointersection_9a8VhAKQURDd2iUkgv5N6Ug)(TY_8Np6tlClE5az1CyqZdN19bQ** inter0, NI s0) { TY_1v9bKyksXWMsm0vNwmZ4EuQ LOC8; { { NI j_E0gG9cCRFshQjy1fbmQRtYg; NI HEX3Atmp_YnRozEJI3ifcoG0SZJ52vg; NI res_7ieQX8oLtyzxlyLSr2GiNw; j_E0gG9cCRFshQjy1fbmQRtYg = (NI)0; HEX3Atmp_YnRozEJI3ifcoG0SZJ52vg = (NI)0; HEX3Atmp_YnRozEJI3ifcoG0SZJ52vg = (((*inter0) ? (*inter0)->Sup.len : 0) - 1); res_7ieQX8oLtyzxlyLSr2GiNw = ((NI) 0); { while (1) { if (!(res_7ieQX8oLtyzxlyLSr2GiNw <= HEX3Atmp_YnRozEJI3ifcoG0SZJ52vg)) goto LA3; j_E0gG9cCRFshQjy1fbmQRtYg = res_7ieQX8oLtyzxlyLSr2GiNw; { if (!(s0 == (*inter0)->data[j_E0gG9cCRFshQjy1fbmQRtYg].Field0)) goto LA6; (*inter0)->data[j_E0gG9cCRFshQjy1fbmQRtYg].Field1 += ((NI) 1); goto BeforeRet; } LA6: ; res_7ieQX8oLtyzxlyLSr2GiNw += ((NI) 1); } LA3: ; } } LOC8.Field0 = s0; LOC8.Field1 = ((NI) 1); (*inter0) = (TY_8Np6tlClE5az1CyqZdN19bQ*) incrSeqV2(&((*inter0))->Sup, sizeof(TY_1v9bKyksXWMsm0vNwmZ4EuQ)); (*inter0)->data[(*inter0)->Sup.len] = LOC8; ++(*inter0)->Sup.len; }BeforeRet: ; } N_NIMCALL(void, catchesall_jpeqSEu9cCNHBS8UhL39bpnA)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0) { { if (!!(((*(*tracked0).exc).kindU.S6.sons == 0))) goto LA3; (*(*tracked0).exc).kindU.S6.sons = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*(*tracked0).exc).kindU.S6.sons)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) ((*tracked0).bottom))); } LA3: ; } N_NIMCALL(void, catches_0T87Fuy3YQ1lmdc8Xv009ag)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Ttype_LTUWCZolpovw9cWE3JBWSUw* e_u4V8FXgzm7hT2Jrfw7it2w) { Ttype_LTUWCZolpovw9cWE3JBWSUw* e0; NI L0; NI i0; e0 = skiptypes_pLCdCGDuirMe9cspwviV9aVA(e_u4V8FXgzm7hT2Jrfw7it2w, 14682384); L0 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting((*tracked0).exc); i0 = (*tracked0).bottom; { while (1) { if (!(i0 < L0)) goto LA2; { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC5; Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC6; NI LOC7; LOC5 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC5 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen((*tracked0).exc, i0); LOC6 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC6 = exctype_1oEaXP9cHbjngXxYtGNn7kw(LOC5); LOC7 = (NI)0; LOC7 = safeinheritancediff_kaOr3lZpnYFOzmAx9cN5LiA(LOC6, e0); if (!(LOC7 <= ((NI) 0))) goto LA8; asgnRefNoCycle((void**) (&(*(*tracked0).exc).kindU.S6.sons->data[i0]), (*(*tracked0).exc).kindU.S6.sons->data[(NI)(L0 - ((NI) 1))]); L0 -= ((NI) 1); } goto LA3; LA8: ; { i0 += ((NI) 1); } LA3: ; } LA2: ; } { if (!!(((*(*tracked0).exc).kindU.S6.sons == 0))) goto LA13; (*(*tracked0).exc).kindU.S6.sons = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*(*tracked0).exc).kindU.S6.sons)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) (L0))); } goto LA11; LA13: ; { } LA11: ; } N_NIMCALL(void, tracktrystmt_BxqWoS9czp4uFup6HfSkCeA_2)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NI oldbottom0; NI oldstate0; TY_8Np6tlClE5az1CyqZdN19bQ* inter0; NI branches0; NIM_BOOL hasfinally0; oldbottom0 = (*tracked0).bottom; (*tracked0).bottom = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting((*tracked0).exc); oldstate0 = ((*tracked0).init ? (*tracked0).init->Sup.len : 0); inter0 = (TY_8Np6tlClE5az1CyqZdN19bQ*) newSeq((&NTI_8Np6tlClE5az1CyqZdN19bQ), 0); (*tracked0).intrystmt += ((NI) 1); track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[((NI) 0)]); (*tracked0).intrystmt -= ((NI) 1); { NI i_UADKvVQModC5t43hzKFpKQ; NI HEX3Atmp_ljveNCZWiVdcTDrbksW89bw; NI res_SGw9b2f9bfoM9cU41h9bQLqJ9bw; i_UADKvVQModC5t43hzKFpKQ = (NI)0; HEX3Atmp_ljveNCZWiVdcTDrbksW89bw = (NI)0; HEX3Atmp_ljveNCZWiVdcTDrbksW89bw = (((*tracked0).init ? (*tracked0).init->Sup.len : 0) - 1); res_SGw9b2f9bfoM9cU41h9bQLqJ9bw = oldstate0; { while (1) { if (!(res_SGw9b2f9bfoM9cU41h9bQLqJ9bw <= HEX3Atmp_ljveNCZWiVdcTDrbksW89bw)) goto LA3; i_UADKvVQModC5t43hzKFpKQ = res_SGw9b2f9bfoM9cU41h9bQLqJ9bw; addtointersection_9a8VhAKQURDd2iUkgv5N6Ug((&inter0), (*tracked0).init->data[i_UADKvVQModC5t43hzKFpKQ]); res_SGw9b2f9bfoM9cU41h9bQLqJ9bw += ((NI) 1); } LA3: ; } } branches0 = ((NI) 1); hasfinally0 = NIM_FALSE; { NI i_UADKvVQModC5t43hzKFpKQ_2; NI HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_2; NI LOC5; NI res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_2; i_UADKvVQModC5t43hzKFpKQ_2 = (NI)0; HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_2 = (NI)0; LOC5 = (NI)0; LOC5 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_2 = (LOC5 - 1); res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_2 = ((NI) 1); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* b0; NI blen0; if (!(res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_2 <= HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_2)) goto LA7; i_UADKvVQModC5t43hzKFpKQ_2 = res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_2; b0 = (*n0).kindU.S6.sons->data[i_UADKvVQModC5t43hzKFpKQ_2]; blen0 = sonslen_qPWPHw7WgJeEVYUdcaRIig(b0); { if (!((*b0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 87))) goto LA10; branches0 += ((NI) 1); { if (!(blen0 == ((NI) 1))) goto LA14; catchesall_jpeqSEu9cCNHBS8UhL39bpnA(tracked0); } goto LA12; LA14: ; { { NI j_rdc18m7sNGb5z1qDPsBqhw; NI HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_3; NI res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_3; j_rdc18m7sNGb5z1qDPsBqhw = (NI)0; HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_3 = (NI)0; HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_3 = (NI)(blen0 - ((NI) 2)); res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_3 = ((NI) 0); { while (1) { if (!(res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_3 <= HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_3)) goto LA19; j_rdc18m7sNGb5z1qDPsBqhw = res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_3; catches_0T87Fuy3YQ1lmdc8Xv009ag(tracked0, (*(*b0).kindU.S6.sons->data[j_rdc18m7sNGb5z1qDPsBqhw]).typ); res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_3 += ((NI) 1); } LA19: ; } } } LA12: ; (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*b0).kindU.S6.sons->data[(NI)(blen0 - ((NI) 1))]); { NI i_UADKvVQModC5t43hzKFpKQ_3; NI HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_4; NI res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_4; i_UADKvVQModC5t43hzKFpKQ_3 = (NI)0; HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_4 = (NI)0; HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_4 = (((*tracked0).init ? (*tracked0).init->Sup.len : 0) - 1); res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_4 = oldstate0; { while (1) { if (!(res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_4 <= HEX3Atmp_ljveNCZWiVdcTDrbksW89bw_4)) goto LA22; i_UADKvVQModC5t43hzKFpKQ_3 = res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_4; addtointersection_9a8VhAKQURDd2iUkgv5N6Ug((&inter0), (*tracked0).init->data[i_UADKvVQModC5t43hzKFpKQ_3]); res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_4 += ((NI) 1); } LA22: ; } } } goto LA8; LA10: ; { (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*b0).kindU.S6.sons->data[(NI)(blen0 - ((NI) 1))]); hasfinally0 = NIM_TRUE; } LA8: ; res_SGw9b2f9bfoM9cU41h9bQLqJ9bw_2 += ((NI) 1); } LA7: ; } } (*tracked0).bottom = oldbottom0; { if (!!(hasfinally0)) goto LA26; (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); } LA26: ; { NI id_O3ysEsVzvEsMFbQ5Qf87hg; NI count_kJkKMa9aaKtrH4mt3MH3Low; NI i_UADKvVQModC5t43hzKFpKQ_4; NI L_nG89cY7Nxoz4xVD8ttPkcmw; id_O3ysEsVzvEsMFbQ5Qf87hg = (NI)0; count_kJkKMa9aaKtrH4mt3MH3Low = (NI)0; i_UADKvVQModC5t43hzKFpKQ_4 = ((NI) 0); L_nG89cY7Nxoz4xVD8ttPkcmw = (inter0 ? inter0->Sup.len : 0); { while (1) { if (!(i_UADKvVQModC5t43hzKFpKQ_4 < L_nG89cY7Nxoz4xVD8ttPkcmw)) goto LA30; id_O3ysEsVzvEsMFbQ5Qf87hg = inter0->data[i_UADKvVQModC5t43hzKFpKQ_4].Field0; count_kJkKMa9aaKtrH4mt3MH3Low = inter0->data[i_UADKvVQModC5t43hzKFpKQ_4].Field1; { if (!(count_kJkKMa9aaKtrH4mt3MH3Low == branches0)) goto LA33; (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) incrSeqV2(&((*tracked0).init)->Sup, sizeof(NI)); (*tracked0).init->data[(*tracked0).init->Sup.len] = id_O3ysEsVzvEsMFbQ5Qf87hg; ++(*tracked0).init->Sup.len; } LA33: ; i_UADKvVQModC5t43hzKFpKQ_4 += ((NI) 1); } LA30: ; } } } N_NIMCALL(void, listeffects_xF9av1b77SGV0Yx9cMchZI5w)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0) { { Tnode_bROa11lyF5vxEN9aYNbHmhw* e_H2SNF4TWRyhwgMxj6pvEew; Tnode_bROa11lyF5vxEN9aYNbHmhw* HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA; e_H2SNF4TWRyhwgMxj6pvEew = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA = (*a0).exc; { NI i_xWnqtXT1Hy39c29aC5ASRUHA; NI HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_2; NI LOC3; NI res_h2PcX9ceDC1g8bW9ad4HmEFw; i_xWnqtXT1Hy39c29aC5ASRUHA = (NI)0; HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_2 = (NI)0; LOC3 = (NI)0; LOC3 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA); HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_2 = (LOC3 - 1); res_h2PcX9ceDC1g8bW9ad4HmEFw = ((NI) 0); { while (1) { NimStringDesc* LOC6; if (!(res_h2PcX9ceDC1g8bW9ad4HmEFw <= HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_2)) goto LA5; i_xWnqtXT1Hy39c29aC5ASRUHA = res_h2PcX9ceDC1g8bW9ad4HmEFw; e_H2SNF4TWRyhwgMxj6pvEew = (*HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA).kindU.S6.sons->data[i_xWnqtXT1Hy39c29aC5ASRUHA]; LOC6 = (NimStringDesc*)0; LOC6 = typetostring_iUZlBdvGqNPVN17wd9aVBNw((*e_H2SNF4TWRyhwgMxj6pvEew).typ, ((Tprefereddesc_tnd4qt9c4xddV8oKV5zyusw) 0)); message_VpilfPWbplGz6ny7O9cfr2g_2((*e_H2SNF4TWRyhwgMxj6pvEew).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 289), LOC6); res_h2PcX9ceDC1g8bW9ad4HmEFw += ((NI) 1); } LA5: ; } } } { Tnode_bROa11lyF5vxEN9aYNbHmhw* e_H2SNF4TWRyhwgMxj6pvEew_2; Tnode_bROa11lyF5vxEN9aYNbHmhw* HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_3; e_H2SNF4TWRyhwgMxj6pvEew_2 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_3 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_3 = (*a0).tags; { NI i_xWnqtXT1Hy39c29aC5ASRUHA_2; NI HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_4; NI LOC9; NI res_h2PcX9ceDC1g8bW9ad4HmEFw_2; i_xWnqtXT1Hy39c29aC5ASRUHA_2 = (NI)0; HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_4 = (NI)0; LOC9 = (NI)0; LOC9 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_3); HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_4 = (LOC9 - 1); res_h2PcX9ceDC1g8bW9ad4HmEFw_2 = ((NI) 0); { while (1) { NimStringDesc* LOC12; if (!(res_h2PcX9ceDC1g8bW9ad4HmEFw_2 <= HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_4)) goto LA11; i_xWnqtXT1Hy39c29aC5ASRUHA_2 = res_h2PcX9ceDC1g8bW9ad4HmEFw_2; e_H2SNF4TWRyhwgMxj6pvEew_2 = (*HEX3Atmp_iLKPqlJL9boSJgWb78QT0qA_3).kindU.S6.sons->data[i_xWnqtXT1Hy39c29aC5ASRUHA_2]; LOC12 = (NimStringDesc*)0; LOC12 = typetostring_iUZlBdvGqNPVN17wd9aVBNw((*e_H2SNF4TWRyhwgMxj6pvEew_2).typ, ((Tprefereddesc_tnd4qt9c4xddV8oKV5zyusw) 0)); message_VpilfPWbplGz6ny7O9cfr2g_2((*e_H2SNF4TWRyhwgMxj6pvEew_2).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 289), LOC12); res_h2PcX9ceDC1g8bW9ad4HmEFw_2 += ((NI) 1); } LA11: ; } } } } N_NIMCALL(void, trackpragmastmt_BxqWoS9czp4uFup6HfSkCeA_3)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { { NI i_yD5cRzjSTraDjZIycDBAVQ; NI HEX3Atmp_o6UgkbOKQbsUFgJ6INMa0g; NI LOC2; NI res_aTT59b4IXXNrHn6Q7006fVg; i_yD5cRzjSTraDjZIycDBAVQ = (NI)0; HEX3Atmp_o6UgkbOKQbsUFgJ6INMa0g = (NI)0; LOC2 = (NI)0; LOC2 = sonslen_qPWPHw7WgJeEVYUdcaRIig(n0); HEX3Atmp_o6UgkbOKQbsUFgJ6INMa0g = (NI)(LOC2 - ((NI) 1)); res_aTT59b4IXXNrHn6Q7006fVg = ((NI) 0); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* it0; if (!(res_aTT59b4IXXNrHn6Q7006fVg <= HEX3Atmp_o6UgkbOKQbsUFgJ6INMa0g)) goto LA4; i_yD5cRzjSTraDjZIycDBAVQ = res_aTT59b4IXXNrHn6Q7006fVg; it0 = (*n0).kindU.S6.sons->data[i_yD5cRzjSTraDjZIycDBAVQ]; { Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw LOC7; LOC7 = (Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw)0; LOC7 = whichpragma_tadMdqrtQd2cek9aFwyE1XQ(it0); if (!(LOC7 == ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 163))) goto LA8; listeffects_xF9av1b77SGV0Yx9cMchZI5w(tracked0); } LA8: ; res_aTT59b4IXXNrHn6Q7006fVg += ((NI) 1); } LA4: ; } } } N_NIMCALL(NIM_BOOL, breaksblock_x2WBguhYfuvedcuzkSd07A_3)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NIM_BOOL result0; { result0 = (NIM_BOOL)0; switch ((*n0).kind) { case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 115): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 126): { { Tnode_bROa11lyF5vxEN9aYNbHmhw* c_0bClTMo9cL89cqKbfsz1glXQ; c_0bClTMo9cL89cqKbfsz1glXQ = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; { NI i_dHkDJCzQwTDL8sbH9bC4hOg; NI HEX3Atmp_qIwj5jAqcuS5uAWIobrJtA; NI LOC4; NI res_cZhF2jLkyZwiANbEMNhRRQ; i_dHkDJCzQwTDL8sbH9bC4hOg = (NI)0; HEX3Atmp_qIwj5jAqcuS5uAWIobrJtA = (NI)0; LOC4 = (NI)0; LOC4 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_qIwj5jAqcuS5uAWIobrJtA = (LOC4 - 1); res_cZhF2jLkyZwiANbEMNhRRQ = ((NI) 0); { while (1) { if (!(res_cZhF2jLkyZwiANbEMNhRRQ <= HEX3Atmp_qIwj5jAqcuS5uAWIobrJtA)) goto LA6; i_dHkDJCzQwTDL8sbH9bC4hOg = res_cZhF2jLkyZwiANbEMNhRRQ; c_0bClTMo9cL89cqKbfsz1glXQ = (*n0).kindU.S6.sons->data[i_dHkDJCzQwTDL8sbH9bC4hOg]; { NIM_BOOL LOC9; LOC9 = (NIM_BOOL)0; LOC9 = breaksblock_x2WBguhYfuvedcuzkSd07A_3(c_0bClTMo9cL89cqKbfsz1glXQ); if (!LOC9) goto LA10; result0 = NIM_TRUE; goto BeforeRet; } LA10: ; res_cZhF2jLkyZwiANbEMNhRRQ += ((NI) 1); } LA6: ; } } } } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 110): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 109): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 108): { result0 = NIM_TRUE; goto BeforeRet; } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 27): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 29): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 30): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 31): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 26): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 28): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 32): { { NIM_BOOL LOC16; LOC16 = (NIM_BOOL)0; LOC16 = ((*(*n0).kindU.S6.sons->data[((NI) 0)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC16)) goto LA17; LOC16 = (((*(*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S4.sym).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 14))&31U)))!=0); LA17: ; if (!LOC16) goto LA18; result0 = NIM_TRUE; goto BeforeRet; } LA18: ; } break; default: { } break; } }BeforeRet: ; return result0; } N_NIMCALL(void, trackcase_BxqWoS9czp4uFup6HfSkCeA_4)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NI oldstate0; NI oldfacts0; NIM_BOOL stringcase0; Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC1; NIM_BOOL interesting0; NIM_BOOL LOC2; NIM_BOOL LOC3; TY_8Np6tlClE5az1CyqZdN19bQ* inter0; NI tocover0; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[((NI) 0)]); oldstate0 = ((*tracked0).init ? (*tracked0).init->Sup.len : 0); oldfacts0 = ((*tracked0).guards ? (*tracked0).guards->Sup.len : 0); LOC1 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC1 = skiptypes_pLCdCGDuirMe9cspwviV9aVA((*(*n0).kindU.S6.sons->data[((NI) 0)]).typ, 9480208); stringcase0 = ((*LOC1).kind >= ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*LOC1).kind <= ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*LOC1).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 28)); LOC2 = (NIM_BOOL)0; LOC3 = (NIM_BOOL)0; LOC3 = !(stringcase0); if (!(LOC3)) goto LA4; LOC3 = interestingcaseexpr_SZ9c1ZlAi6ZuGW55LEObgVA((*n0).kindU.S6.sons->data[((NI) 0)]); LA4: ; LOC2 = LOC3; if (!(LOC2)) goto LA5; LOC2 = ((gnotes_ra0BBMaJz6cOxn1JA3c6Bg &((NU64)1<<((NU)((((Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA) 257)- 236))&63U)))!=0); LA5: ; interesting0 = LOC2; inter0 = (TY_8Np6tlClE5az1CyqZdN19bQ*) newSeq((&NTI_8Np6tlClE5az1CyqZdN19bQ), 0); tocover0 = ((NI) 0); { NI i_QV9a7NC3H9aP2I9cQHREtWDng; NI HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg; NI LOC7; NI res_gK1I8mrmdcXgre0JjJOchA; i_QV9a7NC3H9aP2I9cQHREtWDng = (NI)0; HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg = (NI)0; LOC7 = (NI)0; LOC7 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg = (LOC7 - 1); res_gK1I8mrmdcXgre0JjJOchA = ((NI) 1); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* branch0; if (!(res_gK1I8mrmdcXgre0JjJOchA <= HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg)) goto LA9; i_QV9a7NC3H9aP2I9cQHREtWDng = res_gK1I8mrmdcXgre0JjJOchA; branch0 = (*n0).kindU.S6.sons->data[i_QV9a7NC3H9aP2I9cQHREtWDng]; (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); { if (!interesting0) goto LA12; (*tracked0).guards = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*tracked0).guards)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) (oldfacts0))); addcasebranchfacts_gZtGxxJKZnN0rgrwfXEsHg((&(*tracked0).guards), n0, i_QV9a7NC3H9aP2I9cQHREtWDng); } LA12: ; { NI i_QV9a7NC3H9aP2I9cQHREtWDng_2; NI HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg_2; NI LOC15; NI res_gK1I8mrmdcXgre0JjJOchA_2; i_QV9a7NC3H9aP2I9cQHREtWDng_2 = (NI)0; HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg_2 = (NI)0; LOC15 = (NI)0; LOC15 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(branch0); HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg_2 = (LOC15 - 1); res_gK1I8mrmdcXgre0JjJOchA_2 = ((NI) 0); { while (1) { if (!(res_gK1I8mrmdcXgre0JjJOchA_2 <= HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg_2)) goto LA17; i_QV9a7NC3H9aP2I9cQHREtWDng_2 = res_gK1I8mrmdcXgre0JjJOchA_2; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*branch0).kindU.S6.sons->data[i_QV9a7NC3H9aP2I9cQHREtWDng_2]); res_gK1I8mrmdcXgre0JjJOchA_2 += ((NI) 1); } LA17: ; } } { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC20; NIM_BOOL LOC21; LOC20 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC20 = lastson_esDJA7239bJDiq4UrX9aHCjg(branch0); LOC21 = (NIM_BOOL)0; LOC21 = breaksblock_x2WBguhYfuvedcuzkSd07A_3(LOC20); if (!!(LOC21)) goto LA22; tocover0 += ((NI) 1); } LA22: ; { NI i_QV9a7NC3H9aP2I9cQHREtWDng_3; NI HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg_3; NI res_gK1I8mrmdcXgre0JjJOchA_3; i_QV9a7NC3H9aP2I9cQHREtWDng_3 = (NI)0; HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg_3 = (NI)0; HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg_3 = (((*tracked0).init ? (*tracked0).init->Sup.len : 0) - 1); res_gK1I8mrmdcXgre0JjJOchA_3 = oldstate0; { while (1) { if (!(res_gK1I8mrmdcXgre0JjJOchA_3 <= HEX3Atmp_xFq9au0BzqrvQYdtNG9cLZHg_3)) goto LA26; i_QV9a7NC3H9aP2I9cQHREtWDng_3 = res_gK1I8mrmdcXgre0JjJOchA_3; addtointersection_9a8VhAKQURDd2iUkgv5N6Ug((&inter0), (*tracked0).init->data[i_QV9a7NC3H9aP2I9cQHREtWDng_3]); res_gK1I8mrmdcXgre0JjJOchA_3 += ((NI) 1); } LA26: ; } } res_gK1I8mrmdcXgre0JjJOchA += ((NI) 1); } LA9: ; } } (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); { NIM_BOOL LOC29; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC31; LOC29 = (NIM_BOOL)0; LOC29 = !(stringcase0); if (LOC29) goto LA30; LOC31 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC31 = lastson_esDJA7239bJDiq4UrX9aHCjg(n0); LOC29 = ((*LOC31).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 88)); LA30: ; if (!LOC29) goto LA32; { NI id_GIjd3Czsk59aBU6bbiEGOXQ; NI count_EuGc4ePUCyaBq9cyPmGV77g; NI i_QV9a7NC3H9aP2I9cQHREtWDng_4; NI L_GpHa5rAapNS8Ujq0ofFloA; id_GIjd3Czsk59aBU6bbiEGOXQ = (NI)0; count_EuGc4ePUCyaBq9cyPmGV77g = (NI)0; i_QV9a7NC3H9aP2I9cQHREtWDng_4 = ((NI) 0); L_GpHa5rAapNS8Ujq0ofFloA = (inter0 ? inter0->Sup.len : 0); { while (1) { if (!(i_QV9a7NC3H9aP2I9cQHREtWDng_4 < L_GpHa5rAapNS8Ujq0ofFloA)) goto LA36; id_GIjd3Czsk59aBU6bbiEGOXQ = inter0->data[i_QV9a7NC3H9aP2I9cQHREtWDng_4].Field0; count_EuGc4ePUCyaBq9cyPmGV77g = inter0->data[i_QV9a7NC3H9aP2I9cQHREtWDng_4].Field1; { if (!(tocover0 <= count_EuGc4ePUCyaBq9cyPmGV77g)) goto LA39; (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) incrSeqV2(&((*tracked0).init)->Sup, sizeof(NI)); (*tracked0).init->data[(*tracked0).init->Sup.len] = id_GIjd3Czsk59aBU6bbiEGOXQ; ++(*tracked0).init->Sup.len; } LA39: ; i_QV9a7NC3H9aP2I9cQHREtWDng_4 += ((NI) 1); } LA36: ; } } } LA32: ; (*tracked0).guards = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*tracked0).guards)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) (oldfacts0))); } N_NIMCALL(void, trackif_BxqWoS9czp4uFup6HfSkCeA_5)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NI oldfacts0; NI oldstate0; TY_8Np6tlClE5az1CyqZdN19bQ* inter0; NI tocover0; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S6.sons->data[((NI) 0)]); oldfacts0 = ((*tracked0).guards ? (*tracked0).guards->Sup.len : 0); addfact_bFUEMjbKo9b9auJEiVd0ZQYQ((&(*tracked0).guards), (*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S6.sons->data[((NI) 0)]); oldstate0 = ((*tracked0).init ? (*tracked0).init->Sup.len : 0); inter0 = (TY_8Np6tlClE5az1CyqZdN19bQ*) newSeq((&NTI_8Np6tlClE5az1CyqZdN19bQ), 0); tocover0 = ((NI) 0); track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S6.sons->data[((NI) 1)]); { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = breaksblock_x2WBguhYfuvedcuzkSd07A_3((*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S6.sons->data[((NI) 1)]); if (!!(LOC3)) goto LA4; tocover0 += ((NI) 1); } LA4: ; { NI i_cnun0tN8YibOJC2h9a9bNejA; NI HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ; NI res_DxGTMyPxPfv7NZsf1zklhg; i_cnun0tN8YibOJC2h9a9bNejA = (NI)0; HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ = (NI)0; HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ = (((*tracked0).init ? (*tracked0).init->Sup.len : 0) - 1); res_DxGTMyPxPfv7NZsf1zklhg = oldstate0; { while (1) { if (!(res_DxGTMyPxPfv7NZsf1zklhg <= HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ)) goto LA8; i_cnun0tN8YibOJC2h9a9bNejA = res_DxGTMyPxPfv7NZsf1zklhg; addtointersection_9a8VhAKQURDd2iUkgv5N6Ug((&inter0), (*tracked0).init->data[i_cnun0tN8YibOJC2h9a9bNejA]); res_DxGTMyPxPfv7NZsf1zklhg += ((NI) 1); } LA8: ; } } { NI i_cnun0tN8YibOJC2h9a9bNejA_2; NI HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_2; NI LOC10; NI res_DxGTMyPxPfv7NZsf1zklhg_2; i_cnun0tN8YibOJC2h9a9bNejA_2 = (NI)0; HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_2 = (NI)0; LOC10 = (NI)0; LOC10 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_2 = (LOC10 - 1); res_DxGTMyPxPfv7NZsf1zklhg_2 = ((NI) 1); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* branch0; if (!(res_DxGTMyPxPfv7NZsf1zklhg_2 <= HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_2)) goto LA12; i_cnun0tN8YibOJC2h9a9bNejA_2 = res_DxGTMyPxPfv7NZsf1zklhg_2; branch0 = (*n0).kindU.S6.sons->data[i_cnun0tN8YibOJC2h9a9bNejA_2]; (*tracked0).guards = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*tracked0).guards)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) (oldfacts0))); { NI j_9bumbXbL2oI5nrR0H9aXcNNw; NI HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_3; NI res_DxGTMyPxPfv7NZsf1zklhg_3; j_9bumbXbL2oI5nrR0H9aXcNNw = (NI)0; HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_3 = (NI)0; HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_3 = (NI)(i_cnun0tN8YibOJC2h9a9bNejA_2 - ((NI) 1)); res_DxGTMyPxPfv7NZsf1zklhg_3 = ((NI) 0); { while (1) { if (!(res_DxGTMyPxPfv7NZsf1zklhg_3 <= HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_3)) goto LA15; j_9bumbXbL2oI5nrR0H9aXcNNw = res_DxGTMyPxPfv7NZsf1zklhg_3; addfactneg_LmMi9c61EBrvHqw6xJyWX9bg((&(*tracked0).guards), (*(*n0).kindU.S6.sons->data[j_9bumbXbL2oI5nrR0H9aXcNNw]).kindU.S6.sons->data[((NI) 0)]); res_DxGTMyPxPfv7NZsf1zklhg_3 += ((NI) 1); } LA15: ; } } { NI LOC18; LOC18 = (NI)0; LOC18 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(branch0); if (!(((NI) 1) < LOC18)) goto LA19; addfact_bFUEMjbKo9b9auJEiVd0ZQYQ((&(*tracked0).guards), (*branch0).kindU.S6.sons->data[((NI) 0)]); } LA19: ; (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); { NI i_cnun0tN8YibOJC2h9a9bNejA_3; NI HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_4; NI LOC22; NI res_DxGTMyPxPfv7NZsf1zklhg_4; i_cnun0tN8YibOJC2h9a9bNejA_3 = (NI)0; HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_4 = (NI)0; LOC22 = (NI)0; LOC22 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(branch0); HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_4 = (LOC22 - 1); res_DxGTMyPxPfv7NZsf1zklhg_4 = ((NI) 0); { while (1) { if (!(res_DxGTMyPxPfv7NZsf1zklhg_4 <= HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_4)) goto LA24; i_cnun0tN8YibOJC2h9a9bNejA_3 = res_DxGTMyPxPfv7NZsf1zklhg_4; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*branch0).kindU.S6.sons->data[i_cnun0tN8YibOJC2h9a9bNejA_3]); res_DxGTMyPxPfv7NZsf1zklhg_4 += ((NI) 1); } LA24: ; } } { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC27; NIM_BOOL LOC28; LOC27 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC27 = lastson_esDJA7239bJDiq4UrX9aHCjg(branch0); LOC28 = (NIM_BOOL)0; LOC28 = breaksblock_x2WBguhYfuvedcuzkSd07A_3(LOC27); if (!!(LOC28)) goto LA29; tocover0 += ((NI) 1); } LA29: ; { NI i_cnun0tN8YibOJC2h9a9bNejA_4; NI HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_5; NI res_DxGTMyPxPfv7NZsf1zklhg_5; i_cnun0tN8YibOJC2h9a9bNejA_4 = (NI)0; HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_5 = (NI)0; HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_5 = (((*tracked0).init ? (*tracked0).init->Sup.len : 0) - 1); res_DxGTMyPxPfv7NZsf1zklhg_5 = oldstate0; { while (1) { if (!(res_DxGTMyPxPfv7NZsf1zklhg_5 <= HEX3Atmp_UQeLOf9a8OHfbwL4zCBgsRQ_5)) goto LA33; i_cnun0tN8YibOJC2h9a9bNejA_4 = res_DxGTMyPxPfv7NZsf1zklhg_5; addtointersection_9a8VhAKQURDd2iUkgv5N6Ug((&inter0), (*tracked0).init->data[i_cnun0tN8YibOJC2h9a9bNejA_4]); res_DxGTMyPxPfv7NZsf1zklhg_5 += ((NI) 1); } LA33: ; } } res_DxGTMyPxPfv7NZsf1zklhg_2 += ((NI) 1); } LA12: ; } } (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC36; NI LOC37; LOC36 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC36 = lastson_esDJA7239bJDiq4UrX9aHCjg(n0); LOC37 = (NI)0; LOC37 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(LOC36); if (!(LOC37 == ((NI) 1))) goto LA38; { NI id_wwXjgg9bI17ku8EouOpIVMQ; NI count_LofV9apdoUOHTrHzfriS0NQ; NI i_cnun0tN8YibOJC2h9a9bNejA_5; NI L_WcdKHR2U9aqtCg7HzDAFvMA; id_wwXjgg9bI17ku8EouOpIVMQ = (NI)0; count_LofV9apdoUOHTrHzfriS0NQ = (NI)0; i_cnun0tN8YibOJC2h9a9bNejA_5 = ((NI) 0); L_WcdKHR2U9aqtCg7HzDAFvMA = (inter0 ? inter0->Sup.len : 0); { while (1) { if (!(i_cnun0tN8YibOJC2h9a9bNejA_5 < L_WcdKHR2U9aqtCg7HzDAFvMA)) goto LA42; id_wwXjgg9bI17ku8EouOpIVMQ = inter0->data[i_cnun0tN8YibOJC2h9a9bNejA_5].Field0; count_LofV9apdoUOHTrHzfriS0NQ = inter0->data[i_cnun0tN8YibOJC2h9a9bNejA_5].Field1; { if (!(tocover0 <= count_LofV9apdoUOHTrHzfriS0NQ)) goto LA45; (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) incrSeqV2(&((*tracked0).init)->Sup, sizeof(NI)); (*tracked0).init->data[(*tracked0).init->Sup.len] = id_wwXjgg9bI17ku8EouOpIVMQ; ++(*tracked0).init->Sup.len; } LA45: ; i_cnun0tN8YibOJC2h9a9bNejA_5 += ((NI) 1); } LA42: ; } } } LA38: ; (*tracked0).guards = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*tracked0).guards)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) (oldfacts0))); } N_NIMCALL(void, trackblock_BxqWoS9czp4uFup6HfSkCeA_6)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { { NI oldstate0; if (!((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 115) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA3; oldstate0 = ((NI) -1); { NI i_SkIIJ9bcWS4gAgp2SAKibQw; NI HEX3Atmp_bfby1iIvHztobtXymu7TBw; NI LOC6; NI res_SbaPhQK8tjAiYvwnkjM0rQ; i_SkIIJ9bcWS4gAgp2SAKibQw = (NI)0; HEX3Atmp_bfby1iIvHztobtXymu7TBw = (NI)0; LOC6 = (NI)0; LOC6 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_bfby1iIvHztobtXymu7TBw = (LOC6 - 1); res_SbaPhQK8tjAiYvwnkjM0rQ = ((NI) 0); { while (1) { if (!(res_SbaPhQK8tjAiYvwnkjM0rQ <= HEX3Atmp_bfby1iIvHztobtXymu7TBw)) goto LA8; i_SkIIJ9bcWS4gAgp2SAKibQw = res_SbaPhQK8tjAiYvwnkjM0rQ; { NIM_BOOL LOC11; LOC11 = (NIM_BOOL)0; LOC11 = hassubnodewith_yQ1XZBwJ9cR9cPomikkptX6g((*n0).kindU.S6.sons->data[i_SkIIJ9bcWS4gAgp2SAKibQw], ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 110)); if (!LOC11) goto LA12; { if (!(oldstate0 < ((NI) 0))) goto LA16; oldstate0 = ((*tracked0).init ? (*tracked0).init->Sup.len : 0); } LA16: ; } LA12: ; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[i_SkIIJ9bcWS4gAgp2SAKibQw]); res_SbaPhQK8tjAiYvwnkjM0rQ += ((NI) 1); } LA8: ; } } { if (!(((NI) 0) < oldstate0)) goto LA20; (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); } LA20: ; } goto LA1; LA3: ; { track_BxqWoS9czp4uFup6HfSkCeA(tracked0, n0); } LA1: ; } N_NIMCALL(NIM_BOOL, istrue_x2WBguhYfuvedcuzkSd07A_4)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NIM_BOOL result0; NIM_BOOL LOC1; NIM_BOOL LOC2; NIM_BOOL LOC3; NIM_BOOL LOC7; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC2 = (NIM_BOOL)0; LOC3 = (NIM_BOOL)0; LOC3 = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC3)) goto LA4; LOC3 = ((*(*n0).kindU.S4.sym).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 19)); LA4: ; LOC2 = LOC3; if (!(LOC2)) goto LA5; LOC2 = !(((*(*n0).kindU.S4.sym).position == ((NI) 0))); LA5: ; LOC1 = LOC2; if (LOC1) goto LA6; LOC7 = (NIM_BOOL)0; LOC7 = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 6)); if (!(LOC7)) goto LA8; LOC7 = !(((*n0).kindU.S1.intval == IL64(0))); LA8: ; LOC1 = LOC7; LA6: ; result0 = LOC1; return result0; } N_NIMCALL(NI16, getlocklevel_uQWauSCOrFL2i3ywbLfseQ)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t_MQCwMqCC8010ctyUeDd9aRw) { NI16 result0; Ttype_LTUWCZolpovw9cWE3JBWSUw* t0; result0 = (NI16)0; t0 = t_MQCwMqCC8010ctyUeDd9aRw; { NIM_BOOL LOC3; NI LOC5; LOC3 = (NIM_BOOL)0; LOC3 = ((*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 11)); if (!(LOC3)) goto LA4; LOC5 = (NI)0; LOC5 = len_gG7hUAX9cA629ahMLVL3xN4w_2(t0); LOC3 = (LOC5 == ((NI) 3)); LA4: ; if (!LOC3) goto LA6; t0 = (*t0).sons->data[((NI) 1)]; } LA6: ; { NIM_BOOL LOC10; NIM_BOOL LOC11; LOC10 = (NIM_BOOL)0; LOC11 = (NIM_BOOL)0; LOC11 = ((*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 59)); if (!(LOC11)) goto LA12; LOC11 = !(((*t0).n == NIM_NIL)); LA12: ; LOC10 = LOC11; if (!(LOC10)) goto LA13; LOC10 = ((*(*t0).n).kind >= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*(*t0).n).kind <= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 10)); LA13: ; if (!LOC10) goto LA14; result0 = ((NI16) ((*(*t0).n).kindU.S1.intval)); } LA14: ; return result0; } N_NIMCALL(void, locklocations_lHiCtldbW2F1ISjGLbel5Q)(Teffects_vxIpB3oPhn77OqeaB81hCA* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* pragma0) { NI16 firstll0; { { if (!!(((*pragma0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 34)))) goto LA3; localerror_VpilfPWbplGz6ny7O9cfr2g((*pragma0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_23)); goto BeforeRet; } LA3: ; firstll0 = ((NI16) -1); { Tnode_bROa11lyF5vxEN9aYNbHmhw* x_Hu5Flpy9b5VfAK9a50NNPbzw; Tnode_bROa11lyF5vxEN9aYNbHmhw* HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g; x_Hu5Flpy9b5VfAK9a50NNPbzw = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(pragma0, ((NI) 1)); { NI i_gu2xAknzx9b013adQIoMMhA; NI HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g_2; NI LOC7; NI res_hnZ5HOgcC4p209coAn8BE4w; i_gu2xAknzx9b013adQIoMMhA = (NI)0; HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g_2 = (NI)0; LOC7 = (NI)0; LOC7 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g); HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g_2 = (LOC7 - 1); res_hnZ5HOgcC4p209coAn8BE4w = ((NI) 0); { while (1) { NI16 thisll0; if (!(res_hnZ5HOgcC4p209coAn8BE4w <= HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g_2)) goto LA9; i_gu2xAknzx9b013adQIoMMhA = res_hnZ5HOgcC4p209coAn8BE4w; x_Hu5Flpy9b5VfAK9a50NNPbzw = (*HEX3Atmp_eQcfrdgAaC9abgGDgY1a24g).kindU.S6.sons->data[i_gu2xAknzx9b013adQIoMMhA]; thisll0 = getlocklevel_uQWauSCOrFL2i3ywbLfseQ((*x_Hu5Flpy9b5VfAK9a50NNPbzw).typ); { if (!!((thisll0 == ((NI16) 0)))) goto LA12; { NIM_BOOL LOC16; NimStringDesc* LOC20; NimStringDesc* LOC21; LOC16 = (NIM_BOOL)0; LOC16 = (thisll0 < ((NI16) 0)); if (LOC16) goto LA17; LOC16 = (((NI16) 1000) < thisll0); LA17: ; if (!LOC16) goto LA18; LOC20 = (NimStringDesc*)0; LOC21 = (NimStringDesc*)0; LOC21 = HEX24_7U5mhhMT9aokoOIuJFuFlgw(thisll0); LOC20 = rawNewString(LOC21->Sup.len + 20); appendString(LOC20, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_24)); appendString(LOC20, LOC21); localerror_GarD0CQJ5aQhoHekHYinVQ((*x_Hu5Flpy9b5VfAK9a50NNPbzw).info, LOC20); } goto LA14; LA18: ; { if (!(firstll0 < ((NI16) 0))) goto LA23; firstll0 = thisll0; } goto LA14; LA23: ; { if (!!((firstll0 == thisll0))) goto LA26; localerror_VpilfPWbplGz6ny7O9cfr2g((*x_Hu5Flpy9b5VfAK9a50NNPbzw).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_25)); } goto LA14; LA26: ; LA14: ; (*a0).maxlocklevel = (((*a0).maxlocklevel >= firstll0) ? (*a0).maxlocklevel : firstll0); } LA12: ; (*a0).locked = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) incrSeqV2(&((*a0).locked)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*)); asgnRefNoCycle((void**) (&(*a0).locked->data[(*a0).locked->Sup.len]), x_Hu5Flpy9b5VfAK9a50NNPbzw); ++(*a0).locked->Sup.len; res_hnZ5HOgcC4p209coAn8BE4w += ((NI) 1); } LA9: ; } } } { NIM_BOOL LOC30; LOC30 = (NIM_BOOL)0; LOC30 = (((NI16) 0) <= firstll0); if (!(LOC30)) goto LA31; LOC30 = !((firstll0 == (*a0).currlocklevel)); LA31: ; if (!LOC30) goto LA32; { NIM_BOOL LOC36; LOC36 = (NIM_BOOL)0; LOC36 = (((NI16) 0) < (*a0).currlocklevel); if (!(LOC36)) goto LA37; LOC36 = ((*a0).currlocklevel <= firstll0); LA37: ; if (!LOC36) goto LA38; localerror_VpilfPWbplGz6ny7O9cfr2g((*pragma0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_26)); } LA38: ; (*a0).currlocklevel = firstll0; } LA32: ; }BeforeRet: ; } N_NIMCALL(void, track_BxqWoS9czp4uFup6HfSkCeA)(Teffects_vxIpB3oPhn77OqeaB81hCA* tracked0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { switch ((*n0).kind) { case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3): { usevar_v49b6RRBfUBabmq9bN9c9bCQLA(tracked0, n0); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 108): { (*(*n0).kindU.S6.sons->data[((NI) 0)]).info = (*n0).info; addeffect_eJ2D5TmuKzX0jubAt504mA(tracked0, (*n0).kindU.S6.sons->data[((NI) 0)], NIM_FALSE); { NI i_EiF5tqv5EnqBW9aIRhgmGjw; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ; NI LOC4; NI res_xzt1yMQHfDux9bdVATBo8rA; i_EiF5tqv5EnqBW9aIRhgmGjw = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ = (NI)0; LOC4 = (NI)0; LOC4 = safelen_CdME9baJhvveuPEDZE9bXoxAsigmatch(n0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ = (LOC4 - 1); res_xzt1yMQHfDux9bdVATBo8rA = ((NI) 0); { while (1) { if (!(res_xzt1yMQHfDux9bdVATBo8rA <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ)) goto LA6; i_EiF5tqv5EnqBW9aIRhgmGjw = res_xzt1yMQHfDux9bdVATBo8rA; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw]); res_xzt1yMQHfDux9bdVATBo8rA += ((NI) 1); } LA6: ; } } } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 27): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 29): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 30): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 31): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 26): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 28): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 32): { Tnode_bROa11lyF5vxEN9aYNbHmhw* a0; Ttype_LTUWCZolpovw9cWE3JBWSUw* op0; a0 = (*n0).kindU.S6.sons->data[((NI) 0)]; op0 = (*a0).typ; { NIM_BOOL LOC10; NIM_BOOL LOC11; Tnode_bROa11lyF5vxEN9aYNbHmhw* effectlist0; LOC10 = (NIM_BOOL)0; LOC11 = (NIM_BOOL)0; LOC11 = !((op0 == NIM_NIL)); if (!(LOC11)) goto LA12; LOC11 = ((*op0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA12: ; LOC10 = LOC11; if (!(LOC10)) goto LA13; LOC10 = ((*(*(*op0).n).kindU.S6.sons->data[((NI) 0)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152)); LA13: ; if (!LOC10) goto LA14; { NI16 LOC24; if (!((*a0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA18; { if (!((*a0).kindU.S4.sym == (*tracked0).owner)) goto LA22; (*tracked0).isrecursive = NIM_TRUE; } LA22: ; LOC24 = (NI16)0; LOC24 = getlocklevel_SJJx5MIal33f6MnOCwqang((*a0).kindU.S4.sym); mergelocklevels_HPKPawBmCdQfQSjvglxVug(tracked0, n0, LOC24); { if (!(((*(*a0).kindU.S4.sym).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 11))&31U)))!=0)) goto LA27; (*tracked0).hassideeffect = NIM_TRUE; } LA27: ; } goto LA16; LA18: ; { mergelocklevels_HPKPawBmCdQfQSjvglxVug(tracked0, n0, (*op0).locklevel); } LA16: ; effectlist0 = (*(*op0).n).kindU.S6.sons->data[((NI) 0)]; { NIM_BOOL LOC32; LOC32 = (NIM_BOOL)0; LOC32 = ((*a0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC32)) goto LA33; LOC32 = ((*(*a0).kindU.S4.sym).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 13)); LA33: ; if (!LOC32) goto LA34; propagateeffects_Ysbcp8Z79b69ciU1ZeC2G6cw(tracked0, n0, (*a0).kindU.S4.sym); } goto LA30; LA34: ; { NI LOC37; LOC37 = (NI)0; LOC37 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(effectlist0); if (!(LOC37 == ((NI) 0))) goto LA38; { NIM_BOOL LOC42; LOC42 = (NIM_BOOL)0; LOC42 = isforwardedproc_x2WBguhYfuvedcuzkSd07A(a0); if (!LOC42) goto LA43; propagateeffects_Ysbcp8Z79b69ciU1ZeC2G6cw(tracked0, n0, (*a0).kindU.S4.sym); } goto LA40; LA43: ; { NIM_BOOL LOC46; LOC46 = (NIM_BOOL)0; LOC46 = isindirectcall_jHyzG4KZtlai0h9bwX2U5HQ(a0, (*tracked0).owner); if (!LOC46) goto LA47; assumetheworst_lk9bBGAb9aAAVczJ0aoChmFg(tracked0, n0, op0); } goto LA40; LA47: ; LA40: ; } goto LA30; LA38: ; { mergeeffects_Rh0mhUmoZCBMPFUCtmsUAA(tracked0, (*effectlist0).kindU.S6.sons->data[((NI) 0)], n0); mergetags_Rh0mhUmoZCBMPFUCtmsUAA_2(tracked0, (*effectlist0).kindU.S6.sons->data[((NI) 3)], n0); { NIM_BOOL LOC52; NIM_BOOL LOC54; LOC52 = (NIM_BOOL)0; LOC52 = ((130 & (*op0).flags) == 0); if (!(LOC52)) goto LA53; LOC54 = (NIM_BOOL)0; LOC54 = importedfromc_x2WBguhYfuvedcuzkSd07A_2(a0); LOC52 = !(LOC54); LA53: ; if (!LOC52) goto LA55; { NIM_BOOL LOC59; LOC59 = (NIM_BOOL)0; LOC59 = ((*a0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC59)) goto LA60; LOC59 = ((*a0).kindU.S4.sym == (*tracked0).owner); LA60: ; if (!!(LOC59)) goto LA61; { if (!((gnotes_ra0BBMaJz6cOxn1JA3c6Bg &((NU64)1<<((NU)((((Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA) 259)- 236))&63U)))!=0)) goto LA65; warnaboutgcunsafe_THB3y38Lyu9a9cY8RL3a6G2Q(n0); } LA65: ; markgcunsafe_y3MhwBrBGxbSZl2Nb9aztzw(tracked0, a0); } LA61: ; } LA55: ; { NIM_BOOL LOC69; NIM_BOOL LOC71; LOC69 = (NIM_BOOL)0; LOC69 = !((((*op0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 1))&31U)))!=0)); if (!(LOC69)) goto LA70; LOC71 = (NIM_BOOL)0; LOC71 = importedfromc_x2WBguhYfuvedcuzkSd07A_2(a0); LOC69 = !(LOC71); LA70: ; if (!LOC69) goto LA72; { NIM_BOOL LOC76; LOC76 = (NIM_BOOL)0; LOC76 = ((*a0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC76)) goto LA77; LOC76 = ((*a0).kindU.S4.sym == (*tracked0).owner); LA77: ; if (!!(LOC76)) goto LA78; (*tracked0).hassideeffect = NIM_TRUE; } LA78: ; } LA72: ; } LA30: ; } LA14: ; { NIM_BOOL LOC82; LOC82 = (NIM_BOOL)0; LOC82 = !(((*a0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3))); if (LOC82) goto LA83; LOC82 = !(((*(*a0).kindU.S4.sym).magic == ((Tmagic_shZhZOdbVC5nnFvcXQAImg) 248))); LA83: ; if (!LOC82) goto LA84; { NI i_EiF5tqv5EnqBW9aIRhgmGjw_2; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_2; NI LOC87; NI res_xzt1yMQHfDux9bdVATBo8rA_2; i_EiF5tqv5EnqBW9aIRhgmGjw_2 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_2 = (NI)0; LOC87 = (NI)0; LOC87 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_2 = (LOC87 - 1); res_xzt1yMQHfDux9bdVATBo8rA_2 = ((NI) 1); { while (1) { Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC90; if (!(res_xzt1yMQHfDux9bdVATBo8rA_2 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_2)) goto LA89; i_EiF5tqv5EnqBW9aIRhgmGjw_2 = res_xzt1yMQHfDux9bdVATBo8rA_2; LOC90 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC90 = paramtype_dS203LqYxVja1p5iofO9bLw(op0, i_EiF5tqv5EnqBW9aIRhgmGjw_2); trackoperand_moLv8x7t3OqIHLKaKpj2Hw(tracked0, (*n0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_2], LOC90); res_xzt1yMQHfDux9bdVATBo8rA_2 += ((NI) 1); } LA89: ; } } } LA84: ; { NIM_BOOL LOC93; Tnode_bROa11lyF5vxEN9aYNbHmhw* arg0; LOC93 = (NIM_BOOL)0; LOC93 = ((*a0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC93)) goto LA94; LOC93 = ((*(*a0).kindU.S4.sym).magic == ((Tmagic_shZhZOdbVC5nnFvcXQAImg) 29) || (*(*a0).kindU.S4.sym).magic == ((Tmagic_shZhZOdbVC5nnFvcXQAImg) 30) || (*(*a0).kindU.S4.sym).magic == ((Tmagic_shZhZOdbVC5nnFvcXQAImg) 31)); LA94: ; if (!LOC93) goto LA95; arg0 = (*n0).kindU.S6.sons->data[((NI) 1)]; initvarvianew_9bI3pbGIB124GYbyqLwFHAw(tracked0, arg0); { Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC99; LOC99 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC99 = lastson_E41DMKHtT9c6sAMyyvhmSIw((*arg0).typ); if (!!(((131072 & (*LOC99).flags) == 0))) goto LA100; { NIM_BOOL LOC104; NIM_BOOL LOC105; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC107; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC109; LOC104 = (NIM_BOOL)0; LOC105 = (NIM_BOOL)0; LOC105 = ((*(*a0).kindU.S4.sym).magic == ((Tmagic_shZhZOdbVC5nnFvcXQAImg) 31)); if (!(LOC105)) goto LA106; LOC107 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC107 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 2)); LOC105 = ((*LOC107).kind >= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*LOC107).kind <= ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 15)); LA106: ; LOC104 = LOC105; if (!(LOC104)) goto LA108; LOC109 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC109 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 2)); LOC104 = ((*LOC109).kindU.S1.intval == IL64(0)); LA108: ; if (!LOC104) goto LA110; } goto LA102; LA110: ; { NimStringDesc* LOC113; LOC113 = (NimStringDesc*)0; LOC113 = HEX24_qX5C9b0n9bOP7jk69amC8dA7A_2(arg0); message_VpilfPWbplGz6ny7O9cfr2g_2((*arg0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 256), LOC113); } LA102: ; } LA100: ; } LA95: ; { NI i_EiF5tqv5EnqBW9aIRhgmGjw_3; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_3; NI LOC115; NI res_xzt1yMQHfDux9bdVATBo8rA_3; i_EiF5tqv5EnqBW9aIRhgmGjw_3 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_3 = (NI)0; LOC115 = (NI)0; LOC115 = safelen_CdME9baJhvveuPEDZE9bXoxAsigmatch(n0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_3 = (LOC115 - 1); res_xzt1yMQHfDux9bdVATBo8rA_3 = ((NI) 0); { while (1) { if (!(res_xzt1yMQHfDux9bdVATBo8rA_3 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_3)) goto LA117; i_EiF5tqv5EnqBW9aIRhgmGjw_3 = res_xzt1yMQHfDux9bdVATBo8rA_3; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_3]); res_xzt1yMQHfDux9bdVATBo8rA_3 += ((NI) 1); } LA117: ; } } } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 45): { guarddotaccess_v49b6RRBfUBabmq9bN9c9bCQLA_2(tracked0, n0); { NI i_EiF5tqv5EnqBW9aIRhgmGjw_4; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_4; NI LOC120; NI res_xzt1yMQHfDux9bdVATBo8rA_4; i_EiF5tqv5EnqBW9aIRhgmGjw_4 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_4 = (NI)0; LOC120 = (NI)0; LOC120 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_4 = (LOC120 - 1); res_xzt1yMQHfDux9bdVATBo8rA_4 = ((NI) 0); { while (1) { if (!(res_xzt1yMQHfDux9bdVATBo8rA_4 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_4)) goto LA122; i_EiF5tqv5EnqBW9aIRhgmGjw_4 = res_xzt1yMQHfDux9bdVATBo8rA_4; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_4]); res_xzt1yMQHfDux9bdVATBo8rA_4 += ((NI) 1); } LA122: ; } } } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 46): { track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[((NI) 0)]); { if (!((gnotes_ra0BBMaJz6cOxn1JA3c6Bg &((NU64)1<<((NU)((((Tmsgkind_nDM9aiGzuSlpuw3CrqwaebA) 257)- 236))&63U)))!=0)) goto LA126; checkfieldaccess_s2xvRrhcmIZPVuKsaSJ7ow((*tracked0).guards, n0); } LA126: ; } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 106): { tracktrystmt_BxqWoS9czp4uFup6HfSkCeA_2(tracked0, n0); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 90): { trackpragmastmt_BxqWoS9czp4uFup6HfSkCeA_3(tracked0, n0); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 73): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 74): { track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[((NI) 1)]); initvar_XjunQy9bxEenZdEOUz9a4h5Q(tracked0, (*n0).kindU.S6.sons->data[((NI) 0)], NIM_TRUE); invalidatefacts_2fXEB59aU5I0E4FRGsGvo1g((&(*tracked0).guards), (*n0).kindU.S6.sons->data[((NI) 0)]); track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[((NI) 0)]); addasgnfact_7r5ckpggojVUN9b8WgQQTHw((&(*tracked0).guards), (*n0).kindU.S6.sons->data[((NI) 0)], (*n0).kindU.S6.sons->data[((NI) 1)]); notnilcheck_moLv8x7t3OqIHLKaKpj2Hw_2(tracked0, (*n0).kindU.S6.sons->data[((NI) 1)], (*(*n0).kindU.S6.sons->data[((NI) 0)]).typ); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 99): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 100): { { Tnode_bROa11lyF5vxEN9aYNbHmhw* child_TDUM9bPgj9aI5SMK9bjukvnMA; child_TDUM9bPgj9aI5SMK9bjukvnMA = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; { NI i_EiF5tqv5EnqBW9aIRhgmGjw_5; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_5; NI LOC134; NI res_xzt1yMQHfDux9bdVATBo8rA_5; i_EiF5tqv5EnqBW9aIRhgmGjw_5 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_5 = (NI)0; LOC134 = (NI)0; LOC134 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_5 = (LOC134 - 1); res_xzt1yMQHfDux9bdVATBo8rA_5 = ((NI) 0); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* last0; if (!(res_xzt1yMQHfDux9bdVATBo8rA_5 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_5)) goto LA136; i_EiF5tqv5EnqBW9aIRhgmGjw_5 = res_xzt1yMQHfDux9bdVATBo8rA_5; child_TDUM9bPgj9aI5SMK9bjukvnMA = (*n0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_5]; last0 = lastson_esDJA7239bJDiq4UrX9aHCjg(child_TDUM9bPgj9aI5SMK9bjukvnMA); { if (!!(((*last0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA139; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, last0); } LA139: ; { NIM_BOOL LOC143; LOC143 = (NIM_BOOL)0; LOC143 = ((*child_TDUM9bPgj9aI5SMK9bjukvnMA).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 35)); if (!(LOC143)) goto LA144; LOC143 = !(((*last0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1))); LA144: ; if (!LOC143) goto LA145; { NI i_EiF5tqv5EnqBW9aIRhgmGjw_6; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_6; NI LOC148; NI res_xzt1yMQHfDux9bdVATBo8rA_6; i_EiF5tqv5EnqBW9aIRhgmGjw_6 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_6 = (NI)0; LOC148 = (NI)0; LOC148 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(child_TDUM9bPgj9aI5SMK9bjukvnMA); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_6 = (NI)(LOC148 - ((NI) 3)); res_xzt1yMQHfDux9bdVATBo8rA_6 = ((NI) 0); { while (1) { if (!(res_xzt1yMQHfDux9bdVATBo8rA_6 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_6)) goto LA150; i_EiF5tqv5EnqBW9aIRhgmGjw_6 = res_xzt1yMQHfDux9bdVATBo8rA_6; initvar_XjunQy9bxEenZdEOUz9a4h5Q(tracked0, (*child_TDUM9bPgj9aI5SMK9bjukvnMA).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_6], NIM_FALSE); addasgnfact_7r5ckpggojVUN9b8WgQQTHw((&(*tracked0).guards), (*child_TDUM9bPgj9aI5SMK9bjukvnMA).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_6], last0); notnilcheck_moLv8x7t3OqIHLKaKpj2Hw_2(tracked0, last0, (*(*child_TDUM9bPgj9aI5SMK9bjukvnMA).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_6]).typ); res_xzt1yMQHfDux9bdVATBo8rA_6 += ((NI) 1); } LA150: ; } } } LA145: ; res_xzt1yMQHfDux9bdVATBo8rA_5 += ((NI) 1); } LA136: ; } } } } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 97): { trackcase_BxqWoS9czp4uFup6HfSkCeA_4(tracked0, n0); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 93): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 92): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 48): { trackif_BxqWoS9czp4uFup6HfSkCeA_5(tracked0, n0); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 112): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 127): { trackblock_BxqWoS9czp4uFup6HfSkCeA_6(tracked0, (*n0).kindU.S6.sons->data[((NI) 1)]); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 96): { track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[((NI) 0)]); { NIM_BOOL LOC157; LOC157 = (NIM_BOOL)0; LOC157 = istrue_x2WBguhYfuvedcuzkSd07A_4((*n0).kindU.S6.sons->data[((NI) 0)]); if (!LOC157) goto LA158; trackblock_BxqWoS9czp4uFup6HfSkCeA_6(tracked0, (*n0).kindU.S6.sons->data[((NI) 1)]); } goto LA155; LA158: ; { NI oldstate0; NI oldfacts0; oldstate0 = ((*tracked0).init ? (*tracked0).init->Sup.len : 0); oldfacts0 = ((*tracked0).guards ? (*tracked0).guards->Sup.len : 0); addfact_bFUEMjbKo9b9auJEiVd0ZQYQ((&(*tracked0).guards), (*n0).kindU.S6.sons->data[((NI) 0)]); track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[((NI) 1)]); (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); (*tracked0).guards = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*tracked0).guards)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) (oldfacts0))); } LA155: ; } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 94): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 95): { NI oldstate0; oldstate0 = ((*tracked0).init ? (*tracked0).init->Sup.len : 0); { NI i_EiF5tqv5EnqBW9aIRhgmGjw_7; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_7; NI LOC163; NI res_xzt1yMQHfDux9bdVATBo8rA_7; i_EiF5tqv5EnqBW9aIRhgmGjw_7 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_7 = (NI)0; LOC163 = (NI)0; LOC163 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_7 = (LOC163 - 1); res_xzt1yMQHfDux9bdVATBo8rA_7 = ((NI) 0); { while (1) { if (!(res_xzt1yMQHfDux9bdVATBo8rA_7 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_7)) goto LA165; i_EiF5tqv5EnqBW9aIRhgmGjw_7 = res_xzt1yMQHfDux9bdVATBo8rA_7; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_7]); res_xzt1yMQHfDux9bdVATBo8rA_7 += ((NI) 1); } LA165: ; } } (*tracked0).init = (TY_qwqHTkRvwhrRyENtudHQ7g*) setLengthSeq(&((*tracked0).init)->Sup, sizeof(NI), ((NI) (oldstate0))); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 38): { NI oldfacts0; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[((NI) 0)]); oldfacts0 = ((*tracked0).guards ? (*tracked0).guards->Sup.len : 0); { NI i_EiF5tqv5EnqBW9aIRhgmGjw_8; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_8; NI LOC168; NI res_xzt1yMQHfDux9bdVATBo8rA_8; i_EiF5tqv5EnqBW9aIRhgmGjw_8 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_8 = (NI)0; LOC168 = (NI)0; LOC168 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_8 = (LOC168 - 1); res_xzt1yMQHfDux9bdVATBo8rA_8 = ((NI) 1); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* x0; if (!(res_xzt1yMQHfDux9bdVATBo8rA_8 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_8)) goto LA170; i_EiF5tqv5EnqBW9aIRhgmGjw_8 = res_xzt1yMQHfDux9bdVATBo8rA_8; x0 = (*n0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_8]; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, x0); { NIM_BOOL LOC173; LOC173 = (NIM_BOOL)0; LOC173 = ((*(*x0).kindU.S6.sons->data[((NI) 0)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC173)) goto LA174; LOC173 = (((*(*(*x0).kindU.S6.sons->data[((NI) 0)]).kindU.S4.sym).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 18))&31U)))!=0); LA174: ; if (!LOC173) goto LA175; adddiscriminantfact_3m4Lz9csEwXE9aVZb2DbaqTg((&(*tracked0).guards), x0); } LA175: ; res_xzt1yMQHfDux9bdVATBo8rA_8 += ((NI) 1); } LA170: ; } } (*tracked0).guards = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*tracked0).guards)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) (oldfacts0))); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 91): { Tnode_bROa11lyF5vxEN9aYNbHmhw* pragmalist0; NI oldlocked0; NI16 oldlocklevel0; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC187; pragmalist0 = (*n0).kindU.S6.sons->data[((NI) 0)]; oldlocked0 = ((*tracked0).locked ? (*tracked0).locked->Sup.len : 0); oldlocklevel0 = (*tracked0).currlocklevel; { NI i_EiF5tqv5EnqBW9aIRhgmGjw_9; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_9; NI LOC179; NI res_xzt1yMQHfDux9bdVATBo8rA_9; i_EiF5tqv5EnqBW9aIRhgmGjw_9 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_9 = (NI)0; LOC179 = (NI)0; LOC179 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(pragmalist0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_9 = (LOC179 - 1); res_xzt1yMQHfDux9bdVATBo8rA_9 = ((NI) 0); { while (1) { if (!(res_xzt1yMQHfDux9bdVATBo8rA_9 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_9)) goto LA181; i_EiF5tqv5EnqBW9aIRhgmGjw_9 = res_xzt1yMQHfDux9bdVATBo8rA_9; { Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw LOC184; LOC184 = (Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw)0; LOC184 = whichpragma_tadMdqrtQd2cek9aFwyE1XQ((*pragmalist0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_9]); if (!(LOC184 == ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 199))) goto LA185; locklocations_lHiCtldbW2F1ISjGLbel5Q(tracked0, (*pragmalist0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_9]); } LA185: ; res_xzt1yMQHfDux9bdVATBo8rA_9 += ((NI) 1); } LA181: ; } } LOC187 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC187 = lastson_esDJA7239bJDiq4UrX9aHCjg(n0); track_BxqWoS9czp4uFup6HfSkCeA(tracked0, LOC187); (*tracked0).locked = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*tracked0).locked)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) (oldlocked0))); (*tracked0).currlocklevel = oldlocklevel0; } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 98): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 79): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 81): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 80): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 84): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 82): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 83): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 51): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 52): { } break; default: { { NI i_EiF5tqv5EnqBW9aIRhgmGjw_10; NI HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_10; NI LOC191; NI res_xzt1yMQHfDux9bdVATBo8rA_10; i_EiF5tqv5EnqBW9aIRhgmGjw_10 = (NI)0; HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_10 = (NI)0; LOC191 = (NI)0; LOC191 = safelen_CdME9baJhvveuPEDZE9bXoxAsigmatch(n0); HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_10 = (LOC191 - 1); res_xzt1yMQHfDux9bdVATBo8rA_10 = ((NI) 0); { while (1) { if (!(res_xzt1yMQHfDux9bdVATBo8rA_10 <= HEX3Atmp_gCjlfrcsXvdYEsEaUCwYtQ_10)) goto LA193; i_EiF5tqv5EnqBW9aIRhgmGjw_10 = res_xzt1yMQHfDux9bdVATBo8rA_10; track_BxqWoS9czp4uFup6HfSkCeA(tracked0, (*n0).kindU.S6.sons->data[i_EiF5tqv5EnqBW9aIRhgmGjw_10]); res_xzt1yMQHfDux9bdVATBo8rA_10 += ((NI) 1); } LA193: ; } } } break; } } static N_INLINE(NIM_BOOL, isemptytype_9bToMoy0nns9a3tJPtRpLUVAvmgen)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0) { NIM_BOOL result0; NIM_BOOL LOC1; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC1 = (t0 == NIM_NIL); if (LOC1) goto LA2; LOC1 = ((*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 62) || (*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 7)); LA2: ; result0 = LOC1; return result0; } N_NIMCALL(void, listgcunsafety_H87Ro7tWa0D2E8CF45etng)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, NIM_BOOL onlywarning0, Intset_PQrmFm4BXFkFSVOUl1ojSg* cyclecheck0) { Tsym_AXG7xcvKqaxY6koRX1xkCw* u0; u0 = (*s0).kindU.S2.gcunsafetyreason; { NIM_BOOL LOC3; NIM_BOOL LOC5; Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw msgkind0; LOC3 = (NIM_BOOL)0; LOC3 = !((u0 == NIM_NIL)); if (!(LOC3)) goto LA4; LOC5 = (NIM_BOOL)0; LOC5 = containsorincl_B0EhVMrh5BBBZOOtYjAvVg(cyclecheck0, (*u0).Sup.id); LOC3 = !(LOC5); LA4: ; if (!LOC3) goto LA6; { if (!onlywarning0) goto LA10; msgkind0 = ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 260); } goto LA8; LA10: ; { msgkind0 = ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4); } LA8: ; switch ((*u0).kind) { case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 9): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 8): { TY_Re75IspeoxXy2oCZHwcRrA LOC14; NimStringDesc* LOC15; memset((void*)LOC14, 0, sizeof(LOC14)); LOC14[0] = copyString((*(*s0).name).s); LOC14[1] = copyString((*(*u0).name).s); LOC15 = (NimStringDesc*)0; LOC15 = nsuFormatOpenArray(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_28), LOC14, 2); message_VpilfPWbplGz6ny7O9cfr2g_2((*s0).info, msgkind0, LOC15); } break; case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 12): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 13): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 14): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 15): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 16): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 17): { TY_Re75IspeoxXy2oCZHwcRrA LOC17; NimStringDesc* LOC18; listgcunsafety_H87Ro7tWa0D2E8CF45etng(u0, NIM_TRUE, cyclecheck0); memset((void*)LOC17, 0, sizeof(LOC17)); LOC17[0] = copyString((*(*s0).name).s); LOC17[1] = copyString((*(*u0).name).s); LOC18 = (NimStringDesc*)0; LOC18 = nsuFormatOpenArray(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_29), LOC17, 2); message_VpilfPWbplGz6ny7O9cfr2g_2((*s0).info, msgkind0, LOC18); } break; case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 3): { TY_Re75IspeoxXy2oCZHwcRrA LOC20; NimStringDesc* LOC21; memset((void*)LOC20, 0, sizeof(LOC20)); LOC20[0] = copyString((*(*s0).name).s); LOC20[1] = copyString((*(*u0).name).s); LOC21 = (NimStringDesc*)0; LOC21 = nsuFormatOpenArray(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_30), LOC20, 2); message_VpilfPWbplGz6ny7O9cfr2g_2((*s0).info, msgkind0, LOC21); } break; default: { NimStringDesc* LOC28; { NimStringDesc* LOC27; if (!!(((*u0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 0)))) goto LA25; LOC27 = (NimStringDesc*)0; LOC27 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_wkTG4eaV3t1uo3x09apjcwA_31); internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC27); } LA25: ; LOC28 = (NimStringDesc*)0; LOC28 = nsuFormatSingleElem(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_32), (*(*s0).name).s); message_VpilfPWbplGz6ny7O9cfr2g_2((*u0).info, msgkind0, LOC28); } break; } } LA6: ; } N_NIMCALL(void, listgcunsafety_84UYAO9cXlV45DIsx0LTHGA)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, NIM_BOOL onlywarning0) { Intset_PQrmFm4BXFkFSVOUl1ojSg cyclecheck0; memset((void*)(&cyclecheck0), 0, sizeof(cyclecheck0)); chckNil((void*)(&cyclecheck0)); memset((void*)(&cyclecheck0), 0, sizeof(cyclecheck0)); initintset_a9a80eJplB17xrdZJ41Baww((&cyclecheck0)); listgcunsafety_H87Ro7tWa0D2E8CF45etng(s0, onlywarning0, (&cyclecheck0)); } N_NIMCALL(void, trackproc_z7pmCbiOTR1ET3CG0j9cCnw)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, Tnode_bROa11lyF5vxEN9aYNbHmhw* body0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* effects0; Teffects_vxIpB3oPhn77OqeaB81hCA t0; Tnode_bROa11lyF5vxEN9aYNbHmhw* p0; Tnode_bROa11lyF5vxEN9aYNbHmhw* raisesspec0; Tnode_bROa11lyF5vxEN9aYNbHmhw* tagsspec0; { effects0 = (*(*(*s0).typ).n).kindU.S6.sons->data[((NI) 0)]; { NimStringDesc* LOC5; if (!!(((*effects0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152)))) goto LA3; LOC5 = (NimStringDesc*)0; LOC5 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_wkTG4eaV3t1uo3x09apjcwA_9); internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC5); } LA3: ; { if (!(((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 4))&31U)))!=0)) goto LA8; goto BeforeRet; } LA8: ; { NI LOC12; LOC12 = (NI)0; LOC12 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(effects0); if (!(LOC12 == ((NI) 4))) goto LA13; goto BeforeRet; } LA13: ; memset((void*)(&t0), 0, sizeof(t0)); initeffects_RYVfPwn9b13diyy9buOINzkA(effects0, s0, (&t0)); track_BxqWoS9czp4uFup6HfSkCeA((&t0), body0); { NIM_BOOL LOC17; NIM_BOOL LOC18; NIM_BOOL LOC19; Tsym_AXG7xcvKqaxY6koRX1xkCw* res0; LOC17 = (NIM_BOOL)0; LOC18 = (NIM_BOOL)0; LOC19 = (NIM_BOOL)0; LOC19 = isemptytype_9bToMoy0nns9a3tJPtRpLUVAvmgen((*(*s0).typ).sons->data[((NI) 0)]); LOC18 = !(LOC19); if (!(LOC18)) goto LA20; LOC18 = !(((196608 & (*(*(*s0).typ).sons->data[((NI) 0)]).flags) == 0)); LA20: ; LOC17 = LOC18; if (!(LOC17)) goto LA21; LOC17 = ((45056 &(1U<<((NU)((*s0).kind)&31U)))!=0); LA21: ; if (!LOC17) goto LA22; res0 = (*(*(*s0).ast).kindU.S6.sons->data[((NI) 7)]).kindU.S4.sym; { NIM_BOOL LOC26; LOC26 = (NIM_BOOL)0; LOC26 = contains_P6sCVNQ9cdTFh3rtVXMEtxgsempass2(t0.init->data, t0.init->Sup.len, (*res0).Sup.id); if (!!(LOC26)) goto LA27; message_VpilfPWbplGz6ny7O9cfr2g_2((*body0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 256), ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_27)); } LA27: ; } LA22: ; p0 = (*(*s0).ast).kindU.S6.sons->data[((NI) 4)]; raisesspec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(p0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 159)); { if (!!((raisesspec0 == 0))) goto LA31; checkraisesspec_lcJDZNSq3lnAKHEXQRlWUw(raisesspec0, t0.exc, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_2), NIM_TRUE, subtyperelation_M00uo9aleL8TBs39bwgoExTw); asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[((NI) 0)]), raisesspec0); } LA31: ; tagsspec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(p0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 164)); { if (!!((tagsspec0 == 0))) goto LA35; checkraisesspec_lcJDZNSq3lnAKHEXQRlWUw(tagsspec0, t0.tags, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_6), NIM_FALSE, subtyperelation_M00uo9aleL8TBs39bwgoExTw); asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[((NI) 3)]), tagsspec0); } LA35: ; { NIM_BOOL LOC39; LOC39 = (NIM_BOOL)0; LOC39 = (((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 22))&31U)))!=0); if (!(LOC39)) goto LA40; LOC39 = t0.gcunsafe; LA40: ; if (!LOC39) goto LA41; { NIM_BOOL LOC45; LOC45 = (NIM_BOOL)0; LOC45 = ((gglobaloptions_j042VVDC9cT5ENYoXnmhhVg &((NU64)1<<((NU)(((Tglobaloption_RAfAEZqjnKMDumgyKKc1qw) 22))&63U)))!=0); if (!(LOC45)) goto LA46; LOC45 = ((gglobaloptions_j042VVDC9cT5ENYoXnmhhVg &((NU64)1<<((NU)(((Tglobaloption_RAfAEZqjnKMDumgyKKc1qw) 24))&63U)))!=0); LA46: ; if (!LOC45) goto LA47; listgcunsafety_84UYAO9cXlV45DIsx0LTHGA(s0, NIM_FALSE); } goto LA43; LA47: ; { listgcunsafety_84UYAO9cXlV45DIsx0LTHGA(s0, NIM_TRUE); } LA43: ; } LA41: ; { NIM_BOOL LOC52; LOC52 = (NIM_BOOL)0; LOC52 = (((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 10))&31U)))!=0); if (!(LOC52)) goto LA53; LOC52 = t0.hassideeffect; LA53: ; if (!LOC52) goto LA54; localerror_VpilfPWbplGz6ny7O9cfr2g((*s0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 221), (*(*s0).name).s); } LA54: ; { if (!!(t0.gcunsafe)) goto LA58; (*(*s0).typ).flags |= ((NU32)1)<<((((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 7))%(sizeof(NU32)*8)); } LA58: ; { NIM_BOOL LOC62; LOC62 = (NIM_BOOL)0; LOC62 = !(t0.hassideeffect); if (!(LOC62)) goto LA63; LOC62 = !((((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 11))&31U)))!=0)); LA63: ; if (!LOC62) goto LA64; (*(*s0).typ).flags |= ((NU32)1)<<((((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 1))%(sizeof(NU32)*8)); } LA64: ; { if (!((*(*s0).typ).locklevel == ((NI16) -1))) goto LA68; (*(*s0).typ).locklevel = t0.maxlocklevel; } goto LA66; LA68: ; { TY_Re75IspeoxXy2oCZHwcRrA LOC73; NimStringDesc* LOC74; if (!((*(*s0).typ).locklevel < t0.maxlocklevel)) goto LA71; memset((void*)LOC73, 0, sizeof(LOC73)); LOC73[0] = HEX24_7U5mhhMT9aokoOIuJFuFlgw((*(*s0).typ).locklevel); LOC73[1] = HEX24_7U5mhhMT9aokoOIuJFuFlgw(t0.maxlocklevel); LOC74 = (NimStringDesc*)0; LOC74 = nsuFormatOpenArray(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_33), LOC73, 2); message_VpilfPWbplGz6ny7O9cfr2g_2((*s0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 264), LOC74); } goto LA66; LA71: ; LA66: ; }BeforeRet: ; } N_NIMCALL(void, seteffectsforproctype_s1u9bAYWpYT5mKbooolvSuA)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* effects0; Tnode_bROa11lyF5vxEN9aYNbHmhw* raisesspec0; Tnode_bROa11lyF5vxEN9aYNbHmhw* tagsspec0; effects0 = (*(*t0).n).kindU.S6.sons->data[((NI) 0)]; { NIM_BOOL LOC3; NimStringDesc* LOC7; LOC3 = (NIM_BOOL)0; LOC3 = ((*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 25)); if (!(LOC3)) goto LA4; LOC3 = ((*effects0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152)); LA4: ; if (!!(LOC3)) goto LA5; LOC7 = (NimStringDesc*)0; LOC7 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_wkTG4eaV3t1uo3x09apjcwA_34); internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC7); } LA5: ; raisesspec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(n0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 159)); tagsspec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(n0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 164)); { NIM_BOOL LOC10; LOC10 = (NIM_BOOL)0; LOC10 = !((raisesspec0 == 0)); if (LOC10) goto LA11; LOC10 = !((tagsspec0 == 0)); LA11: ; if (!LOC10) goto LA12; { NI LOC16; NimStringDesc* LOC19; LOC16 = (NI)0; LOC16 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(effects0); if (!!((LOC16 == ((NI) 0)))) goto LA17; LOC19 = (NimStringDesc*)0; LOC19 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_wkTG4eaV3t1uo3x09apjcwA_35); internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC19); } LA17: ; if ((*effects0).kindU.S6.sons) nimGCunrefNoCycle((*effects0).kindU.S6.sons); (*effects0).kindU.S6.sons = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeqRC1((&NTI_ehmV9bTklH2Gt9cXHV9c0HLeQ), ((NI) 4)); { if (!!((raisesspec0 == 0))) goto LA22; asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[((NI) 0)]), raisesspec0); } LA22: ; { if (!!((tagsspec0 == 0))) goto LA26; asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[((NI) 3)]), tagsspec0); } LA26: ; } LA12: ; } N_NIMCALL(void, tracktoplevelstmt_LJB5O9bR61M6cwzgjqCKzdg)(Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* effects0; TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* LOC5; Teffects_vxIpB3oPhn77OqeaB81hCA t0; { { if (!((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 90) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 82) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 83) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 79) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 98) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 81) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 80) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 84))) goto LA3; goto BeforeRet; } LA3: ; LOC5 = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*)0; LOC5 = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeq((&NTI_ehmV9bTklH2Gt9cXHV9c0HLeQ), 0); effects0 = newnode_o9aHrUvOCIeQhfywzvo7yOA(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152), (*n0).info, LOC5, NIM_NIL); memset((void*)(&t0), 0, sizeof(t0)); initeffects_RYVfPwn9b13diyy9buOINzkA(effects0, module0, (&t0)); t0.istoplevel = NIM_TRUE; track_BxqWoS9czp4uFup6HfSkCeA((&t0), n0); }BeforeRet: ; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, documenteffect_I3nWvvBlkYBuHxAmQisQ7A)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tnode_bROa11lyF5vxEN9aYNbHmhw* x0, Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw effecttype0, NI idx0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; Tnode_bROa11lyF5vxEN9aYNbHmhw* spec0; { result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; spec0 = effectspec_moLWESUCyAl2D9aSBCKe3kQ(x0, effecttype0); { Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; Tnode_bROa11lyF5vxEN9aYNbHmhw* actual0; Tnode_bROa11lyF5vxEN9aYNbHmhw* real0; Tnode_bROa11lyF5vxEN9aYNbHmhw* effects0; NI LOC10; TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* LOC23; TY_AB6yfoUgfWM2NtGe9bzkCmw LOC24; Tident_4umxGerWTHGPwUms7Yqu3g* LOC25; if (!(spec0 == 0)) goto LA3; s0 = (*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S4.sym; actual0 = (*(*(*s0).typ).n).kindU.S6.sons->data[((NI) 0)]; { NI LOC7; LOC7 = (NI)0; LOC7 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(actual0); if (!!((LOC7 == ((NI) 4)))) goto LA8; goto BeforeRet; } LA8: ; real0 = (*actual0).kindU.S6.sons->data[idx0]; LOC10 = (NI)0; LOC10 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(real0); effects0 = newnodei_jIQp9ciM8if1a6TX6toZelw(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 41), (*n0).info, LOC10); { NI i_hjm7J7dY2qB9cpo4NEz2W9bw; NI HEX3Atmp_aZKsXVC8P7XKlwseLMx4sA; NI LOC12; NI res_7lzDnpWzZbgu49aTlEEA9cxg; i_hjm7J7dY2qB9cpo4NEz2W9bw = (NI)0; HEX3Atmp_aZKsXVC8P7XKlwseLMx4sA = (NI)0; LOC12 = (NI)0; LOC12 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(real0); HEX3Atmp_aZKsXVC8P7XKlwseLMx4sA = (LOC12 - 1); res_7lzDnpWzZbgu49aTlEEA9cxg = ((NI) 0); { while (1) { NimStringDesc* t0; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC15; Tident_4umxGerWTHGPwUms7Yqu3g* LOC21; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC22; if (!(res_7lzDnpWzZbgu49aTlEEA9cxg <= HEX3Atmp_aZKsXVC8P7XKlwseLMx4sA)) goto LA14; i_hjm7J7dY2qB9cpo4NEz2W9bw = res_7lzDnpWzZbgu49aTlEEA9cxg; LOC15 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC15 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(real0, i_hjm7J7dY2qB9cpo4NEz2W9bw); t0 = typetostring_iUZlBdvGqNPVN17wd9aVBNw((*LOC15).typ, ((Tprefereddesc_tnd4qt9c4xddV8oKV5zyusw) 0)); { NIM_BOOL LOC18; LOC18 = (NIM_BOOL)0; LOC18 = nsuStartsWith(t0, ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_36)); if (!LOC18) goto LA19; t0 = copyStr(t0, ((NI) 4)); } LA19: ; LOC21 = (Tident_4umxGerWTHGPwUms7Yqu3g*)0; LOC21 = getident_oH8GBf4tG3b1F5BIuNPwtA(t0); asgnRefNoCycle((void**) (&(*effects0).kindU.S6.sons->data[i_hjm7J7dY2qB9cpo4NEz2W9bw]), newidentnode_G82iaTfj9aP4Nw5aup9b62iQ(LOC21, (*n0).info)); LOC22 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC22 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(real0, i_hjm7J7dY2qB9cpo4NEz2W9bw); asgnRefNoCycle((void**) (&(*(*effects0).kindU.S6.sons->data[i_hjm7J7dY2qB9cpo4NEz2W9bw]).typ), (*LOC22).typ); res_7lzDnpWzZbgu49aTlEEA9cxg += ((NI) 1); } LA14: ; } } LOC23 = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*)0; LOC23 = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeq((&NTI_ehmV9bTklH2Gt9cXHV9c0HLeQ), 2); memset((void*)LOC24, 0, sizeof(LOC24)); LOC25 = (Tident_4umxGerWTHGPwUms7Yqu3g*)0; LOC25 = getident_oH8GBf4tG3b1F5BIuNPwtA(specialwords_jS3I1dUcvbZAEuApBSUHng[(effecttype0)- 0]); LOC24[0] = newidentnode_G82iaTfj9aP4Nw5aup9b62iQ(LOC25, (*n0).info); LOC24[1] = effects0; asgnRefNoCycle((void**) (&LOC23->data[0]), LOC24[0]); asgnRefNoCycle((void**) (&LOC23->data[1]), LOC24[1]); result0 = newnode_o9aHrUvOCIeQhfywzvo7yOA(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 34), (*n0).info, LOC23, NIM_NIL); } LA3: ; }BeforeRet: ; return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, documentwriteeffect_fU6x6Jj8Kwot8l9bg5bTXPw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw flag0, NimStringDesc* pragmaname0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; Tnode_bROa11lyF5vxEN9aYNbHmhw* params0; Tnode_bROa11lyF5vxEN9aYNbHmhw* effects0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; s0 = (*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S4.sym; params0 = (*(*s0).typ).n; effects0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 41), (*n0).info); { NI i_IevB7rBIDJQjfbR5HSqCTQ; NI HEX3Atmp_rGfR8F9aLVhajlvH7g9b9bzRg; NI i_IevB7rBIDJQjfbR5HSqCTQ_2; i_IevB7rBIDJQjfbR5HSqCTQ = (NI)0; HEX3Atmp_rGfR8F9aLVhajlvH7g9b9bzRg = (NI)0; HEX3Atmp_rGfR8F9aLVhajlvH7g9b9bzRg = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(params0); i_IevB7rBIDJQjfbR5HSqCTQ_2 = ((NI) 1); { while (1) { if (!(i_IevB7rBIDJQjfbR5HSqCTQ_2 < HEX3Atmp_rGfR8F9aLVhajlvH7g9b9bzRg)) goto LA3; i_IevB7rBIDJQjfbR5HSqCTQ = i_IevB7rBIDJQjfbR5HSqCTQ_2; { NIM_BOOL LOC6; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC7; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC9; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC12; LOC6 = (NIM_BOOL)0; LOC7 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC7 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(params0, i_IevB7rBIDJQjfbR5HSqCTQ); LOC6 = ((*LOC7).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(LOC6)) goto LA8; LOC9 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC9 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(params0, i_IevB7rBIDJQjfbR5HSqCTQ); LOC6 = (((*(*LOC9).kindU.S4.sym).flags &(1U<<((NU)(flag0)&31U)))!=0); LA8: ; if (!LOC6) goto LA10; LOC12 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC12 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(params0, i_IevB7rBIDJQjfbR5HSqCTQ); add_gCCf68XrWL79bKes6htzFjQ_3(effects0, LOC12); } LA10: ; i_IevB7rBIDJQjfbR5HSqCTQ_2 += ((NI) 1); } LA3: ; } } { NI LOC15; TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* LOC18; TY_AB6yfoUgfWM2NtGe9bzkCmw LOC19; Tident_4umxGerWTHGPwUms7Yqu3g* LOC20; LOC15 = (NI)0; LOC15 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(effects0); if (!(((NI) 0) < LOC15)) goto LA16; LOC18 = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*)0; LOC18 = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeq((&NTI_ehmV9bTklH2Gt9cXHV9c0HLeQ), 2); memset((void*)LOC19, 0, sizeof(LOC19)); LOC20 = (Tident_4umxGerWTHGPwUms7Yqu3g*)0; LOC20 = getident_oH8GBf4tG3b1F5BIuNPwtA(pragmaname0); LOC19[0] = newidentnode_G82iaTfj9aP4Nw5aup9b62iQ(LOC20, (*n0).info); LOC19[1] = effects0; asgnRefNoCycle((void**) (&LOC18->data[0]), LOC19[0]); asgnRefNoCycle((void**) (&LOC18->data[1]), LOC19[1]); result0 = newnode_o9aHrUvOCIeQhfywzvo7yOA(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 34), (*n0).info, LOC18, NIM_NIL); } LA16: ; return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, documentneweffect_tggSHgn9bVx4tsLKexGkvYg)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; s0 = (*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S4.sym; { Tident_4umxGerWTHGPwUms7Yqu3g* LOC5; if (!(((*(*s0).typ).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 3))&31U)))!=0)) goto LA3; LOC5 = (Tident_4umxGerWTHGPwUms7Yqu3g*)0; LOC5 = getident_oH8GBf4tG3b1F5BIuNPwtA(((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_38)); result0 = newidentnode_G82iaTfj9aP4Nw5aup9b62iQ(LOC5, (*n0).info); } LA3: ; return result0; } N_NIMCALL(void, documentraises_THB3y38Lyu9a9cY8RL3a6G2Q_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* pragmas0; Tnode_bROa11lyF5vxEN9aYNbHmhw* p10; Tnode_bROa11lyF5vxEN9aYNbHmhw* p20; Tnode_bROa11lyF5vxEN9aYNbHmhw* p30; Tnode_bROa11lyF5vxEN9aYNbHmhw* p40; Tnode_bROa11lyF5vxEN9aYNbHmhw* p50; { { if (!!(((*(*n0).kindU.S6.sons->data[((NI) 0)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3; goto BeforeRet; } LA3: ; pragmas0 = (*n0).kindU.S6.sons->data[((NI) 4)]; p10 = documenteffect_I3nWvvBlkYBuHxAmQisQ7A(n0, pragmas0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 159), ((NI) 0)); p20 = documenteffect_I3nWvvBlkYBuHxAmQisQ7A(n0, pragmas0, ((Tspecialword_ycbpMCRV6Cd2eBh3X9biEiw) 164), ((NI) 3)); p30 = documentwriteeffect_fU6x6Jj8Kwot8l9bg5bTXPw(n0, ((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 26), ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_37)); p40 = documentneweffect_tggSHgn9bVx4tsLKexGkvYg(n0); p50 = documentwriteeffect_fU6x6Jj8Kwot8l9bg5bTXPw(n0, ((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 17), ((NimStringDesc*) &T_wkTG4eaV3t1uo3x09apjcwA_39)); { NIM_BOOL LOC7; NIM_BOOL LOC8; NIM_BOOL LOC9; NIM_BOOL LOC10; LOC7 = (NIM_BOOL)0; LOC8 = (NIM_BOOL)0; LOC9 = (NIM_BOOL)0; LOC10 = (NIM_BOOL)0; LOC10 = !((p10 == NIM_NIL)); if (LOC10) goto LA11; LOC10 = !((p20 == NIM_NIL)); LA11: ; LOC9 = LOC10; if (LOC9) goto LA12; LOC9 = !((p30 == NIM_NIL)); LA12: ; LOC8 = LOC9; if (LOC8) goto LA13; LOC8 = !((p40 == NIM_NIL)); LA13: ; LOC7 = LOC8; if (LOC7) goto LA14; LOC7 = !((p50 == NIM_NIL)); LA14: ; if (!LOC7) goto LA15; { if (!((*pragmas0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1))) goto LA19; asgnRefNoCycle((void**) (&(*n0).kindU.S6.sons->data[((NI) 4)]), newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 90), (*n0).info)); } LA19: ; { if (!!((p10 == NIM_NIL))) goto LA23; add_gCCf68XrWL79bKes6htzFjQ_3((*n0).kindU.S6.sons->data[((NI) 4)], p10); } LA23: ; { if (!!((p20 == NIM_NIL))) goto LA27; add_gCCf68XrWL79bKes6htzFjQ_3((*n0).kindU.S6.sons->data[((NI) 4)], p20); } LA27: ; { if (!!((p30 == NIM_NIL))) goto LA31; add_gCCf68XrWL79bKes6htzFjQ_3((*n0).kindU.S6.sons->data[((NI) 4)], p30); } LA31: ; { if (!!((p40 == NIM_NIL))) goto LA35; add_gCCf68XrWL79bKes6htzFjQ_3((*n0).kindU.S6.sons->data[((NI) 4)], p40); } LA35: ; { if (!!((p50 == NIM_NIL))) goto LA39; add_gCCf68XrWL79bKes6htzFjQ_3((*n0).kindU.S6.sons->data[((NI) 4)], p50); } LA39: ; } LA15: ; }BeforeRet: ; } NIM_EXTERNC N_NOINLINE(void, compiler_sempass2Init000)(void) { } NIM_EXTERNC N_NOINLINE(void, compiler_sempass2DatInit000)(void) { }