/* Generated by Nim Compiler v1.9.0 */ #define NIM_INTBITS 32 #include "nimbase.h" #include #undef LANGUAGE_C #undef MIPSEB #undef MIPSEL #undef PPC #undef R3000 #undef R4000 #undef i386 #undef linux #undef mips #undef near #undef far #undef powerpc #undef unix #define nimfr_(x, y) #define nimln_(x, y) typedef struct tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q; typedef struct tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA; typedef struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg; typedef struct tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ; typedef struct tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag; typedef struct tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ; typedef struct tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ; typedef struct tySequence__oJNUGvppFP9c7bQcQ1vFDNw tySequence__oJNUGvppFP9c7bQcQ1vFDNw; typedef struct tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content; typedef struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg; typedef struct NimStrPayload NimStrPayload; typedef struct NimStringV2 NimStringV2; typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg; typedef struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag; typedef struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg; typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA tySequence__npXKLeClRo4ZDs6rPxQ9bRA; typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content; typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA; typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw; typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content; typedef struct tySequence__o8paxaScVM7VHajE9a8rbyw tySequence__o8paxaScVM7VHajE9a8rbyw; typedef struct tySequence__o8paxaScVM7VHajE9a8rbyw_Content tySequence__o8paxaScVM7VHajE9a8rbyw_Content; typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg; typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw; typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content tySequence__4eRCaZmrYLLw2k30GPTiMw_Content; typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ; typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content; typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q; typedef struct tySequence__SE64IkxZVzsW0aLsNjnJHg tySequence__SE64IkxZVzsW0aLsNjnJHg; typedef struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content tySequence__SE64IkxZVzsW0aLsNjnJHg_Content; typedef struct tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ; typedef struct tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ; typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w; typedef struct tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA; typedef struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA; typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ tySequence__xxu3GgaFAGO6lOns9aHaeLQ; typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content; typedef struct tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ; typedef struct RootObj RootObj; typedef struct TNimTypeV2 TNimTypeV2; typedef struct tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw; typedef struct tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA; typedef struct tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg; typedef struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ; typedef struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content; typedef struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A; typedef struct tyObject_TIdPair__3AnhVnGQClv9alimKqsNrEg tyObject_TIdPair__3AnhVnGQClv9alimKqsNrEg; typedef struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg; typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw; typedef struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg; typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw; typedef struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ; struct tySequence__oJNUGvppFP9c7bQcQ1vFDNw { NI len; tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content* p; }; struct tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ { NI counter; tySequence__oJNUGvppFP9c7bQcQ1vFDNw data; }; struct tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ { tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* genSymOwner; NIM_BOOL instLines; NIM_BOOL isDeclarative; tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ mapping; tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config; tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* ic; NI instID; tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen; }; typedef NU8 tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w; typedef NU8 tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow; typedef NU8 tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg; struct NimStrPayload { NI cap; NIM_CHAR data[SEQ_DECL_SIZE]; }; struct NimStringV2 { NI len; NimStrPayload* p; }; struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg { tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow targetCPU; tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow hostCPU; tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg targetOS; tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg hostOS; NI intSize; NI floatSize; NI ptrSize; NimStringV2 tnl; }; typedef NU32 tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg; typedef NU64 tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw; struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg { NU16 line; NI16 col; NI32 fileIndex; }; typedef NU8 tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag; struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA { NI len; tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content* p; }; struct tySequence__7lEisrXlQEzwtUKW5pzRCw { NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p; }; struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA { tySequence__7lEisrXlQEzwtUKW5pzRCw data; NI counter; }; struct tySequence__o8paxaScVM7VHajE9a8rbyw { NI len; tySequence__o8paxaScVM7VHajE9a8rbyw_Content* p; }; struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag { tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg trackPos; NIM_BOOL trackPosAttached; tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag errorOutputs; tySequence__npXKLeClRo4ZDs6rPxQ9bRA msgContext; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastError; tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl; tySequence__o8paxaScVM7VHajE9a8rbyw fileInfos; NI32 systemFileIdx; }; typedef NU8 tyEnum_FilenameOption__hVFMNPLaxRz7xWOSR9cMItQ; typedef NU8 tyEnum_Command__b145RBTl7bacomLHdBguHg; typedef NU8 tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg; typedef NU8 tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ; typedef NU8 tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ; struct tySequence__4eRCaZmrYLLw2k30GPTiMw { NI len; tySequence__4eRCaZmrYLLw2k30GPTiMw_Content* p; }; struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg { tySequence__4eRCaZmrYLLw2k30GPTiMw data; NI counter; }; typedef NU32 tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA; typedef NU8 tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g; typedef NU8 tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg; typedef NU8 tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g; typedef NU8 tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw[12]; struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ { NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p; }; struct tyTuple__47w2DboNEPf69aPgubZdd7Q { NI Field0; NI Field1; NI Field2; }; typedef NU8 tySet_tyEnum_StdOrrKind__C4nP6ZSJZRe8Um4ny9bnbwA; struct tySequence__SE64IkxZVzsW0aLsNjnJHg { NI len; tySequence__SE64IkxZVzsW0aLsNjnJHg_Content* p; }; typedef struct { N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ* result, void* ClE_0); void* ClE_0; } tyProc__UwsGaXGCDEc7Akhwij5HRA; typedef struct { N_NIMCALL_PTR(void, ClP_0) (NimStringV2 output, void* ClE_0); void* ClE_0; } tyProc__k2HFjxisIgDALbEUFojxaQ; typedef NU8 tyEnum_Severity__R4Rvu3XsQ2ynPKxZt1L82g; typedef struct { N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, NimStringV2 msg, tyEnum_Severity__R4Rvu3XsQ2ynPKxZt1L82g severity, void* ClE_0); void* ClE_0; } tyProc__9a8L4QvXftisHTVzCsMCKUA; struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg { tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w backend; tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg target; NI linesCompiled; tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options; tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw globalOptions; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand; tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag m; tyEnum_FilenameOption__hVFMNPLaxRz7xWOSR9cMItQ filenameOption; NimStringV2 unitSep; NI evalTemplateCounter; NI evalMacroCounter; NI8 exitcode; tyEnum_Command__b145RBTl7bacomLHdBguHg cmd; NimStringV2 cmdInput; NIM_BOOL projectIsCmd; NIM_BOOL implicitCmd; tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg selectedGC; tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ exc; NIM_BOOL hintProcessingDots; NI verbosity; NI numberOfProcessors; NF lastCmdTime; tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ symbolFiles; NI spellSuggestMax; tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines; NimStringV2 headerFile; tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA features; tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g legacyFeatures; NimStringV2 arguments; tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg ideCmd; NIM_BOOL oldNewlines; tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g cCompiler; tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw modifiedyNotes; tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw cmdlineNotes; tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw foreignPackageNotes; tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw notes; tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw warningAsErrors; tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw mainPackageNotes; NI mainPackageId; NI errorCounter; NI hintCounter; NI warnCounter; NI errorMax; NI maxLoopIterationsVM; NIM_BOOL isVmTrace; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache; tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimblePaths; tySequence__sM4lkSb7zS6F7OVMvW9cffQ searchPaths; tySequence__sM4lkSb7zS6F7OVMvW9cffQ lazyPaths; NimStringV2 outFile; NimStringV2 outDir; NimStringV2 jsonBuildFile; NimStringV2 prefixDir; NimStringV2 libpath; NimStringV2 nimcacheDir; tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions; NimStringV2 projectName; NimStringV2 projectPath; NimStringV2 projectFull; NIM_BOOL projectIsStdin; tySet_tyEnum_StdOrrKind__C4nP6ZSJZRe8Um4ny9bnbwA lastMsgWasDot; NI32 projectMainIdx; NI32 projectMainIdx2; NimStringV2 command; tySequence__sM4lkSb7zS6F7OVMvW9cffQ commandArgs; NimStringV2 commandLine; tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds; NIM_BOOL keepComments; tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitImports; tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitIncludes; NimStringV2 docSeeSrcUrl; NimStringV2 docRoot; NimStringV2 docCmd; tySequence__sM4lkSb7zS6F7OVMvW9cffQ configFiles; tySequence__sM4lkSb7zS6F7OVMvW9cffQ cIncludes; tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLibs; tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLinkedLibs; tySequence__sM4lkSb7zS6F7OVMvW9cffQ externalToLink; NimStringV2 linkOptionsCmd; tySequence__sM4lkSb7zS6F7OVMvW9cffQ compileOptionsCmd; NimStringV2 linkOptions; NimStringV2 compileOptions; NimStringV2 cCompilerPath; tySequence__SE64IkxZVzsW0aLsNjnJHg toCompile; tyProc__UwsGaXGCDEc7Akhwij5HRA suggestionResultHook; NI suggestVersion; NI suggestMaxResults; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastLineInfo; tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook; tyProc__9a8L4QvXftisHTVzCsMCKUA structuredErrorHook; NimStringV2 cppCustomNamespace; NimStringV2 nimMainPrefix; tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ* vmProfileData; }; typedef NU8 tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA; typedef NU8 tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw; struct tyTuple__kN8up2W6YKc5YA9avn5mV5w { NimStringV2 Field0; NI Field1; NI Field2; }; typedef NU32 tySet_tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw; typedef NU8 tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ; struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ { NI len; tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content* p; }; struct tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q { tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info; tySet_tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw flags; tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind; union{ struct {NI64 intVal; } _kind_1; struct {NF floatVal; } _kind_2; struct {NimStringV2 strVal; } _kind_3; struct {tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym; } _kind_4; struct {tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* ident; } _kind_5; struct {tySequence__xxu3GgaFAGO6lOns9aHaeLQ sons; } _kind_6; }; }; struct TNimTypeV2 { void* destructor; NI size; NI16 align; NI16 depth; NU32* display; void* traceImpl; void* typeInfoV1; NI flags; }; struct RootObj { TNimTypeV2* m_type; }; struct tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw { NI32 module; NI32 item; }; struct tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ { RootObj Sup; tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw itemId; }; typedef NU8 tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ; typedef NU16 tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg; typedef NU64 tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg; typedef NU8 tyEnum_TLocKind__iCEcZjTaghPmL3Wx2e5DQw; typedef NU8 tyEnum_TStorageLoc__BKvMXWvKko6Yn5329c9aw9afg; typedef NU16 tySet_tyEnum_TLocFlag__9a7m8BSAfzn6yluCKaq6viw; struct tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA { tyEnum_TLocKind__iCEcZjTaghPmL3Wx2e5DQw k; tyEnum_TStorageLoc__BKvMXWvKko6Yn5329c9aw9afg storage; tySet_tyEnum_TLocFlag__9a7m8BSAfzn6yluCKaq6viw flags; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* lode; NimStringV2 r; }; struct tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA { tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ Sup; tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ kind; union{ struct {tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* gcUnsafetyReason; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* transformedBody; } _kind_1; struct {tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* guard; NI bitsize; NI alignment; } _kind_2; }; tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg magic; tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ; tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* name; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner; tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg flags; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* ast; tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options; NI position; NI offset; tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA loc; tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg* annex; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* constraint; }; typedef NU8 tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ; typedef NU8 tyEnum_TCallingConvention__XL1p2EKvOAlAHpc68ecZPw; typedef NU64 tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q; struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ { NI len; tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content* p; }; struct tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA { tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ Sup; tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ kind; tyEnum_TCallingConvention__XL1p2EKvOAlAHpc68ecZPw callConv; tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q flags; tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ sons; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym; NI64 size; NI16 align; NI16 paddingAtEnd; tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA loc; tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typeInst; tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw uniqueId; }; typedef NU16 tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA; typedef NU8 tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg; struct tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag { NI32 module; NI32 symId; NI32 typeId_0; NIM_BOOL sealed; }; struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA { NI id; NimStringV2 s; tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* next; NI h; }; typedef NU8 tySet_tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ[21]; typedef NU8 tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw; struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A { NI rc; NI rootIdx; }; struct tyObject_TIdPair__3AnhVnGQClv9alimKqsNrEg { tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ* key; RootObj* val; }; #ifndef tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content_PP #define tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content_PP struct tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content { NI cap; tyObject_TIdPair__3AnhVnGQClv9alimKqsNrEg data[SEQ_DECL_SIZE];}; #endif struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg { tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg Field0; NimStringV2 Field1; }; #ifndef tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content_PP #define tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content_PP struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content { NI cap; tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg data[SEQ_DECL_SIZE];}; #endif struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw { NI Field0; NimStringV2 Field1; NI32 Field2; }; #ifndef tySequence__7lEisrXlQEzwtUKW5pzRCw_Content_PP #define tySequence__7lEisrXlQEzwtUKW5pzRCw_Content_PP struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];}; #endif struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg { NimStringV2 fullPath; NimStringV2 projPath; NimStringV2 shortName; NimStringV2 quotedName; NimStringV2 quotedFullName; tySequence__sM4lkSb7zS6F7OVMvW9cffQ lines; NimStringV2 dirtyFile; NimStringV2 hash; NIM_BOOL dirty; }; #ifndef tySequence__o8paxaScVM7VHajE9a8rbyw_Content_PP #define tySequence__o8paxaScVM7VHajE9a8rbyw_Content_PP struct tySequence__o8paxaScVM7VHajE9a8rbyw_Content { NI cap; tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg data[SEQ_DECL_SIZE];}; #endif struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw { NI Field0; NimStringV2 Field1; }; #ifndef tySequence__4eRCaZmrYLLw2k30GPTiMw_Content_PP #define tySequence__4eRCaZmrYLLw2k30GPTiMw_Content_PP struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content { NI cap; tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif typedef NU8 tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og; struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ { NimStringV2 nimname; NimStringV2 cname; NimStringV2 obj; tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og flags; NimStringV2 customArgs; }; #ifndef tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP #define tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content { NI cap; tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP #define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content_PP #define tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content_PP struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content { NI cap; tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP #define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];}; #endif static N_INLINE(void, nimZeroMem)(void* p, NI size); static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size); static N_INLINE(NIM_BOOL*, nimErrorFlag)(void); N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1172)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg, NimStringV2 arg, tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw); N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3457)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, evalTemplateArgs__evaltempl_197)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NIM_BOOL fromHlo); static N_INLINE(NI, len__ast_3325)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); static N_INLINE(NI, len__ast_5071)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* n); N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatSingleElem)(NimStringV2 formatstr, NimStringV2 a); N_LIB_PRIVATE N_NIMCALL(NimStringV2, renderTree__renderer_50)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA renderFlags); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_13)(NimStringV2* dest); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNodeI__ast_3949)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info); N_LIB_PRIVATE N_NIMCALL(void, add__ast_6233)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* father, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* son); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3454)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, copyTree__ast_5856)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src); N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_4063)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA** dest, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* src); N_LIB_PRIVATE N_NIMCALL(void, eqcopy___options_3378)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg** dest, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* src); N_LIB_PRIVATE N_NIMCALL(void, eqcopy___idents_266)(tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ** dest, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* src, NIM_BOOL cyclic); N_LIB_PRIVATE N_NIMCALL(void, initIdTable__ast_5200)(tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ* x); N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3247)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag** dest, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* src, NIM_BOOL cyclic); static N_INLINE(NIM_BOOL, isAtom__ast_6204)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); N_LIB_PRIVATE N_NIMCALL(void, evalTemplateAux__evaltempl_24)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* templ, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* actual, tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result); static N_INLINE(NI, safeLen__ast_3318)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); static N_INLINE(NimStringV2, toFileLineCol__msgs_666)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info); static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src); static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size); static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size); N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s, NI addlen); static N_INLINE(void, addInt__stdZprivateZdigitsutils_198)(NimStringV2* result, NI x); N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_176)(NimStringV2* result, NI64 x); N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1510)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, NimStringV2 errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2); N_LIB_PRIVATE N_NIMCALL(RootObj*, idTableGet__astalgo_65)(tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ t, tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ* key); N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_4066)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA** dest, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* src); N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, copySym__ast_5140)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw id); static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextSymId__ast_3268)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* x); N_LIB_PRIVATE N_NIMCALL(void, idTablePut__astalgo_71)(tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ* t, tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ* key, RootObj* val); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newIdentNode__ast_4780)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* ident, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info); N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA*, getIdent__idents_166)(tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* ic, NimStringV2 identifier); N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_3)(NI x); N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_133)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA** dest); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newSymNode__ast_4787)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_4060)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA** dest); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, copyNode__evaltempl_19)(tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, copyNode__ast_5733)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src); N_LIB_PRIVATE N_NIMCALL(void, setInfoRecursive__ast_3918)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isRunnableExamples__ast_6127)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_3460)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, wrapInComesFrom__evaltempl_260)(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* res); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, lastSon__ast_6268)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___evaltempl_322)(tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ* dest); static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p); static N_INLINE(NI, minuspercent___system_790)(NI x, NI y); N_LIB_PRIVATE N_NIMCALL(void, nimDestroyAndDispose)(void* p); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_4524)(tySequence__oJNUGvppFP9c7bQcQ1vFDNw* dest); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___options_3149)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* dest); N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p, NI alignment); static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p, TNimTypeV2* desc); N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_3143)(NIM_BOOL isDestroyAction, tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* s, TNimTypeV2* desc); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_224)(tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* dest); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3232)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* dest); static const struct { NI cap; NIM_CHAR data[33+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_2 = { 33 | NIM_STRLIT_FLAG, "template instantiation too nested" }; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_3 = {33, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_2}; static const struct { NI cap; NIM_CHAR data[39+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_5 = { 39 | NIM_STRLIT_FLAG, "/home/wind/nimv2/compiler/evaltempl.nim" }; static const struct { NI cap; NIM_CHAR data[25+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_6 = { 25 | NIM_STRLIT_FLAG, "wrong number of arguments" }; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_7 = {25, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_6}; static const struct { NI cap; NIM_CHAR data[39+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_9 = { 39 | NIM_STRLIT_FLAG, "\'$1\' has unspecified generic parameters" }; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_10 = {39, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_9}; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_12 = {25, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_6}; static const struct { NI cap; NIM_CHAR data[1+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_14 = { 1 | NIM_STRLIT_FLAG, "(" }; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_15 = {1, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_14}; static const struct { NI cap; NIM_CHAR data[2+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_16 = { 2 | NIM_STRLIT_FLAG, ", " }; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_17 = {2, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_16}; static const struct { NI cap; NIM_CHAR data[1+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_18 = { 1 | NIM_STRLIT_FLAG, ")" }; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_19 = {1, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_18}; static const struct { NI cap; NIM_CHAR data[7+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_21 = { 7 | NIM_STRLIT_FLAG, "`gensym" }; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_22 = {7, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_21}; static NIM_CONST tySet_tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ TM__bDep2LgNruC0l9bDFCq6TlQ_23 = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1f, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00} ; static const struct { NI cap; NIM_CHAR data[15+1]; } TM__bDep2LgNruC0l9bDFCq6TlQ_24 = { 15 | NIM_STRLIT_FLAG, "illformed AST: " }; static const NimStringV2 TM__bDep2LgNruC0l9bDFCq6TlQ_25 = {15, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_24}; extern TNimTypeV2 NTIv2__4yiDOEx3Y9aOTV1fsziBtCQ_; extern TNimTypeV2 NTIv2__C1k2TcDRT9cU4DEatQIT09ag_; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__bDep2LgNruC0l9bDFCq6TlQ_4 = {{39, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_5}, ((NI)180), ((NI)15)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__bDep2LgNruC0l9bDFCq6TlQ_8 = {{39, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_5}, ((NI)124), ((NI)15)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__bDep2LgNruC0l9bDFCq6TlQ_11 = {{39, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_5}, ((NI)127), ((NI)15)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__bDep2LgNruC0l9bDFCq6TlQ_13 = {{39, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_5}, ((NI)139), ((NI)16)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__bDep2LgNruC0l9bDFCq6TlQ_20 = {{39, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_5}, ((NI)49), ((NI)8)} ; extern NIM_CONST tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg unknownLineInfo__lineinfos_338; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__bDep2LgNruC0l9bDFCq6TlQ_26 = {{39, (NimStrPayload*)&TM__bDep2LgNruC0l9bDFCq6TlQ_5}, ((NI)201), ((NI)16)} ; extern NIM_BOOL nimInErrorMode__system_3980; static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) { void* T1_; T1_ = (void*)0; T1_ = memset(a, v, ((size_t) (size))); } static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) { NIM_BOOL* result; result = (NIM_BOOL*)0; result = (&nimInErrorMode__system_3980); return result; } static N_INLINE(void, nimZeroMem)(void* p, NI size) { NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); nimSetMem__systemZmemory_7(p, ((int)0), size); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; }BeforeRet_: ; } static N_INLINE(NI, len__ast_3325)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) { NI result; NI T1_; result = (NI)0; T1_ = (*n)._kind_6.sons.len; result = T1_; return result; } static N_INLINE(NI, len__ast_5071)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* n) { NI result; NI T1_; result = (NI)0; T1_ = (*n).sons.len; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, evalTemplateArgs__evaltempl_197)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NIM_BOOL fromHlo) { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result; NI colontmpD_; NI colontmpD__2; NI colontmpD__3; NI colontmpD__4; NI totalParams; NI genericParams; NI expectedRegularParams; NI T9_; NI givenRegularParams; NIM_BOOL oldNimErrFin40_; NIM_BOOL oldNimErrFin44_; NIM_BOOL oldNimErrFin33_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = NIM_NIL; colontmpD_ = (NI)0; colontmpD__2 = (NI)0; colontmpD__3 = (NI)0; colontmpD__4 = (NI)0; switch ((*n).kind) { case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32): { NI T2_; T2_ = (NI)0; T2_ = len__ast_3325(n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; colontmpD_ = (NI)(T2_ - ((NI)1)); totalParams = colontmpD_; } break; default: { colontmpD__2 = ((NI)0); totalParams = colontmpD__2; } break; } { if (!fromHlo) goto LA6_; colontmpD__3 = ((NI)0); genericParams = colontmpD__3; } goto LA4_; LA6_: ; { colontmpD__4 = len__ast_3325((*(*s).ast)._kind_6.sons.p->data[((NI)2)]); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; genericParams = colontmpD__4; } LA4_: ; T9_ = (NI)0; T9_ = len__ast_5071((*s).typ); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; expectedRegularParams = (NI)(T9_ - ((NI)1)); givenRegularParams = (NI)(totalParams - genericParams); { if (!(givenRegularParams < ((NI)0))) goto LA12_; givenRegularParams = ((NI)0); } LA12_: ; { if (!((NI)(expectedRegularParams + genericParams) < totalParams)) goto LA16_; liMessage__msgs_1172(conf, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__bDep2LgNruC0l9bDFCq6TlQ_7, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)2), TM__bDep2LgNruC0l9bDFCq6TlQ_8, NIM_FALSE); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA16_: ; { NimStringV2 colontmpD__5; tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T23_; NimStringV2 T24_; if (!(totalParams < genericParams)) goto LA20_; colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL; T23_ = 0; T24_.len = 0; T24_.p = NIM_NIL; T24_ = renderTree__renderer_50(n, T23_); if (NIM_UNLIKELY(*nimErr_)) goto LA22_; colontmpD__5 = nsuFormatSingleElem(TM__bDep2LgNruC0l9bDFCq6TlQ_10, T24_); if (NIM_UNLIKELY(*nimErr_)) goto LA22_; liMessage__msgs_1172(conf, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__5, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)2), TM__bDep2LgNruC0l9bDFCq6TlQ_11, NIM_FALSE); if (NIM_UNLIKELY(*nimErr_)) goto LA22_; { LA22_:; } { eqdestroy___stdZassertions_13((&colontmpD__5)); } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA20_: ; result = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*n).info); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; { NI i; NI res; i = (NI)0; res = ((NI)1); { while (1) { if (!(res <= givenRegularParams)) goto LA29 ; i = res; add__ast_6233(result, (*n)._kind_6.sons.p->data[i]); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; res += ((NI)1); } LA29: ; } } { NI i_2; NI colontmp_; NI res_2; i_2 = (NI)0; colontmp_ = (NI)0; colontmp_ = (NI)(givenRegularParams + ((NI)1)); res_2 = colontmp_; { while (1) { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* default_1; if (!(res_2 <= expectedRegularParams)) goto LA32 ; default_1 = NIM_NIL; i_2 = res_2; eqcopy___ast_3457(&default_1, (*(*(*(*(*s).typ).n)._kind_6.sons.p->data[i_2])._kind_4.sym).ast); if (NIM_UNLIKELY(*nimErr_)) goto LA33_; { NIM_BOOL T36_; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__6; T36_ = (NIM_BOOL)0; T36_ = (default_1 == 0); if (T36_) goto LA37_; T36_ = ((*default_1).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)); LA37_: ; if (!T36_) goto LA38_; colontmpD__6 = NIM_NIL; liMessage__msgs_1172(conf, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__bDep2LgNruC0l9bDFCq6TlQ_12, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), TM__bDep2LgNruC0l9bDFCq6TlQ_13, NIM_FALSE); if (NIM_UNLIKELY(*nimErr_)) goto LA40_; colontmpD__6 = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1), (*n).info); if (NIM_UNLIKELY(*nimErr_)) goto LA40_; add__ast_6233(result, colontmpD__6); if (NIM_UNLIKELY(*nimErr_)) goto LA40_; { LA40_:; } { oldNimErrFin40_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&colontmpD__6); if (NIM_UNLIKELY(*nimErr_)) goto LA33_; *nimErr_ = oldNimErrFin40_; } if (NIM_UNLIKELY(*nimErr_)) goto LA33_; } goto LA34_; LA38_: ; { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__7; colontmpD__7 = NIM_NIL; colontmpD__7 = copyTree__ast_5856(default_1); if (NIM_UNLIKELY(*nimErr_)) goto LA44_; add__ast_6233(result, colontmpD__7); if (NIM_UNLIKELY(*nimErr_)) goto LA44_; { LA44_:; } { oldNimErrFin44_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&colontmpD__7); if (NIM_UNLIKELY(*nimErr_)) goto LA33_; *nimErr_ = oldNimErrFin44_; } if (NIM_UNLIKELY(*nimErr_)) goto LA33_; } LA34_: ; res_2 += ((NI)1); { LA33_:; } { oldNimErrFin33_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&default_1); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin33_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA32: ; } } { NI i_3; NI res_3; i_3 = (NI)0; res_3 = ((NI)1); { while (1) { if (!(res_3 <= genericParams)) goto LA51 ; i_3 = res_3; add__ast_6233(result, (*n)._kind_6.sons.p->data[(NI)(givenRegularParams + i_3)]); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; res_3 += ((NI)1); } LA51: ; } } }BeforeRet_: ; return result; } static N_INLINE(NIM_BOOL, isAtom__ast_6204)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) { NIM_BOOL result; NIM_BOOL T1_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = (((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0) <= (*n).kind); if (!(T1_)) goto LA2_; T1_ = ((*n).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23)); LA2_: ; result = T1_; return result; } static N_INLINE(NI, safeLen__ast_3318)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) { NI result; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = (NI)0; { if (!((*n).kind >= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0) && (*n).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23))) goto LA3_; result = ((NI)0); } goto LA1_; LA3_: ; { result = len__ast_3325(n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA1_: ; }BeforeRet_: ; return result; } static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) { void* T1_; T1_ = (void*)0; T1_ = memcpy(dest, source, ((size_t) (size))); } static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size) { nimCopyMem(dest, source, size); } static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src) { { if (!(((NI)0) < src.len)) goto LA3_; copyMem__system_1719(((void*) ((&(*(*dest).p).data[(*dest).len]))), ((void*) ((&(*src.p).data[((NI)0)]))), ((NI) ((NI)(src.len + ((NI)1))))); (*dest).len += src.len; } LA3_: ; } static N_INLINE(void, addInt__stdZprivateZdigitsutils_198)(NimStringV2* result, NI x) { addInt__stdZprivateZdigitsutils_176(result, ((NI64) (x))); } static N_INLINE(NimStringV2, toFileLineCol__msgs_666)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info) { NimStringV2 result; result.len = 0; result.p = NIM_NIL; prepareAdd((&result), info.Field0.len + 0); appendString((&result), info.Field0); { if (!(((NI)0) < info.Field1)) goto LA3_; prepareAdd((&result), 1); appendString((&result), TM__bDep2LgNruC0l9bDFCq6TlQ_15); addInt__stdZprivateZdigitsutils_198((&result), info.Field1); { if (!(((NI)0) < (NI)(info.Field2 + ((NI)1)))) goto LA7_; prepareAdd((&result), 2); appendString((&result), TM__bDep2LgNruC0l9bDFCq6TlQ_17); addInt__stdZprivateZdigitsutils_198((&result), (NI)(info.Field2 + ((NI)1))); } LA7_: ; prepareAdd((&result), 1); appendString((&result), TM__bDep2LgNruC0l9bDFCq6TlQ_19); } LA3_: ; return result; } static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextSymId__ast_3268)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* x) { tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw result; NI32 colontmpD_; NI32 colontmpD__2; nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw)); colontmpD_ = (NI32)0; colontmpD__2 = (NI32)0; (*x).symId += ((NI)1); nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw)); colontmpD_ = (*x).module; result.module = colontmpD_; colontmpD__2 = (*x).symId; result.item = colontmpD__2; return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, copyNode__evaltempl_19)(tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ* ctx, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b) { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = NIM_NIL; result = copyNode__ast_5733(a); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; { if (!(*ctx).instLines) goto LA3_; setInfoRecursive__ast_3918(result, (*b).info); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA3_: ; }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, evalTemplateAux__evaltempl_24)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* templ, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* actual, tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result) { NIM_BOOL oldNimErrFin27_; NIM_BOOL oldNimErrFin17_; NIM_BOOL oldNimErrFin54_; NIM_BOOL oldNimErrFin43_; NIM_BOOL oldNimErrFin60_; NIM_BOOL oldNimErrFin98_; NIM_BOOL oldNimErrFin2_; NIM_BOOL oldNimErrFin104_; NIM_BOOL oldNimErrFin112_; NIM_BOOL oldNimErrFin135_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); switch ((*templ).kind) { case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3): { tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s; s = NIM_NIL; eqcopy___ast_4063(&s, (*templ)._kind_4.sym); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; { NIM_BOOL T5_; NIM_BOOL T6_; T5_ = (NIM_BOOL)0; T6_ = (NIM_BOOL)0; T6_ = ((*s).owner == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)); if (!(T6_)) goto LA7_; T6_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3)); LA7_: ; T5_ = T6_; if (T5_) goto LA8_; T5_ = ((*s).owner == (*c).owner); LA8_: ; if (!T5_) goto LA9_; { NIM_BOOL T13_; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* xX60gensym0_; T13_ = (NIM_BOOL)0; T13_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3)); if (!(T13_)) goto LA14_; T13_ = ((IL64(1236950581248) & (*s).flags) == IL64(1099511627776)); LA14_: ; if (!T13_) goto LA15_; xX60gensym0_ = NIM_NIL; eqcopy___ast_3457(&xX60gensym0_, (*actual)._kind_6.sons.p->data[(*s).position]); if (NIM_UNLIKELY(*nimErr_)) goto LA17_; { if (!((*xX60gensym0_).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152))) goto LA20_; { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* yX60gensym0_; yX60gensym0_ = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3318(xX60gensym0_); if (NIM_UNLIKELY(*nimErr_)) goto LA17_; i_2 = ((NI)0); { while (1) { if (!(i_2 < colontmp_)) goto LA25 ; i = i_2; eqcopy___ast_3457(&yX60gensym0_, (*xX60gensym0_)._kind_6.sons.p->data[i]); if (NIM_UNLIKELY(*nimErr_)) goto LA17_; add__ast_6233(result, yX60gensym0_); if (NIM_UNLIKELY(*nimErr_)) goto LA17_; i_2 += ((NI)1); } LA25: ; } } eqdestroy___ast_3454(&yX60gensym0_); if (NIM_UNLIKELY(*nimErr_)) goto LA17_; } } goto LA18_; LA20_: ; { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_; colontmpD_ = NIM_NIL; colontmpD_ = copyTree__ast_5856(xX60gensym0_); if (NIM_UNLIKELY(*nimErr_)) goto LA27_; add__ast_6233(result, colontmpD_); if (NIM_UNLIKELY(*nimErr_)) goto LA27_; { LA27_:; } { oldNimErrFin27_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&colontmpD_); if (NIM_UNLIKELY(*nimErr_)) goto LA17_; *nimErr_ = oldNimErrFin27_; } if (NIM_UNLIKELY(*nimErr_)) goto LA17_; } LA18_: ; { LA17_:; } { oldNimErrFin17_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&xX60gensym0_); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; *nimErr_ = oldNimErrFin17_; } if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } goto LA11_; LA15_: ; { NIM_BOOL T33_; NIM_BOOL T35_; NIM_BOOL T37_; NIM_BOOL T38_; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* xX60gensym4_; NI T44_; T33_ = (NIM_BOOL)0; T33_ = !(((*s).owner == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL))); if (!(T33_)) goto LA34_; T35_ = (NIM_BOOL)0; T35_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)4)); if (T35_) goto LA36_; T37_ = (NIM_BOOL)0; T38_ = (NIM_BOOL)0; T38_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)7)); if (!(T38_)) goto LA39_; T38_ = !(((*s).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL))); LA39_: ; T37_ = T38_; if (!(T37_)) goto LA40_; T37_ = ((*(*s).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)12)); LA40_: ; T35_ = T37_; LA36_: ; T33_ = T35_; LA34_: ; if (!T33_) goto LA41_; xX60gensym4_ = NIM_NIL; T44_ = (NI)0; T44_ = len__ast_5071((*(*s).owner).typ); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; eqcopy___ast_3457(&xX60gensym4_, (*actual)._kind_6.sons.p->data[(NI)((NI)(T44_ + (*s).position) - ((NI)1))]); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; { if (!((*xX60gensym4_).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152))) goto LA47_; { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* yX60gensym4_; yX60gensym4_ = NIM_NIL; { NI i_3; NI colontmp__2; NI i_4; i_3 = (NI)0; colontmp__2 = (NI)0; colontmp__2 = safeLen__ast_3318(xX60gensym4_); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; i_4 = ((NI)0); { while (1) { if (!(i_4 < colontmp__2)) goto LA52 ; i_3 = i_4; eqcopy___ast_3457(&yX60gensym4_, (*xX60gensym4_)._kind_6.sons.p->data[i_3]); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; add__ast_6233(result, yX60gensym4_); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; i_4 += ((NI)1); } LA52: ; } } eqdestroy___ast_3454(&yX60gensym4_); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } } goto LA45_; LA47_: ; { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2; colontmpD__2 = NIM_NIL; colontmpD__2 = copyTree__ast_5856(xX60gensym4_); if (NIM_UNLIKELY(*nimErr_)) goto LA54_; add__ast_6233(result, colontmpD__2); if (NIM_UNLIKELY(*nimErr_)) goto LA54_; { LA54_:; } { oldNimErrFin54_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&colontmpD__2); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; *nimErr_ = oldNimErrFin54_; } if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } LA45_: ; { LA43_:; } { oldNimErrFin43_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&xX60gensym4_); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; *nimErr_ = oldNimErrFin43_; } if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } goto LA11_; LA41_: ; { tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* x; RootObj* T70_; x = NIM_NIL; { NIM_BOOL T63_; NimStringV2 argX60gensym7_; T63_ = (NIM_BOOL)0; T63_ = (((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)37)))&63U)))!=0); if (T63_) goto LA64_; T63_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)7)); LA64_: ; if (!!(T63_)) goto LA65_; argX60gensym7_.len = 0; argX60gensym7_.p = NIM_NIL; argX60gensym7_ = toFileLineCol__msgs_666(TM__bDep2LgNruC0l9bDFCq6TlQ_20); if (NIM_UNLIKELY(*nimErr_)) goto LA67_; internalErrorImpl__msgs_1510((*c).config, unknownLineInfo__lineinfos_338, argX60gensym7_, TM__bDep2LgNruC0l9bDFCq6TlQ_20); if (NIM_UNLIKELY(*nimErr_)) goto LA67_; { LA67_:; } { eqdestroy___stdZassertions_13((&argX60gensym7_)); } if (NIM_UNLIKELY(*nimErr_)) goto LA60_; } LA65_: ; T70_ = NIM_NIL; T70_ = idTableGet__astalgo_65((*c).mapping, (*((tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ**) (&(s))))); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; x = ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) (T70_)); { tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw T75_; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* T76_; if (!(x == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL))) goto LA73_; T75_ = nextSymId__ast_3268((*c).idgen); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; T76_ = NIM_NIL; T76_ = copySym__ast_5140(s, T75_); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; eqsink___ast_4066(&x, T76_); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; eqsink___ast_4066(&(*x).owner, ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; idTablePut__astalgo_71((&(*c).mapping), (*((tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ**) (&(s)))), (*((RootObj**) (&(x))))); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; } LA73_: ; { NimStringV2 colontmpD__3; NimStringV2 colontmpD__4; tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* colontmpD__5; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__6; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__7; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__8; NimStringV2 T81_; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg T82_; if (!(((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)37)))&63U)))!=0)) goto LA79_; colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL; colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL; colontmpD__5 = NIM_NIL; nimZeroMem((void*)(&colontmpD__6), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg)); nimZeroMem((void*)(&colontmpD__7), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg)); colontmpD__8 = NIM_NIL; T81_.len = 0; T81_.p = NIM_NIL; colontmpD__3 = dollar___systemZdollars_3((*c).instID); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; T81_ = rawNewString((*(*x).name).s.len + colontmpD__3.len + 7); appendString((&T81_), (*(*x).name).s); appendString((&T81_), TM__bDep2LgNruC0l9bDFCq6TlQ_22); appendString((&T81_), colontmpD__3); colontmpD__4 = T81_; colontmpD__5 = getIdent__idents_166((*c).ic, colontmpD__4); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; { if (!(*c).instLines) goto LA85_; colontmpD__6 = (*actual).info; T82_ = colontmpD__6; } goto LA83_; LA85_: ; { colontmpD__7 = (*templ).info; T82_ = colontmpD__7; } LA83_: ; colontmpD__8 = newIdentNode__ast_4780(colontmpD__5, T82_); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; add__ast_6233(result, colontmpD__8); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; eqdestroy___ast_3454(&colontmpD__8); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; eqdestroy___idents_133(&colontmpD__5); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; eqdestroy___stdZassertions_13((&colontmpD__4)); eqdestroy___stdZassertions_13((&colontmpD__3)); } goto LA77_; LA79_: ; { tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__9; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD__10; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__11; tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg T89_; nimZeroMem((void*)(&colontmpD__9), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg)); nimZeroMem((void*)(&colontmpD__10), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg)); colontmpD__11 = NIM_NIL; { if (!(*c).instLines) goto LA92_; colontmpD__9 = (*actual).info; T89_ = colontmpD__9; } goto LA90_; LA92_: ; { colontmpD__10 = (*templ).info; T89_ = colontmpD__10; } LA90_: ; colontmpD__11 = newSymNode__ast_4787(x, T89_); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; add__ast_6233(result, colontmpD__11); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; eqdestroy___ast_3454(&colontmpD__11); if (NIM_UNLIKELY(*nimErr_)) goto LA60_; } LA77_: ; { LA60_:; } { oldNimErrFin60_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_4060(&x); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; *nimErr_ = oldNimErrFin60_; } if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } LA11_: ; } goto LA3_; LA9_: ; { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__12; colontmpD__12 = NIM_NIL; colontmpD__12 = copyNode__evaltempl_19((&(*c)), templ, actual); if (NIM_UNLIKELY(*nimErr_)) goto LA98_; add__ast_6233(result, colontmpD__12); if (NIM_UNLIKELY(*nimErr_)) goto LA98_; { LA98_:; } { oldNimErrFin98_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&colontmpD__12); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; *nimErr_ = oldNimErrFin98_; } if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } LA3_: ; { LA2_:; } { oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_4060(&s); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin2_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)4) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23): { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__13; colontmpD__13 = NIM_NIL; colontmpD__13 = copyNode__evaltempl_19((&(*c)), templ, actual); if (NIM_UNLIKELY(*nimErr_)) goto LA104_; add__ast_6233(result, colontmpD__13); if (NIM_UNLIKELY(*nimErr_)) goto LA104_; { LA104_:; } { oldNimErrFin104_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&colontmpD__13); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin104_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)125): { { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* res; if (!(*c).isDeclarative) goto LA110_; res = NIM_NIL; res = copyNode__evaltempl_19((&(*c)), templ, actual); if (NIM_UNLIKELY(*nimErr_)) goto LA112_; { NI i_5; NI colontmp__3; NI i_6; i_5 = (NI)0; colontmp__3 = (NI)0; colontmp__3 = len__ast_3325(templ); if (NIM_UNLIKELY(*nimErr_)) goto LA112_; i_6 = ((NI)0); { while (1) { if (!(i_6 < colontmp__3)) goto LA115 ; i_5 = i_6; evalTemplateAux__evaltempl_24((*templ)._kind_6.sons.p->data[i_5], actual, c, res); if (NIM_UNLIKELY(*nimErr_)) goto LA112_; i_6 += ((NI)1); } LA115: ; } } add__ast_6233(result, res); if (NIM_UNLIKELY(*nimErr_)) goto LA112_; { LA112_:; } { oldNimErrFin112_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&res); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin112_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } goto LA108_; LA110_: ; { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__14; colontmpD__14 = NIM_NIL; colontmpD__14 = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1), (*templ).info); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; add__ast_6233(result, colontmpD__14); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; eqdestroy___ast_3454(&colontmpD__14); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA108_: ; } break; default: { NIM_BOOL isDeclarative; isDeclarative = NIM_FALSE; { NIM_BOOL T122_; T122_ = (NIM_BOOL)0; T122_ = ((TM__bDep2LgNruC0l9bDFCq6TlQ_23[(NU)(((*templ).kind))>>3] &(1U<<((NU)(((*templ).kind))&7U)))!=0); if (!(T122_)) goto LA123_; T122_ = !((*c).isDeclarative); LA123_: ; if (!T122_) goto LA124_; (*c).isDeclarative = NIM_TRUE; isDeclarative = NIM_TRUE; } LA124_: ; { NIM_BOOL T128_; NIM_BOOL T129_; T128_ = (NIM_BOOL)0; T129_ = (NIM_BOOL)0; T129_ = !((*c).isDeclarative); if (!(T129_)) goto LA130_; T129_ = ((*templ).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27) || (*templ).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29) || (*templ).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30) || (*templ).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)31) || (*templ).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) || (*templ).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)28) || (*templ).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32)); LA130_: ; T128_ = T129_; if (!(T128_)) goto LA131_; T128_ = isRunnableExamples__ast_6127((*templ)._kind_6.sons.p->data[((NI)0)]); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; LA131_: ; if (!T128_) goto LA132_; } goto LA126_; LA132_: ; { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* res_2; res_2 = NIM_NIL; res_2 = copyNode__evaltempl_19((&(*c)), templ, actual); if (NIM_UNLIKELY(*nimErr_)) goto LA135_; { NI i_7; NI colontmp__4; NI i_8; i_7 = (NI)0; colontmp__4 = (NI)0; colontmp__4 = len__ast_3325(templ); if (NIM_UNLIKELY(*nimErr_)) goto LA135_; i_8 = ((NI)0); { while (1) { if (!(i_8 < colontmp__4)) goto LA138 ; i_7 = i_8; evalTemplateAux__evaltempl_24((*templ)._kind_6.sons.p->data[i_7], actual, c, res_2); if (NIM_UNLIKELY(*nimErr_)) goto LA135_; i_8 += ((NI)1); } LA138: ; } } add__ast_6233(result, res_2); if (NIM_UNLIKELY(*nimErr_)) goto LA135_; { LA135_:; } { oldNimErrFin135_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&res_2); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin135_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA126_: ; { if (!isDeclarative) goto LA143_; (*c).isDeclarative = NIM_FALSE; } LA143_: ; } break; } }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, wrapInComesFrom__evaltempl_260)(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* res) { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = NIM_NIL; eqcopy___ast_3457(&result, res); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; (*result).info = info; { NIM_BOOL T3_; NI T5_; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_; T3_ = (NIM_BOOL)0; T3_ = ((*result).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115) || (*result).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)126)); if (!(T3_)) goto LA4_; T5_ = (NI)0; T5_ = len__ast_3325(result); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; T3_ = (((NI)0) < T5_); LA4_: ; if (!T3_) goto LA6_; colontmpD_ = NIM_NIL; colontmpD_ = lastSon__ast_6268(result); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; (*colontmpD_).info = info; eqdestroy___ast_3454(&colontmpD_); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA6_: ; }BeforeRet_: ; return result; } static N_INLINE(NI, minuspercent___system_790)(NI x, NI y) { NI result; result = (NI)0; result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y)))))); return result; } static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p) { NIM_BOOL result; result = (NIM_BOOL)0; { tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell; NI T5_; if (!!((p == NIM_NIL))) goto LA3_; T5_ = (NI)0; T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)8)); cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_)); { if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_; result = NIM_TRUE; } goto LA6_; LA8_: ; { (*cell).rc -= ((NI)16); } LA6_: ; } LA3_: ; return result; } static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p, TNimTypeV2* desc) { NIM_BOOL result; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = (NIM_BOOL)0; { tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell; NI T5_; if (!!((p == NIM_NIL))) goto LA3_; T5_ = (NI)0; T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)8)); cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_)); { if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_; result = NIM_TRUE; } goto LA6_; LA8_: ; { (*cell).rc -= ((NI)16); } LA6_: ; rememberCycle__system_3143(result, cell, desc); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA3_: ; }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___evaltempl_322)(tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ* dest) { NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = nimDecRefIsLast((*dest).owner); if (!T3_) goto LA4_; nimDestroyAndDispose((*dest).owner); } LA4_: ; { NIM_BOOL T8_; T8_ = (NIM_BOOL)0; T8_ = nimDecRefIsLast((*dest).genSymOwner); if (!T8_) goto LA9_; nimDestroyAndDispose((*dest).genSymOwner); } LA9_: ; eqdestroy___ast_4524((&(*dest).mapping.data)); { NIM_BOOL T13_; T13_ = (NIM_BOOL)0; T13_ = nimDecRefIsLast((*dest).config); if (!T13_) goto LA14_; eqdestroy___options_3149((*dest).config); nimRawDispose((*dest).config, ((NI)8)); } LA14_: ; { NIM_BOOL T18_; T18_ = (NIM_BOOL)0; T18_ = nimDecRefIsLastCyclicStatic((*dest).ic, (&NTIv2__4yiDOEx3Y9aOTV1fsziBtCQ_)); if (!T18_) goto LA19_; eqdestroy___idents_224((*dest).ic); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; nimRawDispose((*dest).ic, ((NI)4)); } LA19_: ; { NIM_BOOL T23_; T23_ = (NIM_BOOL)0; T23_ = nimDecRefIsLastCyclicStatic((*dest).idgen, (&NTIv2__C1k2TcDRT9cU4DEatQIT09ag_)); if (!T23_) goto LA24_; eqdestroy___ast_3232((*dest).idgen); nimRawDispose((*dest).idgen, ((NI)4)); } LA24_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, evalTemplate__evaltempl_275)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* tmpl, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* genSymOwner, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* ic, NI* instID, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen, NIM_BOOL fromHlo) { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* args; tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ ctx; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T29_; NIM_BOOL oldNimErrFin1_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = NIM_NIL; args = NIM_NIL; nimZeroMem((void*)(&ctx), sizeof(tyObject_TemplCtx__7Jzi7qpo50OxGz9aF5HyeJQ)); body = NIM_NIL; (*conf).evalTemplateCounter += ((NI)1); { if (!(((NI)1000) < (*conf).evalTemplateCounter)) goto LA4_; liMessage__msgs_1172(conf, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__bDep2LgNruC0l9bDFCq6TlQ_3, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)2), TM__bDep2LgNruC0l9bDFCq6TlQ_4, NIM_FALSE); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; eqcopy___ast_3457(&result, n); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } LA4_: ; args = evalTemplateArgs__evaltempl_197(n, tmpl, conf, fromHlo); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; eqcopy___ast_4063(&ctx.owner, tmpl); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; eqcopy___ast_4063(&ctx.genSymOwner, genSymOwner); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; eqcopy___options_3378(&ctx.config, conf); eqcopy___idents_266(&ctx.ic, ic, NIM_TRUE); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; initIdTable__ast_5200((&ctx.mapping)); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; ctx.instID = (*instID); eqcopy___ast_3247(&ctx.idgen, idgen, NIM_TRUE); eqcopy___ast_3457(&body, (*(*tmpl).ast)._kind_6.sons.p->data[((NI)6)]); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; { NIM_BOOL T8_; T8_ = (NIM_BOOL)0; T8_ = isAtom__ast_6204(body); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; if (!T8_) goto LA9_; result = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)37), (*body).info); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; evalTemplateAux__evaltempl_24(body, args, (&ctx), result); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; { NI T13_; T13_ = (NI)0; T13_ = len__ast_3325(result); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; if (!(T13_ == ((NI)1))) goto LA14_; eqcopy___ast_3457(&result, (*result)._kind_6.sons.p->data[((NI)0)]); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } goto LA11_; LA14_: ; { NimStringV2 colontmpD_; NimStringV2 colontmpD__2; NimStringV2 T18_; colontmpD_.len = 0; colontmpD_.p = NIM_NIL; colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL; T18_.len = 0; T18_.p = NIM_NIL; colontmpD_ = renderTree__renderer_50(result, 4); if (NIM_UNLIKELY(*nimErr_)) goto LA17_; T18_ = rawNewString(colontmpD_.len + 15); appendString((&T18_), TM__bDep2LgNruC0l9bDFCq6TlQ_25); appendString((&T18_), colontmpD_); colontmpD__2 = T18_; liMessage__msgs_1172(conf, (*result).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), TM__bDep2LgNruC0l9bDFCq6TlQ_26, NIM_FALSE); if (NIM_UNLIKELY(*nimErr_)) goto LA17_; { LA17_:; } { eqdestroy___stdZassertions_13((&colontmpD__2)); eqdestroy___stdZassertions_13((&colontmpD_)); } if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } LA11_: ; } goto LA6_; LA9_: ; { result = copyNode__ast_5733(body); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; ctx.instLines = (((*tmpl).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)36)))&63U)))!=0); { if (!ctx.instLines) goto LA24_; setInfoRecursive__ast_3918(result, (*n).info); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } LA24_: ; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3318(body); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; i_2 = ((NI)0); { while (1) { if (!(i_2 < colontmp_)) goto LA28 ; i = i_2; evalTemplateAux__evaltempl_24((*body)._kind_6.sons.p->data[i], args, (&ctx), result); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; i_2 += ((NI)1); } LA28: ; } } } LA6_: ; (*result).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw)17))) & 31); T29_ = NIM_NIL; T29_ = wrapInComesFrom__evaltempl_260((*n).info, tmpl, result); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; eqsink___ast_3460(&result, T29_); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; (*conf).evalTemplateCounter -= ((NI)1); (*instID) += ((NI)1); { LA1_:; } { oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&body); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; eqdestroy___evaltempl_322((&ctx)); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; eqdestroy___ast_3454(&args); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin1_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; }BeforeRet_: ; return result; }