/* 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" #undef linux typedef struct NimStringDesc NimStringDesc; typedef struct TGenericSeq TGenericSeq; typedef struct Tnode_bROa11lyF5vxEN9aYNbHmhw Tnode_bROa11lyF5vxEN9aYNbHmhw; typedef struct Tcontext_5TfOJKwTttj3W1t1tMzWUQ Tcontext_5TfOJKwTttj3W1t1tMzWUQ; typedef struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw; typedef struct Ttype_LTUWCZolpovw9cWE3JBWSUw Ttype_LTUWCZolpovw9cWE3JBWSUw; typedef struct Tsym_AXG7xcvKqaxY6koRX1xkCw Tsym_AXG7xcvKqaxY6koRX1xkCw; typedef struct Tident_4umxGerWTHGPwUms7Yqu3g Tident_4umxGerWTHGPwUms7Yqu3g; typedef struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ TY_ehmV9bTklH2Gt9cXHV9c0HLeQ; 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 Tloc_EtHNvCB0bgfu9bFjzx9cb6aA Tloc_EtHNvCB0bgfu9bFjzx9cb6aA; typedef struct Ropeobj_HF4qJnb6xiOddgPmsxodtQ Ropeobj_HF4qJnb6xiOddgPmsxodtQ; typedef struct Tlib_4f9aBgmqEuj7uWJdBBGcRgA Tlib_4f9aBgmqEuj7uWJdBBGcRgA; typedef struct TY_iGkpo9aKQdr3NWelKC4cnJA TY_iGkpo9aKQdr3NWelKC4cnJA; 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 Tpasscontext_qNsm39cWb35W2r5AAd9ch87g Tpasscontext_qNsm39cWb35W2r5AAd9ch87g; typedef struct Tscope_1cQRXW6aAknk7ywAwjH3nw Tscope_1cQRXW6aAknk7ywAwjH3nw; typedef struct Tproccon_s5jyYR8yL1QmFqiHICzU9aQ Tproccon_s5jyYR8yL1QmFqiHICzU9aQ; typedef struct Intset_PQrmFm4BXFkFSVOUl1ojSg Intset_PQrmFm4BXFkFSVOUl1ojSg; typedef struct Trunk_ul49aWfv9aes8cutmeltT3gQ Trunk_ul49aWfv9aes8cutmeltT3gQ; typedef struct TY_9brg1xNurxcus33lU4IE1Dw TY_9brg1xNurxcus33lU4IE1Dw; typedef struct Tlinkedlist_9aBiIjAa4z2zTLjp4yMUvLw Tlinkedlist_9aBiIjAa4z2zTLjp4yMUvLw; typedef struct Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q; typedef struct Tidtable_9aiv9bp2t5icFNINcg9c4xi1Q Tidtable_9aiv9bp2t5icFNINcg9c4xi1Q; typedef struct TY_Mh9agqM29bm9aP5AUL1x7dZGA TY_Mh9agqM29bm9aP5AUL1x7dZGA; typedef struct Tctx_hJGtOysUvnnuB9cLutWG9a2w Tctx_hJGtOysUvnnuB9cLutWG9a2w; typedef struct TY_jWKvSdankQPoT5bw9cBU9aiw TY_jWKvSdankQPoT5bw9cBU9aiw; typedef struct IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw; typedef struct ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ; typedef struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA; typedef struct TY_a09bGTAl9ceOKTAytYdkbyKg TY_a09bGTAl9ceOKTAytYdkbyKg; typedef struct Basechunk_Sdq7WpT6qAH858F5ZEdG3w Basechunk_Sdq7WpT6qAH858F5ZEdG3w; typedef struct Freecell_u6M5LHprqzkn9axr04yg9bGQ Freecell_u6M5LHprqzkn9axr04yg9bGQ; typedef struct Tidpair_AdFnD2YdADPeuJbG2YJ4vg Tidpair_AdFnD2YdADPeuJbG2YJ4vg; typedef struct TY_9bAGqSvkAaFL9bWjsEPslrFA TY_9bAGqSvkAaFL9bWjsEPslrFA; typedef struct TY_dRkMGUPOSmkGlhHeIeiomQ TY_dRkMGUPOSmkGlhHeIeiomQ; typedef struct PprocHEX3Aobjecttype_VFEBuxrDHC6kHPzc1TWaRQ PprocHEX3Aobjecttype_VFEBuxrDHC6kHPzc1TWaRQ; typedef struct TY_RsxI3z4wK8jTuZiO0576gQ TY_RsxI3z4wK8jTuZiO0576gQ; typedef struct Tinstantiationpair_HkXM4cJmOpk8zFcmq9c9c3gQ Tinstantiationpair_HkXM4cJmOpk8zFcmq9c9c3gQ; typedef struct Table_tfmlwa8ktiw8woWAs5vhtQ Table_tfmlwa8ktiw8woWAs5vhtQ; typedef struct TY_kxu4GK0onha2t9bo86mdVAg TY_kxu4GK0onha2t9bo86mdVAg; typedef struct TY_48JTohSgTy339bRxHzUD8KA TY_48JTohSgTy339bRxHzUD8KA; typedef struct TY_JokFGfUW6i9b6aeU7xu6xBw TY_JokFGfUW6i9b6aeU7xu6xBw; typedef struct TY_SlmU1Ju0WFHUWkihyHMVYg TY_SlmU1Ju0WFHUWkihyHMVYg; typedef struct TY_UCrBsiykDha2x4hr9aWPwKA TY_UCrBsiykDha2x4hr9aWPwKA; typedef struct Vmargs_0UUl6e5CNNQfMon2xW2bVA Vmargs_0UUl6e5CNNQfMon2xW2bVA; typedef struct TY_xDU9bZmv1ZbZkJDaATBekIQ TY_xDU9bZmv1ZbZkJDaATBekIQ; typedef struct Tblock_2tJGcW69ahqq39a9bVJC1sqGQ Tblock_2tJGcW69ahqq39a9bVJC1sqGQ; typedef struct TY_qwqHTkRvwhrRyENtudHQ7g TY_qwqHTkRvwhrRyENtudHQ7g; struct TGenericSeq { NI len; NI reserved; }; struct NimStringDesc { TGenericSeq Sup; NIM_CHAR data[SEQ_DECL_SIZE]; }; typedef N_NIMCALL_PTR(Tnode_bROa11lyF5vxEN9aYNbHmhw*, TY_AKW0Vo9cFIVu0NCvmOexsSA) (Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); typedef NU8 Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw; struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw { NI16 line; NI16 col; NI32 fileindex; }; typedef NU16 Tnodeflag_jyh9acXHkhZANSSvPIY7ZLg_Set; 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 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; 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 NU64 Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag_Set; 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; }; 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; struct Tpasscontext_qNsm39cWb35W2r5AAd9ch87g { TNimObject Sup; NIM_BOOL fromcache; }; struct Intset_PQrmFm4BXFkFSVOUl1ojSg { NI counter; NI max; Trunk_ul49aWfv9aes8cutmeltT3gQ* head; TY_9brg1xNurxcus33lU4IE1Dw* data; }; struct Tlinkedlist_9aBiIjAa4z2zTLjp4yMUvLw { Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q* head; Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q* tail; NI counter; }; struct Tidtable_9aiv9bp2t5icFNINcg9c4xi1Q { NI counter; TY_Mh9agqM29bm9aP5AUL1x7dZGA* data; }; typedef NU16 Texprflag_0WWd9a4ssQWuY7Q6ZKepq9cQ_Set; typedef N_NIMCALL_PTR(Tnode_bROa11lyF5vxEN9aYNbHmhw*, TY_iQuMqQxTQ0KsiquHcemjUQ) (Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Texprflag_0WWd9a4ssQWuY7Q6ZKepq9cQ_Set flags0); typedef NU32 Tsymkind_cNCW9acsSznmEccl1fgQwkw_Set; typedef N_NIMCALL_PTR(Tnode_bROa11lyF5vxEN9aYNbHmhw*, TY_C8AXaVscqGOxLOeiHy1lmw) (Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tnode_bROa11lyF5vxEN9aYNbHmhw* norig0, Tsymkind_cNCW9acsSznmEccl1fgQwkw_Set filter0); typedef N_NIMCALL_PTR(Ttype_LTUWCZolpovw9cWE3JBWSUw*, TY_bA9c5ClPJvgmXvNlbUiJQiQ) (Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Ttype_LTUWCZolpovw9cWE3JBWSUw* prev0); typedef struct { N_NIMCALL_PTR(Tnode_bROa11lyF5vxEN9aYNbHmhw*, ClPrc) (Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tidtable_9aiv9bp2t5icFNINcg9c4xi1Q pt0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, void* ClEnv); void* ClEnv; } TY_rVRuvning49bS21o9c7OfIPQ; typedef struct { N_NIMCALL_PTR(Tsym_AXG7xcvKqaxY6koRX1xkCw*, ClPrc) (Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* fn0, Tidtable_9aiv9bp2t5icFNINcg9c4xi1Q pt0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, void* ClEnv); void* ClEnv; } TY_jT9bmmdeK1mqhnuxic7a1jw; typedef NU8 Ttypeattachedop_jZY2AMF49b43fezf9aDwN9c9cQ; typedef N_NIMCALL_PTR(Tsym_AXG7xcvKqaxY6koRX1xkCw*, TY_kd4mVSM3CyNW38z8itHZOA) (Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* dc0, Ttype_LTUWCZolpovw9cWE3JBWSUw* t0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, Ttypeattachedop_jZY2AMF49b43fezf9aDwN9c9cQ op0, NI col0); struct Tcontext_5TfOJKwTttj3W1t1tMzWUQ { Tpasscontext_qNsm39cWb35W2r5AAd9ch87g Sup; Tsym_AXG7xcvKqaxY6koRX1xkCw* module; Tscope_1cQRXW6aAknk7ywAwjH3nw* currentscope; Tscope_1cQRXW6aAknk7ywAwjH3nw* importtable; Tscope_1cQRXW6aAknk7ywAwjH3nw* toplevelscope; Tproccon_s5jyYR8yL1QmFqiHICzU9aQ* p; TY_sksVpmPRIkNR9axiwtD1Guw* friendmodules; NI instcounter; Intset_PQrmFm4BXFkFSVOUl1ojSg ambiguoussymbols; NI intypeclass; NI ingenericcontext; NI inunrolledcontext; NI compilescontextid; NI compilescontextidgenerator; NI ingenericinst; TY_sksVpmPRIkNR9axiwtD1Guw* converters; TY_sksVpmPRIkNR9axiwtD1Guw* patterns; Tlinkedlist_9aBiIjAa4z2zTLjp4yMUvLw optionstack; Tidtable_9aiv9bp2t5icFNINcg9c4xi1Q symmapping; Tlinkedlist_9aBiIjAa4z2zTLjp4yMUvLw libs; TY_AKW0Vo9cFIVu0NCvmOexsSA semconstexpr; TY_iQuMqQxTQ0KsiquHcemjUQ semexpr; TY_iQuMqQxTQ0KsiquHcemjUQ semtryexpr; TY_AKW0Vo9cFIVu0NCvmOexsSA semtryconstexpr; TY_iQuMqQxTQ0KsiquHcemjUQ semoperand; TY_AKW0Vo9cFIVu0NCvmOexsSA semconstboolexpr; TY_C8AXaVscqGOxLOeiHy1lmw semoverloadedcall; TY_bA9c5ClPJvgmXvNlbUiJQiQ semtypenode; TY_rVRuvning49bS21o9c7OfIPQ seminferredlambda; TY_jT9bmmdeK1mqhnuxic7a1jw semgenerateinstance; Intset_PQrmFm4BXFkFSVOUl1ojSg includedfiles; Tstrtable_f07aOS3dr28kGa5wcE29aFA userpragmas; Tctx_hJGtOysUvnnuB9cLutWG9a2w* evalcontext; Intset_PQrmFm4BXFkFSVOUl1ojSg unknownidents; TY_jWKvSdankQPoT5bw9cBU9aiw* generics; NI topstmts; NI lastgenericidx; NI hloloopdetector; NI inparallelstmt; TY_kd4mVSM3CyNW38z8itHZOA insttypeboundop; Tident_4umxGerWTHGPwUms7Yqu3g* selfname; IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache; ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* graph; Tstrtable_f07aOS3dr28kGa5wcE29aFA signatures; NimStringDesc* recursivedep; }; struct Tident_4umxGerWTHGPwUms7Yqu3g { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; NimStringDesc* s; Tident_4umxGerWTHGPwUms7Yqu3g* next; NI h; }; typedef NU8 Tnimnodekind_unfNsxrcATrufDZmpBq4HQ; struct TNimNode { Tnimnodekind_unfNsxrcATrufDZmpBq4HQ kind; NI offset; TNimType* typ; NCSTRING name; NI len; TNimNode** sons; }; 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; }; 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; }; typedef NI TY_9agrCtWKhCnWWMJpKKugJag[16]; 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 Tscope_1cQRXW6aAknk7ywAwjH3nw { NI depthlevel; Tstrtable_f07aOS3dr28kGa5wcE29aFA symbols; Tscope_1cQRXW6aAknk7ywAwjH3nw* parent; }; struct Tproccon_s5jyYR8yL1QmFqiHICzU9aQ { Tsym_AXG7xcvKqaxY6koRX1xkCw* owner; Tsym_AXG7xcvKqaxY6koRX1xkCw* resultsym; Tsym_AXG7xcvKqaxY6koRX1xkCw* selfsym; NI nestedloopcounter; NI nestedblockcounter; NI intrystmt; Tproccon_s5jyYR8yL1QmFqiHICzU9aQ* next; NIM_BOOL wasforwarded; Tnode_bROa11lyF5vxEN9aYNbHmhw* bracketexpr; }; struct Trunk_ul49aWfv9aes8cutmeltT3gQ { Trunk_ul49aWfv9aes8cutmeltT3gQ* next; NI key; TY_9agrCtWKhCnWWMJpKKugJag bits; }; struct Tidpair_AdFnD2YdADPeuJbG2YJ4vg { Tidobj_raN9cHVgzmvaXisezY9aGg9cg* key; TNimObject* val; }; typedef NU8 Tevalmode_UbrbHUpo4hYFr1DbYzJgRQ; typedef NU8 Tsandboxflag_JyPEhkAmDAldmLHNNrLR0A_Set; struct Tctx_hJGtOysUvnnuB9cLutWG9a2w { Tpasscontext_qNsm39cWb35W2r5AAd9ch87g Sup; TY_9bAGqSvkAaFL9bWjsEPslrFA* code; TY_dRkMGUPOSmkGlhHeIeiomQ* debug; Tnode_bROa11lyF5vxEN9aYNbHmhw* globals; Tnode_bROa11lyF5vxEN9aYNbHmhw* constants; TY_zuqP4Riz26Oi5fWgPYVEgA* types; Tnode_bROa11lyF5vxEN9aYNbHmhw* currentexceptiona; Tnode_bROa11lyF5vxEN9aYNbHmhw* currentexceptionb; NI exceptioninstr; PprocHEX3Aobjecttype_VFEBuxrDHC6kHPzc1TWaRQ* prc; Tsym_AXG7xcvKqaxY6koRX1xkCw* module; Tnode_bROa11lyF5vxEN9aYNbHmhw* callsite; Tevalmode_UbrbHUpo4hYFr1DbYzJgRQ mode; Tsandboxflag_JyPEhkAmDAldmLHNNrLR0A_Set features; NIM_BOOL traceactive; NI loopiterations; Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw comesfromheuristic; TY_RsxI3z4wK8jTuZiO0576gQ* callbacks; NimStringDesc* errorflag; IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache; }; struct Tinstantiationpair_HkXM4cJmOpk8zFcmq9c9c3gQ { Tsym_AXG7xcvKqaxY6koRX1xkCw* genericsym; Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA* inst; }; typedef Tident_4umxGerWTHGPwUms7Yqu3g* TY_CBfZt49asUfAsBVM7a3Rc9cw[8192]; struct IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw { TY_CBfZt49asUfAsBVM7a3Rc9cw buckets; NI wordcounter; Tident_4umxGerWTHGPwUms7Yqu3g* idanon; Tident_4umxGerWTHGPwUms7Yqu3g* iddelegator; Tident_4umxGerWTHGPwUms7Yqu3g* emptyident; }; struct Table_tfmlwa8ktiw8woWAs5vhtQ { TY_kxu4GK0onha2t9bo86mdVAg* data; NI counter; }; struct ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ { TY_sksVpmPRIkNR9axiwtD1Guw* modules; Tstrtable_f07aOS3dr28kGa5wcE29aFA packagesyms; Intset_PQrmFm4BXFkFSVOUl1ojSg deps; NIM_BOOL suggestmode; NIM_BOOL invalidtransitiveclosure; Table_tfmlwa8ktiw8woWAs5vhtQ incltomod; TY_48JTohSgTy339bRxHzUD8KA* importstack; TNimObject* backend; }; struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA { Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; TY_zuqP4Riz26Oi5fWgPYVEgA* concretetypes; NI compilesid; }; struct Freecell_u6M5LHprqzkn9axr04yg9bGQ { Freecell_u6M5LHprqzkn9axr04yg9bGQ* next; NI zerofield; }; typedef NU8 Tslotkind_QOyrDzzey9cf6gDtSRPuZMQ; struct TY_SlmU1Ju0WFHUWkihyHMVYg { NIM_BOOL Field0; Tslotkind_QOyrDzzey9cf6gDtSRPuZMQ Field1; }; typedef TY_SlmU1Ju0WFHUWkihyHMVYg TY_ORKcvNw6ApGJhbot1dJ6oA[256]; struct PprocHEX3Aobjecttype_VFEBuxrDHC6kHPzc1TWaRQ { TY_JokFGfUW6i9b6aeU7xu6xBw* blocks; Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; TY_ORKcvNw6ApGJhbot1dJ6oA slots; NI maxslots; }; typedef struct { N_NIMCALL_PTR(void, ClPrc) (Vmargs_0UUl6e5CNNQfMon2xW2bVA* args0, void* ClEnv); void* ClEnv; } TY_S09bPfanQx9bEvdh4862x8zw; struct TY_UCrBsiykDha2x4hr9aWPwKA { NimStringDesc* Field0; TY_S09bPfanQx9bEvdh4862x8zw Field1; }; struct TY_xDU9bZmv1ZbZkJDaATBekIQ { NI Field0; NI32 Field1; NI32 Field2; }; struct Tblock_2tJGcW69ahqq39a9bVJC1sqGQ { Tsym_AXG7xcvKqaxY6koRX1xkCw* label; TY_qwqHTkRvwhrRyENtudHQ7g* fixups; }; struct Vmargs_0UUl6e5CNNQfMon2xW2bVA { NI ra; NI rb; NI rc; void* slots; Tnode_bROa11lyF5vxEN9aYNbHmhw* currentexception; Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw currentlineinfo; }; struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ { TGenericSeq Sup; Tnode_bROa11lyF5vxEN9aYNbHmhw* 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]; }; struct TY_Mh9agqM29bm9aP5AUL1x7dZGA { TGenericSeq Sup; Tidpair_AdFnD2YdADPeuJbG2YJ4vg data[SEQ_DECL_SIZE]; }; struct TY_jWKvSdankQPoT5bw9cBU9aiw { TGenericSeq Sup; Tinstantiationpair_HkXM4cJmOpk8zFcmq9c9c3gQ data[SEQ_DECL_SIZE]; }; struct TY_9bAGqSvkAaFL9bWjsEPslrFA { TGenericSeq Sup; NU32 data[SEQ_DECL_SIZE]; }; struct TY_dRkMGUPOSmkGlhHeIeiomQ { TGenericSeq Sup; Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw data[SEQ_DECL_SIZE]; }; struct TY_RsxI3z4wK8jTuZiO0576gQ { TGenericSeq Sup; TY_UCrBsiykDha2x4hr9aWPwKA data[SEQ_DECL_SIZE]; }; struct TY_kxu4GK0onha2t9bo86mdVAg { TGenericSeq Sup; TY_xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE]; }; struct TY_48JTohSgTy339bRxHzUD8KA { TGenericSeq Sup; NI32 data[SEQ_DECL_SIZE]; }; struct TY_JokFGfUW6i9b6aeU7xu6xBw { TGenericSeq Sup; Tblock_2tJGcW69ahqq39a9bVJC1sqGQ data[SEQ_DECL_SIZE]; }; struct TY_qwqHTkRvwhrRyENtudHQ7g { TGenericSeq Sup; NI data[SEQ_DECL_SIZE]; }; N_NIMCALL(void, registerplugin_TWpFbOEPiFRbOW9baL7NPrA)(NimStringDesc* package0, NimStringDesc* module0, NimStringDesc* fn0, TY_AKW0Vo9cFIVu0NCvmOexsSA t0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, itertoprocimpl_8Ju1JTLo6ouAMsxkpHAWIQ)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newnodei_PIqgSH9b0m7nFpOyXf9cpz5w)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); static N_INLINE(Tnode_bROa11lyF5vxEN9aYNbHmhw*, HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI i0); N_NIMCALL(void, localerror_GarD0CQJ5aQhoHekHYinVQ)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, NimStringDesc* arg0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, skiptypes_pLCdCGDuirMe9cspwviV9aVA)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0, Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag_Set kinds0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, lastson_E41DMKHtT9c6sAMyyvhmSIw)(Ttype_LTUWCZolpovw9cWE3JBWSUw* n0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, liftitertoproc_yw6ySuqJpp5U29bE3CP0gMg)(Tsym_AXG7xcvKqaxY6koRX1xkCw* fn0, Tnode_bROa11lyF5vxEN9aYNbHmhw* body0, Ttype_LTUWCZolpovw9cWE3JBWSUw* ptrtype0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, getbody_eMf5HLowckpW9cDxAV9bNIZw)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, newsym_2uJTpCZGZAi7a4eAm1ds8Q)(Tsymkind_cNCW9acsSznmEccl1fgQwkw symkind0, Tident_4umxGerWTHGPwUms7Yqu3g* name0, Tsym_AXG7xcvKqaxY6koRX1xkCw* owner0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, copytype_50MJeIR3xcM7dF9b6Ly3suQ)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0, Tsym_AXG7xcvKqaxY6koRX1xkCw* owner0, NIM_BOOL keepid0); static N_INLINE(void, asgnRefNoCycle)(void** dest0, void* src0); 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, add_gCCf68XrWL79bKes6htzFjQ_3)(Tnode_bROa11lyF5vxEN9aYNbHmhw* father0, Tnode_bROa11lyF5vxEN9aYNbHmhw* son0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newsymnode_1ARBpggFQuvUDBVYjBelcw)(Tsym_AXG7xcvKqaxY6koRX1xkCw* sym0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, getenvparam_qj1Hj30TtUYCPgOKm6E9crQ)(Tsym_AXG7xcvKqaxY6koRX1xkCw* routine0); N_NIMCALL(void, rawaddson_52UH8yKinsYmFX9bFij9c2Hw)(Ttype_LTUWCZolpovw9cWE3JBWSUw* father0, Ttype_LTUWCZolpovw9cWE3JBWSUw* son0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newprocnode_PcNymLorEQYsV8Qh55K4Ug)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, Tnode_bROa11lyF5vxEN9aYNbHmhw* body0, Tnode_bROa11lyF5vxEN9aYNbHmhw* params0, Tnode_bROa11lyF5vxEN9aYNbHmhw* name0, Tnode_bROa11lyF5vxEN9aYNbHmhw* pattern0, Tnode_bROa11lyF5vxEN9aYNbHmhw* genericparams0, Tnode_bROa11lyF5vxEN9aYNbHmhw* pragmas0, Tnode_bROa11lyF5vxEN9aYNbHmhw* exceptions0); N_NIMCALL(void, addinterfacedecl_n1KYyMdrfFhXnSjpmEHg9cA)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* sym0); extern Gcheap_1TRH1TZMaVZTnLNcIHuNFQ gch_IcYaEuuWivYAS86vFMTS3Q; extern Tnode_bROa11lyF5vxEN9aYNbHmhw* emptynode_69ccLGuQ2mITw7zylZYtWcA; STRING_LITERAL(T_fVT8Frbe1eY8sI6VOwxZZg_2, "stdlib", 6); STRING_LITERAL(T_fVT8Frbe1eY8sI6VOwxZZg_3, "system", 6); STRING_LITERAL(T_fVT8Frbe1eY8sI6VOwxZZg_4, "iterToProc", 10); STRING_LITERAL(T_fVT8Frbe1eY8sI6VOwxZZg_5, "first argument needs to be an iterator", 38); STRING_LITERAL(T_fVT8Frbe1eY8sI6VOwxZZg_6, "second argument needs to be a type", 34); STRING_LITERAL(T_fVT8Frbe1eY8sI6VOwxZZg_7, "third argument needs to be an identifier", 40); STRING_LITERAL(T_fVT8Frbe1eY8sI6VOwxZZg_8, "type must be a non-generic ref|ptr to object with state field", 61); 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(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, 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(Tnode_bROa11lyF5vxEN9aYNbHmhw*, itertoprocimpl_8Ju1JTLo6ouAMsxkpHAWIQ)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; Tnode_bROa11lyF5vxEN9aYNbHmhw* iter0; Ttype_LTUWCZolpovw9cWE3JBWSUw* t0; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC19; Tnode_bROa11lyF5vxEN9aYNbHmhw* body0; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC28; Tsym_AXG7xcvKqaxY6koRX1xkCw* prc0; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC29; Tsym_AXG7xcvKqaxY6koRX1xkCw* LOC30; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC31; Tnode_bROa11lyF5vxEN9aYNbHmhw* orig0; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC32; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC33; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC34; { result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n0).info); iter0 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 1)); { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = !(((*iter0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3))); if (LOC3) goto LA4; LOC3 = !(((*(*iter0).kindU.S4.sym).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 14))); LA4: ; if (!LOC3) goto LA5; localerror_GarD0CQJ5aQhoHekHYinVQ((*iter0).info, ((NimStringDesc*) &T_fVT8Frbe1eY8sI6VOwxZZg_5)); goto BeforeRet; } LA5: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC9; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC12; LOC9 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC9 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 2)); if (!((*LOC9).typ == 0)) goto LA10; LOC12 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC12 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 2)); localerror_GarD0CQJ5aQhoHekHYinVQ((*LOC12).info, ((NimStringDesc*) &T_fVT8Frbe1eY8sI6VOwxZZg_6)); goto BeforeRet; } LA10: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC15; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC18; LOC15 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC15 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 3)); if (!!(((*LOC15).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2)))) goto LA16; LOC18 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC18 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 3)); localerror_GarD0CQJ5aQhoHekHYinVQ((*LOC18).info, ((NimStringDesc*) &T_fVT8Frbe1eY8sI6VOwxZZg_7)); goto BeforeRet; } LA16: ; LOC19 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC19 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 2)); t0 = skiptypes_pLCdCGDuirMe9cspwviV9aVA((*LOC19).typ, 2304); { NIM_BOOL LOC22; Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC24; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC27; LOC22 = (NIM_BOOL)0; LOC22 = !(((*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 21))); if (LOC22) goto LA23; LOC24 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC24 = lastson_E41DMKHtT9c6sAMyyvhmSIw(t0); LOC22 = !(((*LOC24).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 17))); LA23: ; if (!LOC22) goto LA25; LOC27 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC27 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 2)); localerror_GarD0CQJ5aQhoHekHYinVQ((*LOC27).info, ((NimStringDesc*) &T_fVT8Frbe1eY8sI6VOwxZZg_8)); goto BeforeRet; } LA25: ; LOC28 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC28 = getbody_eMf5HLowckpW9cDxAV9bNIZw((*iter0).kindU.S4.sym); body0 = liftitertoproc_yw6ySuqJpp5U29bE3CP0gMg((*iter0).kindU.S4.sym, LOC28, t0); LOC29 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC29 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 3)); prc0 = newsym_2uJTpCZGZAi7a4eAm1ds8Q(((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 12), (*LOC29).kindU.S5.ident, (*(*iter0).kindU.S4.sym).owner, (*(*iter0).kindU.S4.sym).info); asgnRefNoCycle((void**) (&(*prc0).typ), copytype_50MJeIR3xcM7dF9b6Ly3suQ((*(*iter0).kindU.S4.sym).typ, prc0, NIM_FALSE)); (*(*prc0).typ).flags &= ~(((NU32)1) << ((((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 11)) % (sizeof(NU32)*8))); LOC30 = (Tsym_AXG7xcvKqaxY6koRX1xkCw*)0; LOC30 = getenvparam_qj1Hj30TtUYCPgOKm6E9crQ((*iter0).kindU.S4.sym); LOC31 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC31 = newsymnode_1ARBpggFQuvUDBVYjBelcw(LOC30); add_gCCf68XrWL79bKes6htzFjQ_3((*(*prc0).typ).n, LOC31); rawaddson_52UH8yKinsYmFX9bFij9c2Hw((*prc0).typ, t0); orig0 = (*(*iter0).kindU.S4.sym).ast; LOC32 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC32 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(orig0, ((NI) 3)); LOC33 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC33 = newsymnode_1ARBpggFQuvUDBVYjBelcw(prc0); LOC34 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC34 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(orig0, ((NI) 4)); asgnRefNoCycle((void**) (&(*prc0).ast), newprocnode_PcNymLorEQYsV8Qh55K4Ug(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 79), (*n0).info, body0, LOC32, LOC33, emptynode_69ccLGuQ2mITw7zylZYtWcA, emptynode_69ccLGuQ2mITw7zylZYtWcA, LOC34, emptynode_69ccLGuQ2mITw7zylZYtWcA)); add_gCCf68XrWL79bKes6htzFjQ_3((*prc0).ast, (*(*(*iter0).kindU.S4.sym).ast).kindU.S6.sons->data[((NI) 7)]); addinterfacedecl_n1KYyMdrfFhXnSjpmEHg9cA(c0, prc0); }BeforeRet: ; return result0; } NIM_EXTERNC N_NOINLINE(void, compiler_itersgenInit000)(void) { registerplugin_TWpFbOEPiFRbOW9baL7NPrA(((NimStringDesc*) &T_fVT8Frbe1eY8sI6VOwxZZg_2), ((NimStringDesc*) &T_fVT8Frbe1eY8sI6VOwxZZg_3), ((NimStringDesc*) &T_fVT8Frbe1eY8sI6VOwxZZg_4), itertoprocimpl_8Ju1JTLo6ouAMsxkpHAWIQ); } NIM_EXTERNC N_NOINLINE(void, compiler_itersgenDatInit000)(void) { }