/* 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 #include #undef linux typedef struct Tnode_bROa11lyF5vxEN9aYNbHmhw Tnode_bROa11lyF5vxEN9aYNbHmhw; typedef struct Tcontext_5TfOJKwTttj3W1t1tMzWUQ Tcontext_5TfOJKwTttj3W1t1tMzWUQ; typedef struct Ttype_LTUWCZolpovw9cWE3JBWSUw Ttype_LTUWCZolpovw9cWE3JBWSUw; typedef struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw; typedef struct NimStringDesc NimStringDesc; typedef struct TGenericSeq TGenericSeq; typedef struct Tsym_AXG7xcvKqaxY6koRX1xkCw Tsym_AXG7xcvKqaxY6koRX1xkCw; typedef struct Tident_4umxGerWTHGPwUms7Yqu3g Tident_4umxGerWTHGPwUms7Yqu3g; typedef struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ TY_ehmV9bTklH2Gt9cXHV9c0HLeQ; typedef struct Exception Exception; typedef struct TNimObject TNimObject; typedef struct TNimType TNimType; typedef struct TNimNode TNimNode; typedef struct TSafePoint TSafePoint; typedef struct TY_7q7q3E6Oj24ZNVJb9aonhAg TY_7q7q3E6Oj24ZNVJb9aonhAg; 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 Tidobj_raN9cHVgzmvaXisezY9aGg9cg Tidobj_raN9cHVgzmvaXisezY9aGg9cg; 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 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 Table_tfmlwa8ktiw8woWAs5vhtQ Table_tfmlwa8ktiw8woWAs5vhtQ; typedef struct TY_kxu4GK0onha2t9bo86mdVAg TY_kxu4GK0onha2t9bo86mdVAg; typedef struct TY_48JTohSgTy339bRxHzUD8KA TY_48JTohSgTy339bRxHzUD8KA; typedef struct Ttabiter_VYF5VQsIYEVaBL0fKZJkbg Ttabiter_VYF5VQsIYEVaBL0fKZJkbg; typedef struct TY_iGkpo9aKQdr3NWelKC4cnJA TY_iGkpo9aKQdr3NWelKC4cnJA; typedef struct Tidentiter_Oi4goG2ACEsy9cyTe6OCPrA Tidentiter_Oi4goG2ACEsy9cyTe6OCPrA; typedef struct Basechunk_Sdq7WpT6qAH858F5ZEdG3w Basechunk_Sdq7WpT6qAH858F5ZEdG3w; typedef struct Freecell_u6M5LHprqzkn9axr04yg9bGQ Freecell_u6M5LHprqzkn9axr04yg9bGQ; typedef struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA; 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 TY_xDU9bZmv1ZbZkJDaATBekIQ TY_xDU9bZmv1ZbZkJDaATBekIQ; typedef struct TY_a09bGTAl9ceOKTAytYdkbyKg TY_a09bGTAl9ceOKTAytYdkbyKg; 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 Tblock_2tJGcW69ahqq39a9bVJC1sqGQ Tblock_2tJGcW69ahqq39a9bVJC1sqGQ; typedef struct TY_qwqHTkRvwhrRyENtudHQ7g TY_qwqHTkRvwhrRyENtudHQ7g; struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw { NI16 line; NI16 col; NI32 fileindex; }; 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 NU8 Trenderflag_wrPgUo1ExBlHvFnXN2nSHw_Set; 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 Exception { TNimObject Sup; Exception* parent; NCSTRING name; NimStringDesc* message; NimStringDesc* trace; }; typedef struct { N_NIMCALL_PTR(NIM_BOOL, ClPrc) (Exception* e0, void* ClEnv); void* ClEnv; } TY_KeeAOYBd84Ofsw6Y7LizaQ; struct TSafePoint { TSafePoint* prev; NI status; jmp_buf context; NIM_BOOL hasRaiseAction; TY_KeeAOYBd84Ofsw6Y7LizaQ raiseAction; }; struct TY_7q7q3E6Oj24ZNVJb9aonhAg { NimStringDesc* Field0; NimStringDesc* Field1; NimStringDesc* Field2; }; 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; }; struct Tidobj_raN9cHVgzmvaXisezY9aGg9cg { TNimObject Sup; NI id; }; struct Tident_4umxGerWTHGPwUms7Yqu3g { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; NimStringDesc* s; Tident_4umxGerWTHGPwUms7Yqu3g* next; NI h; }; 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 NU16 Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw; 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 N_NIMCALL_PTR(Tnode_bROa11lyF5vxEN9aYNbHmhw*, TY_AKW0Vo9cFIVu0NCvmOexsSA) (Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); 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 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; }; typedef N_NIMCALL_PTR(Tsym_AXG7xcvKqaxY6koRX1xkCw*, TY_y9aVVLUC7Upj1FbhiBI5Rsg) (ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* graph0, Tsym_AXG7xcvKqaxY6koRX1xkCw* m0, NI32 fileidx0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0); typedef NU8 Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw; struct Ttabiter_VYF5VQsIYEVaBL0fKZJkbg { NI h; }; struct Tscope_1cQRXW6aAknk7ywAwjH3nw { NI depthlevel; Tstrtable_f07aOS3dr28kGa5wcE29aFA symbols; Tscope_1cQRXW6aAknk7ywAwjH3nw* parent; }; 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 Tidentiter_Oi4goG2ACEsy9cyTe6OCPrA { NI h; Tident_4umxGerWTHGPwUms7Yqu3g* name; }; 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 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 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 TY_xDU9bZmv1ZbZkJDaATBekIQ { NI Field0; NI32 Field1; NI32 Field2; }; struct TY_a09bGTAl9ceOKTAytYdkbyKg { NI Field0; Tsym_AXG7xcvKqaxY6koRX1xkCw* Field1; }; struct Freecell_u6M5LHprqzkn9axr04yg9bGQ { Freecell_u6M5LHprqzkn9axr04yg9bGQ* next; NI zerofield; }; struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA { Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; TY_zuqP4Riz26Oi5fWgPYVEgA* concretetypes; NI compilesid; }; 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 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_48JTohSgTy339bRxHzUD8KA { TGenericSeq Sup; NI32 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_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_kxu4GK0onha2t9bo86mdVAg { TGenericSeq Sup; TY_xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE]; }; struct TY_iGkpo9aKQdr3NWelKC4cnJA { TGenericSeq Sup; TY_a09bGTAl9ceOKTAytYdkbyKg 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_JokFGfUW6i9b6aeU7xu6xBw { TGenericSeq Sup; Tblock_2tJGcW69ahqq39a9bVJC1sqGQ data[SEQ_DECL_SIZE]; }; struct TY_qwqHTkRvwhrRyENtudHQ7g { TGenericSeq Sup; NI data[SEQ_DECL_SIZE]; }; N_NIMCALL(NI, sonslen_qPWPHw7WgJeEVYUdcaRIig)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); static N_INLINE(NI, len_CdME9baJhvveuPEDZE9bXoxAlambdalifting)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); static N_INLINE(Tnode_bROa11lyF5vxEN9aYNbHmhw*, HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI i0); N_NIMCALL(NimStringDesc*, rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Trenderflag_wrPgUo1ExBlHvFnXN2nSHw_Set renderflags0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newstrnode_8GaTnuPqpzGLNcerzDOURQ)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, NimStringDesc* strval0); N_NIMCALL(NimStringDesc*, nsuReplaceStr)(NimStringDesc* s0, NimStringDesc* sub0, NimStringDesc* by0); static N_INLINE(void, appendString)(NimStringDesc* dest0, NimStringDesc* src0); static N_INLINE(void, copymem_fPlwH3r9agN9aEHB6yCPMh0wsystem)(void* dest0, void* source0, NI size0); N_NIMCALL(NimStringDesc*, rawNewString)(NI space0); N_NIMCALL(void, impmod_0bcJTXm4gx50Nkent24dIw)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* it0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, myimportmodule_DoWcqCJt9cuKDjAYd1A9c09aA)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NI32, checkmodulename_Kg51K0T2kZ3LqXLFR6u83g)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NIM_BOOL dolocalerror0); N_NIMCALL(NimStringDesc*, getmodulename_gHbq1U2uCj9bx0L7AU5ViCQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); static N_INLINE(void, pushSafePoint)(TSafePoint* s0); N_NIMCALL(NimStringDesc*, pathsubs_0CMMAuGT1UklgV9a3pNmucg)(NimStringDesc* p0, NimStringDesc* config0); N_NIMCALL(void, nossplitFile)(NimStringDesc* path0, TY_7q7q3E6Oj24ZNVJb9aonhAg* Result); N_NIMCALL(NimStringDesc*, tofullpath_7s19cb7WBgztz9aqEBzwwuqA)(NI32 fileidx0); static N_INLINE(void, popSafePoint)(void); N_NIMCALL(NIM_BOOL, isObj)(TNimType* obj0, TNimType* subclass0); static N_INLINE(Exception*, getCurrentException)(void); N_NIMCALL(void, localerror_GarD0CQJ5aQhoHekHYinVQ)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, NimStringDesc* arg0); N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src0); static N_INLINE(void, popCurrentException)(void); static N_INLINE(void, asgnRef)(void** dest0, void* src0); static N_INLINE(void, incref_9cAA5YuQAAC3MVbnGeV86swsystem)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0); static N_INLINE(Cell_1zcF9cV8XIAtbN8h5HRUB8g*, usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem)(void* usr0); static N_INLINE(void, decref_MV4BBk6J1qu70IbBxwEn4wsystem)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0); static N_INLINE(void, rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0); N_NOINLINE(void, addzct_fCDI7oO1NNVXXURtxSzsRw)(Cellseq_Axo1XVm9aaQueTOldv8le5w* s0, Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0); N_NIMCALL(void, reraiseException)(void); N_NIMCALL(Tident_4umxGerWTHGPwUms7Yqu3g*, getident_oH8GBf4tG3b1F5BIuNPwtA)(NimStringDesc* identifier0); static N_INLINE(void, asgnRefNoCycle)(void** dest0, void* src0); N_NIMCALL(TGenericSeq*, setLengthSeq)(TGenericSeq* seq0, NI elemsize0, NI newlen0); N_NIMCALL(void, localerror_VpilfPWbplGz6ny7O9cfr2g)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw msg0, NimStringDesc* arg0); N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr0, NimStringDesc* a0); N_NIMCALL(NimStringDesc*, findmodule_EcukdJLszq41C6G0HEdN9bw)(NimStringDesc* modulename0, NimStringDesc* currentmodule0); N_NIMCALL(NI32, fileinfoidx_RXxXBoV2drjjVnQa9abo19cQ)(NimStringDesc* filename0); static N_INLINE(NI, find_7HuJIxYuEqTY8hIfIvGk3gimporter)(TY_48JTohSgTy339bRxHzUD8KA* a0, NI32 item0); N_NIMCALL(TGenericSeq*, incrSeqV2)(TGenericSeq* seq0, NI elemsize0); N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest0, NI addlen0); N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src0); static N_INLINE(void, nimGCunrefNoCycle)(void* p0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, importmoduleas_ckwkUEX3W7bFjQ1SoJ77og)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* realmodule0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, createmodulealias_8Iq2N0SqkUpNbP9cQjaOhQg)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, Tident_4umxGerWTHGPwUms7Yqu3g* newident0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(void, message_VpilfPWbplGz6ny7O9cfr2g_2)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw msg0, NimStringDesc* arg0); N_NIMCALL(void, adddecl_W9aLOGzur1Hha3FX24v0oSQ)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* sym0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(void, importallsymbolsexcept_ZCm09cjke63Je5a9cuPSP4mw)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* frommod0, Intset_PQrmFm4BXFkFSVOUl1ojSg exceptset0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, inittabiter_4ygtuv45J5xOJG1H4GUF9bA)(Ttabiter_VYF5VQsIYEVaBL0fKZJkbg* ti0, Tstrtable_f07aOS3dr28kGa5wcE29aFA tab0); N_NIMCALL(void, internalerror_MXmtqrCmYwtOPkDCFgUWKQ)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, NimStringDesc* errmsg0); N_NIMCALL(NimStringDesc*, reprEnum)(NI e0, TNimType* typ0); static N_INLINE(NIM_BOOL, isnil_7atIZGZ28C4nVYigfGrZwgimporter)(Intset_PQrmFm4BXFkFSVOUl1ojSg x0); N_NIMCALL(NIM_BOOL, contains_sYBLNwnPJlAFi0nfWU79awg)(Intset_PQrmFm4BXFkFSVOUl1ojSg s0, NI key0); N_NIMCALL(void, rawimportsymbol_7qtiNe9cOtkp0iv0cUito5g)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, strtableget_lwInE2j9aCwWqT2bvslVRNA)(Tstrtable_f07aOS3dr28kGa5wcE29aFA t0, Tident_4umxGerWTHGPwUms7Yqu3g* name0); N_NIMCALL(void, incl_iUpE9bYmIR0fROyJskQwN8g)(Intset_PQrmFm4BXFkFSVOUl1ojSg* s0, NI key0); N_NIMCALL(void, strtableadd_Tcb9aDxXz9ch8cAXKFCMrlbA)(Tstrtable_f07aOS3dr28kGa5wcE29aFA* t0, Tsym_AXG7xcvKqaxY6koRX1xkCw* n0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, initidentiter_mWFOqJ9be21lsluYGFm6uRA)(Tidentiter_Oi4goG2ACEsy9cyTe6OCPrA* ti0, Tstrtable_f07aOS3dr28kGa5wcE29aFA tab0, Tident_4umxGerWTHGPwUms7Yqu3g* s0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, nextidentiter_rTNfZVe9bciOJ9bfDRjx5gIw)(Tidentiter_Oi4goG2ACEsy9cyTe6OCPrA* ti0, Tstrtable_f07aOS3dr28kGa5wcE29aFA tab0); N_NIMCALL(void, addconverter_sNqlDRI9cQLfS9anVD2PODVw)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* conv0); static N_INLINE(NIM_BOOL, haspattern_inD0Nq051matsjc6UjX88gimporter)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); static N_INLINE(NIM_BOOL, isroutine_inD0Nq051matsjc6UjX88gparampatterns)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); N_NIMCALL(void, addpattern_XNHcYvQEMvHc13SWCjFCXQ)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* p0); N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, nextiter_MtRRPpsZix0WHVpZVShg0A)(Ttabiter_VYF5VQsIYEVaBL0fKZJkbg* ti0, Tstrtable_f07aOS3dr28kGa5wcE29aFA tab0); N_NIMCALL(void, checkminsonslen_rPu9akNNYZgL0UexjMvt0HA_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI length0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newsymnode_1ARBpggFQuvUDBVYjBelcw)(Tsym_AXG7xcvKqaxY6koRX1xkCw* sym0); N_NIMCALL(void, initintset_a9a80eJplB17xrdZJ41Baww)(Intset_PQrmFm4BXFkFSVOUl1ojSg* Result); N_NOINLINE(void, chckNil)(void* p0); N_NIMCALL(Tident_4umxGerWTHGPwUms7Yqu3g*, considerquotedident_bi6H6x9cvavSxJocgYdA9bRw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, importsymbol_Ko0l9bvOgrbdCRB4gbBTFAA)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* frommod0); N_NIMCALL(void, errorundeclaredidentifier_UdgIujB9c9aSmUmE2IpJcLjQ)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, NimStringDesc* name0); N_NIMCALL(void, loadstub_8lqBRdz0Xc1mefqrmXA9ceg)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); extern TSafePoint* exchandler_rqLlY5bs9atDw2OXYqJEn5g; extern TNimType NTI_Gi06FkNeykJn7mrqRZYrkA; extern Exception* currexception_9bVPeDJlYTi9bQApZpfH8wjg; extern Gcheap_1TRH1TZMaVZTnLNcIHuNFQ gch_IcYaEuuWivYAS86vFMTS3Q; extern TY_y9aVVLUC7Upj1FbhiBI5Rsg gimportmodule_6yHi5jlyB9bdgfbMGpclQWg; extern TNimType NTI_cNCW9acsSznmEccl1fgQwkw; STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_2, " ", 1); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_3, "", 0); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_5, "invalid path: ", 14); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_6, "as", 2); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_7, ".", 1); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_8, "/", 1); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_9, "invalid module name: \'$1\'", 25); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_10, "\012", 1); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_11, " imports ", 9); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_12, "module alias must be an identifier", 34); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_13, "A module cannot import itself", 29); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_14, "importAllSymbols: ", 18); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_15, "rawImportSymbol", 15); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_16, "importSymbol: 2", 15); STRING_LITERAL(T_NsDkQfDe2CjzDqtBRW9bqQg_17, "importSymbol: 3", 15); 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; } 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; } static N_INLINE(void, pushSafePoint)(TSafePoint* s0) { (*s0).hasRaiseAction = NIM_FALSE; (*s0).prev = exchandler_rqLlY5bs9atDw2OXYqJEn5g; exchandler_rqLlY5bs9atDw2OXYqJEn5g = s0; } static N_INLINE(void, popSafePoint)(void) { exchandler_rqLlY5bs9atDw2OXYqJEn5g = (*exchandler_rqLlY5bs9atDw2OXYqJEn5g).prev; } static N_INLINE(Exception*, getCurrentException)(void) { Exception* result0; result0 = (Exception*)0; result0 = currexception_9bVPeDJlYTi9bQApZpfH8wjg; return result0; } static N_INLINE(void, incref_9cAA5YuQAAC3MVbnGeV86swsystem)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0) { (*c0).refcount = (NI)((NU32)((*c0).refcount) + (NU32)(((NI) 8))); } 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, decref_MV4BBk6J1qu70IbBxwEn4wsystem)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0) { { (*c0).refcount -= ((NI) 8); if (!((NU32)((*c0).refcount) < (NU32)(((NI) 8)))) goto LA3; rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system(c0); } LA3: ; } static N_INLINE(void, asgnRef)(void** dest0, void* src0) { { Cell_1zcF9cV8XIAtbN8h5HRUB8g* LOC5; if (!!((src0 == NIM_NIL))) goto LA3; LOC5 = (Cell_1zcF9cV8XIAtbN8h5HRUB8g*)0; LOC5 = usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem(src0); incref_9cAA5YuQAAC3MVbnGeV86swsystem(LOC5); } LA3: ; { Cell_1zcF9cV8XIAtbN8h5HRUB8g* LOC10; if (!!(((*dest0) == NIM_NIL))) goto LA8; LOC10 = (Cell_1zcF9cV8XIAtbN8h5HRUB8g*)0; LOC10 = usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem((*dest0)); decref_MV4BBk6J1qu70IbBxwEn4wsystem(LOC10); } LA8: ; (*dest0) = src0; } static N_INLINE(void, popCurrentException)(void) { asgnRef((void**) (&currexception_9bVPeDJlYTi9bQApZpfH8wjg), NIM_NIL); } 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(NimStringDesc*, getmodulename_gHbq1U2uCj9bx0L7AU5ViCQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NimStringDesc* volatile result0; { result0 = (NimStringDesc*)0; switch ((*n0).kind) { case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 20): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 21): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 22): { TSafePoint T_NsDkQfDe2CjzDqtBRW9bqQg_4; pushSafePoint(&T_NsDkQfDe2CjzDqtBRW9bqQg_4); T_NsDkQfDe2CjzDqtBRW9bqQg_4.status = _setjmp(T_NsDkQfDe2CjzDqtBRW9bqQg_4.context); if (T_NsDkQfDe2CjzDqtBRW9bqQg_4.status == 0) { NimStringDesc* LOC3; TY_7q7q3E6Oj24ZNVJb9aonhAg LOC4; LOC3 = (NimStringDesc*)0; LOC3 = tofullpath_7s19cb7WBgztz9aqEBzwwuqA((*n0).info.fileindex); memset((void*)(&LOC4), 0, sizeof(LOC4)); nossplitFile(LOC3, (&LOC4)); result0 = pathsubs_0CMMAuGT1UklgV9a3pNmucg((*n0).kindU.S3.strval, LOC4.Field0); popSafePoint(); } else { popSafePoint(); if (isObj(getCurrentException()->Sup.m_type, (&NTI_Gi06FkNeykJn7mrqRZYrkA))) { NimStringDesc* LOC7; T_NsDkQfDe2CjzDqtBRW9bqQg_4.status = 0; LOC7 = (NimStringDesc*)0; LOC7 = rawNewString((*n0).kindU.S3.strval->Sup.len + 14); appendString(LOC7, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_5)); appendString(LOC7, (*n0).kindU.S3.strval); localerror_GarD0CQJ5aQhoHekHYinVQ((*n0).info, LOC7); result0 = copyString((*n0).kindU.S3.strval); popCurrentException(); } } if (T_NsDkQfDe2CjzDqtBRW9bqQg_4.status != 0) reraiseException(); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2): { result0 = copyString((*(*n0).kindU.S5.ident).s); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3): { result0 = copyString((*(*(*n0).kindU.S4.sym).name).s); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 29): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 30): { NimStringDesc* LOC18; { NIM_BOOL LOC13; Tident_4umxGerWTHGPwUms7Yqu3g* LOC15; LOC13 = (NIM_BOOL)0; LOC13 = ((*(*n0).kindU.S6.sons->data[((NI) 0)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2)); if (!(LOC13)) goto LA14; LOC15 = (Tident_4umxGerWTHGPwUms7Yqu3g*)0; LOC15 = getident_oH8GBf4tG3b1F5BIuNPwtA(((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_6)); LOC13 = ((*(*(*n0).kindU.S6.sons->data[((NI) 0)]).kindU.S5.ident).Sup.id == (*LOC15).Sup.id); LA14: ; if (!LOC13) goto LA16; (*n0).kind = ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 78); asgnRefNoCycle((void**) (&(*n0).kindU.S6.sons->data[((NI) 0)]), (*n0).kindU.S6.sons->data[((NI) 1)]); asgnRefNoCycle((void**) (&(*n0).kindU.S6.sons->data[((NI) 1)]), (*n0).kindU.S6.sons->data[((NI) 2)]); (*n0).kindU.S6.sons = (TY_ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeq(&((*n0).kindU.S6.sons)->Sup, sizeof(Tnode_bROa11lyF5vxEN9aYNbHmhw*), ((NI) 2)); result0 = getmodulename_gHbq1U2uCj9bx0L7AU5ViCQ((*n0).kindU.S6.sons->data[((NI) 0)]); goto BeforeRet; } LA16: ; LOC18 = (NimStringDesc*)0; LOC18 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(n0, 4); result0 = nsuReplaceStr(LOC18, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_2), ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_3)); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 45): { NimStringDesc* LOC20; LOC20 = (NimStringDesc*)0; LOC20 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(n0, 4); result0 = nsuReplaceStr(LOC20, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_7), ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_8)); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 78): { result0 = getmodulename_gHbq1U2uCj9bx0L7AU5ViCQ((*n0).kindU.S6.sons->data[((NI) 0)]); } break; default: { NimStringDesc* LOC23; NimStringDesc* LOC24; LOC23 = (NimStringDesc*)0; LOC23 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(n0, 0); LOC24 = (NimStringDesc*)0; LOC24 = nsuFormatSingleElem(((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_9), LOC23); localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), LOC24); result0 = copyString(((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_3)); } break; } }BeforeRet: ; return result0; } N_NIMCALL(NI32, checkmodulename_Kg51K0T2kZ3LqXLFR6u83g)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NIM_BOOL dolocalerror0) { NI32 result0; NimStringDesc* modulename0; NimStringDesc* fullpath0; NimStringDesc* LOC1; result0 = (NI32)0; modulename0 = getmodulename_gHbq1U2uCj9bx0L7AU5ViCQ(n0); LOC1 = (NimStringDesc*)0; LOC1 = tofullpath_7s19cb7WBgztz9aqEBzwwuqA((*n0).info.fileindex); fullpath0 = findmodule_EcukdJLszq41C6G0HEdN9bw(modulename0, LOC1); { if (!((fullpath0 ? fullpath0->Sup.len : 0) == ((NI) 0))) goto LA4; { if (!dolocalerror0) goto LA8; localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 3), modulename0); } LA8: ; result0 = ((NI32) -1); } goto LA2; LA4: ; { result0 = fileinfoidx_RXxXBoV2drjjVnQa9abo19cQ(fullpath0); } LA2: ; return result0; } static N_INLINE(NI, find_7HuJIxYuEqTY8hIfIvGk3gimporter)(TY_48JTohSgTy339bRxHzUD8KA* a0, NI32 item0) { NI result0; { result0 = (NI)0; { NI32 i_PK51OczLhe60IMTnpDtj2Q; NI i_PK51OczLhe60IMTnpDtj2Q_2; NI L_nNJc8Xj1ehxfKpp6mtkZcw; i_PK51OczLhe60IMTnpDtj2Q = (NI32)0; i_PK51OczLhe60IMTnpDtj2Q_2 = ((NI) 0); L_nNJc8Xj1ehxfKpp6mtkZcw = (a0 ? a0->Sup.len : 0); { while (1) { if (!(i_PK51OczLhe60IMTnpDtj2Q_2 < L_nNJc8Xj1ehxfKpp6mtkZcw)) goto LA3; i_PK51OczLhe60IMTnpDtj2Q = a0->data[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(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: ; } N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, importmoduleas_ckwkUEX3W7bFjQ1SoJ77og)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* realmodule0) { Tsym_AXG7xcvKqaxY6koRX1xkCw* result0; result0 = (Tsym_AXG7xcvKqaxY6koRX1xkCw*)0; result0 = realmodule0; { if (!!(((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 78)))) goto LA3; } goto LA1; LA3: ; { NIM_BOOL LOC6; NI LOC7; LOC6 = (NIM_BOOL)0; LOC7 = (NI)0; LOC7 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); LOC6 = !((LOC7 == ((NI) 2))); if (LOC6) goto LA8; LOC6 = !(((*(*n0).kindU.S6.sons->data[((NI) 1)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2))); LA8: ; if (!LOC6) goto LA9; localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_12)); } goto LA1; LA9: ; { if (!!(((*(*(*n0).kindU.S6.sons->data[((NI) 1)]).kindU.S5.ident).Sup.id == (*(*realmodule0).name).Sup.id))) goto LA12; result0 = createmodulealias_8Iq2N0SqkUpNbP9cQjaOhQg(realmodule0, (*(*n0).kindU.S6.sons->data[((NI) 1)]).kindU.S5.ident, (*realmodule0).info); } goto LA1; LA12: ; LA1: ; return result0; } N_NIMCALL(Tsym_AXG7xcvKqaxY6koRX1xkCw*, myimportmodule_DoWcqCJt9cuKDjAYd1A9c09aA)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tsym_AXG7xcvKqaxY6koRX1xkCw* result0; NI32 f0; result0 = (Tsym_AXG7xcvKqaxY6koRX1xkCw*)0; f0 = checkmodulename_Kg51K0T2kZ3LqXLFR6u83g(n0, NIM_TRUE); { NI L0; NI recursion0; Tsym_AXG7xcvKqaxY6koRX1xkCw* LOC20; if (!!((f0 == ((NI32) -1)))) goto LA3; L0 = ((*(*c0).graph).importstack ? (*(*c0).graph).importstack->Sup.len : 0); recursion0 = find_7HuJIxYuEqTY8hIfIvGk3gimporter((*(*c0).graph).importstack, f0); (*(*c0).graph).importstack = (TY_48JTohSgTy339bRxHzUD8KA*) incrSeqV2(&((*(*c0).graph).importstack)->Sup, sizeof(NI32)); (*(*c0).graph).importstack->data[(*(*c0).graph).importstack->Sup.len] = f0; ++(*(*c0).graph).importstack->Sup.len; { NimStringDesc* err0; NimStringDesc* LOC19; if (!(((NI) 0) <= recursion0)) goto LA7; err0 = copyString(((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_3)); { NI i_Z49crbnjktoCclLhytFIxLA; NI HEX3Atmp_0MhK9csKr8m8DaD1R9cpi1Zg; NI res_NhbIZE0fF8pgx8mm9ce2e2g; i_Z49crbnjktoCclLhytFIxLA = (NI)0; HEX3Atmp_0MhK9csKr8m8DaD1R9cpi1Zg = (NI)0; HEX3Atmp_0MhK9csKr8m8DaD1R9cpi1Zg = (NI)(L0 - ((NI) 1)); res_NhbIZE0fF8pgx8mm9ce2e2g = recursion0; { while (1) { NimStringDesc* LOC16; NimStringDesc* LOC17; NimStringDesc* LOC18; if (!(res_NhbIZE0fF8pgx8mm9ce2e2g <= HEX3Atmp_0MhK9csKr8m8DaD1R9cpi1Zg)) goto LA11; i_Z49crbnjktoCclLhytFIxLA = res_NhbIZE0fF8pgx8mm9ce2e2g; { if (!(recursion0 < i_Z49crbnjktoCclLhytFIxLA)) goto LA14; err0 = resizeString(err0, 1); appendString(err0, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_10)); } LA14: ; LOC16 = (NimStringDesc*)0; LOC17 = (NimStringDesc*)0; LOC17 = tofullpath_7s19cb7WBgztz9aqEBzwwuqA((*(*c0).graph).importstack->data[i_Z49crbnjktoCclLhytFIxLA]); LOC18 = (NimStringDesc*)0; LOC18 = tofullpath_7s19cb7WBgztz9aqEBzwwuqA((*(*c0).graph).importstack->data[(NI)(i_Z49crbnjktoCclLhytFIxLA + ((NI) 1))]); LOC16 = rawNewString(LOC17->Sup.len + LOC18->Sup.len + 9); appendString(LOC16, LOC17); appendString(LOC16, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_11)); appendString(LOC16, LOC18); err0 = resizeString(err0, LOC16->Sup.len + 0); appendString(err0, LOC16); res_NhbIZE0fF8pgx8mm9ce2e2g += ((NI) 1); } LA11: ; } } LOC19 = (NimStringDesc*)0; LOC19 = (*c0).recursivedep; (*c0).recursivedep = copyStringRC1(err0); if (LOC19) nimGCunrefNoCycle(LOC19); } LA7: ; LOC20 = (Tsym_AXG7xcvKqaxY6koRX1xkCw*)0; LOC20 = gimportmodule_6yHi5jlyB9bdgfbMGpclQWg((*c0).graph, (*c0).module, f0, (*c0).cache); result0 = importmoduleas_ckwkUEX3W7bFjQ1SoJ77og(n0, LOC20); (*(*c0).graph).importstack = (TY_48JTohSgTy339bRxHzUD8KA*) setLengthSeq(&((*(*c0).graph).importstack)->Sup, sizeof(NI32), ((NI) (L0))); { NIM_BOOL LOC23; LOC23 = (NIM_BOOL)0; LOC23 = ((*result0).info.fileindex == (*(*c0).module).info.fileindex); if (!(LOC23)) goto LA24; LOC23 = ((*result0).info.fileindex == (*n0).info.fileindex); LA24: ; if (!LOC23) goto LA25; localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 4), ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_13)); } LA25: ; { if (!(((*result0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 19))&31U)))!=0)) goto LA29; message_VpilfPWbplGz6ny7O9cfr2g_2((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 240), (*(*result0).name).s); } LA29: ; } LA3: ; return result0; } static N_INLINE(NIM_BOOL, isnil_7atIZGZ28C4nVYigfGrZwgimporter)(Intset_PQrmFm4BXFkFSVOUl1ojSg x0) { NIM_BOOL result0; result0 = (NIM_BOOL)0; result0 = (x0.head == 0); return result0; } static N_INLINE(NIM_BOOL, isroutine_inD0Nq051matsjc6UjX88gparampatterns)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { NIM_BOOL result0; result0 = (NIM_BOOL)0; result0 = ((258048 &(1U<<((NU)((*s0).kind)&31U)))!=0); return result0; } static N_INLINE(NIM_BOOL, haspattern_inD0Nq051matsjc6UjX88gimporter)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { NIM_BOOL result0; NIM_BOOL LOC1; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC1 = isroutine_inD0Nq051matsjc6UjX88gparampatterns(s0); if (!(LOC1)) goto LA2; LOC1 = !(((*(*(*s0).ast).kindU.S6.sons->data[((NI) 1)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1))); LA2: ; result0 = LOC1; return result0; } N_NIMCALL(void, rawimportsymbol_7qtiNe9cOtkp0iv0cUito5g)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { Tsym_AXG7xcvKqaxY6koRX1xkCw* check0; check0 = strtableget_lwInE2j9aCwWqT2bvslVRNA((*(*c0).importtable).symbols, (*s0).name); { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = !((check0 == NIM_NIL)); if (!(LOC3)) goto LA4; LOC3 = !(((*check0).Sup.id == (*s0).Sup.id)); LA4: ; if (!LOC3) goto LA5; { if (!!(((258112 &(1U<<((NU)((*s0).kind)&31U)))!=0))) goto LA9; incl_iUpE9bYmIR0fROyJskQwN8g((&(*c0).ambiguoussymbols), (*s0).Sup.id); incl_iUpE9bYmIR0fROyJskQwN8g((&(*c0).ambiguoussymbols), (*check0).Sup.id); } LA9: ; } LA5: ; strtableadd_Tcb9aDxXz9ch8cAXKFCMrlbA((&(*(*c0).importtable).symbols), s0); { Ttype_LTUWCZolpovw9cWE3JBWSUw* etyp0; if (!((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 7))) goto LA13; etyp0 = (*s0).typ; { NIM_BOOL LOC17; LOC17 = (NIM_BOOL)0; LOC17 = ((*etyp0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 1) || (*etyp0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 14)); if (!(LOC17)) goto LA18; LOC17 = !((((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 9))&31U)))!=0)); LA18: ; if (!LOC17) goto LA19; { NI j_cFTPahza0hqwfne3jtyH8Q; NI HEX3Atmp_ac6NzpnIvsOgdgxnKus9aTg; NI LOC22; NI res_l2F2RrM4LeOoN1idLKphjg; j_cFTPahza0hqwfne3jtyH8Q = (NI)0; HEX3Atmp_ac6NzpnIvsOgdgxnKus9aTg = (NI)0; LOC22 = (NI)0; LOC22 = sonslen_qPWPHw7WgJeEVYUdcaRIig((*etyp0).n); HEX3Atmp_ac6NzpnIvsOgdgxnKus9aTg = (NI)(LOC22 - ((NI) 1)); res_l2F2RrM4LeOoN1idLKphjg = ((NI) 0); { while (1) { Tsym_AXG7xcvKqaxY6koRX1xkCw* e0; Tidentiter_Oi4goG2ACEsy9cyTe6OCPrA it0; if (!(res_l2F2RrM4LeOoN1idLKphjg <= HEX3Atmp_ac6NzpnIvsOgdgxnKus9aTg)) goto LA24; j_cFTPahza0hqwfne3jtyH8Q = res_l2F2RrM4LeOoN1idLKphjg; e0 = (*(*(*etyp0).n).kindU.S6.sons->data[j_cFTPahza0hqwfne3jtyH8Q]).kindU.S4.sym; { if (!!(((*e0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 19)))) goto LA27; internalerror_MXmtqrCmYwtOPkDCFgUWKQ((*s0).info, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_15)); } LA27: ; memset((void*)(&it0), 0, sizeof(it0)); check0 = initidentiter_mWFOqJ9be21lsluYGFm6uRA((&it0), (*(*c0).importtable).symbols, (*e0).name); { while (1) { if (!!((check0 == NIM_NIL))) goto LA30; { if (!((*check0).Sup.id == (*e0).Sup.id)) goto LA33; e0 = NIM_NIL; goto LA29; } LA33: ; check0 = nextidentiter_rTNfZVe9bciOJ9bfDRjx5gIw((&it0), (*(*c0).importtable).symbols); } LA30: ; } LA29: ; { if (!!((e0 == NIM_NIL))) goto LA37; rawimportsymbol_7qtiNe9cOtkp0iv0cUito5g(c0, e0); } LA37: ; res_l2F2RrM4LeOoN1idLKphjg += ((NI) 1); } LA24: ; } } } LA19: ; } goto LA11; LA13: ; { { if (!((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 15))) goto LA42; addconverter_sNqlDRI9cQLfS9anVD2PODVw(c0, s0); } LA42: ; { NIM_BOOL LOC46; LOC46 = (NIM_BOOL)0; LOC46 = haspattern_inD0Nq051matsjc6UjX88gimporter(s0); if (!LOC46) goto LA47; addpattern_XNHcYvQEMvHc13SWCjFCXQ(c0, s0); } LA47: ; } LA11: ; } N_NIMCALL(void, importallsymbolsexcept_ZCm09cjke63Je5a9cuPSP4mw)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* frommod0, Intset_PQrmFm4BXFkFSVOUl1ojSg exceptset0) { Ttabiter_VYF5VQsIYEVaBL0fKZJkbg i0; Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; memset((void*)(&i0), 0, sizeof(i0)); s0 = inittabiter_4ygtuv45J5xOJG1H4GUF9bA((&i0), (*frommod0).kindU.S3.tab); { while (1) { if (!!((s0 == NIM_NIL))) goto LA2; { if (!!(((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 6)))) goto LA5; { if (!!(((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 19)))) goto LA9; { NimStringDesc* LOC15; if (!!(((21755776 &(1U<<((NU)((*s0).kind)&31U)))!=0))) goto LA13; LOC15 = (NimStringDesc*)0; LOC15 = rawNewString(reprEnum((NI)(*s0).kind, (&NTI_cNCW9acsSznmEccl1fgQwkw))->Sup.len + 18); appendString(LOC15, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_14)); appendString(LOC15, reprEnum((NI)(*s0).kind, (&NTI_cNCW9acsSznmEccl1fgQwkw))); internalerror_MXmtqrCmYwtOPkDCFgUWKQ((*s0).info, LOC15); } LA13: ; { NIM_BOOL LOC18; NIM_BOOL LOC20; LOC18 = (NIM_BOOL)0; LOC18 = isnil_7atIZGZ28C4nVYigfGrZwgimporter(exceptset0); if (LOC18) goto LA19; LOC20 = (NIM_BOOL)0; LOC20 = contains_sYBLNwnPJlAFi0nfWU79awg(exceptset0, (*(*s0).name).Sup.id); LOC18 = !(LOC20); LA19: ; if (!LOC18) goto LA21; rawimportsymbol_7qtiNe9cOtkp0iv0cUito5g(c0, s0); } LA21: ; } LA9: ; } LA5: ; s0 = nextiter_MtRRPpsZix0WHVpZVShg0A((&i0), (*frommod0).kindU.S3.tab); } LA2: ; } } N_NIMCALL(void, impmod_0bcJTXm4gx50Nkent24dIw)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* it0) { Tsym_AXG7xcvKqaxY6koRX1xkCw* m0; m0 = myimportmodule_DoWcqCJt9cuKDjAYd1A9c09aA(c0, it0); { Intset_PQrmFm4BXFkFSVOUl1ojSg emptyset0; if (!!((m0 == NIM_NIL))) goto LA3; memset((void*)(&emptyset0), 0, sizeof(emptyset0)); adddecl_W9aLOGzur1Hha3FX24v0oSQ(c0, m0, (*it0).info); importallsymbolsexcept_ZCm09cjke63Je5a9cuPSP4mw(c0, m0, emptyset0); } LA3: ; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, evalimport_rlI2ulrJgB3tjNcA8reHfg)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = n0; { NI i_EEWx53z8marvZqCEQQdYXg; NI HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w; NI LOC2; NI res_aKVZOf9bABhxoKM73JPnIMA; i_EEWx53z8marvZqCEQQdYXg = (NI)0; HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w = (NI)0; LOC2 = (NI)0; LOC2 = sonslen_qPWPHw7WgJeEVYUdcaRIig(n0); HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w = (NI)(LOC2 - ((NI) 1)); res_aKVZOf9bABhxoKM73JPnIMA = ((NI) 0); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* it0; if (!(res_aKVZOf9bABhxoKM73JPnIMA <= HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w)) goto LA4; i_EEWx53z8marvZqCEQQdYXg = res_aKVZOf9bABhxoKM73JPnIMA; it0 = (*n0).kindU.S6.sons->data[i_EEWx53z8marvZqCEQQdYXg]; { NIM_BOOL LOC7; NIM_BOOL LOC8; NI LOC10; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC12; NimStringDesc* sep0; NimStringDesc* dir0; LOC7 = (NIM_BOOL)0; LOC8 = (NIM_BOOL)0; LOC8 = ((*it0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 29)); if (!(LOC8)) goto LA9; LOC10 = (NI)0; LOC10 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(it0); LOC8 = (LOC10 == ((NI) 3)); LA9: ; LOC7 = LOC8; if (!(LOC7)) goto LA11; LOC12 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC12 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(it0, ((NI) 2)); LOC7 = ((*LOC12).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 41)); LA11: ; if (!LOC7) goto LA13; sep0 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA((*it0).kindU.S6.sons->data[((NI) 0)], 4); dir0 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA((*it0).kindU.S6.sons->data[((NI) 1)], 4); { Tnode_bROa11lyF5vxEN9aYNbHmhw* x_TYG75N3vKEDO0yqzobeVWg; Tnode_bROa11lyF5vxEN9aYNbHmhw* HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_2; x_TYG75N3vKEDO0yqzobeVWg = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_2 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_2 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(it0, ((NI) 2)); { NI i_EEWx53z8marvZqCEQQdYXg_2; NI HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_3; NI LOC17; NI res_aKVZOf9bABhxoKM73JPnIMA_2; i_EEWx53z8marvZqCEQQdYXg_2 = (NI)0; HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_3 = (NI)0; LOC17 = (NI)0; LOC17 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_2); HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_3 = (LOC17 - 1); res_aKVZOf9bABhxoKM73JPnIMA_2 = ((NI) 0); { while (1) { NimStringDesc* f0; Tnode_bROa11lyF5vxEN9aYNbHmhw* a0; NimStringDesc* LOC20; NimStringDesc* LOC21; if (!(res_aKVZOf9bABhxoKM73JPnIMA_2 <= HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_3)) goto LA19; i_EEWx53z8marvZqCEQQdYXg_2 = res_aKVZOf9bABhxoKM73JPnIMA_2; x_TYG75N3vKEDO0yqzobeVWg = (*HEX3Atmp_gFxd5B3IeVeuJ1AKKaYz5w_2).kindU.S6.sons->data[i_EEWx53z8marvZqCEQQdYXg_2]; f0 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(x_TYG75N3vKEDO0yqzobeVWg, 4); LOC20 = (NimStringDesc*)0; LOC20 = rawNewString(dir0->Sup.len + sep0->Sup.len + f0->Sup.len + 0); appendString(LOC20, dir0); appendString(LOC20, sep0); appendString(LOC20, f0); LOC21 = (NimStringDesc*)0; LOC21 = nsuReplaceStr(LOC20, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_2), ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_3)); a0 = newstrnode_8GaTnuPqpzGLNcerzDOURQ(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 20), LOC21); impmod_0bcJTXm4gx50Nkent24dIw(c0, a0); res_aKVZOf9bABhxoKM73JPnIMA_2 += ((NI) 1); } LA19: ; } } } } goto LA5; LA13: ; { impmod_0bcJTXm4gx50Nkent24dIw(c0, it0); } LA5: ; res_aKVZOf9bABhxoKM73JPnIMA += ((NI) 1); } LA4: ; } } return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, evalimportexcept_rlI2ulrJgB3tjNcA8reHfg_2)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; Tsym_AXG7xcvKqaxY6koRX1xkCw* m0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = n0; checkminsonslen_rPu9akNNYZgL0UexjMvt0HA_2(n0, ((NI) 2)); m0 = myimportmodule_DoWcqCJt9cuKDjAYd1A9c09aA(c0, (*n0).kindU.S6.sons->data[((NI) 0)]); { Intset_PQrmFm4BXFkFSVOUl1ojSg exceptset0; if (!!((m0 == NIM_NIL))) goto LA3; asgnRefNoCycle((void**) (&(*n0).kindU.S6.sons->data[((NI) 0)]), newsymnode_1ARBpggFQuvUDBVYjBelcw(m0)); adddecl_W9aLOGzur1Hha3FX24v0oSQ(c0, m0, (*n0).info); memset((void*)(&exceptset0), 0, sizeof(exceptset0)); chckNil((void*)(&exceptset0)); memset((void*)(&exceptset0), 0, sizeof(exceptset0)); initintset_a9a80eJplB17xrdZJ41Baww((&exceptset0)); { NI i_r1DGsWhMfa1RJ5aEvL9arrQ; NI HEX3Atmp_6nqD56obQeeAy9b1aQKrl0w; NI LOC6; NI res_ArRPBRsiP4GD0EJN9cv9cEMQ; i_r1DGsWhMfa1RJ5aEvL9arrQ = (NI)0; HEX3Atmp_6nqD56obQeeAy9b1aQKrl0w = (NI)0; LOC6 = (NI)0; LOC6 = sonslen_qPWPHw7WgJeEVYUdcaRIig(n0); HEX3Atmp_6nqD56obQeeAy9b1aQKrl0w = (NI)(LOC6 - ((NI) 1)); res_ArRPBRsiP4GD0EJN9cv9cEMQ = ((NI) 1); { while (1) { Tident_4umxGerWTHGPwUms7Yqu3g* ident0; if (!(res_ArRPBRsiP4GD0EJN9cv9cEMQ <= HEX3Atmp_6nqD56obQeeAy9b1aQKrl0w)) goto LA8; i_r1DGsWhMfa1RJ5aEvL9arrQ = res_ArRPBRsiP4GD0EJN9cv9cEMQ; ident0 = considerquotedident_bi6H6x9cvavSxJocgYdA9bRw((*n0).kindU.S6.sons->data[i_r1DGsWhMfa1RJ5aEvL9arrQ]); incl_iUpE9bYmIR0fROyJskQwN8g((&exceptset0), (*ident0).Sup.id); res_ArRPBRsiP4GD0EJN9cv9cEMQ += ((NI) 1); } LA8: ; } } importallsymbolsexcept_ZCm09cjke63Je5a9cuPSP4mw(c0, m0, exceptset0); } LA3: ; return result0; } N_NIMCALL(void, importsymbol_Ko0l9bvOgrbdCRB4gbBTFAA)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* frommod0) { Tident_4umxGerWTHGPwUms7Yqu3g* ident0; Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; ident0 = considerquotedident_bi6H6x9cvavSxJocgYdA9bRw(n0); s0 = strtableget_lwInE2j9aCwWqT2bvslVRNA((*frommod0).kindU.S3.tab, ident0); { if (!(s0 == NIM_NIL)) goto LA3; errorundeclaredidentifier_UdgIujB9c9aSmUmE2IpJcLjQ(c0, (*n0).info, (*ident0).s); } goto LA1; LA3: ; { { if (!((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 22))) goto LA8; loadstub_8lqBRdz0Xc1mefqrmXA9ceg(s0); } LA8: ; { if (!!(((21755776 &(1U<<((NU)((*s0).kind)&31U)))!=0))) goto LA12; internalerror_MXmtqrCmYwtOPkDCFgUWKQ((*n0).info, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_16)); } LA12: ; switch ((*s0).kind) { case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 12): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 17): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 16): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 14): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 13): case ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 15): { Tidentiter_Oi4goG2ACEsy9cyTe6OCPrA it0; Tsym_AXG7xcvKqaxY6koRX1xkCw* e0; memset((void*)(&it0), 0, sizeof(it0)); e0 = initidentiter_mWFOqJ9be21lsluYGFm6uRA((&it0), (*frommod0).kindU.S3.tab, (*s0).name); { while (1) { if (!!((e0 == NIM_NIL))) goto LA16; { if (!!(((*(*e0).name).Sup.id == (*(*s0).name).Sup.id))) goto LA19; internalerror_MXmtqrCmYwtOPkDCFgUWKQ((*n0).info, ((NimStringDesc*) &T_NsDkQfDe2CjzDqtBRW9bqQg_17)); } LA19: ; rawimportsymbol_7qtiNe9cOtkp0iv0cUito5g(c0, e0); e0 = nextidentiter_rTNfZVe9bciOJ9bfDRjx5gIw((&it0), (*frommod0).kindU.S3.tab); } LA16: ; } } break; default: { rawimportsymbol_7qtiNe9cOtkp0iv0cUito5g(c0, s0); } break; } } LA1: ; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, evalfrom_rlI2ulrJgB3tjNcA8reHfg_3)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; Tsym_AXG7xcvKqaxY6koRX1xkCw* m0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = n0; checkminsonslen_rPu9akNNYZgL0UexjMvt0HA_2(n0, ((NI) 2)); m0 = myimportmodule_DoWcqCJt9cuKDjAYd1A9c09aA(c0, (*n0).kindU.S6.sons->data[((NI) 0)]); { if (!!((m0 == NIM_NIL))) goto LA3; asgnRefNoCycle((void**) (&(*n0).kindU.S6.sons->data[((NI) 0)]), newsymnode_1ARBpggFQuvUDBVYjBelcw(m0)); adddecl_W9aLOGzur1Hha3FX24v0oSQ(c0, m0, (*n0).info); { NI i_5uTgSHuJ9bgQlO9amfOP6ZtA; NI HEX3Atmp_vQizW5FAO4kwj9ciqgemfGg; NI LOC6; NI res_FS2T28te14OoXylu7kXx4A; i_5uTgSHuJ9bgQlO9amfOP6ZtA = (NI)0; HEX3Atmp_vQizW5FAO4kwj9ciqgemfGg = (NI)0; LOC6 = (NI)0; LOC6 = sonslen_qPWPHw7WgJeEVYUdcaRIig(n0); HEX3Atmp_vQizW5FAO4kwj9ciqgemfGg = (NI)(LOC6 - ((NI) 1)); res_FS2T28te14OoXylu7kXx4A = ((NI) 1); { while (1) { if (!(res_FS2T28te14OoXylu7kXx4A <= HEX3Atmp_vQizW5FAO4kwj9ciqgemfGg)) goto LA8; i_5uTgSHuJ9bgQlO9amfOP6ZtA = res_FS2T28te14OoXylu7kXx4A; { if (!!(((*(*n0).kindU.S6.sons->data[i_5uTgSHuJ9bgQlO9amfOP6ZtA]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23)))) goto LA11; importsymbol_Ko0l9bvOgrbdCRB4gbBTFAA(c0, (*n0).kindU.S6.sons->data[i_5uTgSHuJ9bgQlO9amfOP6ZtA], m0); } LA11: ; res_FS2T28te14OoXylu7kXx4A += ((NI) 1); } LA8: ; } } } LA3: ; return result0; } N_NIMCALL(void, importallsymbols_v9bYwKRWh0kA7lMQcI9bUxDw)(Tcontext_5TfOJKwTttj3W1t1tMzWUQ* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* frommod0) { Intset_PQrmFm4BXFkFSVOUl1ojSg exceptset0; memset((void*)(&exceptset0), 0, sizeof(exceptset0)); importallsymbolsexcept_ZCm09cjke63Je5a9cuPSP4mw(c0, frommod0, exceptset0); } NIM_EXTERNC N_NOINLINE(void, compiler_importerInit000)(void) { } NIM_EXTERNC N_NOINLINE(void, compiler_importerDatInit000)(void) { }