/* Generated by Nim Compiler v0.16.0 */ /* (c) 2017 Andreas Rumpf */ /* The generated code is subject to the original license. */ #define NIM_INTBITS 64 #include "nimbase.h" #include #include #undef linux typedef struct Tsym_AXG7xcvKqaxY6koRX1xkCw Tsym_AXG7xcvKqaxY6koRX1xkCw; typedef struct ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ; typedef struct IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw; typedef struct Tnode_bROa11lyF5vxEN9aYNbHmhw Tnode_bROa11lyF5vxEN9aYNbHmhw; typedef struct TY_Kt26pfZ2dm3KOyU8Hxh6hQ TY_Kt26pfZ2dm3KOyU8Hxh6hQ; typedef struct Tpasscontext_qNsm39cWb35W2r5AAd9ch87g Tpasscontext_qNsm39cWb35W2r5AAd9ch87g; typedef struct Trodreader_16TURXdqtpMMssNVfU5WqQ Trodreader_16TURXdqtpMMssNVfU5WqQ; typedef struct TNimType TNimType; typedef struct TNimNode TNimNode; typedef struct TNimObject TNimObject; typedef struct Tllstream_IHsOGFu33dIY69a9bLlFHlHw Tllstream_IHsOGFu33dIY69a9bLlFHlHw; typedef struct Tparsers_WENTuyElSRFloaVOQEDvMg Tparsers_WENTuyElSRFloaVOQEDvMg; typedef struct Tparser_c38t9cDVS8o9b29cOovKwkANw Tparser_c38t9cDVS8o9b29cOovKwkANw; typedef struct Tlexer_IOWqYAjEw106AHiXcZcUGg Tlexer_IOWqYAjEw106AHiXcZcUGg; typedef struct Tbaselexer_z9a7O76kH1tJ9aXJ3h2MdEzA Tbaselexer_z9a7O76kH1tJ9aXJ3h2MdEzA; typedef struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw; typedef struct NimStringDesc NimStringDesc; typedef struct TGenericSeq TGenericSeq; typedef struct Ttoken_kLaEEPwLj8cag79cbYQIkHQ Ttoken_kLaEEPwLj8cag79cbYQIkHQ; typedef struct Tident_4umxGerWTHGPwUms7Yqu3g Tident_4umxGerWTHGPwUms7Yqu3g; 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 Ttype_LTUWCZolpovw9cWE3JBWSUw Ttype_LTUWCZolpovw9cWE3JBWSUw; typedef struct Tloc_EtHNvCB0bgfu9bFjzx9cb6aA Tloc_EtHNvCB0bgfu9bFjzx9cb6aA; typedef struct Ropeobj_HF4qJnb6xiOddgPmsxodtQ Ropeobj_HF4qJnb6xiOddgPmsxodtQ; typedef struct Tlib_4f9aBgmqEuj7uWJdBBGcRgA Tlib_4f9aBgmqEuj7uWJdBBGcRgA; typedef struct TY_sM4lkSb7zS6F7OVMvW9cffQ TY_sM4lkSb7zS6F7OVMvW9cffQ; typedef struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ TY_ehmV9bTklH2Gt9cXHV9c0HLeQ; typedef struct TY_EFqgCXJ4d8PgqOdFJmldsQ TY_EFqgCXJ4d8PgqOdFJmldsQ; typedef struct Intset_PQrmFm4BXFkFSVOUl1ojSg Intset_PQrmFm4BXFkFSVOUl1ojSg; typedef struct Trunk_ul49aWfv9aes8cutmeltT3gQ Trunk_ul49aWfv9aes8cutmeltT3gQ; typedef struct TY_9brg1xNurxcus33lU4IE1Dw TY_9brg1xNurxcus33lU4IE1Dw; typedef struct Table_tfmlwa8ktiw8woWAs5vhtQ Table_tfmlwa8ktiw8woWAs5vhtQ; typedef struct TY_kxu4GK0onha2t9bo86mdVAg TY_kxu4GK0onha2t9bo86mdVAg; typedef struct TY_48JTohSgTy339bRxHzUD8KA TY_48JTohSgTy339bRxHzUD8KA; typedef struct Tindex_hUZsEw7f9bvoVPQYLWHrTDQ Tindex_hUZsEw7f9bvoVPQYLWHrTDQ; typedef struct Tiitable_2ud26DHRGdy6LEqDPifSOA Tiitable_2ud26DHRGdy6LEqDPifSOA; typedef struct TY_h0IAOvrRzVzO3NpUxaxxvQ TY_h0IAOvrRzVzO3NpUxaxxvQ; typedef struct Table_DYt7wxxRVZ9c5PDjh5cfgPA Table_DYt7wxxRVZ9c5PDjh5cfgPA; typedef struct TY_eBSwX9aa9c1W8S1FJPmehz9aQ TY_eBSwX9aa9c1W8S1FJPmehz9aQ; typedef struct Memfile_j4SnXNrJDFBxAz4BlbM9aIQ Memfile_j4SnXNrJDFBxAz4BlbM9aIQ; typedef struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA; typedef struct TY_iGkpo9aKQdr3NWelKC4cnJA TY_iGkpo9aKQdr3NWelKC4cnJA; typedef struct Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q; typedef struct TY_xDU9bZmv1ZbZkJDaATBekIQ TY_xDU9bZmv1ZbZkJDaATBekIQ; typedef struct Tiipair_Vwj9bWy1xJ8WVCE9ctkEPJDA Tiipair_Vwj9bWy1xJ8WVCE9ctkEPJDA; typedef struct TY_XUtHSCESHcg7KVfuMIqQmw TY_XUtHSCESHcg7KVfuMIqQmw; typedef struct TY_a09bGTAl9ceOKTAytYdkbyKg TY_a09bGTAl9ceOKTAytYdkbyKg; typedef N_NIMCALL_PTR(Tsym_AXG7xcvKqaxY6koRX1xkCw*, TY_y9aVVLUC7Upj1FbhiBI5Rsg) (ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* graph0, Tsym_AXG7xcvKqaxY6koRX1xkCw* m0, NI32 fileidx0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0); typedef N_NIMCALL_PTR(Tnode_bROa11lyF5vxEN9aYNbHmhw*, TY_P9bpkXeUSTn55zt9cNyjKJQA) (ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* graph0, Tsym_AXG7xcvKqaxY6koRX1xkCw* m0, NI32 fileidx0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0); typedef N_NIMCALL_PTR(Tpasscontext_qNsm39cWb35W2r5AAd9ch87g*, TY_qVE6tETc7u8Eau18WewpGg) (ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* graph0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0); typedef N_NIMCALL_PTR(Tpasscontext_qNsm39cWb35W2r5AAd9ch87g*, TY_LgVKr1aC1gK0O29b6lFYYWg) (ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* graph0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, Trodreader_16TURXdqtpMMssNVfU5WqQ* rd0); typedef N_NIMCALL_PTR(Tnode_bROa11lyF5vxEN9aYNbHmhw*, TY_SxgxTlU9aOWVQBRe56a9btKw) (Tpasscontext_qNsm39cWb35W2r5AAd9ch87g* p0, Tnode_bROa11lyF5vxEN9aYNbHmhw* toplevelstmt0); struct TY_Kt26pfZ2dm3KOyU8Hxh6hQ { TY_qVE6tETc7u8Eau18WewpGg Field0; TY_LgVKr1aC1gK0O29b6lFYYWg Field1; TY_SxgxTlU9aOWVQBRe56a9btKw Field2; TY_SxgxTlU9aOWVQBRe56a9btKw Field3; }; typedef TY_Kt26pfZ2dm3KOyU8Hxh6hQ TY_PyoPkTeKIHA39cun6f8FJCw[10]; 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; }; typedef NU8 Tnimnodekind_unfNsxrcATrufDZmpBq4HQ; struct TNimNode { Tnimnodekind_unfNsxrcATrufDZmpBq4HQ kind; NI offset; TNimType* typ; NCSTRING name; NI len; TNimNode** sons; }; struct TNimObject { TNimType* m_type; }; struct Tpasscontext_qNsm39cWb35W2r5AAd9ch87g { TNimObject Sup; NIM_BOOL fromcache; }; typedef NU8 Tparserkind_wHYLpKaSFkZsAwL9crNQqGw; struct Tbaselexer_z9a7O76kH1tJ9aXJ3h2MdEzA { TNimObject Sup; NI bufpos; NCSTRING buf; NI buflen; Tllstream_IHsOGFu33dIY69a9bLlFHlHw* stream; NI linenumber; NI sentinel; NI linestart; }; typedef NU16 Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw; struct TGenericSeq { NI len; NI reserved; }; struct NimStringDesc { TGenericSeq Sup; NIM_CHAR data[SEQ_DECL_SIZE]; }; typedef struct { N_NIMCALL_PTR(void, ClPrc) (Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw msg0, NimStringDesc* arg0, void* ClEnv); void* ClEnv; } TY_l9buWVPY1qenw5uCj2k2Uqg; struct Tlexer_IOWqYAjEw106AHiXcZcUGg { Tbaselexer_z9a7O76kH1tJ9aXJ3h2MdEzA Sup; NI32 fileidx; NI indentahead; NI currlineindent; NIM_BOOL strongspaces; NIM_BOOL allowtabs; TY_l9buWVPY1qenw5uCj2k2Uqg errorhandler; IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache; }; typedef NU8 Ttoktype_vw8YkgaVtNadqP8v5OpXKA; typedef NU8 Tnumericalbase_9cbxR9czWgoXwHHSzHtd9aV7Q; struct Ttoken_kLaEEPwLj8cag79cbYQIkHQ { Ttoktype_vw8YkgaVtNadqP8v5OpXKA toktype; NI indent; Tident_4umxGerWTHGPwUms7Yqu3g* ident; NI64 inumber; NF fnumber; Tnumericalbase_9cbxR9czWgoXwHHSzHtd9aV7Q base; NI8 strongspacea; NI8 strongspaceb; NimStringDesc* literal; NI line; NI col; }; struct Tparser_c38t9cDVS8o9b29cOovKwkANw { NI currind; NIM_BOOL firsttok; NIM_BOOL strongspaces; Tlexer_IOWqYAjEw106AHiXcZcUGg lex; Ttoken_kLaEEPwLj8cag79cbYQIkHQ tok; NI inpragma; NI insemistmtlist; }; struct Tparsers_WENTuyElSRFloaVOQEDvMg { Tparserkind_wHYLpKaSFkZsAwL9crNQqGw skin; Tparser_c38t9cDVS8o9b29cOovKwkANw parser; }; typedef Tpasscontext_qNsm39cWb35W2r5AAd9ch87g* TY_EfxH6jno3JjlI3ngFrdjwQ[10]; struct Tidobj_raN9cHVgzmvaXisezY9aGg9cg { TNimObject Sup; NI id; }; typedef NU8 Tsymkind_cNCW9acsSznmEccl1fgQwkw; struct Tstrtable_f07aOS3dr28kGa5wcE29aFA { NI counter; TY_sksVpmPRIkNR9axiwtD1Guw* data; }; typedef NU16 Tmagic_shZhZOdbVC5nnFvcXQAImg; struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw { NI16 line; NI16 col; NI32 fileindex; }; typedef NU32 Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw_Set; typedef NU32 Toption_WspMeQySXNP2XoTWR5MTgg_Set; typedef NU8 Tlockind_O7PRFZKuiBBWbku09cayVBg; typedef NU8 Tstorageloc_JK9cKMX3XnqHaUky9b6gkGEw; typedef NU16 Tlocflag_o2bqJgR4ceIupnUSpxiudA_Set; struct Tloc_EtHNvCB0bgfu9bFjzx9cb6aA { Tlockind_O7PRFZKuiBBWbku09cayVBg k; Tstorageloc_JK9cKMX3XnqHaUky9b6gkGEw s; Tlocflag_o2bqJgR4ceIupnUSpxiudA_Set flags; Ttype_LTUWCZolpovw9cWE3JBWSUw* t; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* r; }; struct Tsym_AXG7xcvKqaxY6koRX1xkCw { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; Tsymkind_cNCW9acsSznmEccl1fgQwkw kind; union{ struct {TY_zuqP4Riz26Oi5fWgPYVEgA* typeinstcache; } S1; struct {TY_DXS6mEo7PVUFJkirsQ9bNQA* procinstcache; Tsym_AXG7xcvKqaxY6koRX1xkCw* gcunsafetyreason; } S2; struct {TY_DXS6mEo7PVUFJkirsQ9bNQA* usedgenerics; Tstrtable_f07aOS3dr28kGa5wcE29aFA tab; } S3; struct {Tsym_AXG7xcvKqaxY6koRX1xkCw* guard; NI bitsize; } S4; } kindU; Tmagic_shZhZOdbVC5nnFvcXQAImg magic; Ttype_LTUWCZolpovw9cWE3JBWSUw* typ; Tident_4umxGerWTHGPwUms7Yqu3g* name; Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info; Tsym_AXG7xcvKqaxY6koRX1xkCw* owner; Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw_Set flags; Tnode_bROa11lyF5vxEN9aYNbHmhw* ast; Toption_WspMeQySXNP2XoTWR5MTgg_Set options; NI position; NI offset; Tloc_EtHNvCB0bgfu9bFjzx9cb6aA loc; Tlib_4f9aBgmqEuj7uWJdBBGcRgA* annex; Tnode_bROa11lyF5vxEN9aYNbHmhw* constraint; }; typedef NU8 Filemode_fVUBHvW79bXUw1j55Oo9avSQ; typedef NU8 Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw; typedef NU8 Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw; 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 Tllstreamkind_jVcKY16LbOamXE9bxXUD6pQ; struct Tllstream_IHsOGFu33dIY69a9bLlFHlHw { TNimObject Sup; Tllstreamkind_jVcKY16LbOamXE9bxXUD6pQ kind; FILE* f; NimStringDesc* s; NI rd; NI wr; NI lineoffset; }; struct TY_EFqgCXJ4d8PgqOdFJmldsQ { Tnode_bROa11lyF5vxEN9aYNbHmhw* Field0; Tnode_bROa11lyF5vxEN9aYNbHmhw* Field1; }; struct Intset_PQrmFm4BXFkFSVOUl1ojSg { NI counter; NI max; Trunk_ul49aWfv9aes8cutmeltT3gQ* head; TY_9brg1xNurxcus33lU4IE1Dw* data; }; 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 Tident_4umxGerWTHGPwUms7Yqu3g* TY_CBfZt49asUfAsBVM7a3Rc9cw[8192]; struct IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw { TY_CBfZt49asUfAsBVM7a3Rc9cw buckets; NI wordcounter; Tident_4umxGerWTHGPwUms7Yqu3g* idanon; Tident_4umxGerWTHGPwUms7Yqu3g* iddelegator; Tident_4umxGerWTHGPwUms7Yqu3g* emptyident; }; typedef NU8 Treasonforrecompile_CESX1DWEXOC2bslyDO2n5A; struct Tiitable_2ud26DHRGdy6LEqDPifSOA { NI counter; TY_h0IAOvrRzVzO3NpUxaxxvQ* data; }; struct Tindex_hUZsEw7f9bvoVPQYLWHrTDQ { NI lastidxkey; NI lastidxval; Tiitable_2ud26DHRGdy6LEqDPifSOA tab; NimStringDesc* r; NI offset; }; struct Table_DYt7wxxRVZ9c5PDjh5cfgPA { TY_eBSwX9aa9c1W8S1FJPmehz9aQ* data; NI counter; }; struct Memfile_j4SnXNrJDFBxAz4BlbM9aIQ { void* mem; NI size; int handle; }; struct Trodreader_16TURXdqtpMMssNVfU5WqQ { TNimObject Sup; NI pos; NCSTRING s; Toption_WspMeQySXNP2XoTWR5MTgg_Set options; Treasonforrecompile_CESX1DWEXOC2bslyDO2n5A reason; TY_48JTohSgTy339bRxHzUD8KA* moddeps; TY_48JTohSgTy339bRxHzUD8KA* files; NI dataidx; NI convertersidx; NI initidx; NI interfidx; NI compilerprocsidx; NI methodsidx; NimStringDesc* filename; Tindex_hUZsEw7f9bvoVPQYLWHrTDQ index; Tindex_hUZsEw7f9bvoVPQYLWHrTDQ imports; NI readerindex; NI line; NI moduleid; Table_DYt7wxxRVZ9c5PDjh5cfgPA syms; Memfile_j4SnXNrJDFBxAz4BlbM9aIQ memfile; TY_sksVpmPRIkNR9axiwtD1Guw* methods; NimStringDesc* origfile; NIM_BOOL inviewmode; IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache; }; struct Tident_4umxGerWTHGPwUms7Yqu3g { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; NimStringDesc* s; Tident_4umxGerWTHGPwUms7Yqu3g* next; NI h; }; 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 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; }; typedef NI TY_9a8QARi5WsUggNU9bom7kzTQ[8]; struct Trunk_ul49aWfv9aes8cutmeltT3gQ { Trunk_ul49aWfv9aes8cutmeltT3gQ* next; NI key; TY_9a8QARi5WsUggNU9bom7kzTQ bits; }; struct TY_xDU9bZmv1ZbZkJDaATBekIQ { NI Field0; NI32 Field1; NI32 Field2; }; struct Tiipair_Vwj9bWy1xJ8WVCE9ctkEPJDA { NI key; NI val; }; struct TY_XUtHSCESHcg7KVfuMIqQmw { NI Field0; NI Field1; Tsym_AXG7xcvKqaxY6koRX1xkCw* Field2; }; struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA { Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; TY_zuqP4Riz26Oi5fWgPYVEgA* concretetypes; NI compilesid; }; struct TY_a09bGTAl9ceOKTAytYdkbyKg { NI Field0; Tsym_AXG7xcvKqaxY6koRX1xkCw* Field1; }; struct TY_sM4lkSb7zS6F7OVMvW9cffQ { TGenericSeq Sup; NimStringDesc* 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_ehmV9bTklH2Gt9cXHV9c0HLeQ { TGenericSeq Sup; Tnode_bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE]; }; struct TY_9brg1xNurxcus33lU4IE1Dw { TGenericSeq Sup; Trunk_ul49aWfv9aes8cutmeltT3gQ* 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_h0IAOvrRzVzO3NpUxaxxvQ { TGenericSeq Sup; Tiipair_Vwj9bWy1xJ8WVCE9ctkEPJDA data[SEQ_DECL_SIZE]; }; struct TY_eBSwX9aa9c1W8S1FJPmehz9aQ { TGenericSeq Sup; TY_XUtHSCESHcg7KVfuMIqQmw data[SEQ_DECL_SIZE]; }; struct TY_iGkpo9aKQdr3NWelKC4cnJA { TGenericSeq Sup; TY_a09bGTAl9ceOKTAytYdkbyKg data[SEQ_DECL_SIZE]; }; N_NIMCALL(void, objectInit)(void* dest0, TNimType* typ0); N_NIMCALL(void, openpasses_9a9awkunp9bsf1WISM9cQNHFOA)(ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* g0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0); N_NIMCALL(void, unsureAsgnRef)(void** dest0, void* src0); N_NIMCALL(NimStringDesc*, tofullpathconsiderdirty_7s19cb7WBgztz9aqEBzwwuqA_2)(NI32 fileidx0); N_NIMCALL(Tllstream_IHsOGFu33dIY69a9bLlFHlHw*, llstreamopen_TMcHzC3C639c0ccC0wtKA2w)(NimStringDesc* filename0, Filemode_fVUBHvW79bXUw1j55Oo9avSQ mode0); N_NIMCALL(void, rawmessage_tBJ8mvo7MzzirsGkrHVc9cw)(Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw msg0, NimStringDesc* arg0); N_NIMCALL(void, openparsers_zDBDS8Km3Tchi1ohPVieKQ)(Tparsers_WENTuyElSRFloaVOQEDvMg* p0, NI32 fileidx0, Tllstream_IHsOGFu33dIY69a9bLlFHlHw* inputstream0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0); N_NIMCALL(void, processimplicits_H9bUFtWI5AAjId3W9bhrJ9aHQ)(TY_sM4lkSb7zS6F7OVMvW9cffQ* implicits0, Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw nodekind0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* m0); N_NIMCALL(NimStringDesc*, tofullpath_7s19cb7WBgztz9aqEBzwwuqA)(NI32 fileidx0); N_NIMCALL(NI32, resolvemod_7VfYa9bhYGvWCSRuW9co9blsw)(NimStringDesc* module0, NimStringDesc* relativeto0); N_NIMCALL(NimStringDesc*, findmodule_EcukdJLszq41C6G0HEdN9bw)(NimStringDesc* modulename0, NimStringDesc* currentmodule0); N_NIMCALL(NI32, fileinfoidx_RXxXBoV2drjjVnQa9abo19cQ)(NimStringDesc* filename0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newnodei_PIqgSH9b0m7nFpOyXf9cpz5w)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newstrnode_8GaTnuPqpzGLNcerzDOURQ)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, NimStringDesc* strval0); N_NIMCALL(void, addson_gCCf68XrWL79bKes6htzFjQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* father0, Tnode_bROa11lyF5vxEN9aYNbHmhw* son0); N_NIMCALL(NIM_BOOL, processtoplevelstmt_E8OUxvRdSMAG33sg3W3ekw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, parsetoplevelstmt_N9cl8bNz6TaGrhhLXmkyhrw_2)(Tparsers_WENTuyElSRFloaVOQEDvMg* p0); N_NIMCALL(void, add_gCCf68XrWL79bKes6htzFjQ_3)(Tnode_bROa11lyF5vxEN9aYNbHmhw* father0, Tnode_bROa11lyF5vxEN9aYNbHmhw* son0); N_NIMCALL(void, closeparsers_aZMERNSTUyTfW9aaFR9bAn9aQ)(Tparsers_WENTuyElSRFloaVOQEDvMg* p0); N_NIMCALL(void, closepasses_IgpwCdeb6eCt1cdrfLis4A)(Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0); N_NIMCALL(void, idsynchronizationpoint_GU7xhi8Sthx1AieMTTUZqQ)(NI idrange0); N_NIMCALL(void, openpassescached_IGsfGjFpE7vjVirBr0NFSg)(ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* g0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, Trodreader_16TURXdqtpMMssNVfU5WqQ* rd0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, loadinitsection_tp5rvpXDujpSph4dM4wQqQ)(Trodreader_16TURXdqtpMMssNVfU5WqQ* r0); N_NIMCALL(NI, sonslen_qPWPHw7WgJeEVYUdcaRIig)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, processtoplevelstmtcached_a9ae9aHO8OMdKkNy7J2EOzuA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0); N_NIMCALL(void, closepassescached_IgpwCdeb6eCt1cdrfLis4A_2)(Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0); N_NIMCALL(void, carrypass_HktSpRMZx9c0o0lKHlAFuYA)(ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* g0, TY_Kt26pfZ2dm3KOyU8Hxh6hQ* p0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0, TY_EFqgCXJ4d8PgqOdFJmldsQ m0, TY_EFqgCXJ4d8PgqOdFJmldsQ* Result); TY_y9aVVLUC7Upj1FbhiBI5Rsg gimportmodule_6yHi5jlyB9bdgfbMGpclQWg; TY_P9bpkXeUSTn55zt9cNyjKJQA gincludefile_xRgu8Wul7H8ptXIl9aVbwIw; TY_PyoPkTeKIHA39cun6f8FJCw gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ; NI gpasseslen_NFHJ7gAJuig5SljsopnwDw; extern TNimType NTI_13RNkKqUOX1TtorOUlKtqA; TNimType NTI_qNsm39cWb35W2r5AAd9ch87g; extern TNimType NTI_VaVACK0bpYmqIQ0mKcHfQQ; extern TNimType NTI_WENTuyElSRFloaVOQEDvMg; extern Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw gcmdlineinfo_yhfh3fjBy4h9bf6keLoh9aXQ; extern TY_sM4lkSb7zS6F7OVMvW9cffQ* implicitimports_XYWUArUq6jyG8rkdCgiYHg; extern TY_sM4lkSb7zS6F7OVMvW9cffQ* implicitincludes_ONs9cUe5UCi0qmlNQlNHiMg; N_NIMCALL(void, openpasses_9a9awkunp9bsf1WISM9cQNHFOA)(ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* g0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0) { { NI i_7R5oMiVypC7yL9bjIeq9cF9ag; NI HEX3Atmp_kiGpq9blJttP9bK0AcuU9cJTA; NI res_BtDumTq7uBmfMaI87F9cUOA; i_7R5oMiVypC7yL9bjIeq9cF9ag = (NI)0; HEX3Atmp_kiGpq9blJttP9bK0AcuU9cJTA = (NI)0; HEX3Atmp_kiGpq9blJttP9bK0AcuU9cJTA = (NI)(gpasseslen_NFHJ7gAJuig5SljsopnwDw - ((NI) 1)); res_BtDumTq7uBmfMaI87F9cUOA = ((NI) 0); { while (1) { if (!(res_BtDumTq7uBmfMaI87F9cUOA <= HEX3Atmp_kiGpq9blJttP9bK0AcuU9cJTA)) goto LA3; i_7R5oMiVypC7yL9bjIeq9cF9ag = res_BtDumTq7uBmfMaI87F9cUOA; { if (!!((gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_7R5oMiVypC7yL9bjIeq9cF9ag)- 0].Field0 == 0))) goto LA6; unsureAsgnRef((void**) (&a0[(i_7R5oMiVypC7yL9bjIeq9cF9ag)- 0]), gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_7R5oMiVypC7yL9bjIeq9cF9ag)- 0].Field0(g0, module0, cache0)); } goto LA4; LA6: ; { unsureAsgnRef((void**) (&a0[(i_7R5oMiVypC7yL9bjIeq9cF9ag)- 0]), NIM_NIL); } LA4: ; res_BtDumTq7uBmfMaI87F9cUOA += ((NI) 1); } LA3: ; } } } N_NIMCALL(NI32, resolvemod_7VfYa9bhYGvWCSRuW9co9blsw)(NimStringDesc* module0, NimStringDesc* relativeto0) { NI32 result0; NimStringDesc* fullpath0; result0 = (NI32)0; fullpath0 = findmodule_EcukdJLszq41C6G0HEdN9bw(module0, relativeto0); { if (!((fullpath0 ? fullpath0->Sup.len : 0) == ((NI) 0))) goto LA3; result0 = ((NI32) -1); } goto LA1; LA3: ; { result0 = fileinfoidx_RXxXBoV2drjjVnQa9abo19cQ(fullpath0); } LA1: ; return result0; } N_NIMCALL(NIM_BOOL, processtoplevelstmt_E8OUxvRdSMAG33sg3W3ekw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0) { NIM_BOOL result0; Tnode_bROa11lyF5vxEN9aYNbHmhw* m0; { result0 = (NIM_BOOL)0; m0 = n0; { NI i_9c8kOXTO0wc10M284O035XQ; NI HEX3Atmp_USbVEK9b4ckqCNGxTm2o4CQ; NI res_Bh9cwYSC5Li4C74jRha8tUw; i_9c8kOXTO0wc10M284O035XQ = (NI)0; HEX3Atmp_USbVEK9b4ckqCNGxTm2o4CQ = (NI)0; HEX3Atmp_USbVEK9b4ckqCNGxTm2o4CQ = (NI)(gpasseslen_NFHJ7gAJuig5SljsopnwDw - ((NI) 1)); res_Bh9cwYSC5Li4C74jRha8tUw = ((NI) 0); { while (1) { if (!(res_Bh9cwYSC5Li4C74jRha8tUw <= HEX3Atmp_USbVEK9b4ckqCNGxTm2o4CQ)) goto LA3; i_9c8kOXTO0wc10M284O035XQ = res_Bh9cwYSC5Li4C74jRha8tUw; { if (!!((gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_9c8kOXTO0wc10M284O035XQ)- 0].Field2 == 0))) goto LA6; m0 = gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_9c8kOXTO0wc10M284O035XQ)- 0].Field2(a0[(i_9c8kOXTO0wc10M284O035XQ)- 0], m0); { if (!(m0 == 0)) goto LA10; result0 = NIM_FALSE; goto BeforeRet; } LA10: ; } LA6: ; res_Bh9cwYSC5Li4C74jRha8tUw += ((NI) 1); } LA3: ; } } result0 = NIM_TRUE; }BeforeRet: ; return result0; } N_NIMCALL(void, processimplicits_H9bUFtWI5AAjId3W9bhrJ9aHQ)(TY_sM4lkSb7zS6F7OVMvW9cffQ* implicits0, Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw nodekind0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* m0) { NimStringDesc* relativeto0; relativeto0 = tofullpath_7s19cb7WBgztz9aqEBzwwuqA((*m0).info.fileindex); { NimStringDesc* module_yOiVqIxVBgJryEyTXFwR9ag; NI i_Pe9b5Ko3YUcc9bImSSGe15WA; NI L_Bo4JzEiF70axIOx8Vpg4uw; module_yOiVqIxVBgJryEyTXFwR9ag = (NimStringDesc*)0; i_Pe9b5Ko3YUcc9bImSSGe15WA = ((NI) 0); L_Bo4JzEiF70axIOx8Vpg4uw = (implicits0 ? implicits0->Sup.len : 0); { while (1) { if (!(i_Pe9b5Ko3YUcc9bImSSGe15WA < L_Bo4JzEiF70axIOx8Vpg4uw)) goto LA3; module_yOiVqIxVBgJryEyTXFwR9ag = implicits0->data[i_Pe9b5Ko3YUcc9bImSSGe15WA]; { NI32 LOC6; Tnode_bROa11lyF5vxEN9aYNbHmhw* importstmt0; Tnode_bROa11lyF5vxEN9aYNbHmhw* str0; LOC6 = (NI32)0; LOC6 = resolvemod_7VfYa9bhYGvWCSRuW9co9blsw(module_yOiVqIxVBgJryEyTXFwR9ag, relativeto0); if (!!(((*m0).position == ((NI) (LOC6))))) goto LA7; importstmt0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(nodekind0, gcmdlineinfo_yhfh3fjBy4h9bf6keLoh9aXQ); str0 = newstrnode_8GaTnuPqpzGLNcerzDOURQ(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 20), module_yOiVqIxVBgJryEyTXFwR9ag); (*str0).info = gcmdlineinfo_yhfh3fjBy4h9bf6keLoh9aXQ; addson_gCCf68XrWL79bKes6htzFjQ(importstmt0, str0); { NIM_BOOL LOC11; LOC11 = (NIM_BOOL)0; LOC11 = processtoplevelstmt_E8OUxvRdSMAG33sg3W3ekw(importstmt0, a0); if (!!(LOC11)) goto LA12; goto LA1; } LA12: ; } LA7: ; i_Pe9b5Ko3YUcc9bImSSGe15WA += ((NI) 1); } LA3: ; } } LA1: ; } N_NIMCALL(void, closepasses_IgpwCdeb6eCt1cdrfLis4A)(Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* m0; m0 = NIM_NIL; { NI i_CyjOD0JXU33TM7HLdN9bhYw; NI HEX3Atmp_C4iXuOcY3khaczNgiBADYw; NI res_mKZdEluio4HeQoGRYRdI9bw; i_CyjOD0JXU33TM7HLdN9bhYw = (NI)0; HEX3Atmp_C4iXuOcY3khaczNgiBADYw = (NI)0; HEX3Atmp_C4iXuOcY3khaczNgiBADYw = (NI)(gpasseslen_NFHJ7gAJuig5SljsopnwDw - ((NI) 1)); res_mKZdEluio4HeQoGRYRdI9bw = ((NI) 0); { while (1) { if (!(res_mKZdEluio4HeQoGRYRdI9bw <= HEX3Atmp_C4iXuOcY3khaczNgiBADYw)) goto LA3; i_CyjOD0JXU33TM7HLdN9bhYw = res_mKZdEluio4HeQoGRYRdI9bw; { if (!!((gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_CyjOD0JXU33TM7HLdN9bhYw)- 0].Field3 == 0))) goto LA6; m0 = gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_CyjOD0JXU33TM7HLdN9bhYw)- 0].Field3(a0[(i_CyjOD0JXU33TM7HLdN9bhYw)- 0], m0); } LA6: ; unsureAsgnRef((void**) (&a0[(i_CyjOD0JXU33TM7HLdN9bhYw)- 0]), NIM_NIL); res_mKZdEluio4HeQoGRYRdI9bw += ((NI) 1); } LA3: ; } } } N_NIMCALL(void, openpassescached_IGsfGjFpE7vjVirBr0NFSg)(ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* g0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, Trodreader_16TURXdqtpMMssNVfU5WqQ* rd0) { { NI i_2Gou0u9cOSupj1m7A7cAMoA; NI HEX3Atmp_WM1HErsqAHsdKSu7yPlWqQ; NI res_7KblMAKgdODqN9a6KirhWSQ; i_2Gou0u9cOSupj1m7A7cAMoA = (NI)0; HEX3Atmp_WM1HErsqAHsdKSu7yPlWqQ = (NI)0; HEX3Atmp_WM1HErsqAHsdKSu7yPlWqQ = (NI)(gpasseslen_NFHJ7gAJuig5SljsopnwDw - ((NI) 1)); res_7KblMAKgdODqN9a6KirhWSQ = ((NI) 0); { while (1) { if (!(res_7KblMAKgdODqN9a6KirhWSQ <= HEX3Atmp_WM1HErsqAHsdKSu7yPlWqQ)) goto LA3; i_2Gou0u9cOSupj1m7A7cAMoA = res_7KblMAKgdODqN9a6KirhWSQ; { if (!!((gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_2Gou0u9cOSupj1m7A7cAMoA)- 0].Field1 == 0))) goto LA6; unsureAsgnRef((void**) (&a0[(i_2Gou0u9cOSupj1m7A7cAMoA)- 0]), gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_2Gou0u9cOSupj1m7A7cAMoA)- 0].Field1(g0, module0, rd0)); { if (!!((a0[(i_2Gou0u9cOSupj1m7A7cAMoA)- 0] == NIM_NIL))) goto LA10; (*a0[(i_2Gou0u9cOSupj1m7A7cAMoA)- 0]).fromcache = NIM_TRUE; } LA10: ; } goto LA4; LA6: ; { unsureAsgnRef((void**) (&a0[(i_2Gou0u9cOSupj1m7A7cAMoA)- 0]), NIM_NIL); } LA4: ; res_7KblMAKgdODqN9a6KirhWSQ += ((NI) 1); } LA3: ; } } } N_NIMCALL(void, processtoplevelstmtcached_a9ae9aHO8OMdKkNy7J2EOzuA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* m0; m0 = n0; { NI i_BFCcQyjUWd85swrGS9cCsnw; NI HEX3Atmp_M1UMH6kg2yjx7c8wRNpKhg; NI res_4s0tAJCNV1gwN3uGLXYKwg; i_BFCcQyjUWd85swrGS9cCsnw = (NI)0; HEX3Atmp_M1UMH6kg2yjx7c8wRNpKhg = (NI)0; HEX3Atmp_M1UMH6kg2yjx7c8wRNpKhg = (NI)(gpasseslen_NFHJ7gAJuig5SljsopnwDw - ((NI) 1)); res_4s0tAJCNV1gwN3uGLXYKwg = ((NI) 0); { while (1) { if (!(res_4s0tAJCNV1gwN3uGLXYKwg <= HEX3Atmp_M1UMH6kg2yjx7c8wRNpKhg)) goto LA3; i_BFCcQyjUWd85swrGS9cCsnw = res_4s0tAJCNV1gwN3uGLXYKwg; { if (!!((gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_BFCcQyjUWd85swrGS9cCsnw)- 0].Field1 == 0))) goto LA6; m0 = gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_BFCcQyjUWd85swrGS9cCsnw)- 0].Field2(a0[(i_BFCcQyjUWd85swrGS9cCsnw)- 0], m0); } LA6: ; res_4s0tAJCNV1gwN3uGLXYKwg += ((NI) 1); } LA3: ; } } } N_NIMCALL(void, closepassescached_IgpwCdeb6eCt1cdrfLis4A_2)(Tpasscontext_qNsm39cWb35W2r5AAd9ch87g** a0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* m0; m0 = NIM_NIL; { NI i_fdWdLAMpKXeitRAADZl02w; NI HEX3Atmp_9a7jCgbd5Z2sufiJMz2qSiw; NI res_JPKgXSGT9bBoObqXVj20ELg; i_fdWdLAMpKXeitRAADZl02w = (NI)0; HEX3Atmp_9a7jCgbd5Z2sufiJMz2qSiw = (NI)0; HEX3Atmp_9a7jCgbd5Z2sufiJMz2qSiw = (NI)(gpasseslen_NFHJ7gAJuig5SljsopnwDw - ((NI) 1)); res_JPKgXSGT9bBoObqXVj20ELg = ((NI) 0); { while (1) { if (!(res_JPKgXSGT9bBoObqXVj20ELg <= HEX3Atmp_9a7jCgbd5Z2sufiJMz2qSiw)) goto LA3; i_fdWdLAMpKXeitRAADZl02w = res_JPKgXSGT9bBoObqXVj20ELg; { NIM_BOOL LOC6; LOC6 = (NIM_BOOL)0; LOC6 = !((gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_fdWdLAMpKXeitRAADZl02w)- 0].Field1 == 0)); if (!(LOC6)) goto LA7; LOC6 = !((gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_fdWdLAMpKXeitRAADZl02w)- 0].Field3 == 0)); LA7: ; if (!LOC6) goto LA8; m0 = gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(i_fdWdLAMpKXeitRAADZl02w)- 0].Field3(a0[(i_fdWdLAMpKXeitRAADZl02w)- 0], m0); } LA8: ; unsureAsgnRef((void**) (&a0[(i_fdWdLAMpKXeitRAADZl02w)- 0]), NIM_NIL); res_JPKgXSGT9bBoObqXVj20ELg += ((NI) 1); } LA3: ; } } } N_NIMCALL(NIM_BOOL, processmodule_pyM9ad0hA9cMjwxiROot9a9cSw)(ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* graph0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, Tllstream_IHsOGFu33dIY69a9bLlFHlHw* stream0, Trodreader_16TURXdqtpMMssNVfU5WqQ* rd0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0) { NIM_BOOL result0; Tparsers_WENTuyElSRFloaVOQEDvMg p0; TY_EfxH6jno3JjlI3ngFrdjwQ a0; Tllstream_IHsOGFu33dIY69a9bLlFHlHw* s0; NI32 fileidx0; { result0 = (NIM_BOOL)0; memset((void*)(&p0), 0, sizeof(p0)); objectInit((&p0), (&NTI_WENTuyElSRFloaVOQEDvMg)); memset((void*)a0, 0, sizeof(a0)); s0 = (Tllstream_IHsOGFu33dIY69a9bLlFHlHw*)0; fileidx0 = ((NI32) ((*module0).position)); { if (!(rd0 == NIM_NIL)) goto LA3; openpasses_9a9awkunp9bsf1WISM9cQNHFOA(graph0, a0, module0, cache0); { NimStringDesc* filename0; if (!(stream0 == NIM_NIL)) goto LA7; filename0 = tofullpathconsiderdirty_7s19cb7WBgztz9aqEBzwwuqA_2(fileidx0); s0 = llstreamopen_TMcHzC3C639c0ccC0wtKA2w(filename0, ((Filemode_fVUBHvW79bXUw1j55Oo9avSQ) 0)); { if (!(s0 == NIM_NIL)) goto LA11; rawmessage_tBJ8mvo7MzzirsGkrHVc9cw(((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 3), filename0); result0 = NIM_FALSE; goto BeforeRet; } LA11: ; } goto LA5; LA7: ; { s0 = stream0; } LA5: ; { while (1) { openparsers_zDBDS8Km3Tchi1ohPVieKQ((&p0), fileidx0, s0, cache0); { if (!!((((*module0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 13))&31U)))!=0))) goto LA18; processimplicits_H9bUFtWI5AAjId3W9bhrJ9aHQ(implicitimports_XYWUArUq6jyG8rkdCgiYHg, ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 116), a0, module0); processimplicits_H9bUFtWI5AAjId3W9bhrJ9aHQ(implicitincludes_ONs9cUe5UCi0qmlNQlNHiMg, ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 121), a0, module0); } LA18: ; { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* n_RovKCi9bJ1dnFHi9cWDHeWJQ; n_RovKCi9bJ1dnFHi9cWDHeWJQ = parsetoplevelstmt_N9cl8bNz6TaGrhhLXmkyhrw_2((&p0)); { if (!((*n_RovKCi9bJ1dnFHi9cWDHeWJQ).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1))) goto LA24; goto LA20; } LA24: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* sl0; NIM_BOOL LOC36; if (!(((*module0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 8))&31U)))!=0)) goto LA28; sl0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n_RovKCi9bJ1dnFHi9cWDHeWJQ).info); add_gCCf68XrWL79bKes6htzFjQ_3(sl0, n_RovKCi9bJ1dnFHi9cWDHeWJQ); { while (1) { Tnode_bROa11lyF5vxEN9aYNbHmhw* n0; n0 = parsetoplevelstmt_N9cl8bNz6TaGrhhLXmkyhrw_2((&p0)); { if (!((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1))) goto LA34; goto LA30; } LA34: ; add_gCCf68XrWL79bKes6htzFjQ_3(sl0, n0); } } LA30: ; LOC36 = (NIM_BOOL)0; LOC36 = processtoplevelstmt_E8OUxvRdSMAG33sg3W3ekw(sl0, a0); goto LA20; } goto LA26; LA28: ; { NIM_BOOL LOC38; LOC38 = (NIM_BOOL)0; LOC38 = processtoplevelstmt_E8OUxvRdSMAG33sg3W3ekw(n_RovKCi9bJ1dnFHi9cWDHeWJQ, a0); if (!!(LOC38)) goto LA39; goto LA20; } goto LA26; LA39: ; LA26: ; } } LA20: ; closeparsers_aZMERNSTUyTfW9aaFR9bAn9aQ((&p0)); { if (!!(((*s0).kind == ((Tllstreamkind_jVcKY16LbOamXE9bxXUD6pQ) 3)))) goto LA43; goto LA14; } LA43: ; } } LA14: ; closepasses_IgpwCdeb6eCt1cdrfLis4A(a0); idsynchronizationpoint_GU7xhi8Sthx1AieMTTUZqQ(((NI) 1000)); } goto LA1; LA3: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* n0; openpassescached_IGsfGjFpE7vjVirBr0NFSg(graph0, a0, module0, rd0); n0 = loadinitsection_tp5rvpXDujpSph4dM4wQqQ(rd0); { NI i_36b7QCjCNQvJssPk9btWryA; NI HEX3Atmp_NELCkpaLgMbHfhpZ0FKncg; NI LOC47; NI res_QVDOW9cYXvulkzSZdNxPTIw; i_36b7QCjCNQvJssPk9btWryA = (NI)0; HEX3Atmp_NELCkpaLgMbHfhpZ0FKncg = (NI)0; LOC47 = (NI)0; LOC47 = sonslen_qPWPHw7WgJeEVYUdcaRIig(n0); HEX3Atmp_NELCkpaLgMbHfhpZ0FKncg = (NI)(LOC47 - ((NI) 1)); res_QVDOW9cYXvulkzSZdNxPTIw = ((NI) 0); { while (1) { if (!(res_QVDOW9cYXvulkzSZdNxPTIw <= HEX3Atmp_NELCkpaLgMbHfhpZ0FKncg)) goto LA49; i_36b7QCjCNQvJssPk9btWryA = res_QVDOW9cYXvulkzSZdNxPTIw; processtoplevelstmtcached_a9ae9aHO8OMdKkNy7J2EOzuA((*n0).kindU.S6.sons->data[i_36b7QCjCNQvJssPk9btWryA], a0); res_QVDOW9cYXvulkzSZdNxPTIw += ((NI) 1); } LA49: ; } } closepassescached_IgpwCdeb6eCt1cdrfLis4A_2(a0); } LA1: ; result0 = NIM_TRUE; }BeforeRet: ; return result0; } N_NIMCALL(void, registerpass_pxMoPBbqGoxVUqcG9bZhXQw)(TY_Kt26pfZ2dm3KOyU8Hxh6hQ* p0) { gpasses_zXJbb9cvgC2t3oeVpgGY9bmQ[(gpasseslen_NFHJ7gAJuig5SljsopnwDw)- 0] = (*p0); gpasseslen_NFHJ7gAJuig5SljsopnwDw += ((NI) 1); } N_NIMCALL(void, clearpasses_nNiiyBQuG1SL5U9cuRPvnNQ)(void) { gpasseslen_NFHJ7gAJuig5SljsopnwDw = ((NI) 0); } N_NIMCALL(void, carrypass_HktSpRMZx9c0o0lKHlAFuYA)(ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* g0, TY_Kt26pfZ2dm3KOyU8Hxh6hQ* p0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0, TY_EFqgCXJ4d8PgqOdFJmldsQ m0, TY_EFqgCXJ4d8PgqOdFJmldsQ* Result) { Tpasscontext_qNsm39cWb35W2r5AAd9ch87g* c0; c0 = (*p0).Field0(g0, module0, cache0); unsureAsgnRef((void**) (&(*Result).Field0), (*p0).Field2(c0, m0.Field0)); { if (!!(((*p0).Field3 == NIM_NIL))) goto LA3; unsureAsgnRef((void**) (&(*Result).Field1), (*p0).Field3(c0, m0.Field1)); } goto LA1; LA3: ; { unsureAsgnRef((void**) (&(*Result).Field1), m0.Field1); } LA1: ; } N_NIMCALL(void, carrypasses_757V9aTw34BP8CCeWGqYrYg)(ModulegraphHEX3Aobjecttype_RZI3hCs0FTPYx8StfC81qQ* g0, Tnode_bROa11lyF5vxEN9aYNbHmhw* nodes0, Tsym_AXG7xcvKqaxY6koRX1xkCw* module0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0, TY_Kt26pfZ2dm3KOyU8Hxh6hQ* passes0, NI passes0Len0) { TY_EFqgCXJ4d8PgqOdFJmldsQ passdata0; memset((void*)(&passdata0), 0, sizeof(passdata0)); passdata0.Field0 = nodes0; { TY_Kt26pfZ2dm3KOyU8Hxh6hQ pass_sjl9bU7oOH7S8ErFUjylRtw; NI i_6bpGs7vQwwcwB5nuMxs9c2w; memset((void*)(&pass_sjl9bU7oOH7S8ErFUjylRtw), 0, sizeof(pass_sjl9bU7oOH7S8ErFUjylRtw)); i_6bpGs7vQwwcwB5nuMxs9c2w = ((NI) 0); { while (1) { TY_EFqgCXJ4d8PgqOdFJmldsQ LOC4; if (!(i_6bpGs7vQwwcwB5nuMxs9c2w < passes0Len0)) goto LA3; pass_sjl9bU7oOH7S8ErFUjylRtw = passes0[i_6bpGs7vQwwcwB5nuMxs9c2w]; memset((void*)(&LOC4), 0, sizeof(LOC4)); carrypass_HktSpRMZx9c0o0lKHlAFuYA(g0, (&pass_sjl9bU7oOH7S8ErFUjylRtw), module0, cache0, passdata0, (&LOC4)); passdata0.Field0 = LOC4.Field0; passdata0.Field1 = LOC4.Field1; i_6bpGs7vQwwcwB5nuMxs9c2w += ((NI) 1); } LA3: ; } } } NIM_EXTERNC N_NOINLINE(void, compiler_passesInit000)(void) { } NIM_EXTERNC N_NOINLINE(void, compiler_passesDatInit000)(void) { static TNimNode T_Tko7U9cii9bC6Kt2otnwMmCg_0[1]; NTI_qNsm39cWb35W2r5AAd9ch87g.size = sizeof(Tpasscontext_qNsm39cWb35W2r5AAd9ch87g); NTI_qNsm39cWb35W2r5AAd9ch87g.kind = 17; NTI_qNsm39cWb35W2r5AAd9ch87g.base = (&NTI_13RNkKqUOX1TtorOUlKtqA); NTI_qNsm39cWb35W2r5AAd9ch87g.flags = 1; T_Tko7U9cii9bC6Kt2otnwMmCg_0[0].kind = 1; T_Tko7U9cii9bC6Kt2otnwMmCg_0[0].offset = offsetof(Tpasscontext_qNsm39cWb35W2r5AAd9ch87g, fromcache); T_Tko7U9cii9bC6Kt2otnwMmCg_0[0].typ = (&NTI_VaVACK0bpYmqIQ0mKcHfQQ); T_Tko7U9cii9bC6Kt2otnwMmCg_0[0].name = "fromCache"; NTI_qNsm39cWb35W2r5AAd9ch87g.node = &T_Tko7U9cii9bC6Kt2otnwMmCg_0[0]; }