csources_v2/c_code/2_13/@msempass2.nim.c
2022-12-16 10:54:01 +08:00

12443 lines
468 KiB
C

/* Generated by Nim Compiler v1.9.0 */
#define NIM_INTBITS 64
#include "nimbase.h"
#include <string.h>
#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_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg;
typedef struct tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA;
typedef struct tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q;
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_TType__qs8ld9cHTjcxh7xYsvWduXA tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA;
typedef struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA;
typedef struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg;
typedef struct tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg;
typedef struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ;
typedef struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content;
typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ tySequence__xxu3GgaFAGO6lOns9aHaeLQ;
typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content;
typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content;
typedef struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg;
typedef struct tySequence__9czS3pDdyAs7bxglDcl2YyA tySequence__9czS3pDdyAs7bxglDcl2YyA;
typedef struct tySequence__9czS3pDdyAs7bxglDcl2YyA_Content tySequence__9czS3pDdyAs7bxglDcl2YyA_Content;
typedef struct tySequence__XHeQfi7ybWnv4ebLBB7afQ tySequence__XHeQfi7ybWnv4ebLBB7afQ;
typedef struct tySequence__XHeQfi7ybWnv4ebLBB7afQ_Content tySequence__XHeQfi7ybWnv4ebLBB7afQ_Content;
typedef struct tySequence__gDGqa9bft4EIBGJXdPabojw tySequence__gDGqa9bft4EIBGJXdPabojw;
typedef struct tySequence__gDGqa9bft4EIBGJXdPabojw_Content tySequence__gDGqa9bft4EIBGJXdPabojw_Content;
typedef struct tyObject_Table__fjuGiTdj9aowj72av2a6U5A tyObject_Table__fjuGiTdj9aowj72av2a6U5A;
typedef struct tySequence__YLW4xuku9cRS9cLOfVzwUxqg tySequence__YLW4xuku9cRS9cLOfVzwUxqg;
typedef struct tySequence__YLW4xuku9cRS9cLOfVzwUxqg_Content tySequence__YLW4xuku9cRS9cLOfVzwUxqg_Content;
typedef struct tyObject_Table__YQZ1JwvCEKbqGOUhujSEHg tyObject_Table__YQZ1JwvCEKbqGOUhujSEHg;
typedef struct tySequence__HL9bxOKBQaeJ5XQXd8t8m8g tySequence__HL9bxOKBQaeJ5XQXd8t8m8g;
typedef struct tySequence__HL9bxOKBQaeJ5XQXd8t8m8g_Content tySequence__HL9bxOKBQaeJ5XQXd8t8m8g_Content;
typedef struct tyObject_Table__ylj8DEu79cdmULczcIwXsIQ tyObject_Table__ylj8DEu79cdmULczcIwXsIQ;
typedef struct tySequence__M1HR1j8fkzOLdhYymqd9cNA tySequence__M1HR1j8fkzOLdhYymqd9cNA;
typedef struct tySequence__M1HR1j8fkzOLdhYymqd9cNA_Content tySequence__M1HR1j8fkzOLdhYymqd9cNA_Content;
typedef struct tyObject_Table__tTWGtT1HJ9boj5Bfuszmr3Q tyObject_Table__tTWGtT1HJ9boj5Bfuszmr3Q;
typedef struct tySequence__ndtMxvII636Jz8NCVD9a9a0Q tySequence__ndtMxvII636Jz8NCVD9a9a0Q;
typedef struct tySequence__ndtMxvII636Jz8NCVD9a9a0Q_Content tySequence__ndtMxvII636Jz8NCVD9a9a0Q_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 tyObject_PackedConfig__MKBtxaJKSgIb29cEaKwGN9bw tyObject_PackedConfig__MKBtxaJKSgIb29cEaKwGN9bw;
typedef struct tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg;
typedef struct tySequence__UfuHwINLHlFJGRcvFZqKQQ tySequence__UfuHwINLHlFJGRcvFZqKQQ;
typedef struct tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content;
typedef struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA tyObject_Table__fdKWDDO1P17zvuQPReVgRA;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg_Content tySequence__fdmz6VkIf1ewwrssKYqRFg_Content;
typedef struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg_Content tySequence__kxu4GK0onha2t9bo86mdVAg_Content;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA_Content tySequence__48JTohSgTy339bRxHzUD8KA_Content;
typedef struct tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ;
typedef struct tyObject_Table__SogU5TxbKBYUMQw7zmdG3g tyObject_Table__SogU5TxbKBYUMQw7zmdG3g;
typedef struct tySequence__7C9bvULfaDaWykzhm3DspFQ tySequence__7C9bvULfaDaWykzhm3DspFQ;
typedef struct tySequence__7C9bvULfaDaWykzhm3DspFQ_Content tySequence__7C9bvULfaDaWykzhm3DspFQ_Content;
typedef struct tyObject_Table__ijGervJNjyJafnomjvukiw tyObject_Table__ijGervJNjyJafnomjvukiw;
typedef struct tySequence__kdxAxisTjDkmDgNFb13UQw tySequence__kdxAxisTjDkmDgNFb13UQw;
typedef struct tySequence__kdxAxisTjDkmDgNFb13UQw_Content tySequence__kdxAxisTjDkmDgNFb13UQw_Content;
typedef struct tySequence__ANJm3Ou4QEh9abhA1XpChkw tySequence__ANJm3Ou4QEh9abhA1XpChkw;
typedef struct tySequence__ANJm3Ou4QEh9abhA1XpChkw_Content tySequence__ANJm3Ou4QEh9abhA1XpChkw_Content;
typedef struct tyObject_Table__iOU2QDcGVSdtdaO1ubp8AQ tyObject_Table__iOU2QDcGVSdtdaO1ubp8AQ;
typedef struct tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ;
typedef struct tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ_Content tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ_Content;
typedef struct tyObject_Table__G1v8c16HePOldLeucwe05Q tyObject_Table__G1v8c16HePOldLeucwe05Q;
typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content;
typedef struct tyObject_Table__fkVbis6Wl9armQNEPm21CLQ tyObject_Table__fkVbis6Wl9armQNEPm21CLQ;
typedef struct tySequence__UQG43DVXYWx86AitV5pL8g tySequence__UQG43DVXYWx86AitV5pL8g;
typedef struct tySequence__UQG43DVXYWx86AitV5pL8g_Content tySequence__UQG43DVXYWx86AitV5pL8g_Content;
typedef struct tyObject_Table__NttoEzoiq5CiphZe81oadg tyObject_Table__NttoEzoiq5CiphZe81oadg;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content;
typedef struct tyObject_Table__hsjU9cxnK6dA4IxNq3j9bV6w tyObject_Table__hsjU9cxnK6dA4IxNq3j9bV6w;
typedef struct tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA;
typedef struct tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA_Content tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA_Content;
typedef struct tySequence__6HN8Af9btfjdnDkSmkCapaA tySequence__6HN8Af9btfjdnDkSmkCapaA;
typedef struct tySequence__6HN8Af9btfjdnDkSmkCapaA_Content tySequence__6HN8Af9btfjdnDkSmkCapaA_Content;
typedef struct tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag;
typedef struct tyObject_Operators__Ai9aW8j1mouo4Nz9bP29c2c5w tyObject_Operators__Ai9aW8j1mouo4Nz9bP29c2c5w;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg;
typedef struct tyObject_TEffects__YYtynIOekhyXILpEaWFeZw tyObject_TEffects__YYtynIOekhyXILpEaWFeZw;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w;
typedef struct tySequence__E8pi9b5QNahsURYzXMjh3qw tySequence__E8pi9b5QNahsURYzXMjh3qw;
typedef struct tySequence__E8pi9b5QNahsURYzXMjh3qw_Content tySequence__E8pi9b5QNahsURYzXMjh3qw_Content;
typedef struct tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw;
typedef struct tyObject_MutationInfo__09cglYawlQfhTDITHVV8vBw tyObject_MutationInfo__09cglYawlQfhTDITHVV8vBw;
typedef struct tyObject_TPassContext__9aUzdnrOgAbujYuO39brF9bbA tyObject_TPassContext__9aUzdnrOgAbujYuO39brF9bbA;
typedef struct tyObject_TScope__UGPjl9bmDNGJVWv0GAkg6Cw tyObject_TScope__UGPjl9bmDNGJVWv0GAkg6Cw;
typedef struct tySequence__ayW1sBql6IlgnJXmG6YwBw tySequence__ayW1sBql6IlgnJXmG6YwBw;
typedef struct tySequence__ayW1sBql6IlgnJXmG6YwBw_Content tySequence__ayW1sBql6IlgnJXmG6YwBw_Content;
typedef struct tyObject_TProcCon__XrvIEKqkKB6U7VcgbkYq0w tyObject_TProcCon__XrvIEKqkKB6U7VcgbkYq0w;
typedef struct tyObject_TMatchedConcept__h9bAHBfSxx9cpSPDxUatKVFw tyObject_TMatchedConcept__h9bAHBfSxx9cpSPDxUatKVFw;
typedef struct tySequence__mkw3BsSwySE8kJ1iQVHi2g tySequence__mkw3BsSwySE8kJ1iQVHi2g;
typedef struct tySequence__mkw3BsSwySE8kJ1iQVHi2g_Content tySequence__mkw3BsSwySE8kJ1iQVHi2g_Content;
typedef struct tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ;
typedef struct tySequence__oJNUGvppFP9c7bQcQ1vFDNw tySequence__oJNUGvppFP9c7bQcQ1vFDNw;
typedef struct tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content;
typedef struct tySequence__P2jdSFF0rwb3d6yhCnf7Tw tySequence__P2jdSFF0rwb3d6yhCnf7Tw;
typedef struct tySequence__P2jdSFF0rwb3d6yhCnf7Tw_Content tySequence__P2jdSFF0rwb3d6yhCnf7Tw_Content;
typedef struct tyObject_TCtx__b6xwcD9cMKdlvd6DZIf4rHg tyObject_TCtx__b6xwcD9cMKdlvd6DZIf4rHg;
typedef struct tySequence__B9cdeRjiqZYBtgmMW4y69bow tySequence__B9cdeRjiqZYBtgmMW4y69bow;
typedef struct tySequence__B9cdeRjiqZYBtgmMW4y69bow_Content tySequence__B9cdeRjiqZYBtgmMW4y69bow_Content;
typedef struct tySequence__zzmYOvMjuaDPGlm2gOxjfw tySequence__zzmYOvMjuaDPGlm2gOxjfw;
typedef struct tySequence__zzmYOvMjuaDPGlm2gOxjfw_Content tySequence__zzmYOvMjuaDPGlm2gOxjfw_Content;
typedef struct tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w;
typedef struct tySequence__Bis5AbpONWcIRrPyPJS8Yw tySequence__Bis5AbpONWcIRrPyPJS8Yw;
typedef struct tySequence__Bis5AbpONWcIRrPyPJS8Yw_Content tySequence__Bis5AbpONWcIRrPyPJS8Yw_Content;
typedef struct tyObject_Table__LoQrFsQrEUUIXOvwfo6wXA tyObject_Table__LoQrFsQrEUUIXOvwfo6wXA;
typedef struct tySequence__2ysejK9bM8cCXleF05Ng9cHA tySequence__2ysejK9bM8cCXleF05Ng9cHA;
typedef struct tySequence__2ysejK9bM8cCXleF05Ng9cHA_Content tySequence__2ysejK9bM8cCXleF05Ng9cHA_Content;
typedef struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A;
typedef struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg;
typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
typedef struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag;
typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA tySequence__npXKLeClRo4ZDs6rPxQ9bRA;
typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content tySequence__npXKLeClRo4ZDs6rPxQ9bRA_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 tySequence__9csKSQ865Bdwb8TbX9cOogww tySequence__9csKSQ865Bdwb8TbX9cOogww;
typedef struct tySequence__9csKSQ865Bdwb8TbX9cOogww_Content tySequence__9csKSQ865Bdwb8TbX9cOogww_Content;
typedef struct tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ;
typedef struct tySequence__8Np6tlClE5az1CyqZdN19bQ tySequence__8Np6tlClE5az1CyqZdN19bQ;
typedef struct tySequence__8Np6tlClE5az1CyqZdN19bQ_Content tySequence__8Np6tlClE5az1CyqZdN19bQ_Content;
typedef struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ;
typedef struct tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw;
typedef struct tyObject_Partitions__8JEvj7xHrL5kIFiSTpKnZg tyObject_Partitions__8JEvj7xHrL5kIFiSTpKnZg;
typedef struct tySequence__MSDrKmAF4cj59cY74qFKQtQ tySequence__MSDrKmAF4cj59cY74qFKQtQ;
typedef struct tySequence__MSDrKmAF4cj59cY74qFKQtQ_Content tySequence__MSDrKmAF4cj59cY74qFKQtQ_Content;
typedef struct tySequence__oPvbBQGfJLgF9axmfwR3PQA tySequence__oPvbBQGfJLgF9axmfwR3PQA;
typedef struct tySequence__oPvbBQGfJLgF9axmfwR3PQA_Content tySequence__oPvbBQGfJLgF9axmfwR3PQA_Content;
typedef struct tyObject_Iface__GILGqST9an4kYyzfE9aqumug tyObject_Iface__GILGqST9an4kYyzfE9aqumug;
typedef struct tySequence__khRnfByqYV6qzEm71s9aoMA tySequence__khRnfByqYV6qzEm71s9aoMA;
typedef struct tySequence__khRnfByqYV6qzEm71s9aoMA_Content tySequence__khRnfByqYV6qzEm71s9aoMA_Content;
typedef struct tyObject_LoadedModule__Ec6YWszJFmp5VgmpHadnZA tyObject_LoadedModule__Ec6YWszJFmp5VgmpHadnZA;
typedef struct tyObject_PackedModule__i9anwDwJxE2V9bIMoIqqe9chA tyObject_PackedModule__i9anwDwJxE2V9bIMoIqqe9chA;
typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA;
typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA_Content tySequence__PXIzfWocnrafGz5p3CP5LA_Content;
typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA;
typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content;
typedef struct tyObject_PackedTree__NQ7d1M9bD3cUZLhD9aRSVMRw tyObject_PackedTree__NQ7d1M9bD3cUZLhD9aRSVMRw;
typedef struct tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q;
typedef struct tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q_Content tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q_Content;
typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg;
typedef struct tySequence__b89aLriiJnVTD186H6zNIgg_Content tySequence__b89aLriiJnVTD186H6zNIgg_Content;
typedef struct tySequence__9a35SUiZaZnQQczCKMafPpA tySequence__9a35SUiZaZnQQczCKMafPpA;
typedef struct tySequence__9a35SUiZaZnQQczCKMafPpA_Content tySequence__9a35SUiZaZnQQczCKMafPpA_Content;
typedef struct tySequence__E0A6SaW1v3EKBAVAijH8Mw tySequence__E0A6SaW1v3EKBAVAijH8Mw;
typedef struct tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content;
typedef struct tySequence__ksIzANWGKlNIZxswx6UF9cQ tySequence__ksIzANWGKlNIZxswx6UF9cQ;
typedef struct tySequence__ksIzANWGKlNIZxswx6UF9cQ_Content tySequence__ksIzANWGKlNIZxswx6UF9cQ_Content;
typedef struct tySequence__rg1JHBuFtw6jyGZxePBOTg tySequence__rg1JHBuFtw6jyGZxePBOTg;
typedef struct tySequence__rg1JHBuFtw6jyGZxePBOTg_Content tySequence__rg1JHBuFtw6jyGZxePBOTg_Content;
typedef struct tySequence__6xT3ssEcZuds56oxe6Hi1Q tySequence__6xT3ssEcZuds56oxe6Hi1Q;
typedef struct tySequence__6xT3ssEcZuds56oxe6Hi1Q_Content tySequence__6xT3ssEcZuds56oxe6Hi1Q_Content;
typedef struct tySequence__0kQhEjYsrU0bQoX6VKnNbA tySequence__0kQhEjYsrU0bQoX6VKnNbA;
typedef struct tySequence__0kQhEjYsrU0bQoX6VKnNbA_Content tySequence__0kQhEjYsrU0bQoX6VKnNbA_Content;
typedef struct tySequence__cNHcFk7EiJIuDgTjWY8U9bg tySequence__cNHcFk7EiJIuDgTjWY8U9bg;
typedef struct tySequence__cNHcFk7EiJIuDgTjWY8U9bg_Content tySequence__cNHcFk7EiJIuDgTjWY8U9bg_Content;
typedef struct tyObject_BiTable__9ai5oxTvigdfDUwtWWva5Wg tyObject_BiTable__9ai5oxTvigdfDUwtWWva5Wg;
typedef struct tyObject_BiTable__iA9a9bnTrbRRuP29bd9cCIke9bg tyObject_BiTable__iA9a9bnTrbRRuP29bd9cCIke9bg;
typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ_Content tySequence__IHUFRsFxZNv7YydiUO2esQ_Content;
typedef struct tyObject_Table__wOXFN2eadVouctMpJwmcSA tyObject_Table__wOXFN2eadVouctMpJwmcSA;
typedef struct tySequence__9afGcb6vqUeksMMfijyiRIg tySequence__9afGcb6vqUeksMMfijyiRIg;
typedef struct tySequence__9afGcb6vqUeksMMfijyiRIg_Content tySequence__9afGcb6vqUeksMMfijyiRIg_Content;
typedef struct tyObject_PackedEncoder__7mkdmVhEnEC4f7GEynWrbw tyObject_PackedEncoder__7mkdmVhEnEC4f7GEynWrbw;
typedef struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q tyObject_Table__TRm6MPqklA8EYBmBMY117Q;
typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content;
typedef struct tyTuple__DlfALjW9a9aZbdaEgWjgJiDA tyTuple__DlfALjW9a9aZbdaEgWjgJiDA;
typedef struct tySequence__rbrgPpeV9be6C3GwbBbkmpA tySequence__rbrgPpeV9be6C3GwbBbkmpA;
typedef struct tySequence__rbrgPpeV9be6C3GwbBbkmpA_Content tySequence__rbrgPpeV9be6C3GwbBbkmpA_Content;
typedef struct tyTuple__Aaw0efyo1m4v9bdA8Xy39apQ tyTuple__Aaw0efyo1m4v9bdA8Xy39apQ;
typedef struct tySequence__QuE9aHaZlhk7otugTn0uD9cg tySequence__QuE9aHaZlhk7otugTn0uD9cg;
typedef struct tySequence__QuE9aHaZlhk7otugTn0uD9cg_Content tySequence__QuE9aHaZlhk7otugTn0uD9cg_Content;
typedef struct tyTuple__kjLAcEjcuUUb5HQQFd004Q tyTuple__kjLAcEjcuUUb5HQQFd004Q;
typedef struct tyObject_LazySym__Ryd9aJ9bcLvoLBu56Qo9bzm9aw tyObject_LazySym__Ryd9aJ9bcLvoLBu56Qo9bzm9aw;
typedef struct tyObject_FullId__3oA6EHvzCx1KvUf9cxJRXXw tyObject_FullId__3oA6EHvzCx1KvUf9cxJRXXw;
typedef struct tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA;
typedef struct tyTuple__sr9ahxowKRwC2RZn4t1m9bTg tyTuple__sr9ahxowKRwC2RZn4t1m9bTg;
typedef struct tySequence__KBDwsdF2UrZmqdc6bU9bHbA tySequence__KBDwsdF2UrZmqdc6bU9bHbA;
typedef struct tySequence__KBDwsdF2UrZmqdc6bU9bHbA_Content tySequence__KBDwsdF2UrZmqdc6bU9bHbA_Content;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
typedef struct tyTuple__NZ83xKYfF4bzmRwdlY9bu0Q tyTuple__NZ83xKYfF4bzmRwdlY9bu0Q;
typedef struct tySequence__XpdAmI9cDNdhUBFb3iaYfkw tySequence__XpdAmI9cDNdhUBFb3iaYfkw;
typedef struct tySequence__XpdAmI9cDNdhUBFb3iaYfkw_Content tySequence__XpdAmI9cDNdhUBFb3iaYfkw_Content;
typedef struct tyTuple__7nNcbNXE6cQ88aZ3Fl9bayA tyTuple__7nNcbNXE6cQ88aZ3Fl9bayA;
typedef struct tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA;
typedef struct tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA_Content tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA_Content;
typedef struct tyTuple__iv4s4NUz12iOqq0NB9cYh3Q tyTuple__iv4s4NUz12iOqq0NB9cYh3Q;
typedef struct tyTuple__VM7m2WL59bxLeiTf9bI39aJNw tyTuple__VM7m2WL59bxLeiTf9bI39aJNw;
typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
typedef struct tyTuple__hbzrBSDgTxYG04GZ0NRCew tyTuple__hbzrBSDgTxYG04GZ0NRCew;
typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
typedef struct tyTuple__ZfcKvWP5Xk7y4Jhmn9aCWgA tyTuple__ZfcKvWP5Xk7y4Jhmn9aCWgA;
typedef struct tyObject_BTree__BxbTQohN8QrxN73DA9bcM9aQ tyObject_BTree__BxbTQohN8QrxN73DA9bcM9aQ;
typedef struct tyObject_NodecolonObjectType___mrvIQfKwBmbEEQo9c7zUoMA tyObject_NodecolonObjectType___mrvIQfKwBmbEEQo9c7zUoMA;
typedef struct tyTuple__GicXS2CKoWgwFlNKz2d15w tyTuple__GicXS2CKoWgwFlNKz2d15w;
typedef struct tyObject_ImportedModule__Iz1DzOMV1rZCTSH8FVD9aSQ tyObject_ImportedModule__Iz1DzOMV1rZCTSH8FVD9aSQ;
typedef struct tyObject_TOptionEntry__zp29aBDkJVkD8RBug9cOgA9cg tyObject_TOptionEntry__zp29aBDkJVkD8RBug9cOgA9cg;
typedef struct tyObject_TIdPair__3AnhVnGQClv9alimKqsNrEg tyObject_TIdPair__3AnhVnGQClv9alimKqsNrEg;
typedef struct tyObject_TInstantiationPair__Q49cLaFKInl3t4ELh9cxBEnA tyObject_TInstantiationPair__Q49cLaFKInl3t4ELh9cxBEnA;
typedef struct tyObject_TInstantiation__8SLhhTGRSJj9a3g5KOHqwdQ tyObject_TInstantiation__8SLhhTGRSJj9a3g5KOHqwdQ;
typedef struct tyTuple__i9bSUkJ6C2tzwR9aU2ropx5g tyTuple__i9bSUkJ6C2tzwR9aU2ropx5g;
typedef struct tyTuple__NAaJgGVgNmlGoqmiWxdOHQ tyTuple__NAaJgGVgNmlGoqmiWxdOHQ;
typedef struct tyTuple__OseWehQ0HNC8Ns4uO1D8HA tyTuple__OseWehQ0HNC8Ns4uO1D8HA;
typedef struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg;
typedef struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ;
typedef struct tyObject_VarIndex__gqlFfS5HP9cscNmlzNsazBA tyObject_VarIndex__gqlFfS5HP9cscNmlzNsazBA;
typedef struct tyObject_Connection__PKo09bcsgKnccLlJG4qrFxA tyObject_Connection__PKo09bcsgKnccLlJG4qrFxA;
typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
typedef struct tyObject_PackedNode__4DO5SncX6BltUGwnK9bpl3Q tyObject_PackedNode__4DO5SncX6BltUGwnK9bpl3Q;
typedef struct tyObject_PackedLineInfo__wLj9aHuk4ZvBakrzOfuTRFg tyObject_PackedLineInfo__wLj9aHuk4ZvBakrzOfuTRFg;
typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
typedef struct tyTuple__4mROXJDLgq3TboX1QMTCWQ tyTuple__4mROXJDLgq3TboX1QMTCWQ;
typedef struct tyTuple__o7TpijPv9bOBH56jcsA2W3Q tyTuple__o7TpijPv9bOBH56jcsA2W3Q;
typedef struct tyObject_PackedInstantiation__OE4cbwsIr9bR8qwTi4zXZWw tyObject_PackedInstantiation__OE4cbwsIr9bR8qwTi4zXZWw;
typedef struct tySequence__IWXeVgKgI4IltTBItDiIwQ tySequence__IWXeVgKgI4IltTBItDiIwQ;
typedef struct tySequence__IWXeVgKgI4IltTBItDiIwQ_Content tySequence__IWXeVgKgI4IltTBItDiIwQ_Content;
typedef struct tyTuple__t08apXFlOi7QMiJ7EqOynA tyTuple__t08apXFlOi7QMiJ7EqOynA;
typedef struct tyTuple__mPT8UQTez4CkORDSYBMX5Q tyTuple__mPT8UQTez4CkORDSYBMX5Q;
typedef struct tyObject_PackedSym__lJeIt8gwxYwQVC9aD43t8QA tyObject_PackedSym__lJeIt8gwxYwQVC9aD43t8QA;
typedef struct tyObject_PackedLib__mP6VjReWkytOIw7KYWGjGQ tyObject_PackedLib__mP6VjReWkytOIw7KYWGjGQ;
typedef struct tyObject_PackedType__KhxjjuiksMoB49bARLu38lQ tyObject_PackedType__KhxjjuiksMoB49bARLu38lQ;
typedef struct tyTuple__jB9c7GkyAKeO0wCNdUB5Pdg tyTuple__jB9c7GkyAKeO0wCNdUB5Pdg;
typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
typedef struct tyObject_LazyType__SN9c3fsi9b9ajltls5ZKIUiTA tyObject_LazyType__SN9c3fsi9b9ajltls5ZKIUiTA;
typedef struct tyObject_LazyInstantiation__9a6qqvxx8ZzdJrEGrAFijCA tyObject_LazyInstantiation__9a6qqvxx8ZzdJrEGrAFijCA;
typedef struct tySequence__29btfq9cDuCZmHsAEmuBeMOg tySequence__29btfq9cDuCZmHsAEmuBeMOg;
typedef struct tySequence__29btfq9cDuCZmHsAEmuBeMOg_Content tySequence__29btfq9cDuCZmHsAEmuBeMOg_Content;
typedef struct tyTuple__pDyHME2vky9bxBYZlE7PoZg tyTuple__pDyHME2vky9bxBYZlE7PoZg;
typedef struct tyObject_SymInfoPair__tdBivcU9bT8j1LrgpcSZ9a6w tyObject_SymInfoPair__tdBivcU9bT8j1LrgpcSZ9a6w;
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;
struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU64 tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg;
typedef NU32 tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg;
typedef NU8 tyEnum_TLocKind__iCEcZjTaghPmL3Wx2e5DQw;
typedef NU8 tyEnum_TStorageLoc__BKvMXWvKko6Yn5329c9aw9afg;
typedef NU16 tySet_tyEnum_TLocFlag__9a7m8BSAfzn6yluCKaq6viw;
struct NimStrPayload {
NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
NI len;
NimStrPayload* p;
};
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 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;
};
};
typedef NU16 tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA;
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__xVf0LN69cmygEcgFlBE8VRg) (tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b);
struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
NI len; tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content* p;
};
typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
NI elems;
NI counter;
NI max;
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
tySequence__Bre9bNyuQOg1EJKitjSzn8w data;
tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
};
typedef NU8 tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA;
struct tySequence__9czS3pDdyAs7bxglDcl2YyA {
NI len; tySequence__9czS3pDdyAs7bxglDcl2YyA_Content* p;
};
struct tySequence__XHeQfi7ybWnv4ebLBB7afQ {
NI len; tySequence__XHeQfi7ybWnv4ebLBB7afQ_Content* p;
};
struct tySequence__gDGqa9bft4EIBGJXdPabojw {
NI len; tySequence__gDGqa9bft4EIBGJXdPabojw_Content* p;
};
struct tySequence__YLW4xuku9cRS9cLOfVzwUxqg {
NI len; tySequence__YLW4xuku9cRS9cLOfVzwUxqg_Content* p;
};
struct tyObject_Table__fjuGiTdj9aowj72av2a6U5A {
tySequence__YLW4xuku9cRS9cLOfVzwUxqg data;
NI counter;
};
struct tySequence__HL9bxOKBQaeJ5XQXd8t8m8g {
NI len; tySequence__HL9bxOKBQaeJ5XQXd8t8m8g_Content* p;
};
struct tyObject_Table__YQZ1JwvCEKbqGOUhujSEHg {
tySequence__HL9bxOKBQaeJ5XQXd8t8m8g data;
NI counter;
};
struct tySequence__M1HR1j8fkzOLdhYymqd9cNA {
NI len; tySequence__M1HR1j8fkzOLdhYymqd9cNA_Content* p;
};
struct tyObject_Table__ylj8DEu79cdmULczcIwXsIQ {
tySequence__M1HR1j8fkzOLdhYymqd9cNA data;
NI counter;
};
typedef tyObject_Table__ylj8DEu79cdmULczcIwXsIQ tyArray__RtDvnrEZJ39agpdQSeedS9bg[5];
struct tySequence__ndtMxvII636Jz8NCVD9a9a0Q {
NI len; tySequence__ndtMxvII636Jz8NCVD9a9a0Q_Content* p;
};
struct tyObject_Table__tTWGtT1HJ9boj5Bfuszmr3Q {
tySequence__ndtMxvII636Jz8NCVD9a9a0Q data;
NI counter;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
tySequence__7lEisrXlQEzwtUKW5pzRCw data;
NI counter;
};
typedef NU8 tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w;
typedef NU8 tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg;
typedef NU8 tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g;
typedef NU64 tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw;
struct tyObject_PackedConfig__MKBtxaJKSgIb29cEaKwGN9bw {
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w backend;
tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg selectedGC;
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g cCompiler;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options;
tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw globalOptions;
};
struct tySequence__UfuHwINLHlFJGRcvFZqKQQ {
NI len; tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content* p;
};
struct tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg {
NI counter;
tySequence__UfuHwINLHlFJGRcvFZqKQQ data;
};
struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
NI len; tySequence__fdmz6VkIf1ewwrssKYqRFg_Content* p;
};
struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA {
tySequence__fdmz6VkIf1ewwrssKYqRFg data;
NI counter;
};
struct tySequence__kxu4GK0onha2t9bo86mdVAg {
NI len; tySequence__kxu4GK0onha2t9bo86mdVAg_Content* p;
};
struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ {
tySequence__kxu4GK0onha2t9bo86mdVAg data;
NI counter;
};
struct tySequence__48JTohSgTy339bRxHzUD8KA {
NI len; tySequence__48JTohSgTy339bRxHzUD8KA_Content* p;
};
typedef struct {
N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
void* ClE_0;
} tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
struct tySequence__7C9bvULfaDaWykzhm3DspFQ {
NI len; tySequence__7C9bvULfaDaWykzhm3DspFQ_Content* p;
};
struct tyObject_Table__SogU5TxbKBYUMQw7zmdG3g {
tySequence__7C9bvULfaDaWykzhm3DspFQ data;
NI counter;
};
struct tySequence__kdxAxisTjDkmDgNFb13UQw {
NI len; tySequence__kdxAxisTjDkmDgNFb13UQw_Content* p;
};
struct tyObject_Table__ijGervJNjyJafnomjvukiw {
tySequence__kdxAxisTjDkmDgNFb13UQw data;
NI counter;
};
struct tySequence__ANJm3Ou4QEh9abhA1XpChkw {
NI len; tySequence__ANJm3Ou4QEh9abhA1XpChkw_Content* p;
};
typedef tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* tyArray__pPZUzt9b8Uu2AM33aCSYl9aQ[65];
struct tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ {
NI len; tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ_Content* p;
};
struct tyObject_Table__iOU2QDcGVSdtdaO1ubp8AQ {
tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ data;
NI counter;
};
struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
NI len; tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content* p;
};
struct tyObject_Table__G1v8c16HePOldLeucwe05Q {
tySequence__fIB1rTQ55aFonoft9a9bmljQ data;
NI counter;
};
typedef N_NIMCALL_PTR(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, tyProc__vPrWBhD9cGsW9cbPZw2O089bQ) (tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* m, NI32 fileIdx);
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__lJFXsCoW9bancuutiZwWl3g) (tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* m, NI32 fileIdx);
struct tySequence__UQG43DVXYWx86AitV5pL8g {
NI len; tySequence__UQG43DVXYWx86AitV5pL8g_Content* p;
};
struct tyObject_Table__fkVbis6Wl9armQNEPm21CLQ {
tySequence__UQG43DVXYWx86AitV5pL8g data;
NI counter;
};
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
NI len; tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content* p;
};
struct tyObject_Table__NttoEzoiq5CiphZe81oadg {
tySequence__squ9b9bUH4OLHf6cEMrt6hVA data;
NI counter;
};
struct tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA {
NI len; tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA_Content* p;
};
struct tyObject_Table__hsjU9cxnK6dA4IxNq3j9bV6w {
tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA data;
NI counter;
};
struct tySequence__6HN8Af9btfjdnDkSmkCapaA {
NI len; tySequence__6HN8Af9btfjdnDkSmkCapaA_Content* p;
};
typedef N_NIMCALL_PTR(void, tyProc__NoUxTS8DcbzCOvNOEi3ocQ) (tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
typedef N_NIMCALL_PTR(void, tyProc__uM2x1UhfNk9babrtrGeM2gw) (tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__39c4YkMNuEKczAhajwhaZug) (tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* formal, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* actual);
struct tyObject_Operators__Ai9aW8j1mouo4Nz9bP29c2c5w {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opNot;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opContains;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opLe;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opLt;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opAnd;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opOr;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opIsNil;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opEq;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opAdd;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opSub;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opMul;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opDiv;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* opLen;
};
struct tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg {
tySequence__9czS3pDdyAs7bxglDcl2YyA ifaces;
tySequence__XHeQfi7ybWnv4ebLBB7afQ packed_0;
tySequence__gDGqa9bft4EIBGJXdPabojw encoders;
tyObject_Table__fjuGiTdj9aowj72av2a6U5A typeInstCache;
tyObject_Table__YQZ1JwvCEKbqGOUhujSEHg procInstCache;
tyArray__RtDvnrEZJ39agpdQSeedS9bg attachedOps;
tyObject_Table__tTWGtT1HJ9boj5Bfuszmr3Q methodsPerType;
tyObject_Table__ylj8DEu79cdmULczcIwXsIQ enumToStringProcs;
tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA emittedTypeInfo;
tyObject_PackedConfig__MKBtxaJKSgIb29cEaKwGN9bw startupPackedConfig;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg packageSyms;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA deps;
tyObject_Table__fdKWDDO1P17zvuQPReVgRA importDeps;
NIM_BOOL suggestMode;
NIM_BOOL invalidTransitiveClosure;
tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ inclToMod;
tySequence__48JTohSgTy339bRxHzUD8KA importStack;
RootObj* backend;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config;
tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache;
RootObj* vm;
tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* usageSym;
tySequence__UfuHwINLHlFJGRcvFZqKQQ owners;
tyObject_Table__SogU5TxbKBYUMQw7zmdG3g suggestSymbols;
tyObject_Table__ijGervJNjyJafnomjvukiw suggestErrors;
tySequence__ANJm3Ou4QEh9abhA1XpChkw methods;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* systemModule;
tyArray__pPZUzt9b8Uu2AM33aCSYl9aQ sysTypes;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg compilerprocs;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg exposed;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg packageTypes;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* emptyNode;
tyObject_Table__iOU2QDcGVSdtdaO1ubp8AQ canonTypes;
tyObject_Table__G1v8c16HePOldLeucwe05Q symBodyHashes;
tyProc__vPrWBhD9cGsW9cbPZw2O089bQ importModuleCallback;
tyProc__lJFXsCoW9bancuutiZwWl3g includeFileCallback;
tyObject_Table__fkVbis6Wl9armQNEPm21CLQ cacheSeqs;
tyObject_Table__NttoEzoiq5CiphZe81oadg cacheCounters;
tyObject_Table__hsjU9cxnK6dA4IxNq3j9bV6w cacheTables;
tySequence__6HN8Af9btfjdnDkSmkCapaA passes;
tyProc__NoUxTS8DcbzCOvNOEi3ocQ onDefinition;
tyProc__NoUxTS8DcbzCOvNOEi3ocQ onDefinitionResolveForward;
tyProc__NoUxTS8DcbzCOvNOEi3ocQ onUsage;
tySequence__xxu3GgaFAGO6lOns9aHaeLQ globalDestructors;
tyProc__uM2x1UhfNk9babrtrGeM2gw strongSemCheck;
tyProc__39c4YkMNuEKczAhajwhaZug compatibleProps;
tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen;
tyObject_Operators__Ai9aW8j1mouo4Nz9bP29c2c5w operators;
};
typedef NU8 tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw;
typedef NU16 tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA;
typedef NU8 tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
NimStringV2 Field0;
NI Field1;
NI Field2;
};
typedef NimStringV2 tyArray__Re75IspeoxXy2oCZHwcRrA[2];
typedef NU8 tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ[9];
typedef NU8 tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg;
struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA {
NI id;
NimStringV2 s;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* next;
NI h;
};
typedef NU8 tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q;
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct tySequence__E8pi9b5QNahsURYzXMjh3qw {
NI len; tySequence__E8pi9b5QNahsURYzXMjh3qw_Content* p;
};
struct tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w {
tySequence__E8pi9b5QNahsURYzXMjh3qw data;
NI counter;
};
struct tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw {
tySequence__xxu3GgaFAGO6lOns9aHaeLQ s;
tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g;
NIM_BOOL beSmart;
};
struct tyObject_TEffects__YYtynIOekhyXILpEaWFeZw {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* exc;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tags;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* forbids;
NI bottom;
NI inTryStmt;
NI inExceptOrFinallyStmt;
NI leftPartOfAsgn;
NI inIfStmt;
NI currentBlock;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* ownerModule;
tySequence__qwqHTkRvwhrRyENtudHQ7g init;
tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w scopes;
tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw guards;
tySequence__xxu3GgaFAGO6lOns9aHaeLQ locked;
NIM_BOOL gcUnsafe;
NIM_BOOL isRecursive;
NIM_BOOL isTopLevel;
NIM_BOOL hasSideEffect;
NIM_BOOL inEnforcedGcSafe;
NIM_BOOL isInnerProc;
NIM_BOOL inEnforcedNoSideEffects;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg currOptions;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config;
tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph;
tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA escapingParams;
};
typedef NU8 tySet_tyEnum_SubgraphFlag__ml3yXvPvj6hJ9cmVAkOXJFQ;
struct tyObject_MutationInfo__09cglYawlQfhTDITHVV8vBw {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* param;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg mutatedHere;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg connectedVia;
tySet_tyEnum_SubgraphFlag__ml3yXvPvj6hJ9cmVAkOXJFQ flags;
NI maxMutation;
NI minConnection;
tySequence__qwqHTkRvwhrRyENtudHQ7g mutations;
};
struct tyObject_TPassContext__9aUzdnrOgAbujYuO39brF9bbA {
RootObj Sup;
tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen;
};
struct tySequence__ayW1sBql6IlgnJXmG6YwBw {
NI len; tySequence__ayW1sBql6IlgnJXmG6YwBw_Content* p;
};
typedef tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* tyArray__KVFQ9aaG2TvX85nFH9cK8pgA[38];
struct tySequence__mkw3BsSwySE8kJ1iQVHi2g {
NI len; tySequence__mkw3BsSwySE8kJ1iQVHi2g_Content* p;
};
struct tySequence__oJNUGvppFP9c7bQcQ1vFDNw {
NI len; tySequence__oJNUGvppFP9c7bQcQ1vFDNw_Content* p;
};
struct tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ {
NI counter;
tySequence__oJNUGvppFP9c7bQcQ1vFDNw data;
};
struct tySequence__P2jdSFF0rwb3d6yhCnf7Tw {
NI len; tySequence__P2jdSFF0rwb3d6yhCnf7Tw_Content* p;
};
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__BcN7hdcTXNhFurWwndJbtA) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* expectedType);
typedef NU32 tySet_tyEnum_TExprFlag__jKTT9ckw5GRVoNKW9bEspVXw;
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__BKMLzOCUnskOBj9cQFWlQDg) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tySet_tyEnum_TExprFlag__jKTT9ckw5GRVoNKW9bEspVXw flags, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* expectedType);
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__1tbGLFcNoKdU6yzwBHJs0w) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tySet_tyEnum_TExprFlag__jKTT9ckw5GRVoNKW9bEspVXw flags);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__jyUVm9cjKpkX8xEizEHTzRA) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t);
typedef struct {
N_NIMCALL_PTR(NIM_BOOL, ClP_0) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, void* ClE_0);
void* ClE_0;
} tyProc__3uTdqcW420OPmOVJGvTaZg;
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__Ntct9cf2liy0XMGfc9cIbU8w) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
typedef NU32 tySet_tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ;
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__1lfnnpeKNG6FV20X1Z36yA) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* nOrig, tySet_tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ filter, tySet_tyEnum_TExprFlag__jKTT9ckw5GRVoNKW9bEspVXw flags);
typedef N_NIMCALL_PTR(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, tyProc__wkobAC4Q85JVV8ho2qVRRw) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* prev);
typedef struct {
N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, ClP_0) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ pt, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, void* ClE_0);
void* ClE_0;
} tyProc__AxxFowutpTGFjFkvZOwI0A;
typedef struct {
N_NIMCALL_PTR(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, ClP_0) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* fn, tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ pt, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, void* ClE_0);
void* ClE_0;
} tyProc__k67h6NtyzLIZJvCNdfU5Pw;
struct tySequence__B9cdeRjiqZYBtgmMW4y69bow {
NI len; tySequence__B9cdeRjiqZYBtgmMW4y69bow_Content* p;
};
typedef NU8 tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA;
typedef N_NIMCALL_PTR(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, tyProc__shO9bqCbvwwreLFolgYIp8A) (tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* dc, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA op, NI col);
typedef NU32 tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA;
struct tySequence__zzmYOvMjuaDPGlm2gOxjfw {
NI len; tySequence__zzmYOvMjuaDPGlm2gOxjfw_Content* p;
};
struct tySequence__Bis5AbpONWcIRrPyPJS8Yw {
NI len; tySequence__Bis5AbpONWcIRrPyPJS8Yw_Content* p;
};
struct tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w {
tySequence__Bis5AbpONWcIRrPyPJS8Yw data;
NI counter;
};
struct tySequence__2ysejK9bM8cCXleF05Ng9cHA {
NI len; tySequence__2ysejK9bM8cCXleF05Ng9cHA_Content* p;
};
struct tyObject_Table__LoQrFsQrEUUIXOvwfo6wXA {
tySequence__2ysejK9bM8cCXleF05Ng9cHA data;
NI counter;
};
struct tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg {
tyObject_TPassContext__9aUzdnrOgAbujYuO39brF9bbA Sup;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* enforceVoidContext;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* voidType;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* module;
tyObject_TScope__UGPjl9bmDNGJVWv0GAkg6Cw* currentScope;
tyObject_TScope__UGPjl9bmDNGJVWv0GAkg6Cw* moduleScope;
tySequence__ayW1sBql6IlgnJXmG6YwBw imports;
tyObject_TScope__UGPjl9bmDNGJVWv0GAkg6Cw* topLevelScope;
tyObject_TProcCon__XrvIEKqkKB6U7VcgbkYq0w* p;
tyArray__KVFQ9aaG2TvX85nFH9cK8pgA intTypeCache;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* nilTypeCache;
tyObject_TMatchedConcept__h9bAHBfSxx9cpSPDxUatKVFw* matchedConcept;
tySequence__UfuHwINLHlFJGRcvFZqKQQ friendModules;
NI instCounter;
NI* templInstCounter;
NI inGenericContext;
NI inStaticContext;
NI inUnrolledContext;
NI compilesContextId;
NI compilesContextIdGenerator;
NI inGenericInst;
tySequence__UfuHwINLHlFJGRcvFZqKQQ converters;
tySequence__UfuHwINLHlFJGRcvFZqKQQ patterns;
tySequence__mkw3BsSwySE8kJ1iQVHi2g optionStack;
tyObject_TIdTable__zO1FPWiMqer9awSXDuPoIAQ symMapping;
tySequence__P2jdSFF0rwb3d6yhCnf7Tw libs;
tyProc__BcN7hdcTXNhFurWwndJbtA semConstExpr;
tyProc__BKMLzOCUnskOBj9cQFWlQDg semExpr;
tyProc__1tbGLFcNoKdU6yzwBHJs0w semTryExpr;
tyProc__BcN7hdcTXNhFurWwndJbtA semTryConstExpr;
tyProc__jyUVm9cjKpkX8xEizEHTzRA computeRequiresInit;
tyProc__3uTdqcW420OPmOVJGvTaZg hasUnresolvedArgs;
tyProc__1tbGLFcNoKdU6yzwBHJs0w semOperand;
tyProc__Ntct9cf2liy0XMGfc9cIbU8w semConstBoolExpr;
tyProc__1lfnnpeKNG6FV20X1Z36yA semOverloadedCall;
tyProc__wkobAC4Q85JVV8ho2qVRRw semTypeNode;
tyProc__AxxFowutpTGFjFkvZOwI0A semInferredLambda;
tyProc__k67h6NtyzLIZJvCNdfU5Pw semGenerateInstance;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA includedFiles;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg pureEnumFields;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg userPragmas;
tyObject_TCtx__b6xwcD9cMKdlvd6DZIf4rHg* evalContext;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA unknownIdents;
tySequence__B9cdeRjiqZYBtgmMW4y69bow generics;
NI topStmts;
NI lastGenericIdx;
NI hloLoopDetector;
NI inParallelStmt;
tyProc__shO9bqCbvwwreLFolgYIp8A instTypeBoundOp;
tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache;
tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg signatures;
NimStringV2 recursiveDep;
NIM_BOOL suggestionsMade;
NIM_BOOL isAmbiguous;
tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA features;
NI inTypeContext;
NI inConceptDecl;
tySequence__zzmYOvMjuaDPGlm2gOxjfw unusedImports;
tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w exportIndirections;
tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w importModuleMap;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastTLineInfo;
tyObject_Table__LoQrFsQrEUUIXOvwfo6wXA sideEffects;
NI inUncheckedAssignSection;
};
struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A {
NI rc;
NI rootIdx;
};
typedef NU8 tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow;
typedef NU8 tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg;
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 NU8 tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag;
struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA {
NI len; tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content* p;
};
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_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 NU8 tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g;
typedef NU8 tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg;
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_TOption__PrH9cMsvu5oCG0HODAZ3CAg;
typedef NU8 tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA;
struct tySequence__9csKSQ865Bdwb8TbX9cOogww {
NI len; tySequence__9csKSQ865Bdwb8TbX9cOogww_Content* p;
};
struct tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg Field0;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* Field1;
};
typedef NU8 tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w;
typedef NU8 tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw;
struct tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag {
NI32 module;
NI32 symId;
NI32 typeId_0;
NIM_BOOL sealed;
};
typedef NU8 tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw;
typedef NU8 tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g;
typedef NU8 tySet_tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ[21];
typedef NU8 tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A;
typedef NU8 tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw;
typedef NimStringV2 tyArray__7Z9ajkJtFFtfJY8l7DfqyrA[5];
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tySequence__8Np6tlClE5az1CyqZdN19bQ {
NI len; tySequence__8Np6tlClE5az1CyqZdN19bQ_Content* p;
};
struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ {
NI Field0;
NI Field1;
};
struct tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw {
NI oldLocked;
NIM_BOOL enforcedGcSafety;
NIM_BOOL enforceNoSideEffects;
NI oldExc;
NI oldTags;
NI oldForbids;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* exc;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tags;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* forbids;
};
struct tySequence__MSDrKmAF4cj59cY74qFKQtQ {
NI len; tySequence__MSDrKmAF4cj59cY74qFKQtQ_Content* p;
};
struct tySequence__oPvbBQGfJLgF9axmfwR3PQA {
NI len; tySequence__oPvbBQGfJLgF9axmfwR3PQA_Content* p;
};
typedef NU8 tySet_tyEnum_Goal__qFOer19bA9a6nDnUlP8XdnGg;
struct tyObject_Partitions__8JEvj7xHrL5kIFiSTpKnZg {
NI abstractTime;
tySequence__MSDrKmAF4cj59cY74qFKQtQ s;
tySequence__oPvbBQGfJLgF9axmfwR3PQA graphs;
tySet_tyEnum_Goal__qFOer19bA9a6nDnUlP8XdnGg goals;
NIM_BOOL unanalysableMutation;
NI inAsgnSource;
NI inConstructor;
NI inNoSideEffectSection;
NI inConditional;
NI inLoop;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner;
tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g;
};
typedef NimStringV2 tyArray__sMpvt1sOxOJ3LFGulnbeMQ[4];
#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__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
#define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content_PP
#define tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content_PP
struct tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content { NI cap; tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];};
#endif
struct tySequence__khRnfByqYV6qzEm71s9aoMA {
NI len; tySequence__khRnfByqYV6qzEm71s9aoMA_Content* p;
};
struct tyObject_Iface__GILGqST9an4kYyzfE9aqumug {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* module;
tySequence__khRnfByqYV6qzEm71s9aoMA converters;
tySequence__khRnfByqYV6qzEm71s9aoMA patterns;
tySequence__khRnfByqYV6qzEm71s9aoMA pureEnums;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg interf;
tyObject_TStrTable__oh42nAr9awCy3TD3e9b5LxLg interfHidden;
NimStringV2 uniqueName;
};
#ifndef tySequence__9czS3pDdyAs7bxglDcl2YyA_Content_PP
#define tySequence__9czS3pDdyAs7bxglDcl2YyA_Content_PP
struct tySequence__9czS3pDdyAs7bxglDcl2YyA_Content { NI cap; tyObject_Iface__GILGqST9an4kYyzfE9aqumug data[SEQ_DECL_SIZE];};
#endif
typedef NU8 tyEnum_ModuleStatus__QEyqxRJg9cMLyoEGTCNwluA;
struct tySequence__PXIzfWocnrafGz5p3CP5LA {
NI len; tySequence__PXIzfWocnrafGz5p3CP5LA_Content* p;
};
struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA {
NI len; tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content* p;
};
struct tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q {
NI len; tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q_Content* p;
};
struct tyObject_PackedTree__NQ7d1M9bD3cUZLhD9aRSVMRw {
tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q nodes;
};
struct tySequence__b89aLriiJnVTD186H6zNIgg {
NI len; tySequence__b89aLriiJnVTD186H6zNIgg_Content* p;
};
struct tySequence__9a35SUiZaZnQQczCKMafPpA {
NI len; tySequence__9a35SUiZaZnQQczCKMafPpA_Content* p;
};
struct tySequence__E0A6SaW1v3EKBAVAijH8Mw {
NI len; tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content* p;
};
struct tySequence__ksIzANWGKlNIZxswx6UF9cQ {
NI len; tySequence__ksIzANWGKlNIZxswx6UF9cQ_Content* p;
};
struct tySequence__rg1JHBuFtw6jyGZxePBOTg {
NI len; tySequence__rg1JHBuFtw6jyGZxePBOTg_Content* p;
};
struct tySequence__6xT3ssEcZuds56oxe6Hi1Q {
NI len; tySequence__6xT3ssEcZuds56oxe6Hi1Q_Content* p;
};
typedef NU8 tySet_tyEnum_ModuleBackendFlag__UvVQ3c8fcznoZW2T46kK6g;
struct tySequence__0kQhEjYsrU0bQoX6VKnNbA {
NI len; tySequence__0kQhEjYsrU0bQoX6VKnNbA_Content* p;
};
struct tySequence__cNHcFk7EiJIuDgTjWY8U9bg {
NI len; tySequence__cNHcFk7EiJIuDgTjWY8U9bg_Content* p;
};
struct tyObject_BiTable__9ai5oxTvigdfDUwtWWva5Wg {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ vals;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA keys;
};
struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
NI len; tySequence__IHUFRsFxZNv7YydiUO2esQ_Content* p;
};
struct tyObject_BiTable__iA9a9bnTrbRRuP29bd9cCIke9bg {
tySequence__IHUFRsFxZNv7YydiUO2esQ vals;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA keys;
};
struct tyObject_PackedModule__i9anwDwJxE2V9bIMoIqqe9chA {
NimStringV2 definedSymbols;
tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg moduleFlags;
tySequence__PXIzfWocnrafGz5p3CP5LA includes;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA imports;
tyObject_PackedTree__NQ7d1M9bD3cUZLhD9aRSVMRw toReplay;
tyObject_PackedTree__NQ7d1M9bD3cUZLhD9aRSVMRw topLevel;
tyObject_PackedTree__NQ7d1M9bD3cUZLhD9aRSVMRw bodies;
tySequence__b89aLriiJnVTD186H6zNIgg exports;
tySequence__b89aLriiJnVTD186H6zNIgg hidden;
tySequence__9a35SUiZaZnQQczCKMafPpA reexports;
tySequence__b89aLriiJnVTD186H6zNIgg compilerProcs;
tySequence__48JTohSgTy339bRxHzUD8KA converters;
tySequence__48JTohSgTy339bRxHzUD8KA methods;
tySequence__48JTohSgTy339bRxHzUD8KA trmacros;
tySequence__48JTohSgTy339bRxHzUD8KA pureEnums;
tySequence__E0A6SaW1v3EKBAVAijH8Mw typeInstCache;
tySequence__ksIzANWGKlNIZxswx6UF9cQ procInstCache;
tySequence__rg1JHBuFtw6jyGZxePBOTg attachedOps;
tySequence__6xT3ssEcZuds56oxe6Hi1Q methodsPerType;
tySequence__E0A6SaW1v3EKBAVAijH8Mw enumToStringProcs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ emittedTypeInfo;
tySet_tyEnum_ModuleBackendFlag__UvVQ3c8fcznoZW2T46kK6g backendFlags;
tySequence__0kQhEjYsrU0bQoX6VKnNbA syms;
tySequence__cNHcFk7EiJIuDgTjWY8U9bg types;
tyObject_BiTable__9ai5oxTvigdfDUwtWWva5Wg strings;
tyObject_BiTable__iA9a9bnTrbRRuP29bd9cCIke9bg numbers;
tyObject_PackedConfig__MKBtxaJKSgIb29cEaKwGN9bw cfg;
};
struct tySequence__9afGcb6vqUeksMMfijyiRIg {
NI len; tySequence__9afGcb6vqUeksMMfijyiRIg_Content* p;
};
struct tyObject_Table__wOXFN2eadVouctMpJwmcSA {
tySequence__9afGcb6vqUeksMMfijyiRIg data;
NI counter;
};
struct tyObject_LoadedModule__Ec6YWszJFmp5VgmpHadnZA {
tyEnum_ModuleStatus__QEyqxRJg9cMLyoEGTCNwluA status;
NIM_BOOL symsInit;
NIM_BOOL typesInit;
NIM_BOOL loadedButAliveSetChanged;
tyObject_PackedModule__i9anwDwJxE2V9bIMoIqqe9chA fromDisk;
tySequence__UfuHwINLHlFJGRcvFZqKQQ syms;
tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ types;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* module;
tyObject_Table__wOXFN2eadVouctMpJwmcSA iface;
tyObject_Table__wOXFN2eadVouctMpJwmcSA ifaceHidden;
};
#ifndef tySequence__XHeQfi7ybWnv4ebLBB7afQ_Content_PP
#define tySequence__XHeQfi7ybWnv4ebLBB7afQ_Content_PP
struct tySequence__XHeQfi7ybWnv4ebLBB7afQ_Content { NI cap; tyObject_LoadedModule__Ec6YWszJFmp5VgmpHadnZA data[SEQ_DECL_SIZE];};
#endif
struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
NI len; tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content* p;
};
struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q {
tySequence__9cnx3zXnWzeclW8Ko4oUgAQ data;
NI counter;
};
struct tyObject_PackedEncoder__7mkdmVhEnEC4f7GEynWrbw {
NI32 thisModule;
NI32 lastFile;
NU32 lastLit;
tyObject_Table__TRm6MPqklA8EYBmBMY117Q filenames;
tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ pendingTypes;
tySequence__UfuHwINLHlFJGRcvFZqKQQ pendingSyms;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA typeMarker;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA symMarker;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config;
};
#ifndef tySequence__gDGqa9bft4EIBGJXdPabojw_Content_PP
#define tySequence__gDGqa9bft4EIBGJXdPabojw_Content_PP
struct tySequence__gDGqa9bft4EIBGJXdPabojw_Content { NI cap; tyObject_PackedEncoder__7mkdmVhEnEC4f7GEynWrbw data[SEQ_DECL_SIZE];};
#endif
struct tySequence__rbrgPpeV9be6C3GwbBbkmpA {
NI len; tySequence__rbrgPpeV9be6C3GwbBbkmpA_Content* p;
};
struct tyTuple__DlfALjW9a9aZbdaEgWjgJiDA {
NI Field0;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw Field1;
tySequence__rbrgPpeV9be6C3GwbBbkmpA Field2;
};
#ifndef tySequence__YLW4xuku9cRS9cLOfVzwUxqg_Content_PP
#define tySequence__YLW4xuku9cRS9cLOfVzwUxqg_Content_PP
struct tySequence__YLW4xuku9cRS9cLOfVzwUxqg_Content { NI cap; tyTuple__DlfALjW9a9aZbdaEgWjgJiDA data[SEQ_DECL_SIZE];};
#endif
struct tySequence__QuE9aHaZlhk7otugTn0uD9cg {
NI len; tySequence__QuE9aHaZlhk7otugTn0uD9cg_Content* p;
};
struct tyTuple__Aaw0efyo1m4v9bdA8Xy39apQ {
NI Field0;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw Field1;
tySequence__QuE9aHaZlhk7otugTn0uD9cg Field2;
};
#ifndef tySequence__HL9bxOKBQaeJ5XQXd8t8m8g_Content_PP
#define tySequence__HL9bxOKBQaeJ5XQXd8t8m8g_Content_PP
struct tySequence__HL9bxOKBQaeJ5XQXd8t8m8g_Content { NI cap; tyTuple__Aaw0efyo1m4v9bdA8Xy39apQ data[SEQ_DECL_SIZE];};
#endif
struct tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA {
NU32 module;
NI32 item;
};
struct tyObject_FullId__3oA6EHvzCx1KvUf9cxJRXXw {
NI module;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA packed_0;
};
struct tyObject_LazySym__Ryd9aJ9bcLvoLBu56Qo9bzm9aw {
tyObject_FullId__3oA6EHvzCx1KvUf9cxJRXXw id;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym;
};
struct tyTuple__kjLAcEjcuUUb5HQQFd004Q {
NI Field0;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw Field1;
tyObject_LazySym__Ryd9aJ9bcLvoLBu56Qo9bzm9aw Field2;
};
#ifndef tySequence__M1HR1j8fkzOLdhYymqd9cNA_Content_PP
#define tySequence__M1HR1j8fkzOLdhYymqd9cNA_Content_PP
struct tySequence__M1HR1j8fkzOLdhYymqd9cNA_Content { NI cap; tyTuple__kjLAcEjcuUUb5HQQFd004Q data[SEQ_DECL_SIZE];};
#endif
struct tySequence__KBDwsdF2UrZmqdc6bU9bHbA {
NI len; tySequence__KBDwsdF2UrZmqdc6bU9bHbA_Content* p;
};
struct tyTuple__sr9ahxowKRwC2RZn4t1m9bTg {
NI Field0;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw Field1;
tySequence__KBDwsdF2UrZmqdc6bU9bHbA Field2;
};
#ifndef tySequence__ndtMxvII636Jz8NCVD9a9a0Q_Content_PP
#define tySequence__ndtMxvII636Jz8NCVD9a9a0Q_Content_PP
struct tySequence__ndtMxvII636Jz8NCVD9a9a0Q_Content { NI cap; tyTuple__sr9ahxowKRwC2RZn4t1m9bTg 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
#ifndef tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
#define tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
struct tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content { NI cap; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
NI Field0;
NI32 Field1;
tySequence__48JTohSgTy339bRxHzUD8KA Field2;
};
#ifndef tySequence__fdmz6VkIf1ewwrssKYqRFg_Content_PP
#define tySequence__fdmz6VkIf1ewwrssKYqRFg_Content_PP
struct tySequence__fdmz6VkIf1ewwrssKYqRFg_Content { NI cap; tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
NI Field0;
NI32 Field1;
NI32 Field2;
};
#ifndef tySequence__kxu4GK0onha2t9bo86mdVAg_Content_PP
#define tySequence__kxu4GK0onha2t9bo86mdVAg_Content_PP
struct tySequence__kxu4GK0onha2t9bo86mdVAg_Content { NI cap; tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__48JTohSgTy339bRxHzUD8KA_Content_PP
#define tySequence__48JTohSgTy339bRxHzUD8KA_Content_PP
struct tySequence__48JTohSgTy339bRxHzUD8KA_Content { NI cap; NI32 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
#define tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
struct tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content { NI cap; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* data[SEQ_DECL_SIZE];};
#endif
struct tySequence__XpdAmI9cDNdhUBFb3iaYfkw {
NI len; tySequence__XpdAmI9cDNdhUBFb3iaYfkw_Content* p;
};
struct tyTuple__NZ83xKYfF4bzmRwdlY9bu0Q {
NI Field0;
NI32 Field1;
tySequence__XpdAmI9cDNdhUBFb3iaYfkw Field2;
};
#ifndef tySequence__7C9bvULfaDaWykzhm3DspFQ_Content_PP
#define tySequence__7C9bvULfaDaWykzhm3DspFQ_Content_PP
struct tySequence__7C9bvULfaDaWykzhm3DspFQ_Content { NI cap; tyTuple__NZ83xKYfF4bzmRwdlY9bu0Q data[SEQ_DECL_SIZE];};
#endif
struct tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA {
NI len; tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA_Content* p;
};
struct tyTuple__7nNcbNXE6cQ88aZ3Fl9bayA {
NI Field0;
NI32 Field1;
tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA Field2;
};
#ifndef tySequence__kdxAxisTjDkmDgNFb13UQw_Content_PP
#define tySequence__kdxAxisTjDkmDgNFb13UQw_Content_PP
struct tySequence__kdxAxisTjDkmDgNFb13UQw_Content { NI cap; tyTuple__7nNcbNXE6cQ88aZ3Fl9bayA data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__iv4s4NUz12iOqq0NB9cYh3Q {
tySequence__UfuHwINLHlFJGRcvFZqKQQ Field0;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* Field1;
};
#ifndef tySequence__ANJm3Ou4QEh9abhA1XpChkw_Content_PP
#define tySequence__ANJm3Ou4QEh9abhA1XpChkw_Content_PP
struct tySequence__ANJm3Ou4QEh9abhA1XpChkw_Content { NI cap; tyTuple__iv4s4NUz12iOqq0NB9cYh3Q data[SEQ_DECL_SIZE];};
#endif
typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16];
struct tyTuple__VM7m2WL59bxLeiTf9bI39aJNw {
NI Field0;
tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* Field2;
};
#ifndef tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ_Content_PP
#define tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ_Content_PP
struct tySequence__XFoB9aKL0FRcPYq9ajvETv9cQ_Content { NI cap; tyTuple__VM7m2WL59bxLeiTf9bI39aJNw data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
NI Field0;
NI Field1;
tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
};
#ifndef tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content_PP
#define tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content_PP
struct tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content { NI cap; tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__hbzrBSDgTxYG04GZ0NRCew {
NI Field0;
NimStringV2 Field1;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* Field2;
};
#ifndef tySequence__UQG43DVXYWx86AitV5pL8g_Content_PP
#define tySequence__UQG43DVXYWx86AitV5pL8g_Content_PP
struct tySequence__UQG43DVXYWx86AitV5pL8g_Content { NI cap; tyTuple__hbzrBSDgTxYG04GZ0NRCew data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
NI Field0;
NimStringV2 Field1;
NI64 Field2;
};
#ifndef tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content_PP
#define tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content_PP
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content { NI cap; tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE];};
#endif
struct tyObject_BTree__BxbTQohN8QrxN73DA9bcM9aQ {
tyObject_NodecolonObjectType___mrvIQfKwBmbEEQo9c7zUoMA* root;
NI entries;
};
struct tyTuple__ZfcKvWP5Xk7y4Jhmn9aCWgA {
NI Field0;
NimStringV2 Field1;
tyObject_BTree__BxbTQohN8QrxN73DA9bcM9aQ Field2;
};
#ifndef tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA_Content_PP
#define tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA_Content_PP
struct tySequence__Xm7Y9aXOt1l5gnWmHgnoqUA_Content { NI cap; tyTuple__ZfcKvWP5Xk7y4Jhmn9aCWgA data[SEQ_DECL_SIZE];};
#endif
typedef N_NIMCALL_PTR(tyObject_TPassContext__9aUzdnrOgAbujYuO39brF9bbA*, tyProc__VAKrl2wuKAJ7HPlD8a2YOQ) (tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* module, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen);
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__CgBBk61cGZM3ckyCzQXJtg) (tyObject_TPassContext__9aUzdnrOgAbujYuO39brF9bbA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* topLevelStmt);
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__DJHfW17JAEBI2WHr9b1BaKg) (tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* graph, tyObject_TPassContext__9aUzdnrOgAbujYuO39brF9bbA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
struct tyTuple__GicXS2CKoWgwFlNKz2d15w {
tyProc__VAKrl2wuKAJ7HPlD8a2YOQ Field0;
tyProc__CgBBk61cGZM3ckyCzQXJtg Field1;
tyProc__DJHfW17JAEBI2WHr9b1BaKg Field2;
NIM_BOOL Field3;
};
#ifndef tySequence__6HN8Af9btfjdnDkSmkCapaA_Content_PP
#define tySequence__6HN8Af9btfjdnDkSmkCapaA_Content_PP
struct tySequence__6HN8Af9btfjdnDkSmkCapaA_Content { NI cap; tyTuple__GicXS2CKoWgwFlNKz2d15w 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__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
#define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
#define tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__E8pi9b5QNahsURYzXMjh3qw_Content_PP
#define tySequence__E8pi9b5QNahsURYzXMjh3qw_Content_PP
struct tySequence__E8pi9b5QNahsURYzXMjh3qw_Content { NI cap; tyTuple__47w2DboNEPf69aPgubZdd7Q 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__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
#define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
#define tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE];};
#endif
typedef NU8 tyEnum_ImportMode__LzfO42ojcBTf7f9ahbveBXw;
struct tyObject_ImportedModule__Iz1DzOMV1rZCTSH8FVD9aSQ {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* m;
tyEnum_ImportMode__LzfO42ojcBTf7f9ahbveBXw mode;
union{
struct {tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA imported;
} _mode_2;
struct {tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA exceptSet;
} _mode_3;
};
};
#ifndef tySequence__ayW1sBql6IlgnJXmG6YwBw_Content_PP
#define tySequence__ayW1sBql6IlgnJXmG6YwBw_Content_PP
struct tySequence__ayW1sBql6IlgnJXmG6YwBw_Content { NI cap; tyObject_ImportedModule__Iz1DzOMV1rZCTSH8FVD9aSQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
#define tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
struct tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content { NI cap; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
#define tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
struct tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content { NI cap; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
#define tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
struct tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content { NI cap; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__mkw3BsSwySE8kJ1iQVHi2g_Content_PP
#define tySequence__mkw3BsSwySE8kJ1iQVHi2g_Content_PP
struct tySequence__mkw3BsSwySE8kJ1iQVHi2g_Content { NI cap; tyObject_TOptionEntry__zp29aBDkJVkD8RBug9cOgA9cg* data[SEQ_DECL_SIZE];};
#endif
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
#ifndef tySequence__P2jdSFF0rwb3d6yhCnf7Tw_Content_PP
#define tySequence__P2jdSFF0rwb3d6yhCnf7Tw_Content_PP
struct tySequence__P2jdSFF0rwb3d6yhCnf7Tw_Content { NI cap; tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg* data[SEQ_DECL_SIZE];};
#endif
struct tyObject_TInstantiationPair__Q49cLaFKInl3t4ELh9cxBEnA {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* genericSym;
tyObject_TInstantiation__8SLhhTGRSJj9a3g5KOHqwdQ* inst;
};
#ifndef tySequence__B9cdeRjiqZYBtgmMW4y69bow_Content_PP
#define tySequence__B9cdeRjiqZYBtgmMW4y69bow_Content_PP
struct tySequence__B9cdeRjiqZYBtgmMW4y69bow_Content { NI cap; tyObject_TInstantiationPair__Q49cLaFKInl3t4ELh9cxBEnA data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__i9bSUkJ6C2tzwR9aU2ropx5g {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* Field0;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg Field1;
};
#ifndef tySequence__zzmYOvMjuaDPGlm2gOxjfw_Content_PP
#define tySequence__zzmYOvMjuaDPGlm2gOxjfw_Content_PP
struct tySequence__zzmYOvMjuaDPGlm2gOxjfw_Content { NI cap; tyTuple__i9bSUkJ6C2tzwR9aU2ropx5g data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__NAaJgGVgNmlGoqmiWxdOHQ {
NI Field0;
tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ Field1;
};
#ifndef tySequence__Bis5AbpONWcIRrPyPJS8Yw_Content_PP
#define tySequence__Bis5AbpONWcIRrPyPJS8Yw_Content_PP
struct tySequence__Bis5AbpONWcIRrPyPJS8Yw_Content { NI cap; tyTuple__NAaJgGVgNmlGoqmiWxdOHQ data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__OseWehQ0HNC8Ns4uO1D8HA {
NI Field0;
NI Field1;
tySequence__9csKSQ865Bdwb8TbX9cOogww Field2;
};
#ifndef tySequence__2ysejK9bM8cCXleF05Ng9cHA_Content_PP
#define tySequence__2ysejK9bM8cCXleF05Ng9cHA_Content_PP
struct tySequence__2ysejK9bM8cCXleF05Ng9cHA_Content { NI cap; tyTuple__OseWehQ0HNC8Ns4uO1D8HA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
#define tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__E8pi9b5QNahsURYzXMjh3qw_Content_PP
#define tySequence__E8pi9b5QNahsURYzXMjh3qw_Content_PP
struct tySequence__E8pi9b5QNahsURYzXMjh3qw_Content { NI cap; tyTuple__47w2DboNEPf69aPgubZdd7Q data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content_PP
#define tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content_PP
struct tySequence__Bre9bNyuQOg1EJKitjSzn8w_Content { NI cap; tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
#define tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI 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
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 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__9csKSQ865Bdwb8TbX9cOogww_Content_PP
#define tySequence__9csKSQ865Bdwb8TbX9cOogww_Content_PP
struct tySequence__9csKSQ865Bdwb8TbX9cOogww_Content { NI cap; tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__9csKSQ865Bdwb8TbX9cOogww_Content_PP
#define tySequence__9csKSQ865Bdwb8TbX9cOogww_Content_PP
struct tySequence__9csKSQ865Bdwb8TbX9cOogww_Content { NI cap; tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__8Np6tlClE5az1CyqZdN19bQ_Content_PP
#define tySequence__8Np6tlClE5az1CyqZdN19bQ_Content_PP
struct tySequence__8Np6tlClE5az1CyqZdN19bQ_Content { NI cap; tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__8Np6tlClE5az1CyqZdN19bQ_Content_PP
#define tySequence__8Np6tlClE5az1CyqZdN19bQ_Content_PP
struct tySequence__8Np6tlClE5az1CyqZdN19bQ_Content { NI cap; tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ data[SEQ_DECL_SIZE];};
#endif
typedef NU8 tyEnum_VarIndexKind__6pCadyQZHCR6acdFnGn1Ig;
struct tyObject_Connection__PKo09bcsgKnccLlJG4qrFxA {
tyEnum_VarIndexKind__6pCadyQZHCR6acdFnGn1Ig kind;
union{
NI parent;
NI graphIndex;
};
};
typedef NU8 tySet_tyEnum_VarFlag__uK6mVwFqk3i7KhNEz6AYBQ;
struct tyObject_VarIndex__gqlFfS5HP9cscNmlzNsazBA {
tyObject_Connection__PKo09bcsgKnccLlJG4qrFxA con;
tySet_tyEnum_VarFlag__uK6mVwFqk3i7KhNEz6AYBQ flags;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym;
NI reassignedTo;
NI aliveStart;
NI aliveEnd;
tySequence__qwqHTkRvwhrRyENtudHQ7g borrowsFrom;
};
#ifndef tySequence__MSDrKmAF4cj59cY74qFKQtQ_Content_PP
#define tySequence__MSDrKmAF4cj59cY74qFKQtQ_Content_PP
struct tySequence__MSDrKmAF4cj59cY74qFKQtQ_Content { NI cap; tyObject_VarIndex__gqlFfS5HP9cscNmlzNsazBA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__oPvbBQGfJLgF9axmfwR3PQA_Content_PP
#define tySequence__oPvbBQGfJLgF9axmfwR3PQA_Content_PP
struct tySequence__oPvbBQGfJLgF9axmfwR3PQA_Content { NI cap; tyObject_MutationInfo__09cglYawlQfhTDITHVV8vBw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__khRnfByqYV6qzEm71s9aoMA_Content_PP
#define tySequence__khRnfByqYV6qzEm71s9aoMA_Content_PP
struct tySequence__khRnfByqYV6qzEm71s9aoMA_Content { NI cap; tyObject_LazySym__Ryd9aJ9bcLvoLBu56Qo9bzm9aw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__khRnfByqYV6qzEm71s9aoMA_Content_PP
#define tySequence__khRnfByqYV6qzEm71s9aoMA_Content_PP
struct tySequence__khRnfByqYV6qzEm71s9aoMA_Content { NI cap; tyObject_LazySym__Ryd9aJ9bcLvoLBu56Qo9bzm9aw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__khRnfByqYV6qzEm71s9aoMA_Content_PP
#define tySequence__khRnfByqYV6qzEm71s9aoMA_Content_PP
struct tySequence__khRnfByqYV6qzEm71s9aoMA_Content { NI cap; tyObject_LazySym__Ryd9aJ9bcLvoLBu56Qo9bzm9aw data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q {
NU32 Field0;
NimStringV2 Field1;
};
#ifndef tySequence__PXIzfWocnrafGz5p3CP5LA_Content_PP
#define tySequence__PXIzfWocnrafGz5p3CP5LA_Content_PP
struct tySequence__PXIzfWocnrafGz5p3CP5LA_Content { NI cap; tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content_PP
#define tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content_PP
struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content { NI cap; NU32 data[SEQ_DECL_SIZE];};
#endif
struct tyObject_PackedLineInfo__wLj9aHuk4ZvBakrzOfuTRFg {
NU16 line;
NI16 col;
NU32 file;
};
struct tyObject_PackedNode__4DO5SncX6BltUGwnK9bpl3Q {
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind;
tySet_tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw flags;
NI32 operand;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA typeId_0;
tyObject_PackedLineInfo__wLj9aHuk4ZvBakrzOfuTRFg info;
};
#ifndef tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q_Content_PP
#define tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q_Content_PP
struct tySequence__UcUXRl4r0D9c3zw9ayCMUU7Q_Content { NI cap; tyObject_PackedNode__4DO5SncX6BltUGwnK9bpl3Q data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ {
NU32 Field0;
NI32 Field1;
};
#ifndef tySequence__b89aLriiJnVTD186H6zNIgg_Content_PP
#define tySequence__b89aLriiJnVTD186H6zNIgg_Content_PP
struct tySequence__b89aLriiJnVTD186H6zNIgg_Content { NI cap; tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__b89aLriiJnVTD186H6zNIgg_Content_PP
#define tySequence__b89aLriiJnVTD186H6zNIgg_Content_PP
struct tySequence__b89aLriiJnVTD186H6zNIgg_Content { NI cap; tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__4mROXJDLgq3TboX1QMTCWQ {
NU32 Field0;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA Field1;
};
#ifndef tySequence__9a35SUiZaZnQQczCKMafPpA_Content_PP
#define tySequence__9a35SUiZaZnQQczCKMafPpA_Content_PP
struct tySequence__9a35SUiZaZnQQczCKMafPpA_Content { NI cap; tyTuple__4mROXJDLgq3TboX1QMTCWQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__b89aLriiJnVTD186H6zNIgg_Content_PP
#define tySequence__b89aLriiJnVTD186H6zNIgg_Content_PP
struct tySequence__b89aLriiJnVTD186H6zNIgg_Content { NI cap; tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__48JTohSgTy339bRxHzUD8KA_Content_PP
#define tySequence__48JTohSgTy339bRxHzUD8KA_Content_PP
struct tySequence__48JTohSgTy339bRxHzUD8KA_Content { NI cap; NI32 data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__o7TpijPv9bOBH56jcsA2W3Q {
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA Field0;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA Field1;
};
#ifndef tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content_PP
#define tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content_PP
struct tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content { NI cap; tyTuple__o7TpijPv9bOBH56jcsA2W3Q data[SEQ_DECL_SIZE];};
#endif
struct tySequence__IWXeVgKgI4IltTBItDiIwQ {
NI len; tySequence__IWXeVgKgI4IltTBItDiIwQ_Content* p;
};
struct tyObject_PackedInstantiation__OE4cbwsIr9bR8qwTi4zXZWw {
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA key;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA sym;
tySequence__IWXeVgKgI4IltTBItDiIwQ concreteTypes;
};
#ifndef tySequence__ksIzANWGKlNIZxswx6UF9cQ_Content_PP
#define tySequence__ksIzANWGKlNIZxswx6UF9cQ_Content_PP
struct tySequence__ksIzANWGKlNIZxswx6UF9cQ_Content { NI cap; tyObject_PackedInstantiation__OE4cbwsIr9bR8qwTi4zXZWw data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__t08apXFlOi7QMiJ7EqOynA {
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA Field0;
tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA Field1;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA Field2;
};
#ifndef tySequence__rg1JHBuFtw6jyGZxePBOTg_Content_PP
#define tySequence__rg1JHBuFtw6jyGZxePBOTg_Content_PP
struct tySequence__rg1JHBuFtw6jyGZxePBOTg_Content { NI cap; tyTuple__t08apXFlOi7QMiJ7EqOynA data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__mPT8UQTez4CkORDSYBMX5Q {
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA Field0;
NI Field1;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA Field2;
};
#ifndef tySequence__6xT3ssEcZuds56oxe6Hi1Q_Content_PP
#define tySequence__6xT3ssEcZuds56oxe6Hi1Q_Content_PP
struct tySequence__6xT3ssEcZuds56oxe6Hi1Q_Content { NI cap; tyTuple__mPT8UQTez4CkORDSYBMX5Q data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content_PP
#define tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content_PP
struct tySequence__E0A6SaW1v3EKBAVAijH8Mw_Content { NI cap; tyTuple__o7TpijPv9bOBH56jcsA2W3Q 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 tyEnum_TLibKind__sEp9azpcqn0Sobvo3wDq16w;
struct tyObject_PackedLib__mP6VjReWkytOIw7KYWGjGQ {
tyEnum_TLibKind__sEp9azpcqn0Sobvo3wDq16w kind;
NIM_BOOL generated;
NIM_BOOL isOverriden;
NU32 name;
NI32 path;
};
struct tyObject_PackedSym__lJeIt8gwxYwQVC9aD43t8QA {
tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ kind;
NU32 name;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA typ;
tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg flags;
tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg magic;
tyObject_PackedLineInfo__wLj9aHuk4ZvBakrzOfuTRFg info;
NI32 ast;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA owner;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA guard;
NI bitsize;
NI alignment;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options;
NI position;
NI offset;
NU32 externalName;
tySet_tyEnum_TLocFlag__9a7m8BSAfzn6yluCKaq6viw locFlags;
tyObject_PackedLib__mP6VjReWkytOIw7KYWGjGQ annex;
NI32 constraint;
};
#ifndef tySequence__0kQhEjYsrU0bQoX6VKnNbA_Content_PP
#define tySequence__0kQhEjYsrU0bQoX6VKnNbA_Content_PP
struct tySequence__0kQhEjYsrU0bQoX6VKnNbA_Content { NI cap; tyObject_PackedSym__lJeIt8gwxYwQVC9aD43t8QA data[SEQ_DECL_SIZE];};
#endif
struct tyObject_PackedType__KhxjjuiksMoB49bARLu38lQ {
tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ kind;
tyEnum_TCallingConvention__XL1p2EKvOAlAHpc68ecZPw callConv;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q flags;
tySequence__IWXeVgKgI4IltTBItDiIwQ types;
NI32 n;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA sym;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA owner;
NI64 size;
NI16 align;
NI16 paddingAtEnd;
tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA typeInst;
NI32 nonUniqueId;
};
#ifndef tySequence__cNHcFk7EiJIuDgTjWY8U9bg_Content_PP
#define tySequence__cNHcFk7EiJIuDgTjWY8U9bg_Content_PP
struct tySequence__cNHcFk7EiJIuDgTjWY8U9bg_Content { NI cap; tyObject_PackedType__KhxjjuiksMoB49bARLu38lQ 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__9bAGqSvkAaFL9bWjsEPslrFA_Content_PP
#define tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content_PP
struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA_Content { NI cap; NU32 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__IHUFRsFxZNv7YydiUO2esQ_Content_PP
#define tySequence__IHUFRsFxZNv7YydiUO2esQ_Content_PP
struct tySequence__IHUFRsFxZNv7YydiUO2esQ_Content { NI cap; NI64 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
#define tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
struct tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content { NI cap; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* 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
struct tyTuple__jB9c7GkyAKeO0wCNdUB5Pdg {
NI Field0;
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* Field1;
tySequence__IWXeVgKgI4IltTBItDiIwQ Field2;
};
#ifndef tySequence__9afGcb6vqUeksMMfijyiRIg_Content_PP
#define tySequence__9afGcb6vqUeksMMfijyiRIg_Content_PP
struct tySequence__9afGcb6vqUeksMMfijyiRIg_Content { NI cap; tyTuple__jB9c7GkyAKeO0wCNdUB5Pdg data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA {
NI Field0;
NI32 Field1;
NU32 Field2;
};
#ifndef tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content_PP
#define tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content_PP
struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content { NI cap; tyTuple__UvldbCB6B9ayi9bGYW7vJNLA 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__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
#define tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content_PP
struct tySequence__UfuHwINLHlFJGRcvFZqKQQ_Content { NI cap; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* data[SEQ_DECL_SIZE];};
#endif
struct tyObject_LazyType__SN9c3fsi9b9ajltls5ZKIUiTA {
tyObject_FullId__3oA6EHvzCx1KvUf9cxJRXXw id;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ;
};
#ifndef tySequence__rbrgPpeV9be6C3GwbBbkmpA_Content_PP
#define tySequence__rbrgPpeV9be6C3GwbBbkmpA_Content_PP
struct tySequence__rbrgPpeV9be6C3GwbBbkmpA_Content { NI cap; tyObject_LazyType__SN9c3fsi9b9ajltls5ZKIUiTA data[SEQ_DECL_SIZE];};
#endif
struct tySequence__29btfq9cDuCZmHsAEmuBeMOg {
NI len; tySequence__29btfq9cDuCZmHsAEmuBeMOg_Content* p;
};
struct tyObject_LazyInstantiation__9a6qqvxx8ZzdJrEGrAFijCA {
NI module;
tyObject_FullId__3oA6EHvzCx1KvUf9cxJRXXw sym;
tySequence__29btfq9cDuCZmHsAEmuBeMOg concreteTypes;
tyObject_TInstantiation__8SLhhTGRSJj9a3g5KOHqwdQ* inst;
};
#ifndef tySequence__QuE9aHaZlhk7otugTn0uD9cg_Content_PP
#define tySequence__QuE9aHaZlhk7otugTn0uD9cg_Content_PP
struct tySequence__QuE9aHaZlhk7otugTn0uD9cg_Content { NI cap; tyObject_LazyInstantiation__9a6qqvxx8ZzdJrEGrAFijCA data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__pDyHME2vky9bxBYZlE7PoZg {
NI Field0;
tyObject_LazySym__Ryd9aJ9bcLvoLBu56Qo9bzm9aw Field1;
};
#ifndef tySequence__KBDwsdF2UrZmqdc6bU9bHbA_Content_PP
#define tySequence__KBDwsdF2UrZmqdc6bU9bHbA_Content_PP
struct tySequence__KBDwsdF2UrZmqdc6bU9bHbA_Content { NI cap; tyTuple__pDyHME2vky9bxBYZlE7PoZg data[SEQ_DECL_SIZE];};
#endif
struct tyObject_SymInfoPair__tdBivcU9bT8j1LrgpcSZ9a6w {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
};
#ifndef tySequence__XpdAmI9cDNdhUBFb3iaYfkw_Content_PP
#define tySequence__XpdAmI9cDNdhUBFb3iaYfkw_Content_PP
struct tySequence__XpdAmI9cDNdhUBFb3iaYfkw_Content { NI cap; tyObject_SymInfoPair__tdBivcU9bT8j1LrgpcSZ9a6w data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA_Content_PP
#define tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA_Content_PP
struct tySequence__tffJ9cMZMd9ar9a5FqFq6EJ9bA_Content { NI cap; tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ* 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__qwqHTkRvwhrRyENtudHQ7g_Content_PP
#define tySequence__qwqHTkRvwhrRyENtudHQ7g_Content_PP
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__IWXeVgKgI4IltTBItDiIwQ_Content_PP
#define tySequence__IWXeVgKgI4IltTBItDiIwQ_Content_PP
struct tySequence__IWXeVgKgI4IltTBItDiIwQ_Content { NI cap; tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__IWXeVgKgI4IltTBItDiIwQ_Content_PP
#define tySequence__IWXeVgKgI4IltTBItDiIwQ_Content_PP
struct tySequence__IWXeVgKgI4IltTBItDiIwQ_Content { NI cap; tyObject_PackedItemId__ujcbfSfQQs6BRj9aXRwDsoA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__29btfq9cDuCZmHsAEmuBeMOg_Content_PP
#define tySequence__29btfq9cDuCZmHsAEmuBeMOg_Content_PP
struct tySequence__29btfq9cDuCZmHsAEmuBeMOg_Content { NI cap; tyObject_FullId__3oA6EHvzCx1KvUf9cxJRXXw data[SEQ_DECL_SIZE];};
#endif
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3457)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src);
static N_INLINE(NI, len__ast_3325)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3454)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, effectSpec__trees_291)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA effectType);
N_LIB_PRIVATE N_NIMCALL(void, checkRaisesSpec__sempass50_4892)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, NIM_BOOL emitWarnings, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* spec, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* real, NimStringV2 msg, NIM_BOOL hints, tyProc__xVf0LN69cmygEcgFlBE8VRg effectPredicate, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* hintsArg, NIM_BOOL isForbids);
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);
static N_INLINE(void, initIntSet__pureZcollectionsZintsets_389)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_16)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
static N_INLINE(NI, safeLen__ast_3318)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_202)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_13)(NimStringV2* dest);
N_LIB_PRIVATE N_NIMCALL(void, pushInfoContext__msgs_534)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, NimStringV2 detail);
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*, lastSon__ast_6268)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
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(NimStringV2, renderTree__renderer_50)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA renderFlags);
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(NimStringV2, typeToString__types_51)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ, tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ prefer);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(void, popInfoContext__msgs_558)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_3655)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatOpenArray)(NimStringV2 formatstr, NimStringV2* a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_181)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* dest);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, subtypeRelation__sempass50_4879)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* spec, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* real);
N_LIB_PRIVATE N_NIMCALL(NI, safeInheritanceDiff__types_3611)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* a, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* b);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, excType__sempass50_2496)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, getEbase__sempass50_2492)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, sysTypeFromName__magicsys_55)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, NimStringV2 name);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3546)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA** dest, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, skipTypes__ast_4803)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t, tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ kinds);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3543)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA** dest);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatSingleElem)(NimStringV2 formatstr, NimStringV2 a);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZassertions_16)(NimStringV2* dest, NimStringV2 src);
static N_INLINE(NimStringV2, toFileLineCol__msgs_666)(tyTuple__kN8up2W6YKc5YA9avn5mV5w* info);
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(void, newSeq__ast_3958)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* s, NI len);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNodeI__ast_3949)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, propSpec__trees_323)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA effectType);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___modulegraphs_11315)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg** dest, tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* src);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___varpartitions_199)(tyObject_MutationInfo__09cglYawlQfhTDITHVV8vBw* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___sempass50_5497)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* 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, eqdestroy___ast_3466)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* dest);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p, NI alignment);
N_LIB_PRIVATE N_NIMCALL(void, nimDestroyAndDispose)(void* p);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZosproc_403)(tySequence__qwqHTkRvwhrRyENtudHQ7g* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___vmdef_1652)(tySequence__E8pi9b5QNahsURYzXMjh3qw* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3723)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___modulegraphs_11047)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___options_3149)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* dest);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(void* p);
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___pureZcollectionsZintsets_36)(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_56)(tySequence__Bre9bNyuQOg1EJKitjSzn8w* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___modulegraphs_11312)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg** dest);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasRealBody__sempass50_5212)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s);
N_LIB_PRIVATE N_NIMCALL(void, initEffects__sempass50_5171)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effects, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* t, tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c);
N_LIB_PRIVATE N_NIMCALL(void, rawInitEffects__sempass50_5158)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effects);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_4063)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA** dest, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* src);
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*, getModule__astalgo_220)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___pureZosproc_409)(tySequence__qwqHTkRvwhrRyENtudHQ7g* dest, tySequence__qwqHTkRvwhrRyENtudHQ7g src);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap, NI elemSize, NI elemAlign);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_3729)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* dest, tySequence__xxu3GgaFAGO6lOns9aHaeLQ 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___semdata_2058)(tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg** dest, tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* src, NIM_BOOL cyclic);
static N_INLINE(NIM_BOOL, isEmptyType__ast_6215)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___importer_2418)(tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w* t, NI key, NI val);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_4060)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA** dest);
N_LIB_PRIVATE N_NIMCALL(void, track__sempass50_2640)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, useVar__sempass50_2369)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isLocalSym__sempass50_153)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s);
static N_INLINE(NIM_BOOL, isOutParam__ast_6694)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t);
N_LIB_PRIVATE N_NIMCALL(void, add__varpartitions_1477)(tySequence__qwqHTkRvwhrRyENtudHQ7g* x, NI value);
static N_INLINE(NIM_BOOL, contains__sigmatch_4656)(NI* a, NI aLen_0, NI item);
static N_INLINE(NI, find__sigmatch_4661)(NI* a, NI aLen_0, NI item);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, requiresInit__typeallowed_593)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t);
N_LIB_PRIVATE N_NIMCALL(void, useVarNoInitCheck__sempass50_1191)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s);
N_LIB_PRIVATE N_NIMCALL(void, guardGlobal__sempass50_190)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* guard);
static N_INLINE(NIM_BOOL, isGCedMem__ast_5584)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t);
N_LIB_PRIVATE N_NIMCALL(void, markGcUnsafe__sempass50_580)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* reason);
N_LIB_PRIVATE N_NIMCALL(void, markSideEffect__sempass50_1227)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* reason, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg useLoc);
N_LIB_PRIVATE N_NIMCALL(void, add__sempass50_2333)(tySequence__9csKSQ865Bdwb8TbX9cOogww* x, tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ value);
N_LIB_PRIVATE N_NIMCALL(tySequence__9csKSQ865Bdwb8TbX9cOogww*, mgetOrPut__sempass50_1287)(tyObject_Table__LoQrFsQrEUUIXOvwfo6wXA* t, NI key, tySequence__9csKSQ865Bdwb8TbX9cOogww val);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameType__types_2000)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* a, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* b, tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w flags);
N_LIB_PRIVATE N_NIMCALL(void, addRaiseEffect__sempass50_2522)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefectException__types_4304)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t);
N_LIB_PRIVATE N_NIMCALL(void, throws__sempass50_2467)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* orig);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, copyTree__ast_5856)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_6233)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* father, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* son);
N_LIB_PRIVATE N_NIMCALL(void, createTypeBoundOps__sempass50_133)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
N_LIB_PRIVATE N_NIMCALL(void, createTypeBoundOps__liftdestructors_48)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* orig, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, createRaise__sempass50_2508)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNode__ast_3934)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_3549)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA** dest, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* src);
N_LIB_PRIVATE N_NIMCALL(void, trackCall__sempass50_3756)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, getConstExpr__semfold_90)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen, tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g);
N_LIB_PRIVATE N_NIMCALL(void, markSideEffect__sempass50_3213)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* reason, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg useLoc);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, newSym__ast_4028)(tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ symKind, tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* name, tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw id, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options);
static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextSymId__ast_3268)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* x);
static N_INLINE(NIM_BOOL, hasWarn__options_576)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw note);
N_LIB_PRIVATE N_NIMCALL(void, warnAboutGcUnsafe__sempass50_577)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(void, markGcUnsafe__sempass50_587)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* reason);
N_LIB_PRIVATE N_NIMCALL(void, propagateEffects__sempass50_2942)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s);
N_LIB_PRIVATE N_NIMCALL(void, mergeRaises__sempass50_2572)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom);
N_LIB_PRIVATE N_NIMCALL(void, mergeTags__sempass50_2580)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom);
N_LIB_PRIVATE N_NIMCALL(void, addTag__sempass50_2544)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, createTag__sempass50_2515)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(NIM_BOOL, isNoEffectList__sempass50_3087)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isForwardedProc__sempass50_2900)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isIndirectCall__sempass50_2863)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, assumeTheWorst__sempass50_3059)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* op);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, importedFromC__sempass50_2931)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, trackOperandForIndirectCall__sempass50_3126)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* formals, NI argIndex, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* caller);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, skipConvCastAndClosure__astalgo_115)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(NI, len__ast_5071)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, skipConv__types_3839)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(NIM_BOOL, isTrival__sempass50_3115)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* caller);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOwnedProcVar__sempass50_3063)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, invalidateFacts__guards_769)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(void, makeVolatile__sempass50_270)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___renderer_2511)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, notNilCheck__sempass50_2991)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* paramType);
N_LIB_PRIVATE N_NIMCALL(void, procVarCheck__sempass50_2971)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, skipTypesOrNil__ast_5566)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t, tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ kinds);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isAddrNode__astalgo_4601)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsNode__ast_5974)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tySet_tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kinds);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A, impliesNotNil__guards_1061)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arg);
N_LIB_PRIVATE N_NIMCALL(void, initVarViaNew__sempass50_559)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, skipHiddenDeref__sempass50_345)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, initVar__sempass50_353)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, NIM_BOOL volatileCheck);
N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__sempass50_486)(tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w t, NI key);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, lastSon__ast_4811)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* n);
N_LIB_PRIVATE N_NIMCALL(void, checkBounds__sempass50_3717)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arr, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* idx);
N_LIB_PRIVATE N_NIMCALL(void, checkLe__sempass50_3713)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A, proveLe__guards_1827)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, lowBound__guards_269)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, highBound__guards_273)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x, tyObject_Operators__Ai9aW8j1mouo4Nz9bP29c2c5w* o);
static N_INLINE(NI, find__sempass50_4016)(tyArray__7Z9ajkJtFFtfJY8l7DfqyrA a, NimStringV2 item);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b);
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuNormalize)(NimStringV2 s);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, getAttachedOp__modulegraphs_4580)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t, tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA op);
N_LIB_PRIVATE N_NIMCALL(void, checkForSink__sempass50_3738)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, checkForSink__sempass50_26)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arg);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, newType__ast_4969)(tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ kind, tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw id, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner);
static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextTypeId__ast_3291)(tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* x);
N_LIB_PRIVATE N_NIMCALL(void, add__concepts_24)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* father, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* son);
static N_INLINE(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, skipAddr__ast_6671)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(NIM_BOOL, strictFuncsActive__sempass50_3745)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDangerousLocation__semstrictfuncs_6)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner);
N_LIB_PRIVATE N_NIMCALL(void, guardDotAccess__sempass50_206)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, lookupInRecord__astalgo_85)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* field);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNodeI__ast_3953)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, NI children);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newSymNode__ast_4784)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameTree__guards_689)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b);
N_LIB_PRIVATE N_NIMCALL(void, checkFieldAccess__guards_2008)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NIM_BOOL produceError);
N_LIB_PRIVATE N_NIMCALL(void, trackTryStmt__sempass50_2643)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, addToIntersection__sempass50_2424)(tySequence__8Np6tlClE5az1CyqZdN19bQ* inter, NI s);
N_LIB_PRIVATE N_NIMCALL(void, add__sempass50_2443)(tySequence__8Np6tlClE5az1CyqZdN19bQ* x, tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ value);
N_LIB_PRIVATE N_NIMCALL(void, catchesAll__sempass50_2628)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked);
N_LIB_PRIVATE N_NIMCALL(void, setLen__ast_3741)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* s, NI newlen);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInfixAs__ast_6377)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, catches__sempass50_2593)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* e);
N_LIB_PRIVATE N_NIMCALL(void, setLen__pureZosproc_310)(tySequence__qwqHTkRvwhrRyENtudHQ7g* s, NI newlen);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___types_1912)(tySequence__8Np6tlClE5az1CyqZdN19bQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, trackPragmaStmt__sempass50_2911)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA, whichPragma__trees_251)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, listEffects__sempass50_2588)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a);
N_LIB_PRIVATE N_NIMCALL(void, addAsgnFact__guards_1938)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* key, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, skipPragmaExpr__ast_3910)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(void, varDecl__sempass50_281)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, trackCase__sempass50_3392)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, interestingCaseExpr__guards_122)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* m);
N_LIB_PRIVATE N_NIMCALL(void, addCaseBranchFacts__guards_1963)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, NI i);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, breaksBlock__sempass50_3357)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, trackIf__sempass50_3508)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, addFact__guards_618)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* nn);
N_LIB_PRIVATE N_NIMCALL(void, addFactNeg__guards_641)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, trackBlock__sempass50_3636)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasSubnodeWith__ast_5999)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isTrue__trees_382)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(NIM_BOOL, fromSystem__astalgo_242)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* op);
N_LIB_PRIVATE N_NIMCALL(void, addFactLe__guards_1842)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b);
N_LIB_PRIVATE N_NIMCALL(void, addFactLt__guards_1850)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b);
N_LIB_PRIVATE N_NIMCALL(void, addDiscriminantFact__guards_1925)(tyObject_TModel__rqfUF2LKrJdWw5XezVhzFw* m, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, createBlockContext__sempass50_4145)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* Result);
N_LIB_PRIVATE N_NIMCALL(void, lockLocations__sempass50_177)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragma);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_4147)(tySequence__xxu3GgaFAGO6lOns9aHaeLQ* x, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value);
N_LIB_PRIVATE N_NIMCALL(void, castBlock__sempass50_4226)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragma, tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* bc);
N_LIB_PRIVATE N_NIMCALL(void, applyBlockContext__sempass50_4189)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* bc);
N_LIB_PRIVATE N_NIMCALL(void, unapplyBlockContext__sempass50_4192)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* bc);
N_LIB_PRIVATE N_NIMCALL(void, addNotTag__sempass50_2558)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___sempass50_4165)(tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* dest);
N_LIB_PRIVATE N_NIMCALL(void, trackInnerProc__sempass50_4260)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
static N_INLINE(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, getBody__modulegraphs_14894)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, loadProcBody__icZic_10545)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache, tySequence__XHeQfi7ybWnv4ebLBB7afQ* g, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, allowCStringConv__sempass50_4304)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isCharArrayPtr__types_4388)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t, NIM_BOOL allowPointerToChar);
N_LIB_PRIVATE N_NIMCALL(void, checkRange__sempass50_3721)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, errorToString__errorhandling_109)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isSinkTypeForParam__types_4356)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t);
static N_INLINE(NIM_BOOL, isClosure__ast_6472)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ);
N_LIB_PRIVATE N_NIMCALL(void, patchResult__sempass50_3679)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
N_LIB_PRIVATE N_NIMCALL(void, computeGraphPartitions__varpartitions_2092)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tySet_tyEnum_Goal__qFOer19bA9a6nDnUlP8XdnGg goals, tyObject_Partitions__8JEvj7xHrL5kIFiSTpKnZg* Result);
N_LIB_PRIVATE N_NIMCALL(void, checkBorrowedLocations__varpartitions_2394)(tyObject_Partitions__8JEvj7xHrL5kIFiSTpKnZg* par, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___varpartitions_2125)(tyObject_Partitions__8JEvj7xHrL5kIFiSTpKnZg* dest);
N_LIB_PRIVATE N_NIMCALL(void, listGcUnsafety__sempass50_642)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, NIM_BOOL onlyWarning, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(void, listGcUnsafety__sempass50_605)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, NIM_BOOL onlyWarning, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* cycleCheck, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__astalgo_402)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(void, listSideEffects__sempass50_1185)(NimStringV2* result, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* context);
N_LIB_PRIVATE N_NIMCALL(void, nsuAddf)(NimStringV2* s, NimStringV2 formatstr, NimStringV2* a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(void, listSideEffects__sempass50_647)(NimStringV2* result, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* cycleCheck, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* context, NI indentLevel);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__sempass50_723)(tyObject_Table__LoQrFsQrEUUIXOvwfo6wXA t, NI key);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___semdata_1704)(tySequence__9csKSQ865Bdwb8TbX9cOogww* dest, tySequence__9csKSQ865Bdwb8TbX9cOogww src);
N_LIB_PRIVATE N_NIMCALL(tySequence__9csKSQ865Bdwb8TbX9cOogww*, X5BX5D___sempass50_1056)(tyObject_Table__LoQrFsQrEUUIXOvwfo6wXA* t, NI key);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuRepeatStr)(NimStringV2 s, NI n);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___msgs_675)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___semdata_1701)(tySequence__9csKSQ865Bdwb8TbX9cOogww* dest);
N_LIB_PRIVATE N_NIMCALL(void, checkNil__nilcheck_10843)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen);
static const struct {
NI cap; NIM_CHAR data[0+1];
} TM__O8rpA4QnF63fyis4dAzZxA_2 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_3 = {0, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_2};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__O8rpA4QnF63fyis4dAzZxA_4 = { 1 | NIM_STRLIT_FLAG, " " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_5 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_4};
static const struct {
NI cap; NIM_CHAR data[38+1];
} TM__O8rpA4QnF63fyis4dAzZxA_7 = { 38 | NIM_STRLIT_FLAG, "/home/wind/nimv2/compiler/sempass2.nim" };
static const struct {
NI cap; NIM_CHAR data[22+1];
} TM__O8rpA4QnF63fyis4dAzZxA_8 = { 22 | NIM_STRLIT_FLAG, "\'$1\' cannot raise \'$2\'" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_9 = {22, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_8};
static const struct {
NI cap; NIM_CHAR data[33+1];
} TM__O8rpA4QnF63fyis4dAzZxA_11 = { 33 | NIM_STRLIT_FLAG, "can raise an unlisted exception: " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_12 = {33, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_11};
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__O8rpA4QnF63fyis4dAzZxA_13 = { 9 | NIM_STRLIT_FLAG, "Exception" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_14 = {9, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_13};
static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__O8rpA4QnF63fyis4dAzZxA_15 = {
0x10, 0x09, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
NI cap; NIM_CHAR data[29+1];
} TM__O8rpA4QnF63fyis4dAzZxA_16 = { 29 | NIM_STRLIT_FLAG, "can have an unlisted effect: " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_17 = {29, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_16};
static const struct {
NI cap; NIM_CHAR data[23+1];
} TM__O8rpA4QnF63fyis4dAzZxA_18 = { 23 | NIM_STRLIT_FLAG, "has an illegal effect: " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_19 = {23, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_18};
static const struct {
NI cap; NIM_CHAR data[39+1];
} TM__O8rpA4QnF63fyis4dAzZxA_20 = { 39 | NIM_STRLIT_FLAG, "base method is GC-safe, but \'$1\' is not" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_21 = {39, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_20};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__O8rpA4QnF63fyis4dAzZxA_23 = { 1 | NIM_STRLIT_FLAG, "(" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_24 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_23};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__O8rpA4QnF63fyis4dAzZxA_25 = { 2 | NIM_STRLIT_FLAG, ", " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_26 = {2, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_25};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__O8rpA4QnF63fyis4dAzZxA_27 = { 1 | NIM_STRLIT_FLAG, ")" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_28 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_27};
static const struct {
NI cap; NIM_CHAR data[39+1];
} TM__O8rpA4QnF63fyis4dAzZxA_31 = { 39 | NIM_STRLIT_FLAG, "\'let\' symbol requires an initialization" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_32 = {39, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_31};
static const struct {
NI cap; NIM_CHAR data[18+1];
} TM__O8rpA4QnF63fyis4dAzZxA_35 = { 18 | NIM_STRLIT_FLAG, "unguarded access: " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_36 = {18, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_35};
static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__O8rpA4QnF63fyis4dAzZxA_38 = {
0x10, 0xa9, 0x80, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__O8rpA4QnF63fyis4dAzZxA_40 = { 10 | NIM_STRLIT_FLAG, "RootEffect" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_41 = {10, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_40};
static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__O8rpA4QnF63fyis4dAzZxA_43 = {
0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__O8rpA4QnF63fyis4dAzZxA_44 = { 15 | NIM_STRLIT_FLAG, " is not GC safe" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_45 = {15, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_44};
static const struct {
NI cap; NIM_CHAR data[64+1];
} TM__O8rpA4QnF63fyis4dAzZxA_47 = { 64 | NIM_STRLIT_FLAG, "\'$1\' is a built-in and cannot be used as a first-class procedure" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_48 = {64, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_47};
static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__O8rpA4QnF63fyis4dAzZxA_50 = {
0x00, 0x00, 0x80, 0x00, 0x00, 0xc0, 0x00, 0x00,
0x00}
;
static NIM_CONST tySet_tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ TM__O8rpA4QnF63fyis4dAzZxA_51 = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00}
;
static const struct {
NI cap; NIM_CHAR data[28+1];
} TM__O8rpA4QnF63fyis4dAzZxA_52 = { 28 | NIM_STRLIT_FLAG, "cannot prove \'$1\' is not nil" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_53 = {28, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_52};
static const struct {
NI cap; NIM_CHAR data[20+1];
} TM__O8rpA4QnF63fyis4dAzZxA_55 = { 20 | NIM_STRLIT_FLAG, "\'$1\' is provably nil" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_56 = {20, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_55};
static const struct {
NI cap; NIM_CHAR data[26+1];
} TM__O8rpA4QnF63fyis4dAzZxA_58 = { 26 | NIM_STRLIT_FLAG, "\'$1\' cannot be assigned to" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_59 = {26, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_58};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__O8rpA4QnF63fyis4dAzZxA_62 = { 14 | NIM_STRLIT_FLAG, "cannot prove: " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_63 = {14, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_62};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__O8rpA4QnF63fyis4dAzZxA_64 = { 4 | NIM_STRLIT_FLAG, " <= " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_65 = {4, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_64};
static const struct {
NI cap; NIM_CHAR data[11+1];
} TM__O8rpA4QnF63fyis4dAzZxA_67 = { 11 | NIM_STRLIT_FLAG, "can prove: " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_68 = {11, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_67};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__O8rpA4QnF63fyis4dAzZxA_69 = { 3 | NIM_STRLIT_FLAG, " > " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_70 = {3, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_69};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__O8rpA4QnF63fyis4dAzZxA_72 = { 1 | NIM_STRLIT_FLAG, "=" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_73 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_72};
static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__O8rpA4QnF63fyis4dAzZxA_74 = {
0x10, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00}
;
static const struct {
NI cap; NIM_CHAR data[39+1];
} TM__O8rpA4QnF63fyis4dAzZxA_75 = { 39 | NIM_STRLIT_FLAG, "could not turn \'$1\' to a sink parameter" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_76 = {39, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_75};
static const struct {
NI cap; NIM_CHAR data[53+1];
} TM__O8rpA4QnF63fyis4dAzZxA_78 = { 53 | NIM_STRLIT_FLAG, "/home/wind/nimv2/compiler/sinkparameter_inference.nim" };
static const struct {
NI cap; NIM_CHAR data[56+1];
} TM__O8rpA4QnF63fyis4dAzZxA_79 = { 56 | NIM_STRLIT_FLAG, "cannot pass $1 to `var T` parameter within a strict func" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_80 = {56, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_79};
static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__O8rpA4QnF63fyis4dAzZxA_82 = {
0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
NI cap; NIM_CHAR data[21+1];
} TM__O8rpA4QnF63fyis4dAzZxA_83 = { 21 | NIM_STRLIT_FLAG, "invalid guard field: " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_84 = {21, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_83};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_86 = {18, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_35};
static const struct {
NI cap; NIM_CHAR data[46+1];
} TM__O8rpA4QnF63fyis4dAzZxA_91 = { 46 | NIM_STRLIT_FLAG, "cannot mutate location $1 within a strict func" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_92 = {46, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_91};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__O8rpA4QnF63fyis4dAzZxA_94 = { 1 | NIM_STRLIT_FLAG, "_" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_95 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_94};
static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__O8rpA4QnF63fyis4dAzZxA_96 = {
0x10, 0xa8, 0x90, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__O8rpA4QnF63fyis4dAzZxA_97 = { 2 | NIM_STRLIT_FLAG, ".." };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_98 = {2, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_97};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__O8rpA4QnF63fyis4dAzZxA_99 = { 7 | NIM_STRLIT_FLAG, "countup" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_100 = {7, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_99};
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__O8rpA4QnF63fyis4dAzZxA_101 = { 9 | NIM_STRLIT_FLAG, "countdown" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_102 = {9, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_101};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__O8rpA4QnF63fyis4dAzZxA_103 = { 3 | NIM_STRLIT_FLAG, "..<" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_104 = {3, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_103};
static const struct {
NI cap; NIM_CHAR data[29+1];
} TM__O8rpA4QnF63fyis4dAzZxA_105 = { 29 | NIM_STRLIT_FLAG, "locks pragma without argument" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_106 = {29, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_105};
static const struct {
NI cap; NIM_CHAR data[22+1];
} TM__O8rpA4QnF63fyis4dAzZxA_108 = { 22 | NIM_STRLIT_FLAG, "invalid pragma block: " };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_109 = {22, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_108};
static const struct {
NI cap; NIM_CHAR data[115+1];
} TM__O8rpA4QnF63fyis4dAzZxA_111 = { 115 | NIM_STRLIT_FLAG, "implicit conversion to \'cstring\' from a non-const location: $1; this will become a compile time error in the future" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_112 = {115, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_111};
static const struct {
NI cap; NIM_CHAR data[43+1];
} TM__O8rpA4QnF63fyis4dAzZxA_115 = { 43 | NIM_STRLIT_FLAG, "conversion to enum with holes is unsafe: $1" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_116 = {43, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_115};
static const struct {
NI cap; NIM_CHAR data[19+1];
} TM__O8rpA4QnF63fyis4dAzZxA_118 = { 19 | NIM_STRLIT_FLAG, "enum conversion: $1" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_119 = {19, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_118};
static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__O8rpA4QnF63fyis4dAzZxA_121 = {
0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__O8rpA4QnF63fyis4dAzZxA_124 = { 6 | NIM_STRLIT_FLAG, "result" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_125 = {6, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_124};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_127 = {33, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_11};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_128 = {29, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_16};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_129 = {23, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_18};
static const struct {
NI cap; NIM_CHAR data[59+1];
} TM__O8rpA4QnF63fyis4dAzZxA_130 = { 59 | NIM_STRLIT_FLAG, "routine has no return type, but .requires contains \'result\'" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_131 = {59, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_130};
static const struct {
NI cap; NIM_CHAR data[36+1];
} TM__O8rpA4QnF63fyis4dAzZxA_133 = { 36 | NIM_STRLIT_FLAG, "\'$#\' is not GC-safe as it calls \'$#\'" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_134 = {36, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_133};
static const struct {
NI cap; NIM_CHAR data[76+1];
} TM__O8rpA4QnF63fyis4dAzZxA_136 = { 76 | NIM_STRLIT_FLAG, "\'$#\' is not GC-safe as it accesses \'$#\' which is a global using GC\'ed memory" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_137 = {76, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_136};
static const struct {
NI cap; NIM_CHAR data[61+1];
} TM__O8rpA4QnF63fyis4dAzZxA_139 = { 61 | NIM_STRLIT_FLAG, "Base method \'$#\' requires explicit \'{.gcsafe.}\' to be GC-safe" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_140 = {61, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_139};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_142 = {36, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_133};
static const struct {
NI cap; NIM_CHAR data[60+1];
} TM__O8rpA4QnF63fyis4dAzZxA_144 = { 60 | NIM_STRLIT_FLAG, "\'$#\' is not GC-safe as it performs an indirect call via \'$#\'" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_145 = {60, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_144};
static const struct {
NI cap; NIM_CHAR data[56+1];
} TM__O8rpA4QnF63fyis4dAzZxA_147 = { 56 | NIM_STRLIT_FLAG, "\'$#\' is not GC-safe as it performs an indirect call here" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_148 = {56, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_147};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_150 = {0, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_2};
static const struct {
NI cap; NIM_CHAR data[27+1];
} TM__O8rpA4QnF63fyis4dAzZxA_151 = { 27 | NIM_STRLIT_FLAG, "\'$#\' can have side effects\012" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_152 = {27, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_151};
static const struct {
NI cap; NIM_CHAR data[20+1];
} TM__O8rpA4QnF63fyis4dAzZxA_153 = { 20 | NIM_STRLIT_FLAG, "$# $# Hint: \'$#\' $#\012" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_154 = {20, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_153};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__O8rpA4QnF63fyis4dAzZxA_155 = { 1 | NIM_STRLIT_FLAG, ">" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_156 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_155};
static const struct {
NI cap; NIM_CHAR data[26+1];
} TM__O8rpA4QnF63fyis4dAzZxA_157 = { 26 | NIM_STRLIT_FLAG, "accesses global state \'$#\'" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_158 = {26, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_157};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_159 = {20, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_153};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_160 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_155};
static const struct {
NI cap; NIM_CHAR data[16+1];
} TM__O8rpA4QnF63fyis4dAzZxA_161 = { 16 | NIM_STRLIT_FLAG, "accessed by \'$#\'" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_162 = {16, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_161};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_163 = {20, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_153};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_164 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_155};
static const struct {
NI cap; NIM_CHAR data[24+1];
} TM__O8rpA4QnF63fyis4dAzZxA_165 = { 24 | NIM_STRLIT_FLAG, "calls `.sideEffect` \'$#\'" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_166 = {24, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_165};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_167 = {20, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_153};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_168 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_155};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__O8rpA4QnF63fyis4dAzZxA_169 = { 14 | NIM_STRLIT_FLAG, "called by \'$#\'" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_170 = {14, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_169};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_171 = {20, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_153};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_172 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_155};
static const struct {
NI cap; NIM_CHAR data[44+1];
} TM__O8rpA4QnF63fyis4dAzZxA_173 = { 44 | NIM_STRLIT_FLAG, "calls routine via hidden pointer indirection" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_174 = {44, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_173};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_175 = {20, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_153};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_176 = {1, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_155};
static const struct {
NI cap; NIM_CHAR data[37+1];
} TM__O8rpA4QnF63fyis4dAzZxA_177 = { 37 | NIM_STRLIT_FLAG, "calls routine via pointer indirection" };
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_178 = {37, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_177};
static const NimStringV2 TM__O8rpA4QnF63fyis4dAzZxA_180 = {0, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_2};
static NIM_CONST tySet_tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ TM__O8rpA4QnF63fyis4dAzZxA_182 = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x80, 0x1f, 0x04, 0x04, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x80, 0x00}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_6 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1343),
((NI)13)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_10 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1350),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_22 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1372),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_29 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1383),
((NI)4)}
;
extern NIM_CONST tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg unknownLineInfo__lineinfos_338;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_30 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)341),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_33 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)345),
((NI)22)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_34 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)347),
((NI)19)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_37 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)126),
((NI)14)}
;
extern NIM_CONST tySet_tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ routineKinds__ast_472;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_39 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)222),
((NI)9)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_42 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)625),
((NI)4)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_46 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)664),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_49 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)565),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_54 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)589),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_57 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)592),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_60 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)186),
((NI)20)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_61 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)895),
((NI)17)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_66 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)780),
((NI)11)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_71 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)785),
((NI)11)}
;
extern NIM_CONST tyArray__7Z9ajkJtFFtfJY8l7DfqyrA AttachedOpToStr__ast_4931;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_77 = {{53, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_78},
((NI)49),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_81 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)938),
((NI)20)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_85 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)149),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_87 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)162),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_88 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)429),
((NI)33)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_89 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)430),
((NI)33)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_90 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)431),
((NI)36)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_93 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1095),
((NI)18)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_107 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)111),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_110 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1011),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_113 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1263),
((NI)13)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_114 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1268),
((NI)13)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_117 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1275),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_120 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1277),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_122 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1312),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_123 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1483),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_126 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1491),
((NI)13)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_132 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)770),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_135 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)262),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_138 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)266),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_141 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)273),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_143 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)278),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_146 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)282),
((NI)13)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_149 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)286),
((NI)13)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_179 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1547),
((NI)15)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__O8rpA4QnF63fyis4dAzZxA_181 = {{38, (NimStrPayload*)&TM__O8rpA4QnF63fyis4dAzZxA_7},
((NI)1549),
((NI)18)}
;
extern NIM_BOOL nimInErrorMode__system_3980;
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(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(void, initIntSet__pureZcollectionsZintsets_389)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
initPackedSet__pureZcollectionsZintsets_16(Result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
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_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkRaisesSpec__sempass50_4892)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, NIM_BOOL emitWarnings, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* spec, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* real, NimStringV2 msg, NIM_BOOL hints, tyProc__xVf0LN69cmygEcgFlBE8VRg effectPredicate, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* hintsArg, NIM_BOOL isForbids) {
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA used;
NIM_BOOL oldNimErrFin8_;
NIM_BOOL oldNimErrFin3_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&used), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
initIntSet__pureZcollectionsZintsets_389((&used));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r;
r = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(real);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA6 ;
i = i_2;
eqcopy___ast_3457(&r, (*real)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* rr;
tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA colontmpD_;
tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
NimStringV2 colontmpD__5;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T25_;
tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA T37_;
NimStringV2 T43_;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T44_;
rr = NIM_NIL;
colontmpD_ = (tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)0;
colontmpD__2 = (tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)0;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
{
NI s;
NI colontmp__2;
NI i_3;
s = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = len__ast_3325(spec);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
i_3 = ((NI)0);
{
while (1) {
if (!(i_3 < colontmp__2)) goto LA11 ;
s = i_3;
{
NIM_BOOL T14_;
T14_ = (NIM_BOOL)0;
T14_ = effectPredicate(g, (*spec)._kind_6.sons.p->data[s], r);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
if (!T14_) goto LA15_;
{
if (!isForbids) goto LA19_;
goto LA9;
}
LA19_: ;
incl__pureZcollectionsZintsets_202((&used), s);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___ast_3454(&rr);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
goto LA7;
}
LA15_: ;
{
if (!isForbids) goto LA23_;
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___ast_3454(&rr);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
goto LA7;
}
LA23_: ;
i_3 += ((NI)1);
} LA11: ;
}
} LA9: ;
pushInfoContext__msgs_534((*g).config, (*spec).info, TM__O8rpA4QnF63fyis4dAzZxA_3);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
T25_ = NIM_NIL;
{
if (!((*r).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)108))) goto LA28_;
eqcopy___ast_3457(&rr, (*r)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
}
goto LA26_;
LA28_: ;
{
eqcopy___ast_3457(&rr, r);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
}
LA26_: ;
{
while (1) {
NIM_BOOL T33_;
NI T35_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T36_;
T33_ = (NIM_BOOL)0;
T33_ = ((*rr).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115) || (*rr).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)126));
if (!(T33_)) goto LA34_;
T35_ = (NI)0;
T35_ = len__ast_3325(rr);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
T33_ = (((NI)0) < T35_);
LA34_: ;
if (!T33_) goto LA32 ;
T36_ = NIM_NIL;
T36_ = lastSon__ast_6268(rr);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
eqsink___ast_3460(&rr, T36_);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
} LA32: ;
}
T37_ = (tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)0;
{
if (!emitWarnings) goto LA40_;
colontmpD_ = ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)71);
T37_ = colontmpD_;
}
goto LA38_;
LA40_: ;
{
colontmpD__2 = ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17);
T37_ = colontmpD__2;
}
LA38_: ;
T43_.len = 0; T43_.p = NIM_NIL;
T44_ = 0;
colontmpD__3 = renderTree__renderer_50(rr, T44_);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
colontmpD__4 = typeToString__types_51((*r).typ, ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0));
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
T43_ = rawNewString(colontmpD__3.len + msg.len + colontmpD__4.len + 1);
appendString((&T43_), colontmpD__3);
appendString((&T43_), TM__O8rpA4QnF63fyis4dAzZxA_5);
appendString((&T43_), msg);
appendString((&T43_), colontmpD__4);
colontmpD__5 = T43_;
liMessage__msgs_1172((*g).config, (*r).info, T37_, colontmpD__5, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_6), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
popInfoContext__msgs_558((*g).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
{
LA8_:;
}
{
oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___ast_3454(&rr);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
*nimErr_ = oldNimErrFin8_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
} LA7: ;
i_2 += ((NI)1);
} LA6: ;
}
}
{
LA3_:;
}
{
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&r);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin3_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
{
if (!hints) goto LA51_;
{
NI s_2;
NI colontmp__3;
NI i_4;
s_2 = (NI)0;
colontmp__3 = (NI)0;
colontmp__3 = len__ast_3325(spec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_4 = ((NI)0);
{
while (1) {
if (!(i_4 < colontmp__3)) goto LA55 ;
s_2 = i_4;
{
NIM_BOOL T58_;
NimStringV2 colontmpD__6;
NimStringV2 colontmpD__7;
NimStringV2 colontmpD__8;
tyArray__Re75IspeoxXy2oCZHwcRrA T62_;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T63_;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T64_;
T58_ = (NIM_BOOL)0;
T58_ = contains__astalgo_3655((&used), s_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T58_)) goto LA59_;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
T63_ = 0;
colontmpD__6 = renderTree__renderer_50(hintsArg, T63_);
if (NIM_UNLIKELY(*nimErr_)) goto LA61_;
T62_[0] = colontmpD__6;
T64_ = 0;
colontmpD__7 = renderTree__renderer_50((*spec)._kind_6.sons.p->data[s_2], T64_);
if (NIM_UNLIKELY(*nimErr_)) goto LA61_;
T62_[1] = colontmpD__7;
colontmpD__8 = nsuFormatOpenArray(TM__O8rpA4QnF63fyis4dAzZxA_9, T62_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA61_;
liMessage__msgs_1172((*g).config, (*(*spec)._kind_6.sons.p->data[s_2]).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)84), colontmpD__8, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_10), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA61_;
{
LA61_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__8));
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&colontmpD__6));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA59_: ;
i_4 += ((NI)1);
} LA55: ;
}
}
}
LA51_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_181((&used));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, getEbase__sempass50_2492)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
result = sysTypeFromName__magicsys_55(g, info, TM__O8rpA4QnF63fyis4dAzZxA_14);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*, excType__sempass50_2496)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* result;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* T2_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
t = NIM_NIL;
T2_ = NIM_NIL;
{
NIM_BOOL T5_;
T5_ = (NIM_BOOL)0;
T5_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1));
if (T5_) goto LA6_;
T5_ = ((*n).typ == 0);
LA6_: ;
if (!T5_) goto LA7_;
t = getEbase__sempass50_2492(g, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA3_;
LA7_: ;
{
eqcopy___ast_3546(&t, (*n).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA3_: ;
result = skipTypes__ast_4803(t, TM__O8rpA4QnF63fyis4dAzZxA_15);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&t);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, subtypeRelation__sempass50_4879)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* spec, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* real) {
NIM_BOOL result;
NIM_BOOL oldNimErrFin9_;
NIM_BOOL oldNimErrFin18_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
{
if (!((*(*spec).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)57))) goto LA3_;
{
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA** t;
NI i;
NI L;
NI T6_;
t = (tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA**)0;
i = ((NI)0);
T6_ = (*(*spec).typ).sons.len;
L = T6_;
{
while (1) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD_;
if (!(i < L)) goto LA8 ;
colontmpD_ = NIM_NIL;
t = &(*(*spec).typ).sons.p->data[i];
{
NI T12_;
colontmpD_ = excType__sempass50_2496(g, real);
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
T12_ = (NI)0;
T12_ = safeInheritanceDiff__types_3611(colontmpD_, (*t));
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
if (!(T12_ <= ((NI)0))) goto LA13_;
result = NIM_TRUE;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA13_: ;
i += ((NI)1);
{
LA9_:;
}
{
oldNimErrFin9_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin9_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA8: ;
}
}
}
goto LA1_;
LA3_: ;
{
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__2;
NI T19_;
colontmpD__2 = NIM_NIL;
colontmpD__2 = excType__sempass50_2496(g, real);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
T19_ = (NI)0;
T19_ = safeInheritanceDiff__types_3611(colontmpD__2, (*spec).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
result = (T19_ <= ((NI)0));
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
{
LA18_:;
}
{
oldNimErrFin18_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin18_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA1_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, checkMethodEffects__sempass50_4997)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* disp, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* branch) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* actual;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* p;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* raisesSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tagsSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* forbidsSpec;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
actual = NIM_NIL;
p = NIM_NIL;
raisesSpec = NIM_NIL;
tagsSpec = NIM_NIL;
forbidsSpec = NIM_NIL;
eqcopy___ast_3457(&actual, (*(*(*branch).typ).n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI T4_;
T4_ = (NI)0;
T4_ = len__ast_3325(actual);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!((T4_ == ((NI)6)))) goto LA5_;
eqdestroy___ast_3454(&forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&p);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&actual);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA5_: ;
eqcopy___ast_3457(&p, (*(*disp).ast)._kind_6.sons.p->data[((NI)4)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
raisesSpec = effectSpec__trees_291(p, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)174));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!((raisesSpec == 0))) goto LA9_;
checkRaisesSpec__sempass50_4892(g, NIM_FALSE, raisesSpec, (*actual)._kind_6.sons.p->data[((NI)0)], TM__O8rpA4QnF63fyis4dAzZxA_12, NIM_FALSE, subtypeRelation__sempass50_4879, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA9_: ;
tagsSpec = effectSpec__trees_291(p, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)179));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!((tagsSpec == 0))) goto LA13_;
checkRaisesSpec__sempass50_4892(g, NIM_FALSE, tagsSpec, (*actual)._kind_6.sons.p->data[((NI)3)], TM__O8rpA4QnF63fyis4dAzZxA_17, NIM_FALSE, subtypeRelation__sempass50_4879, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA13_: ;
forbidsSpec = effectSpec__trees_291(p, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)180));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!((forbidsSpec == 0))) goto LA17_;
checkRaisesSpec__sempass50_4892(g, NIM_FALSE, forbidsSpec, (*actual)._kind_6.sons.p->data[((NI)3)], TM__O8rpA4QnF63fyis4dAzZxA_19, NIM_FALSE, subtypeRelation__sempass50_4879, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL), NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA17_: ;
{
NIM_BOOL T21_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T23_;
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
T21_ = (NIM_BOOL)0;
T21_ = (((*disp).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)26)))&63U)))!=0);
if (!(T21_)) goto LA22_;
T23_ = 0;
T21_ = ((130 & (*(*branch).typ).flags) == T23_);
LA22_: ;
if (!T21_) goto LA24_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD_), (*(*branch).name).s);
colontmpD__2 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_21, colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
liMessage__msgs_1172((*g).config, (*branch).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_22), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
{
LA26_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA24_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&p);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&actual);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
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__O8rpA4QnF63fyis4dAzZxA_24);
addInt__stdZprivateZdigitsutils_198((&result), (*info).Field1);
{
if (!(((NI)0) < (NI)((*info).Field2 + ((NI)1)))) goto LA7_;
prepareAdd((&result), 2);
appendString((&result), TM__O8rpA4QnF63fyis4dAzZxA_26);
addInt__stdZprivateZdigitsutils_198((&result), (NI)((*info).Field2 + ((NI)1)));
}
LA7_: ;
prepareAdd((&result), 1);
appendString((&result), TM__O8rpA4QnF63fyis4dAzZxA_28);
}
LA3_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setEffectsForProcType__sempass50_5035)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effects;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
effects = NIM_NIL;
eqcopy___ast_3457(&effects, (*(*t).n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T4_;
T4_ = (NIM_BOOL)0;
T4_ = !(((*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25)));
if (T4_) goto LA5_;
T4_ = !(((*effects).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152)));
LA5_: ;
if (!T4_) goto LA6_;
eqdestroy___ast_3454(&effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA6_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* raisesSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tagsSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* forbidsSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* requiresSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* ensuresSpec;
if (!!(((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA10_;
raisesSpec = NIM_NIL;
tagsSpec = NIM_NIL;
forbidsSpec = NIM_NIL;
requiresSpec = NIM_NIL;
ensuresSpec = NIM_NIL;
{
NI T15_;
NimStringV2 argX60gensym569_;
T15_ = (NI)0;
T15_ = len__ast_3325(effects);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
if (!!((T15_ == ((NI)0)))) goto LA16_;
argX60gensym569_.len = 0; argX60gensym569_.p = NIM_NIL;
argX60gensym569_ = toFileLineCol__msgs_666((&TM__O8rpA4QnF63fyis4dAzZxA_29));
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
internalErrorImpl__msgs_1510((*g).config, unknownLineInfo__lineinfos_338, argX60gensym569_, (&TM__O8rpA4QnF63fyis4dAzZxA_29));
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
{
LA18_:;
}
{
eqdestroy___stdZassertions_13((&argX60gensym569_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
}
LA16_: ;
newSeq__ast_3958((&(*effects)._kind_6.sons), ((NI)6));
raisesSpec = effectSpec__trees_291(n, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)174));
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
{
if (!!((raisesSpec == 0))) goto LA23_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)0)], raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
raisesSpec = 0;
}
goto LA21_;
LA23_: ;
{
NIM_BOOL T26_;
NIM_BOOL T28_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T32_;
T26_ = (NIM_BOOL)0;
T26_ = !((s == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)));
if (!(T26_)) goto LA27_;
T28_ = (NIM_BOOL)0;
T28_ = !(((*s).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)0)));
if (T28_) goto LA29_;
T28_ = ((192 & (*s).flags) == 64);
LA29_: ;
T26_ = T28_;
LA27_: ;
if (!T26_) goto LA30_;
T32_ = NIM_NIL;
T32_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*effects).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)0)], T32_);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
}
goto LA21_;
LA30_: ;
LA21_: ;
tagsSpec = effectSpec__trees_291(n, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)179));
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
{
if (!!((tagsSpec == 0))) goto LA35_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)3)], tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
tagsSpec = 0;
}
goto LA33_;
LA35_: ;
{
NIM_BOOL T38_;
NIM_BOOL T40_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T44_;
T38_ = (NIM_BOOL)0;
T38_ = !((s == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)));
if (!(T38_)) goto LA39_;
T40_ = (NIM_BOOL)0;
T40_ = !(((*s).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)0)));
if (T40_) goto LA41_;
T40_ = ((192 & (*s).flags) == 64);
LA41_: ;
T38_ = T40_;
LA39_: ;
if (!T38_) goto LA42_;
T44_ = NIM_NIL;
T44_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*effects).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)3)], T44_);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
}
goto LA33_;
LA42_: ;
LA33_: ;
forbidsSpec = effectSpec__trees_291(n, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)180));
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
{
if (!!((forbidsSpec == 0))) goto LA47_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)5)], forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
forbidsSpec = 0;
}
goto LA45_;
LA47_: ;
{
NIM_BOOL T50_;
NIM_BOOL T52_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T56_;
T50_ = (NIM_BOOL)0;
T50_ = !((s == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)));
if (!(T50_)) goto LA51_;
T52_ = (NIM_BOOL)0;
T52_ = !(((*s).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)0)));
if (T52_) goto LA53_;
T52_ = ((192 & (*s).flags) == 64);
LA53_: ;
T50_ = T52_;
LA51_: ;
if (!T50_) goto LA54_;
T56_ = NIM_NIL;
T56_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*effects).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)5)], T56_);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
}
goto LA45_;
LA54_: ;
LA45_: ;
requiresSpec = propSpec__trees_323(n, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)181));
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
{
if (!!((requiresSpec == 0))) goto LA59_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)1)], requiresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
requiresSpec = 0;
}
LA59_: ;
ensuresSpec = propSpec__trees_323(n, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)182));
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
{
if (!!((ensuresSpec == 0))) goto LA63_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)2)], ensuresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
ensuresSpec = 0;
}
LA63_: ;
eqcopy___ast_3457(&(*effects)._kind_6.sons.p->data[((NI)4)], n);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
{
LA12_:;
}
{
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&ensuresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&requiresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin12_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA10_: ;
{
NIM_BOOL T69_;
T69_ = (NIM_BOOL)0;
T69_ = !((s == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)));
if (!(T69_)) goto LA70_;
T69_ = !(((*s).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)0)));
LA70_: ;
if (!T69_) goto LA71_;
{
if (!!(((*s).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)20)))) goto LA75_;
(*t).flags |= ((NU64)1)<<(((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1))) & 63);
}
LA75_: ;
}
LA71_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y) {
NI result;
result = (NI)0;
result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((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)16));
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, nimDecRefIsLastCyclicDyn)(void* p) {
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)16));
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, (*((TNimTypeV2**) (p))));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___sempass50_5497)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* dest) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLast((*dest).exc);
if (!T3_) goto LA4_;
eqdestroy___ast_3466((*dest).exc);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).exc, ((NI)8));
}
LA4_: ;
{
NIM_BOOL T8_;
T8_ = (NIM_BOOL)0;
T8_ = nimDecRefIsLast((*dest).tags);
if (!T8_) goto LA9_;
eqdestroy___ast_3466((*dest).tags);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).tags, ((NI)8));
}
LA9_: ;
{
NIM_BOOL T13_;
T13_ = (NIM_BOOL)0;
T13_ = nimDecRefIsLast((*dest).forbids);
if (!T13_) goto LA14_;
eqdestroy___ast_3466((*dest).forbids);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).forbids, ((NI)8));
}
LA14_: ;
{
NIM_BOOL T18_;
T18_ = (NIM_BOOL)0;
T18_ = nimDecRefIsLast((*dest).owner);
if (!T18_) goto LA19_;
nimDestroyAndDispose((*dest).owner);
}
LA19_: ;
{
NIM_BOOL T23_;
T23_ = (NIM_BOOL)0;
T23_ = nimDecRefIsLast((*dest).ownerModule);
if (!T23_) goto LA24_;
nimDestroyAndDispose((*dest).ownerModule);
}
LA24_: ;
eqdestroy___pureZosproc_403((&(*dest).init));
eqdestroy___vmdef_1652((&(*dest).scopes.data));
eqdestroy___ast_3723((&(*dest).guards.s));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T28_;
T28_ = (NIM_BOOL)0;
T28_ = nimDecRefIsLast((*dest).guards.g);
if (!T28_) goto LA29_;
eqdestroy___modulegraphs_11047((*dest).guards.g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).guards.g, ((NI)8));
}
LA29_: ;
eqdestroy___ast_3723((&(*dest).locked));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T33_;
T33_ = (NIM_BOOL)0;
T33_ = nimDecRefIsLast((*dest).config);
if (!T33_) goto LA34_;
eqdestroy___options_3149((*dest).config);
nimRawDispose((*dest).config, ((NI)8));
}
LA34_: ;
{
NIM_BOOL T38_;
T38_ = (NIM_BOOL)0;
T38_ = nimDecRefIsLast((*dest).graph);
if (!T38_) goto LA39_;
eqdestroy___modulegraphs_11047((*dest).graph);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).graph, ((NI)8));
}
LA39_: ;
{
NIM_BOOL T43_;
T43_ = (NIM_BOOL)0;
T43_ = nimDecRefIsLastCyclicDyn((*dest).c);
if (!T43_) goto LA44_;
nimDestroyAndDispose((*dest).c);
}
LA44_: ;
{
NIM_BOOL T48_;
T48_ = (NIM_BOOL)0;
T48_ = nimDecRefIsLast((*dest).escapingParams.head);
if (!T48_) goto LA49_;
eqdestroy___pureZcollectionsZintsets_36((*dest).escapingParams.head);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).escapingParams.head, ((NI)8));
}
LA49_: ;
eqdestroy___pureZcollectionsZintsets_56((&(*dest).escapingParams.data));
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasRealBody__sempass50_5212)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s) {
NIM_BOOL result;
tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg T1_;
result = (NIM_BOOL)0;
T1_ = 0;
result = ((80 & (*s).flags) == T1_);
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rawInitEffects__sempass50_5158)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effects) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T1_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T2_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
newSeq__ast_3958((&(*effects)._kind_6.sons), ((NI)6));
T1_ = NIM_NIL;
T1_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*effects).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)0)], T1_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T2_ = NIM_NIL;
T2_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*effects).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)3)], T2_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T3_ = NIM_NIL;
T3_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*effects).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)5)], T3_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_3457(&(*effects)._kind_6.sons.p->data[((NI)1)], (*g).emptyNode);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_3457(&(*effects)._kind_6.sons.p->data[((NI)2)], (*g).emptyNode);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_3457(&(*effects)._kind_6.sons.p->data[((NI)4)], (*g).emptyNode);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, initEffects__sempass50_5171)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effects, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* t, tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c) {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* T1_;
tySequence__qwqHTkRvwhrRyENtudHQ7g T2_;
tySequence__xxu3GgaFAGO6lOns9aHaeLQ T3_;
tySequence__xxu3GgaFAGO6lOns9aHaeLQ T4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
rawInitEffects__sempass50_5158(g, effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_3457(&(*t).exc, (*effects)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_3457(&(*t).tags, (*effects)._kind_6.sons.p->data[((NI)3)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_3457(&(*t).forbids, (*effects)._kind_6.sons.p->data[((NI)5)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_4063(&(*t).owner, s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T1_ = NIM_NIL;
T1_ = getModule__astalgo_220(s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_4066(&(*t).ownerModule, T1_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T2_.len = 0; T2_.p = NIM_NIL;
T2_.len = 0; T2_.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(0, sizeof(NI), NIM_ALIGNOF(NI));
eqsink___pureZosproc_409((&(*t).init), T2_);
T3_.len = 0; T3_.p = NIM_NIL;
T3_.len = 0; T3_.p = (tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content*) newSeqPayload(0, sizeof(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*), NIM_ALIGNOF(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*));
eqsink___ast_3729((&(*t).guards.s), T3_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___modulegraphs_11315(&(*t).guards.g, g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*t).currOptions = ((*(*g).config).options | (*s).options);
(*t).guards.beSmart = (((*t).currOptions &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)9)))&31U)))!=0);
T4_.len = 0; T4_.p = NIM_NIL;
T4_.len = 0; T4_.p = (tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content*) newSeqPayload(0, sizeof(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*), NIM_ALIGNOF(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*));
eqsink___ast_3729((&(*t).locked), T4_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___modulegraphs_11315(&(*t).graph, g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___options_3378(&(*t).config, (*g).config);
eqcopy___semdata_2058(&(*t).c, c, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*t).currentBlock = ((NI)1);
}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, isEmptyType__ast_6215)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = (t == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL));
if (T1_) goto LA2_;
T1_ = ((*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)63) || (*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)7));
LA2_: ;
result = T1_;
return result;
}
static N_INLINE(NIM_BOOL, isOutParam__ast_6694)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t) {
NIM_BOOL result;
result = (NIM_BOOL)0;
result = (((*t).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)45)))&63U)))!=0);
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isLocalSym__sempass50_153)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s) {
NIM_BOOL result;
NIM_BOOL T1_;
NIM_BOOL T2_;
NIM_BOOL T3_;
NIM_BOOL T5_;
NIM_BOOL T7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T2_ = (NIM_BOOL)0;
T3_ = (NIM_BOOL)0;
T3_ = !(((*s).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T3_)) goto LA4_;
T5_ = (NIM_BOOL)0;
T5_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)8) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)11));
if (T5_) goto LA6_;
T7_ = (NIM_BOOL)0;
T7_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3));
if (!(T7_)) goto LA8_;
T7_ = isOutParam__ast_6694((*s).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA8_: ;
T5_ = T7_;
LA6_: ;
T3_ = T5_;
LA4_: ;
T2_ = T3_;
if (!(T2_)) goto LA9_;
T2_ = !((((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)3)))&63U)))!=0));
LA9_: ;
T1_ = T2_;
if (!(T1_)) goto LA10_;
T1_ = ((*s).owner == (*a).owner);
LA10_: ;
result = T1_;
}BeforeRet_: ;
return result;
}
static N_INLINE(NI, find__sigmatch_4661)(NI* a, NI aLen_0, NI item) {
NI result;
{ result = (NI)0;
result = ((NI)0);
{
NI* i;
NI i_2;
i = (NI*)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < aLen_0)) goto LA3 ;
i = (&a[i_2]);
{
if (!((*i) == item)) goto LA6_;
goto BeforeRet_;
}
LA6_: ;
result += ((NI)1);
i_2 += ((NI)1);
} LA3: ;
}
}
result = ((NI)-1);
}BeforeRet_: ;
return result;
}
static N_INLINE(NIM_BOOL, contains__sigmatch_4656)(NI* a, NI aLen_0, NI item) {
NIM_BOOL result;
NI T1_;
{ result = (NIM_BOOL)0;
T1_ = (NI)0;
T1_ = find__sigmatch_4661(a, aLen_0, item);
result = (((NI)0) <= T1_);
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, guardGlobal__sempass50_190)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* guard) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** L;
NI i;
NI L_2;
NI T2_;
L = (tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**)0;
i = ((NI)0);
T2_ = (*a).locked.len;
L_2 = T2_;
{
while (1) {
if (!(i < L_2)) goto LA4 ;
L = &(*a).locked.p->data[i];
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = ((*(*L)).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T7_)) goto LA8_;
T7_ = ((*(*L))._kind_4.sym == guard);
LA8_: ;
if (!T7_) goto LA9_;
goto BeforeRet_;
}
LA9_: ;
i += ((NI)1);
} LA4: ;
}
}
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 T16_;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T17_;
if (!!((*a).isTopLevel)) goto LA13_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T16_.len = 0; T16_.p = NIM_NIL;
T17_ = 0;
colontmpD_ = renderTree__renderer_50(n, T17_);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
T16_ = rawNewString(colontmpD_.len + 18);
appendString((&T16_), TM__O8rpA4QnF63fyis4dAzZxA_36);
appendString((&T16_), colontmpD_);
colontmpD__2 = T16_;
liMessage__msgs_1172((*a).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_37), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
{
LA15_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA13_: ;
}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, isGCedMem__ast_5584)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t) {
NIM_BOOL result;
NIM_BOOL T1_;
NIM_BOOL T3_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = ((*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)28) || (*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22) || (*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)24));
if (T1_) goto LA2_;
T3_ = (NIM_BOOL)0;
T3_ = ((*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
if (!(T3_)) goto LA4_;
T3_ = ((*t).callConv == ((tyEnum_TCallingConvention__XL1p2EKvOAlAHpc68ecZPw)9));
LA4_: ;
T1_ = T3_;
LA2_: ;
result = T1_;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, markGcUnsafe__sempass50_580)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* reason) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
if (!!((*a).inEnforcedGcSafe)) goto LA3_;
(*a).gcUnsafe = NIM_TRUE;
{
if (!((*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18))) goto LA7_;
eqcopy___ast_4063(&(*(*a).owner)._kind_1.gcUnsafetyReason, reason);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA7_: ;
}
LA3_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, markSideEffect__sempass50_1227)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* reason, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg useLoc) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
if (!!((*a).inEnforcedNoSideEffects)) goto LA3_;
(*a).hasSideEffect = NIM_TRUE;
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym87_;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* colontmpD__2;
tySequence__9csKSQ865Bdwb8TbX9cOogww T9_;
tySequence__9csKSQ865Bdwb8TbX9cOogww* T10_;
tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ T11_;
if (!((routineKinds__ast_472 &((NU32)1<<((NU)(((*(*a).owner).kind))&31U)))!=0)) goto LA7_;
sym = NIM_NIL;
xX60gensym87_ = NIM_NIL;
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
colontmpD__2 = NIM_NIL;
sym = reason;
xX60gensym87_ = (*a).owner;
T9_.len = 0; T9_.p = NIM_NIL;
T9_.len = 0; T9_.p = (tySequence__9csKSQ865Bdwb8TbX9cOogww_Content*) newSeqPayload(0, sizeof(tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ), NIM_ALIGNOF(tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ));
T10_ = (tySequence__9csKSQ865Bdwb8TbX9cOogww*)0;
T10_ = mgetOrPut__sempass50_1287((&(*(*a).c).sideEffects), (NI)((NI)((NU64)(((NI) ((*xX60gensym87_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym87_).Sup.itemId.item))), T9_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimZeroMem((void*)(&T11_), sizeof(tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ));
colontmpD_ = useLoc;
T11_.Field0 = colontmpD_;
colontmpD__2 = 0;
eqcopy___ast_4063(&colontmpD__2, sym);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T11_.Field1 = colontmpD__2;
add__sempass50_2333((&(*T10_)), T11_);
}
LA7_: ;
}
LA3_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, useVarNoInitCheck__sempass50_1191)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
NIM_BOOL T4_;
tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg T5_;
T3_ = (NIM_BOOL)0;
T4_ = (NIM_BOOL)0;
T5_ = 0;
T4_ = !(((67108872 & (*s).flags) == T5_));
if (!(T4_)) goto LA6_;
T4_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)8) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9));
LA6_: ;
T3_ = T4_;
if (!(T3_)) goto LA7_;
T3_ = !(((*s).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)264)));
LA7_: ;
if (!T3_) goto LA8_;
{
if (!!(((*s)._kind_2.guard == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)))) goto LA12_;
guardGlobal__sempass50_190(a, n, (*s)._kind_2.guard);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA12_: ;
{
NIM_BOOL T16_;
NIM_BOOL T18_;
T16_ = (NIM_BOOL)0;
T16_ = ((67108872 & (*s).flags) == 8);
if (!(T16_)) goto LA17_;
T18_ = (NIM_BOOL)0;
T18_ = (((*(*s).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)22)))&63U)))!=0);
if (T18_) goto LA19_;
T18_ = isGCedMem__ast_5584((*s).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA19_: ;
T16_ = T18_;
LA17_: ;
if (!T16_) goto LA20_;
markGcUnsafe__sempass50_580(a, s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA20_: ;
markSideEffect__sempass50_1227(a, s, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA8_: ;
{
NIM_BOOL T24_;
NIM_BOOL T25_;
tySet_tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg T28_;
T24_ = (NIM_BOOL)0;
T25_ = (NIM_BOOL)0;
T25_ = !(((*s).owner == (*a).owner));
if (!(T25_)) goto LA26_;
T25_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)8) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)21) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)11) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3));
LA26_: ;
T24_ = T25_;
if (!(T24_)) goto LA27_;
T28_ = 0;
T24_ = ((67108872 & (*s).flags) == T28_);
LA27_: ;
if (!T24_) goto LA29_;
(*a).isInnerProc = NIM_TRUE;
}
LA29_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, useVar__sempass50_2369)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s;
NIM_BOOL oldNimErrFin20_;
NIM_BOOL oldNimErrFin11_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
s = NIM_NIL;
eqcopy___ast_4063(&s, (*n)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!(((NI)0) < (*a).inExceptOrFinallyStmt)) goto LA4_;
(*s).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)45))) & 63);
}
LA4_: ;
{
NIM_BOOL T8_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym106_;
T8_ = (NIM_BOOL)0;
T8_ = isLocalSym__sempass50_153(a, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T8_) goto LA9_;
xX60gensym106_ = NIM_NIL;
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym104_;
if (!(((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)14)))&63U)))!=0)) goto LA14_;
xX60gensym104_ = NIM_NIL;
eqcopy___ast_4063(&xX60gensym104_, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
add__varpartitions_1477((&(*a).init), (NI)((NI)((NU64)(((NI) ((*xX60gensym104_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym104_).Sup.itemId.item))));
eqdestroy___ast_4060(&xX60gensym104_);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
}
goto LA12_;
LA14_: ;
{
NIM_BOOL T17_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym114_;
eqcopy___ast_4063(&xX60gensym106_, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
T17_ = (NIM_BOOL)0;
T17_ = contains__sigmatch_4656((((*a).init).p) ? ((*a).init.p->data) : NIM_NIL, (*a).init.len, (NI)((NI)((NU64)(((NI) ((*xX60gensym106_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym106_).Sup.itemId.item))));
if (!!(T17_)) goto LA18_;
xX60gensym114_ = NIM_NIL;
{
NIM_BOOL T23_;
T23_ = (NIM_BOOL)0;
T23_ = requiresInit__typeallowed_593((*s).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
if (!T23_) goto LA24_;
liMessage__msgs_1172((*a).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)45), (*(*s).name).s, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_30), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
}
goto LA21_;
LA24_: ;
{
if (!((*a).leftPartOfAsgn <= ((NI)0))) goto LA27_;
{
if (!(((*(*a).c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)18)))&31U)))!=0)) goto LA31_;
{
if (!((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9))) goto LA35_;
liMessage__msgs_1172((*a).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__O8rpA4QnF63fyis4dAzZxA_32, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_33), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
}
goto LA33_;
LA35_: ;
{
liMessage__msgs_1172((*a).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)53), (*(*s).name).s, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_34), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
}
LA33_: ;
}
LA31_: ;
}
goto LA21_;
LA27_: ;
LA21_: ;
eqcopy___ast_4063(&xX60gensym114_, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
add__varpartitions_1477((&(*a).init), (NI)((NI)((NU64)(((NI) ((*xX60gensym114_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym114_).Sup.itemId.item))));
{
LA20_:;
}
{
oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&xX60gensym114_);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
*nimErr_ = oldNimErrFin20_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
}
goto LA12_;
LA18_: ;
LA12_: ;
{
LA11_:;
}
{
oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&xX60gensym106_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin11_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA9_: ;
useVarNoInitCheck__sempass50_1191(a, n, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, throws__sempass50_2467)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* orig) {
NIM_BOOL oldNimErrFin11_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = ((*n).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL));
if (T3_) goto LA4_;
T3_ = !(((*(*n).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)50)));
LA4_: ;
if (!T3_) goto LA5_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x;
if (!!((orig == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)))) goto LA9_;
x = NIM_NIL;
x = copyTree__ast_5856(orig);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
eqcopy___ast_3546(&(*x).typ, (*n).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
add__ast_6233(tracked, x);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
{
LA11_:;
}
{
oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&x);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin11_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA7_;
LA9_: ;
{
add__ast_6233(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA7_: ;
}
LA5_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addRaiseEffect__sempass50_2522)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* aa;
NIM_BOOL oldNimErrFin5_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
aa = NIM_NIL;
eqcopy___ast_3457(&aa, (*a).exc);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = len__ast_3325(aa);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 = (*a).bottom;
{
while (1) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__2;
if (!(i_2 < colontmp_)) goto LA4 ;
colontmpD_ = NIM_NIL;
colontmpD__2 = NIM_NIL;
i = i_2;
{
tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w T8_;
NIM_BOOL T9_;
colontmpD_ = excType__sempass50_2496((*a).graph, (*aa)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
colontmpD__2 = excType__sempass50_2496((*a).graph, e);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
T8_ = 0;
T9_ = (NIM_BOOL)0;
T9_ = sameType__types_2000(colontmpD_, colontmpD__2, T8_);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
if (!T9_) goto LA10_;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&aa);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA10_: ;
i_2 += ((NI)1);
{
LA5_:;
}
{
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin5_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA4: ;
}
}
{
if (!!(((*e).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)))) goto LA16_;
{
NIM_BOOL T20_;
NIM_BOOL T22_;
T20_ = (NIM_BOOL)0;
T20_ = (((*(*a).config).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)48)))&63U)))!=0);
if (T20_) goto LA21_;
T22_ = (NIM_BOOL)0;
T22_ = isDefectException__types_4304((*e).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T20_ = !(T22_);
LA21_: ;
if (!T20_) goto LA23_;
throws__sempass50_2467((*a).exc, e, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA23_: ;
}
LA16_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&aa);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, createTypeBoundOps__sempass50_133)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
if (!(typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL))) goto LA3_;
goto BeforeRet_;
}
LA3_: ;
createTypeBoundOps__liftdestructors_48((*tracked).graph, (*tracked).c, typ, info, (*(*tracked).c).Sup.idgen);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = (((*typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)31)))&63U)))!=0);
if (T7_) goto LA8_;
T7_ = (((*(*tracked).config).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)41)))&63U)))!=0);
LA8_: ;
if (!T7_) goto LA9_;
(*(*tracked).owner).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)42))) & 63);
}
LA9_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, createRaise__sempass50_2508)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
result = newNode__ast_3934(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)4));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T1_ = NIM_NIL;
T1_ = getEbase__sempass50_2492(g, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3549(&(*result).typ, T1_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!!((n == 0))) goto LA4_;
(*result).info = (*n).info;
}
LA4_: ;
}BeforeRet_: ;
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(void, markSideEffect__sempass50_3213)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* reason, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg useLoc) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
if (!!((*a).inEnforcedNoSideEffects)) goto LA3_;
(*a).hasSideEffect = NIM_TRUE;
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym231_;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg colontmpD_;
tySequence__9csKSQ865Bdwb8TbX9cOogww T21_;
tySequence__9csKSQ865Bdwb8TbX9cOogww* T22_;
tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ T23_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* blitTmp;
if (!((routineKinds__ast_472 &((NU32)1<<((NU)(((*(*a).owner).kind))&31U)))!=0)) goto LA7_;
sym = NIM_NIL;
xX60gensym231_ = NIM_NIL;
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
{
if (!((*reason).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA11_;
eqcopy___ast_4063(&sym, (*reason)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA9_;
LA11_: ;
{
tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ colontmpD__2;
tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ colontmpD__3;
tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ kind;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw T19_;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg T20_;
colontmpD__2 = (tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)0;
colontmpD__3 = (tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)0;
{
if (!((*reason).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65))) goto LA16_;
colontmpD__2 = ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3);
kind = colontmpD__2;
}
goto LA14_;
LA16_: ;
{
colontmpD__3 = ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)0);
kind = colontmpD__3;
}
LA14_: ;
T19_ = nextSymId__ast_3268((*(*a).c).Sup.idgen);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T20_ = 0;
sym = newSym__ast_4028(kind, (*(*a).owner).name, T19_, (*a).owner, (*reason).info, T20_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA9_: ;
xX60gensym231_ = (*a).owner;
T21_.len = 0; T21_.p = NIM_NIL;
T21_.len = 0; T21_.p = (tySequence__9csKSQ865Bdwb8TbX9cOogww_Content*) newSeqPayload(0, sizeof(tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ), NIM_ALIGNOF(tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ));
T22_ = (tySequence__9csKSQ865Bdwb8TbX9cOogww*)0;
T22_ = mgetOrPut__sempass50_1287((&(*(*a).c).sideEffects), (NI)((NI)((NU64)(((NI) ((*xX60gensym231_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym231_).Sup.itemId.item))), T21_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimZeroMem((void*)(&T23_), sizeof(tyTuple__9bJrRv70NyjWt9cNyf2B2CyQ));
colontmpD_ = useLoc;
T23_.Field0 = colontmpD_;
blitTmp = sym;
T23_.Field1 = blitTmp;
add__sempass50_2333((&(*T22_)), T23_);
}
LA7_: ;
}
LA3_: ;
}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, hasWarn__options_576)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw note) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = (((*conf).options &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)13)))&31U)))!=0);
if (!(T1_)) goto LA2_;
T1_ = (((*conf).notes[(NU)((note - 19))>>3] &(1U<<((NU)((note - 19))&7U)))!=0);
LA2_: ;
result = T1_;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, warnAboutGcUnsafe__sempass50_577)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NimStringV2 colontmpD_;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
T2_ = 0;
colontmpD_ = renderTree__renderer_50(n, T2_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
liMessage__msgs_1172(conf, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)51), colontmpD_, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_39), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, markGcUnsafe__sempass50_587)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* reason) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
if (!!((*a).inEnforcedGcSafe)) goto LA3_;
(*a).gcUnsafe = NIM_TRUE;
{
if (!((*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*(*a).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18))) goto LA7_;
{
if (!((*reason).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA11_;
eqcopy___ast_4063(&(*(*a).owner)._kind_1.gcUnsafetyReason, (*reason)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA9_;
LA11_: ;
{
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw T14_;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg T15_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* T16_;
T14_ = nextSymId__ast_3268((*(*a).c).Sup.idgen);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T15_ = 0;
T16_ = NIM_NIL;
T16_ = newSym__ast_4028(((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)0), (*(*a).owner).name, T14_, (*a).owner, (*reason).info, T15_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_4066(&(*(*a).owner)._kind_1.gcUnsafetyReason, T16_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA9_: ;
}
LA7_: ;
}
LA3_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, mergeRaises__sempass50_2572)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom) {
NIM_BOOL oldNimErrFin5_;
NIM_BOOL oldNimErrFin10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
if (!(b == 0)) goto LA3_;
colontmpD_ = NIM_NIL;
colontmpD_ = createRaise__sempass50_2508((*a).graph, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
addRaiseEffect__sempass50_2522(a, colontmpD_, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
{
LA5_:;
}
{
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin5_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA3_: ;
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effect;
effect = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(b);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA13 ;
i = i_2;
eqcopy___ast_3457(&effect, (*b)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
addRaiseEffect__sempass50_2522(a, effect, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
i_2 += ((NI)1);
} LA13: ;
}
}
{
LA10_:;
}
{
oldNimErrFin10_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&effect);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin10_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
LA1_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addTag__sempass50_2544)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* aa;
NIM_BOOL oldNimErrFin5_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
aa = NIM_NIL;
eqcopy___ast_3457(&aa, (*a).tags);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = len__ast_3325(aa);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 = ((NI)0);
{
while (1) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__2;
if (!(i_2 < colontmp_)) goto LA4 ;
colontmpD_ = NIM_NIL;
colontmpD__2 = NIM_NIL;
i = i_2;
{
tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w T8_;
NIM_BOOL T9_;
colontmpD_ = skipTypes__ast_4803((*(*aa)._kind_6.sons.p->data[i]).typ, TM__O8rpA4QnF63fyis4dAzZxA_15);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
colontmpD__2 = skipTypes__ast_4803((*e).typ, TM__O8rpA4QnF63fyis4dAzZxA_15);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
T8_ = 0;
T9_ = (NIM_BOOL)0;
T9_ = sameType__types_2000(colontmpD_, colontmpD__2, T8_);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
if (!T9_) goto LA10_;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&aa);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA10_: ;
i_2 += ((NI)1);
{
LA5_:;
}
{
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin5_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA4: ;
}
}
throws__sempass50_2467((*a).tags, e, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&aa);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, createTag__sempass50_2515)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
result = newNode__ast_3934(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)4));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T1_ = NIM_NIL;
T1_ = sysTypeFromName__magicsys_55(g, (*n).info, TM__O8rpA4QnF63fyis4dAzZxA_41);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3549(&(*result).typ, T1_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!!((n == 0))) goto LA4_;
(*result).info = (*n).info;
}
LA4_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, mergeTags__sempass50_2580)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom) {
NIM_BOOL oldNimErrFin5_;
NIM_BOOL oldNimErrFin10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
if (!(b == 0)) goto LA3_;
colontmpD_ = NIM_NIL;
colontmpD_ = createTag__sempass50_2515((*a).graph, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
addTag__sempass50_2544(a, colontmpD_, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
{
LA5_:;
}
{
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin5_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA3_: ;
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effect;
effect = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(b);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA13 ;
i = i_2;
eqcopy___ast_3457(&effect, (*b)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
addTag__sempass50_2544(a, effect, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
i_2 += ((NI)1);
} LA13: ;
}
}
{
LA10_:;
}
{
oldNimErrFin10_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&effect);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin10_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
LA1_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, propagateEffects__sempass50_2942)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragma;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* spec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tagSpec;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
pragma = NIM_NIL;
spec = NIM_NIL;
tagSpec = NIM_NIL;
eqcopy___ast_3457(&pragma, (*(*s).ast)._kind_6.sons.p->data[((NI)4)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
spec = effectSpec__trees_291(pragma, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)174));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
mergeRaises__sempass50_2572(tracked, spec, n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
tagSpec = effectSpec__trees_291(pragma, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)179));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
mergeTags__sempass50_2580(tracked, tagSpec, n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T4_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T5_;
T4_ = (NIM_BOOL)0;
T5_ = 0;
T4_ = ((130 & (*(*s).typ).flags) == T5_);
if (!(T4_)) goto LA6_;
T4_ = !((((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)6)))&63U)))!=0));
LA6_: ;
if (!T4_) goto LA7_;
{
NIM_BOOL T11_;
T11_ = (NIM_BOOL)0;
T11_ = hasWarn__options_576((*tracked).config, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)51));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T11_) goto LA12_;
warnAboutGcUnsafe__sempass50_577(n, (*tracked).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA12_: ;
markGcUnsafe__sempass50_580(tracked, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA7_: ;
{
if (!!((((*(*s).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1)))&63U)))!=0))) goto LA16_;
markSideEffect__sempass50_1227(tracked, s, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA16_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&tagSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&spec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&pragma);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, isNoEffectList__sempass50_3087)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL result;
NIM_BOOL T1_;
NI T2_;
NIM_BOOL T4_;
NIM_BOOL T5_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T2_ = (NI)0;
T2_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T1_ = (T2_ == ((NI)0));
if (T1_) goto LA3_;
T4_ = (NIM_BOOL)0;
T5_ = (NIM_BOOL)0;
T5_ = ((*n)._kind_6.sons.p->data[((NI)3)] == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (!(T5_)) goto LA6_;
T5_ = ((*n)._kind_6.sons.p->data[((NI)0)] == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
LA6_: ;
T4_ = T5_;
if (!(T4_)) goto LA7_;
T4_ = ((*n)._kind_6.sons.p->data[((NI)5)] == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
LA7_: ;
T1_ = T4_;
LA3_: ;
result = T1_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isForwardedProc__sempass50_2900)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T1_)) goto LA2_;
T1_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)4)))&63U)))!=0);
LA2_: ;
result = T1_;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isIndirectCall__sempass50_2863)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL result;
result = (NIM_BOOL)0;
{
if (!!(((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)))) goto LA3_;
result = NIM_TRUE;
}
goto LA1_;
LA3_: ;
{
if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3))) goto LA6_;
{
if (!!((((*(*(*(*tracked).c).graph).config).legacyFeatures &((NU8)1<<((NU)((((tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)2)))&7U)))!=0))) goto LA10_;
{
NIM_BOOL T14_;
T14_ = (NIM_BOOL)0;
T14_ = ((*tracked).owner == (*(*n)._kind_4.sym).owner);
if (!(T14_)) goto LA15_;
T14_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)48)))&63U)))!=0);
LA15_: ;
if (!T14_) goto LA16_;
result = NIM_FALSE;
}
goto LA12_;
LA16_: ;
{
result = NIM_TRUE;
}
LA12_: ;
}
goto LA8_;
LA10_: ;
{
NIM_BOOL T20_;
T20_ = (NIM_BOOL)0;
T20_ = !(((*tracked).owner == (*(*n)._kind_4.sym).owner));
if (T20_) goto LA21_;
T20_ = ((*tracked).owner == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL));
LA21_: ;
result = T20_;
}
LA8_: ;
}
goto LA1_;
LA6_: ;
{
if (!!(((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18)))) goto LA23_;
result = NIM_TRUE;
}
goto LA1_;
LA23_: ;
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, assumeTheWorst__sempass50_3059)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* op) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmpD_ = NIM_NIL;
colontmpD__2 = NIM_NIL;
colontmpD_ = createRaise__sempass50_2508((*tracked).graph, n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
addRaiseEffect__sempass50_2522(tracked, colontmpD_, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__2 = createTag__sempass50_2515((*tracked).graph, n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
addTag__sempass50_2544(tracked, colontmpD__2, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, importedFromC__sempass50_2931)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T1_)) goto LA2_;
T1_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)6)))&63U)))!=0);
LA2_: ;
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;
}
static N_INLINE(NIM_BOOL, isTrival__sempass50_3115)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* caller) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = ((*caller).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T1_)) goto LA2_;
T1_ = ((*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)92) || (*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)143) || (*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)149) || (*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)150) || (*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)142));
LA2_: ;
result = T1_;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOwnedProcVar__sempass50_3063)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL result;
NIM_BOOL T1_;
NIM_BOOL T2_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T2_ = (NIM_BOOL)0;
T2_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T2_)) goto LA3_;
T2_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3));
LA3_: ;
T1_ = T2_;
if (!(T1_)) goto LA4_;
T1_ = ((*tracked).owner == (*(*n)._kind_4.sym).owner);
LA4_: ;
result = T1_;
{
NIM_BOOL T9_;
if (!!((((*(*(*(*tracked).c).graph).config).legacyFeatures &((NU8)1<<((NU)((((tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)2)))&7U)))!=0))) goto LA7_;
T9_ = (NIM_BOOL)0;
T9_ = result;
if (!(T9_)) goto LA10_;
T9_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)48)))&63U)))!=0);
LA10_: ;
result = T9_;
}
LA7_: ;
return result;
}
static N_INLINE(void, makeVolatile__sempass50_270)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s) {
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = (((NI)0) < (*a).inTryStmt);
if (!(T3_)) goto LA4_;
T3_ = ((*(*a).config).exc == ((tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ)1));
LA4_: ;
if (!T3_) goto LA5_;
(*s).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)9))) & 63);
}
LA5_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, procVarCheck__sempass50_2971)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NIM_BOOL oldNimErrFin6_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)56) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)57))) goto LA3_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x;
x = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA9 ;
i = i_2;
eqcopy___ast_3457(&x, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
procVarCheck__sempass50_2971(x, conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
i_2 += ((NI)1);
} LA9: ;
}
}
{
LA6_:;
}
{
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&x);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin6_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
goto LA1_;
LA3_: ;
{
NIM_BOOL T13_;
NIM_BOOL T14_;
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
T13_ = (NIM_BOOL)0;
T14_ = (NIM_BOOL)0;
T14_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T14_)) goto LA15_;
T14_ = !(((*(*n)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)0)));
LA15_: ;
T13_ = T14_;
if (!(T13_)) goto LA16_;
T13_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18));
LA16_: ;
if (!T13_) goto LA17_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD_), (*(*(*n)._kind_4.sym).name).s);
colontmpD__2 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_48, colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
liMessage__msgs_1172(conf, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_49), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
{
LA19_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA17_: ;
LA1_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, notNilCheck__sempass50_2991)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* paramType) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n_2;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* paramType_2;
NIM_BOOL oldNimErrFin8_;
NIM_BOOL oldNimErrFin19_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
n_2 = NIM_NIL;
paramType_2 = NIM_NIL;
n_2 = skipConv__types_3839(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T4_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
T4_ = (NIM_BOOL)0;
T4_ = (paramType == 0);
if (T4_) goto LA5_;
T4_ = !(((*paramType).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)8)));
LA5_: ;
if (!T4_) goto LA6_;
colontmpD_ = NIM_NIL;
colontmpD_ = skipConvCastAndClosure__astalgo_115(n_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
procVarCheck__sempass50_2971(colontmpD_, (*tracked).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
{
LA8_:;
}
{
oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin8_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA6_: ;
paramType_2 = skipTypesOrNil__ast_5566(paramType, TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T13_;
NIM_BOOL T14_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* ntyp;
T13_ = (NIM_BOOL)0;
T14_ = (NIM_BOOL)0;
T14_ = !((paramType_2 == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T14_)) goto LA15_;
T14_ = (((*paramType_2).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)17)))&63U)))!=0);
LA15_: ;
T13_ = T14_;
if (!(T13_)) goto LA16_;
T13_ = !(((*n_2).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
LA16_: ;
if (!T13_) goto LA17_;
ntyp = NIM_NIL;
ntyp = skipTypesOrNil__ast_5566((*n_2).typ, TM__O8rpA4QnF63fyis4dAzZxA_50);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
{
NIM_BOOL T22_;
tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A T51_;
T22_ = (NIM_BOOL)0;
T22_ = !((ntyp == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T22_)) goto LA23_;
T22_ = !((((*ntyp).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)17)))&63U)))!=0));
LA23_: ;
if (!T22_) goto LA24_;
{
NIM_BOOL T28_;
T28_ = (NIM_BOOL)0;
T28_ = isAddrNode__astalgo_4601(n_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
if (!T28_) goto LA29_;
{
NIM_BOOL T33_;
T33_ = (NIM_BOOL)0;
T33_ = containsNode__ast_5974(n_2, TM__O8rpA4QnF63fyis4dAzZxA_51);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
if (!!(T33_)) goto LA34_;
eqdestroy___ast_3543(&ntyp);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3543(&paramType_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA34_: ;
}
goto LA26_;
LA29_: ;
{
NIM_BOOL T37_;
NIM_BOOL T38_;
NIM_BOOL T39_;
NIM_BOOL T40_;
NIM_BOOL T44_;
NIM_BOOL T45_;
T37_ = (NIM_BOOL)0;
T38_ = (NIM_BOOL)0;
T39_ = (NIM_BOOL)0;
T40_ = (NIM_BOOL)0;
T40_ = ((*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T40_)) goto LA41_;
T40_ = ((*(*n_2)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*(*n_2)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*(*n_2)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*(*n_2)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*(*n_2)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*(*n_2)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*(*n_2)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18));
LA41_: ;
T39_ = T40_;
if (T39_) goto LA42_;
T39_ = ((*n_2).kind >= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)20) && (*n_2).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)22) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)38) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)41) || (*n_2).kind >= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)51) && (*n_2).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)52) || (*n_2).kind >= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)79) && (*n_2).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)81) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)155) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)159));
LA42_: ;
T38_ = T39_;
if (T38_) goto LA43_;
T44_ = (NIM_BOOL)0;
T45_ = (NIM_BOOL)0;
T45_ = ((*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)31) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)28) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32));
if (!(T45_)) goto LA46_;
T45_ = ((*(*n_2)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
LA46_: ;
T44_ = T45_;
if (!(T44_)) goto LA47_;
T44_ = ((*(*(*n_2)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)144));
LA47_: ;
T38_ = T44_;
LA43_: ;
T37_ = T38_;
if (T37_) goto LA48_;
T37_ = ((*(*n_2).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)8));
LA48_: ;
if (!T37_) goto LA49_;
eqdestroy___ast_3543(&ntyp);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3543(&paramType_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
goto LA26_;
LA49_: ;
LA26_: ;
T51_ = (tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A)0;
T51_ = impliesNotNil__guards_1061((&(*tracked).guards), n_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
switch (T51_) {
case ((tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A)0):
{
NimStringV2 colontmpD__2;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T54_;
NimStringV2 T55_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T54_ = 0;
T55_.len = 0; T55_.p = NIM_NIL;
T55_ = renderTree__renderer_50(n_2, T54_);
if (NIM_UNLIKELY(*nimErr_)) goto LA53_;
colontmpD__2 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_53, T55_);
if (NIM_UNLIKELY(*nimErr_)) goto LA53_;
liMessage__msgs_1172((*tracked).config, (*n_2).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_54), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA53_;
{
LA53_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
}
break;
case ((tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A)1):
{
NimStringV2 colontmpD__3;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T60_;
NimStringV2 T61_;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
T60_ = 0;
T61_.len = 0; T61_.p = NIM_NIL;
T61_ = renderTree__renderer_50(n_2, T60_);
if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
colontmpD__3 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_56, T61_);
if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
liMessage__msgs_1172((*tracked).config, (*n_2).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__3, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_57), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA59_;
{
LA59_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
}
break;
case ((tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A)2):
{
}
break;
}
}
LA24_: ;
{
LA19_:;
}
{
oldNimErrFin19_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&ntyp);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin19_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA17_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&paramType_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, trackOperandForIndirectCall__sempass50_3126)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* formals, NI argIndex, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* caller) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* op;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* param;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* paramType;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* T2_;
NIM_BOOL oldNimErrFin30_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* T100_;
NIM_BOOL oldNimErrFin129_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
a = NIM_NIL;
op = NIM_NIL;
param = NIM_NIL;
colontmpD_ = NIM_NIL;
paramType = NIM_NIL;
a = skipConvCastAndClosure__astalgo_115(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqcopy___ast_3546(&op, (*a).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T2_ = NIM_NIL;
{
NIM_BOOL T5_;
NIM_BOOL T6_;
NI T8_;
T5_ = (NIM_BOOL)0;
T6_ = (NIM_BOOL)0;
T6_ = !((formals == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T6_)) goto LA7_;
T8_ = (NI)0;
T8_ = len__ast_5071(formals);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T6_ = (argIndex < T8_);
LA7_: ;
T5_ = T6_;
if (!(T5_)) goto LA9_;
T5_ = !(((*formals).n == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)));
LA9_: ;
if (!T5_) goto LA10_;
param = (*(*(*formals).n)._kind_6.sons.p->data[argIndex])._kind_4.sym;
}
goto LA3_;
LA10_: ;
{
param = ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL);
}
LA3_: ;
{
NIM_BOOL T15_;
NIM_BOOL T16_;
NIM_BOOL T17_;
NIM_BOOL T18_;
NIM_BOOL T22_;
NIM_BOOL T24_;
NIM_BOOL T25_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effectList;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* s;
T15_ = (NIM_BOOL)0;
T16_ = (NIM_BOOL)0;
T17_ = (NIM_BOOL)0;
T18_ = (NIM_BOOL)0;
T18_ = !((op == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T18_)) goto LA19_;
T18_ = ((*op).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
LA19_: ;
T17_ = T18_;
if (!(T17_)) goto LA20_;
colontmpD_ = skipConv__types_3839(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T17_ = !(((*colontmpD_).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23)));
LA20_: ;
T16_ = T17_;
if (!(T16_)) goto LA21_;
T22_ = (NIM_BOOL)0;
T22_ = isTrival__sempass50_3115(caller);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T16_ = !(T22_);
LA21_: ;
T15_ = T16_;
if (!(T15_)) goto LA23_;
T24_ = (NIM_BOOL)0;
T25_ = (NIM_BOOL)0;
T25_ = !((param == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)));
if (!(T25_)) goto LA26_;
T25_ = (((*param).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)48)))&63U)))!=0);
LA26_: ;
T24_ = T25_;
if (T24_) goto LA27_;
T24_ = (((*(*(*(*tracked).c).graph).config).legacyFeatures &((NU8)1<<((NU)((((tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)2)))&7U)))!=0);
LA27_: ;
T15_ = T24_;
LA23_: ;
if (!T15_) goto LA28_;
effectList = NIM_NIL;
s = NIM_NIL;
{
NimStringV2 argX60gensym223_;
if (!!(((*(*(*op).n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152)))) goto LA33_;
argX60gensym223_.len = 0; argX60gensym223_.p = NIM_NIL;
argX60gensym223_ = toFileLineCol__msgs_666((&TM__O8rpA4QnF63fyis4dAzZxA_42));
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
internalErrorImpl__msgs_1510((*tracked).config, unknownLineInfo__lineinfos_338, argX60gensym223_, (&TM__O8rpA4QnF63fyis4dAzZxA_42));
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
{
LA35_:;
}
{
eqdestroy___stdZassertions_13((&argX60gensym223_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
LA33_: ;
eqcopy___ast_3457(&effectList, (*(*op).n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
s = skipConv__types_3839(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
{
NIM_BOOL T40_;
T40_ = (NIM_BOOL)0;
T40_ = ((*s).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)61));
if (!(T40_)) goto LA41_;
T40_ = ((*(*(*s)._kind_6.sons.p->data[((NI)1)]).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
LA41_: ;
if (!T40_) goto LA42_;
eqcopy___ast_3457(&s, (*s)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
LA42_: ;
{
NIM_BOOL T46_;
NIM_BOOL T47_;
T46_ = (NIM_BOOL)0;
T47_ = (NIM_BOOL)0;
T47_ = ((*s).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T47_)) goto LA48_;
T47_ = ((*(*s)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*(*s)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*(*s)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*(*s)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*(*s)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*(*s)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*(*s)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18));
LA48_: ;
T46_ = T47_;
if (!(T46_)) goto LA49_;
T46_ = isNoEffectList__sempass50_3087(effectList);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
LA49_: ;
if (!T46_) goto LA50_;
propagateEffects__sempass50_2942(tracked, n, (*s)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
goto LA44_;
LA50_: ;
{
NIM_BOOL T53_;
T53_ = (NIM_BOOL)0;
T53_ = isNoEffectList__sempass50_3087(effectList);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
if (!T53_) goto LA54_;
{
NIM_BOOL T58_;
T58_ = (NIM_BOOL)0;
T58_ = isForwardedProc__sempass50_2900(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
if (!T58_) goto LA59_;
propagateEffects__sempass50_2942(tracked, n, (*n)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
goto LA56_;
LA59_: ;
{
NIM_BOOL T62_;
T62_ = (NIM_BOOL)0;
T62_ = isOwnedProcVar__sempass50_3063(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
if (!!(T62_)) goto LA63_;
assumeTheWorst__sempass50_3059(tracked, n, op);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
goto LA56_;
LA63_: ;
LA56_: ;
{
NIM_BOOL T67_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T68_;
NIM_BOOL T70_;
T67_ = (NIM_BOOL)0;
T68_ = 0;
T67_ = ((130 & (*op).flags) == T68_);
if (!(T67_)) goto LA69_;
T70_ = (NIM_BOOL)0;
T70_ = isOwnedProcVar__sempass50_3063(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
T67_ = !(T70_);
LA69_: ;
if (!T67_) goto LA71_;
{
NIM_BOOL T75_;
T75_ = (NIM_BOOL)0;
T75_ = hasWarn__options_576((*tracked).config, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)51));
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
if (!T75_) goto LA76_;
warnAboutGcUnsafe__sempass50_577(n, (*tracked).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
LA76_: ;
markGcUnsafe__sempass50_587(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
goto LA65_;
LA71_: ;
{
NIM_BOOL T79_;
NIM_BOOL T81_;
T79_ = (NIM_BOOL)0;
T79_ = !((((*op).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1)))&63U)))!=0));
if (!(T79_)) goto LA80_;
T81_ = (NIM_BOOL)0;
T81_ = isOwnedProcVar__sempass50_3063(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
T79_ = !(T81_);
LA80_: ;
if (!T79_) goto LA82_;
markSideEffect__sempass50_3213(tracked, a, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
goto LA65_;
LA82_: ;
LA65_: ;
}
goto LA44_;
LA54_: ;
{
mergeRaises__sempass50_2572(tracked, (*effectList)._kind_6.sons.p->data[((NI)0)], n);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
mergeTags__sempass50_2580(tracked, (*effectList)._kind_6.sons.p->data[((NI)3)], n);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
{
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T87_;
T87_ = 0;
if (!((130 & (*op).flags) == T87_)) goto LA88_;
{
NIM_BOOL T92_;
T92_ = (NIM_BOOL)0;
T92_ = hasWarn__options_576((*tracked).config, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)51));
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
if (!T92_) goto LA93_;
warnAboutGcUnsafe__sempass50_577(n, (*tracked).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
LA93_: ;
markGcUnsafe__sempass50_587(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
goto LA85_;
LA88_: ;
{
if (!!((((*op).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1)))&63U)))!=0))) goto LA96_;
markSideEffect__sempass50_3213(tracked, a, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
}
goto LA85_;
LA96_: ;
LA85_: ;
}
LA44_: ;
{
LA30_:;
}
{
oldNimErrFin30_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&effectList);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin30_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA28_: ;
T100_ = NIM_NIL;
{
NIM_BOOL T103_;
NI T105_;
T103_ = (NIM_BOOL)0;
T103_ = !((formals == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T103_)) goto LA104_;
T105_ = (NI)0;
T105_ = len__ast_5071(formals);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T103_ = (argIndex < T105_);
LA104_: ;
if (!T103_) goto LA106_;
eqcopy___ast_3546(&paramType, (*formals).sons.p->data[argIndex]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA101_;
LA106_: ;
{
paramType = ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL);
}
LA101_: ;
{
NIM_BOOL T111_;
T111_ = (NIM_BOOL)0;
T111_ = !((paramType == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T111_)) goto LA112_;
T111_ = ((*paramType).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23));
LA112_: ;
if (!T111_) goto LA113_;
invalidateFacts__guards_769((&(*tracked).guards), n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T117_;
T117_ = (NIM_BOOL)0;
T117_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T117_)) goto LA118_;
T117_ = isLocalSym__sempass50_153(tracked, (*n)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA118_: ;
if (!T117_) goto LA119_;
makeVolatile__sempass50_270(tracked, (*n)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA119_: ;
}
LA113_: ;
{
NIM_BOOL T123_;
NIM_BOOL T124_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* argtype;
T123_ = (NIM_BOOL)0;
T124_ = (NIM_BOOL)0;
T124_ = !((paramType == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T124_)) goto LA125_;
T124_ = ((*paramType).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
LA125_: ;
T123_ = T124_;
if (!(T123_)) goto LA126_;
T123_ = (((*paramType).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)7)))&63U)))!=0);
LA126_: ;
if (!T123_) goto LA127_;
argtype = NIM_NIL;
argtype = skipTypes__ast_4803((*a).typ, TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA129_;
{
NIM_BOOL T132_;
NIM_BOOL T133_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T135_;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 T140_;
T132_ = (NIM_BOOL)0;
T133_ = (NIM_BOOL)0;
T133_ = ((*argtype).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
if (!(T133_)) goto LA134_;
T135_ = 0;
T133_ = ((130 & (*argtype).flags) == T135_);
LA134_: ;
T132_ = T133_;
if (!(T132_)) goto LA136_;
T132_ = !((*tracked).inEnforcedGcSafe);
LA136_: ;
if (!T132_) goto LA137_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
T140_.len = 0; T140_.p = NIM_NIL;
colontmpD__2 = dollar___renderer_2511(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA139_;
T140_ = rawNewString(colontmpD__2.len + 15);
appendString((&T140_), colontmpD__2);
appendString((&T140_), TM__O8rpA4QnF63fyis4dAzZxA_45);
colontmpD__3 = T140_;
liMessage__msgs_1172((*tracked).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__3, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_46), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA139_;
{
LA139_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA129_;
}
LA137_: ;
{
LA129_:;
}
{
oldNimErrFin129_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&argtype);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin129_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA127_: ;
notNilCheck__sempass50_2991(tracked, n, paramType);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&paramType);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&op);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&a);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, skipHiddenDeref__sempass50_345)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
T1_ = NIM_NIL;
{
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65))) goto LA4_;
eqcopy___ast_3457(&result, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA2_;
LA4_: ;
{
eqcopy___ast_3457(&result, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA2_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, initVar__sempass50_353)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, NIM_BOOL volatileCheck) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n_2;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s;
NIM_BOOL oldNimErrFin20_;
NIM_BOOL oldNimErrFin11_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
n_2 = NIM_NIL;
s = NIM_NIL;
n_2 = skipHiddenDeref__sempass50_345(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!(((*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)))) goto LA4_;
eqdestroy___ast_4060(&s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA4_: ;
eqcopy___ast_4063(&s, (*n_2)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T8_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym44_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym45_;
T8_ = (NIM_BOOL)0;
T8_ = isLocalSym__sempass50_153(a, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T8_) goto LA9_;
xX60gensym44_ = NIM_NIL;
xX60gensym45_ = NIM_NIL;
{
if (!volatileCheck) goto LA14_;
makeVolatile__sempass50_270(a, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
}
LA14_: ;
{
NI* x;
NI i;
NI L;
NI T17_;
x = (NI*)0;
i = ((NI)0);
T17_ = (*a).init.len;
L = T17_;
{
while (1) {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym40_;
if (!(i < L)) goto LA19 ;
xX60gensym40_ = NIM_NIL;
x = (&(*a).init.p->data[i]);
{
eqcopy___ast_4063(&xX60gensym40_, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
if (!((*x) == (NI)((NI)((NU64)(((NI) ((*xX60gensym40_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym40_).Sup.itemId.item))))) goto LA23_;
{
NIM_BOOL T27_;
NimStringV2 colontmpD_;
NimStringV2 T32_;
T27_ = (NIM_BOOL)0;
T27_ = (((*(*a).c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)18)))&31U)))!=0);
if (!(T27_)) goto LA28_;
T27_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9));
LA28_: ;
if (!T27_) goto LA29_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
T32_.len = 0; T32_.p = NIM_NIL;
T32_ = renderTree__renderer_50(n_2, 4);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
colontmpD_ = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_59, T32_);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
liMessage__msgs_1172((*a).config, (*n_2).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD_, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_60), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
{
LA31_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
}
LA29_: ;
eqdestroy___ast_4060(&xX60gensym40_);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
eqdestroy___ast_4060(&xX60gensym45_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_4060(&s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA23_: ;
i += ((NI)1);
{
LA20_:;
}
{
oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&xX60gensym40_);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
*nimErr_ = oldNimErrFin20_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
} LA19: ;
}
}
xX60gensym44_ = s;
add__varpartitions_1477((&(*a).init), (NI)((NI)((NU64)(((NI) ((*xX60gensym44_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym44_).Sup.itemId.item))));
{
NI T39_;
xX60gensym45_ = s;
s = 0;
T39_ = (NI)0;
T39_ = getOrDefault__sempass50_486((*a).scopes, (NI)((NI)((NU64)(((NI) ((*xX60gensym45_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym45_).Sup.itemId.item))));
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
if (!(T39_ == (*a).currentBlock)) goto LA40_;
(*n_2).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw)22))) & 31);
}
LA40_: ;
{
LA11_:;
}
{
oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&xX60gensym45_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin11_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA9_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, initVarViaNew__sempass50_559)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n_2;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
n_2 = NIM_NIL;
s = NIM_NIL;
n_2 = skipHiddenDeref__sempass50_345(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!(((*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)))) goto LA4_;
eqdestroy___ast_4060(&s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA4_: ;
eqcopy___ast_4063(&s, (*n_2)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!(((393216 & (*(*s).typ).flags) & ~ 131072)==0)) goto LA8_;
initVar__sempass50_353(a, n_2, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA6_;
LA8_: ;
{
NIM_BOOL T11_;
T11_ = (NIM_BOOL)0;
T11_ = isLocalSym__sempass50_153(a, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T11_) goto LA12_;
makeVolatile__sempass50_270(a, s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA6_;
LA12_: ;
LA6_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkLe__sempass50_3713)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b) {
tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
T1_ = (tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A)0;
T1_ = proveLe__guards_1827((&(*c).guards), a, b);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
switch (T1_) {
case ((tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A)0):
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 T4_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
T4_.len = 0; T4_.p = NIM_NIL;
colontmpD_ = dollar___renderer_2511(a);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
colontmpD__2 = dollar___renderer_2511(b);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
T4_ = rawNewString(colontmpD_.len + colontmpD__2.len + 18);
appendString((&T4_), TM__O8rpA4QnF63fyis4dAzZxA_63);
appendString((&T4_), colontmpD_);
appendString((&T4_), TM__O8rpA4QnF63fyis4dAzZxA_65);
appendString((&T4_), colontmpD__2);
colontmpD__3 = T4_;
liMessage__msgs_1172((*c).config, (*a).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)50), colontmpD__3, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_66), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
{
LA3_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A)2):
{
}
break;
case ((tyEnum_TImplication__laI8nMOYTJ5GihJVMgj11A)1):
{
NimStringV2 colontmpD__4;
NimStringV2 colontmpD__5;
NimStringV2 colontmpD__6;
NimStringV2 T10_;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
T10_.len = 0; T10_.p = NIM_NIL;
colontmpD__4 = dollar___renderer_2511(a);
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
colontmpD__5 = dollar___renderer_2511(b);
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
T10_ = rawNewString(colontmpD__4.len + colontmpD__5.len + 14);
appendString((&T10_), TM__O8rpA4QnF63fyis4dAzZxA_68);
appendString((&T10_), colontmpD__4);
appendString((&T10_), TM__O8rpA4QnF63fyis4dAzZxA_70);
appendString((&T10_), colontmpD__5);
colontmpD__6 = T10_;
liMessage__msgs_1172((*c).config, (*a).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)50), colontmpD__6, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_71), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
{
LA9_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkBounds__sempass50_3717)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arr, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* idx) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmpD_ = NIM_NIL;
colontmpD__2 = NIM_NIL;
colontmpD_ = lowBound__guards_269((*c).config, arr);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
checkLe__sempass50_3713(c, colontmpD_, idx);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__2 = highBound__guards_273((*c).config, arr, (&(*(*c).guards.g).operators));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
checkLe__sempass50_3713(c, idx, colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
int result;
result = (int)0;
result = memcmp(a, b, ((size_t) (size)));
return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size) {
NIM_BOOL result;
int T1_;
result = (NIM_BOOL)0;
T1_ = (int)0;
T1_ = nimCmpMem(a, b, size);
result = (T1_ == ((NI32)0));
return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b) {
NIM_BOOL result;
NI alen;
NI blen;
{ result = (NIM_BOOL)0;
alen = a.len;
blen = b.len;
{
if (!(alen == blen)) goto LA3_;
{
if (!(alen == ((NI)0))) goto LA7_;
result = NIM_TRUE;
goto BeforeRet_;
}
LA7_: ;
result = equalMem__system_1727(((void*) ((&a.p->data[((NI)0)]))), ((void*) ((&b.p->data[((NI)0)]))), ((NI) (alen)));
goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
return result;
}
static N_INLINE(NI, find__sempass50_4016)(tyArray__7Z9ajkJtFFtfJY8l7DfqyrA a, NimStringV2 item) {
NI result;
{ result = (NI)0;
result = ((NI)0);
{
NimStringV2 i;
tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA i_2;
i.len = 0; i.p = NIM_NIL;
i_2 = ((tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA)0);
{
while (1) {
i = a[(i_2)- 0];
{
if (!eqStrings(i, item)) goto LA6_;
goto BeforeRet_;
}
LA6_: ;
result += ((NI)1);
{
if (!(((tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA)4) <= i_2)) goto LA10_;
goto LA2;
}
LA10_: ;
i_2 += ((NI)1);
}
} LA2: ;
}
result = ((NI)-1);
}BeforeRet_: ;
return result;
}
static N_INLINE(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw, nextTypeId__ast_3291)(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).typeId_0 += ((NI)1);
nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw));
colontmpD_ = (*x).module;
result.module = colontmpD_;
colontmpD__2 = (*x).typeId_0;
result.item = colontmpD__2;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, checkForSink__sempass50_26)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, tyObject_IdGeneratorcolonObjectType___C1k2TcDRT9cU4DEatQIT09ag* idgen, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arg) {
NIM_BOOL oldNimErrFin35_;
NIM_BOOL oldNimErrFin44_;
NIM_BOOL oldNimErrFin40_;
NIM_BOOL oldNimErrFin58_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
switch ((*arg).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3):
{
{
NIM_BOOL T4_;
NIM_BOOL T5_;
NIM_BOOL T6_;
NIM_BOOL T7_;
NIM_BOOL T8_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T13_;
T4_ = (NIM_BOOL)0;
T5_ = (NIM_BOOL)0;
T6_ = (NIM_BOOL)0;
T7_ = (NIM_BOOL)0;
T8_ = (NIM_BOOL)0;
T8_ = ((*(*arg)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3));
if (!(T8_)) goto LA9_;
T8_ = ((*(*arg)._kind_4.sym).owner == owner);
LA9_: ;
T7_ = T8_;
if (!(T7_)) goto LA10_;
T7_ = !(((*owner).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
LA10_: ;
T6_ = T7_;
if (!(T6_)) goto LA11_;
T6_ = ((*(*owner).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
LA11_: ;
T5_ = T6_;
if (!(T5_)) goto LA12_;
T13_ = 0;
T5_ = !(((IL64(2147483664) & (*(*(*arg)._kind_4.sym).typ).flags) == T13_));
LA12_: ;
T4_ = T5_;
if (!(T4_)) goto LA14_;
T4_ = !(((*(*(*arg)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23) || (*(*(*arg)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)46) || (*(*(*arg)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)45)));
LA14_: ;
if (!T4_) goto LA15_;
{
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* argType;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* sinkType;
tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw T21_;
if (!!((((*owner).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)5)))&63U)))!=0))) goto LA19_;
argType = NIM_NIL;
sinkType = NIM_NIL;
eqcopy___ast_3546(&argType, (*(*arg)._kind_4.sym).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T21_ = nextTypeId__ast_3291(idgen);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
sinkType = newType__ast_4969(((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)46), T21_, owner);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*sinkType).size = (*argType).size;
(*sinkType).align = (*argType).align;
(*sinkType).paddingAtEnd = (*argType).paddingAtEnd;
add__concepts_24(sinkType, argType);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_3546(&(*(*arg)._kind_4.sym).typ, sinkType);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3549(&(*(*owner).typ).sons.p->data[(NI)((*(*arg)._kind_4.sym).position + ((NI)1))], sinkType);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&argType);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA17_;
LA19_: ;
{
NimStringV2 colontmpD_;
tyArray__nHXaesL0DJZHyVS07ARPRA T26_;
if (!!((((*(*arg)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)5)))&63U)))!=0))) goto LA23_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
(*(*arg)._kind_4.sym).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)5))) & 63);
T26_[0] = (*(*(*arg)._kind_4.sym).name).s;
colontmpD_ = nsuFormatOpenArray(TM__O8rpA4QnF63fyis4dAzZxA_76, T26_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
liMessage__msgs_1172(config, (*arg).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)103), colontmpD_, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_77), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
{
LA25_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA17_;
LA23_: ;
LA17_: ;
}
LA15_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)126):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)112):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)127):
{
{
NIM_BOOL T32_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
T32_ = (NIM_BOOL)0;
T32_ = isEmptyType__ast_6215((*arg).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!!(T32_)) goto LA33_;
colontmpD__2 = NIM_NIL;
colontmpD__2 = lastSon__ast_6268(arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
checkForSink__sempass50_26(config, idgen, owner, colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
{
LA35_:;
}
{
oldNimErrFin35_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin35_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA33_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)92):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)48):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)93):
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch;
branch = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
i_2 = ((NI)0);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value;
if (!(i_2 < colontmp_)) goto LA43 ;
value = NIM_NIL;
i = i_2;
eqcopy___ast_3457(&branch, (*arg)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
value = lastSon__ast_6268(branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
{
NIM_BOOL T47_;
T47_ = (NIM_BOOL)0;
T47_ = isEmptyType__ast_6215((*value).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
if (!!(T47_)) goto LA48_;
checkForSink__sempass50_26(config, idgen, owner, value);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
}
LA48_: ;
i_2 += ((NI)1);
{
LA44_:;
}
{
oldNimErrFin44_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&value);
if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
*nimErr_ = oldNimErrFin44_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
} LA43: ;
}
}
{
LA40_:;
}
{
oldNimErrFin40_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&branch);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin40_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)97):
{
{
NI i_3;
NI colontmp__2;
NI i_4;
i_3 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = len__ast_3325(arg);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_4 = ((NI)1);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value_2;
if (!(i_4 < colontmp__2)) goto LA57 ;
value_2 = NIM_NIL;
i_3 = i_4;
value_2 = lastSon__ast_6268((*arg)._kind_6.sons.p->data[i_3]);
if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
{
NIM_BOOL T61_;
T61_ = (NIM_BOOL)0;
T61_ = isEmptyType__ast_6215((*value_2).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
if (!!(T61_)) goto LA62_;
checkForSink__sempass50_26(config, idgen, owner, value_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
}
LA62_: ;
i_4 += ((NI)1);
{
LA58_:;
}
{
oldNimErrFin58_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&value_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin58_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA57: ;
}
}
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)106):
{
checkForSink__sempass50_26(config, idgen, owner, (*arg)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
default:
{
}
break;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkForSink__sempass50_3738)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = ((*tracked).inIfStmt == ((NI)0));
if (!(T3_)) goto LA4_;
T3_ = (((*(*tracked).config).options &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)25)))&31U)))!=0);
LA4_: ;
if (!T3_) goto LA5_;
checkForSink__sempass50_26((*tracked).config, (*(*tracked).c).Sup.idgen, (*tracked).owner, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA5_: ;
}BeforeRet_: ;
}
static N_INLINE(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, skipAddr__ast_6671)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
T1_ = NIM_NIL;
{
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)64))) goto LA4_;
eqcopy___ast_3457(&result, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA2_;
LA4_: ;
{
eqcopy___ast_3457(&result, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA2_: ;
}BeforeRet_: ;
return result;
}
static N_INLINE(NIM_BOOL, strictFuncsActive__sempass50_3745)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked) {
NIM_BOOL result;
NIM_BOOL T1_;
NIM_BOOL T2_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T2_ = (NIM_BOOL)0;
T2_ = (((*(*tracked).owner).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)12)))&63U)))!=0);
if (!(T2_)) goto LA3_;
T2_ = (((*(*tracked).c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)11)))&31U)))!=0);
LA3_: ;
T1_ = T2_;
if (!(T1_)) goto LA4_;
T1_ = !((*tracked).inEnforcedNoSideEffects);
LA4_: ;
result = T1_;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, trackCall__sempass50_3756)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* op;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin33_;
NIM_BOOL oldNimErrFin192_;
NIM_BOOL oldNimErrFin166_;
NIM_BOOL oldNimErrFin237_;
NIM_BOOL oldNimErrFin232_;
NIM_BOOL oldNimErrFin268_;
NIM_BOOL oldNimErrFin262_;
NIM_BOOL oldNimErrFin259_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
a = NIM_NIL;
op = NIM_NIL;
colontmpD_ = NIM_NIL;
eqcopy___ast_3457(&a, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqcopy___ast_3546(&op, (*a).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__2;
if (!!(((*n).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)))) goto LA4_;
colontmpD__2 = NIM_NIL;
{
NIM_BOOL T9_;
T9_ = (NIM_BOOL)0;
T9_ = !(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)));
if (!(T9_)) goto LA10_;
colontmpD__2 = skipTypes__ast_4803((*n).typ, TM__O8rpA4QnF63fyis4dAzZxA_38);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
T9_ = !(((*colontmpD__2).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)27)));
LA10_: ;
if (!T9_) goto LA11_;
createTypeBoundOps__sempass50_133(tracked, (*n).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
}
LA11_: ;
{
LA6_:;
}
{
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin6_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA4_: ;
{
colontmpD_ = getConstExpr__semfold_90((*tracked).ownerModule, n, (*(*tracked).c).Sup.idgen, (*tracked).graph);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(colontmpD_ == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL))) goto LA17_;
{
NIM_BOOL T21_;
T21_ = (NIM_BOOL)0;
T21_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)61));
if (!(T21_)) goto LA22_;
T21_ = ((*(*(*a)._kind_6.sons.p->data[((NI)1)]).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
LA22_: ;
if (!T21_) goto LA23_;
eqcopy___ast_3457(&a, (*a)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA23_: ;
{
NIM_BOOL T27_;
NIM_BOOL T28_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effectList;
T27_ = (NIM_BOOL)0;
T28_ = (NIM_BOOL)0;
T28_ = !((op == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T28_)) goto LA29_;
T28_ = ((*op).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
LA29_: ;
T27_ = T28_;
if (!(T27_)) goto LA30_;
T27_ = ((*(*(*op).n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152));
LA30_: ;
if (!T27_) goto LA31_;
effectList = NIM_NIL;
{
if (!((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA36_;
{
if (!((*a)._kind_4.sym == (*tracked).owner)) goto LA40_;
(*tracked).isRecursive = NIM_TRUE;
}
LA40_: ;
{
if (!(((*(*a)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)13)))&63U)))!=0)) goto LA44_;
markSideEffect__sempass50_3213(tracked, a, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA44_: ;
}
goto LA34_;
LA36_: ;
{
}
LA34_: ;
eqcopy___ast_3457(&effectList, (*(*op).n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
NIM_BOOL T49_;
T49_ = (NIM_BOOL)0;
T49_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T49_)) goto LA50_;
T49_ = ((*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14));
LA50_: ;
if (!T49_) goto LA51_;
{
if (!((68157440 & (*(*a)._kind_4.sym).flags) == 1048576)) goto LA55_;
{
NIM_BOOL T59_;
T59_ = (NIM_BOOL)0;
T59_ = hasWarn__options_576((*tracked).config, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)51));
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (!T59_) goto LA60_;
warnAboutGcUnsafe__sempass50_577(n, (*tracked).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA60_: ;
markGcUnsafe__sempass50_587(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA55_: ;
propagateEffects__sempass50_2942(tracked, n, (*a)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
goto LA47_;
LA51_: ;
{
NIM_BOOL T63_;
T63_ = (NIM_BOOL)0;
T63_ = isNoEffectList__sempass50_3087(effectList);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (!T63_) goto LA64_;
{
NIM_BOOL T68_;
T68_ = (NIM_BOOL)0;
T68_ = isForwardedProc__sempass50_2900(a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (!T68_) goto LA69_;
propagateEffects__sempass50_2942(tracked, n, (*a)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
goto LA66_;
LA69_: ;
{
NIM_BOOL T72_;
T72_ = (NIM_BOOL)0;
T72_ = isIndirectCall__sempass50_2863(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (!T72_) goto LA73_;
assumeTheWorst__sempass50_3059(tracked, n, op);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
NIM_BOOL T77_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T78_;
NIM_BOOL T80_;
T77_ = (NIM_BOOL)0;
T78_ = 0;
T77_ = ((130 & (*op).flags) == T78_);
if (!(T77_)) goto LA79_;
T80_ = (NIM_BOOL)0;
T80_ = importedFromC__sempass50_2931(a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T77_ = !(T80_);
LA79_: ;
if (!T77_) goto LA81_;
{
NIM_BOOL T85_;
T85_ = (NIM_BOOL)0;
T85_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T85_)) goto LA86_;
T85_ = ((*a)._kind_4.sym == (*tracked).owner);
LA86_: ;
if (!!(T85_)) goto LA87_;
{
NIM_BOOL T91_;
T91_ = (NIM_BOOL)0;
T91_ = hasWarn__options_576((*tracked).config, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)51));
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (!T91_) goto LA92_;
warnAboutGcUnsafe__sempass50_577(n, (*tracked).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA92_: ;
markGcUnsafe__sempass50_587(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA87_: ;
}
LA81_: ;
{
NIM_BOOL T96_;
NIM_BOOL T98_;
T96_ = (NIM_BOOL)0;
T96_ = !((((*op).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1)))&63U)))!=0));
if (!(T96_)) goto LA97_;
T98_ = (NIM_BOOL)0;
T98_ = importedFromC__sempass50_2931(a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T96_ = !(T98_);
LA97_: ;
if (!T96_) goto LA99_;
{
NIM_BOOL T103_;
T103_ = (NIM_BOOL)0;
T103_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T103_)) goto LA104_;
T103_ = ((*a)._kind_4.sym == (*tracked).owner);
LA104_: ;
if (!!(T103_)) goto LA105_;
markSideEffect__sempass50_3213(tracked, a, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA105_: ;
}
LA99_: ;
}
goto LA66_;
LA73_: ;
{
{
NIM_BOOL T110_;
NIM_BOOL T111_;
T110_ = (NIM_BOOL)0;
T111_ = (NIM_BOOL)0;
T111_ = !((((*(*(*(*tracked).c).graph).config).legacyFeatures &((NU8)1<<((NU)((((tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)2)))&7U)))!=0));
if (!(T111_)) goto LA112_;
T111_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
LA112_: ;
T110_ = T111_;
if (!(T110_)) goto LA113_;
T110_ = ((*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18));
LA113_: ;
if (!T110_) goto LA114_;
propagateEffects__sempass50_2942(tracked, n, (*a)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA114_: ;
}
LA66_: ;
}
goto LA47_;
LA64_: ;
{
mergeRaises__sempass50_2572(tracked, (*effectList)._kind_6.sons.p->data[((NI)0)], n);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
mergeTags__sempass50_2580(tracked, (*effectList)._kind_6.sons.p->data[((NI)3)], n);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
NIM_BOOL T119_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T120_;
NIM_BOOL T122_;
T119_ = (NIM_BOOL)0;
T120_ = 0;
T119_ = ((130 & (*op).flags) == T120_);
if (!(T119_)) goto LA121_;
T122_ = (NIM_BOOL)0;
T122_ = importedFromC__sempass50_2931(a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T119_ = !(T122_);
LA121_: ;
if (!T119_) goto LA123_;
{
NIM_BOOL T127_;
T127_ = (NIM_BOOL)0;
T127_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T127_)) goto LA128_;
T127_ = ((*a)._kind_4.sym == (*tracked).owner);
LA128_: ;
if (!!(T127_)) goto LA129_;
{
NIM_BOOL T133_;
T133_ = (NIM_BOOL)0;
T133_ = hasWarn__options_576((*tracked).config, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)51));
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (!T133_) goto LA134_;
warnAboutGcUnsafe__sempass50_577(n, (*tracked).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA134_: ;
markGcUnsafe__sempass50_587(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA129_: ;
}
LA123_: ;
{
NIM_BOOL T138_;
NIM_BOOL T140_;
T138_ = (NIM_BOOL)0;
T138_ = !((((*op).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1)))&63U)))!=0));
if (!(T138_)) goto LA139_;
T140_ = (NIM_BOOL)0;
T140_ = importedFromC__sempass50_2931(a);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T138_ = !(T140_);
LA139_: ;
if (!T138_) goto LA141_;
{
NIM_BOOL T145_;
T145_ = (NIM_BOOL)0;
T145_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T145_)) goto LA146_;
T145_ = ((*a)._kind_4.sym == (*tracked).owner);
LA146_: ;
if (!!(T145_)) goto LA147_;
markSideEffect__sempass50_3213(tracked, a, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA147_: ;
}
LA141_: ;
}
LA47_: ;
{
LA33_:;
}
{
oldNimErrFin33_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&effectList);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin33_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA31_: ;
{
NIM_BOOL T153_;
T153_ = (NIM_BOOL)0;
T153_ = !(((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)));
if (T153_) goto LA154_;
T153_ = !(((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)251) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)155) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)27) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)28)));
LA154_: ;
if (!T153_) goto LA155_;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 = ((NI)1);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA159 ;
i = i_2;
trackOperandForIndirectCall__sempass50_3126(tracked, (*n)._kind_6.sons.p->data[i], op, i, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 += ((NI)1);
} LA159: ;
}
}
}
LA155_: ;
{
NIM_BOOL T162_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* arg;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__3;
T162_ = (NIM_BOOL)0;
T162_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T162_)) goto LA163_;
T162_ = ((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)32) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)33) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)34));
LA163_: ;
if (!T162_) goto LA164_;
arg = NIM_NIL;
colontmpD__3 = NIM_NIL;
eqcopy___ast_3457(&arg, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA166_;
initVarViaNew__sempass50_559(tracked, arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA166_;
{
NIM_BOOL T169_;
NI T170_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T172_;
T169_ = (NIM_BOOL)0;
T170_ = (NI)0;
T170_ = len__ast_5071((*arg).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA166_;
T169_ = !((T170_ == ((NI)0)));
if (!(T169_)) goto LA171_;
colontmpD__3 = lastSon__ast_4811((*arg).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA166_;
T172_ = 0;
T169_ = !(((262144 & (*colontmpD__3).flags) == T172_));
LA171_: ;
if (!T169_) goto LA173_;
{
NIM_BOOL T177_;
NIM_BOOL T178_;
T177_ = (NIM_BOOL)0;
T178_ = (NIM_BOOL)0;
T178_ = ((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)34));
if (!(T178_)) goto LA179_;
T178_ = ((*(*n)._kind_6.sons.p->data[((NI)2)]).kind >= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)5) && (*(*n)._kind_6.sons.p->data[((NI)2)]).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)15));
LA179_: ;
T177_ = T178_;
if (!(T177_)) goto LA180_;
T177_ = ((*(*n)._kind_6.sons.p->data[((NI)2)])._kind_1.intVal == IL64(0));
LA180_: ;
if (!T177_) goto LA181_;
}
goto LA175_;
LA181_: ;
{
NimStringV2 colontmpD__4;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__4 = dollar___renderer_2511(arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA184_;
liMessage__msgs_1172((*tracked).config, (*arg).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)45), colontmpD__4, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_61), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA184_;
{
LA184_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__4));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA166_;
}
LA175_: ;
}
LA173_: ;
{
NI T189_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__5;
T189_ = (NI)0;
T189_ = len__ast_5071((*(*n)._kind_6.sons.p->data[((NI)1)]).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA166_;
if (!(((NI)0) < T189_)) goto LA190_;
colontmpD__5 = NIM_NIL;
colontmpD__5 = lastSon__ast_4811((*(*n)._kind_6.sons.p->data[((NI)1)]).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA192_;
createTypeBoundOps__sempass50_133(tracked, colontmpD__5, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA192_;
createTypeBoundOps__sempass50_133(tracked, (*(*n)._kind_6.sons.p->data[((NI)1)]).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA192_;
{
LA192_:;
}
{
oldNimErrFin192_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__5);
if (NIM_UNLIKELY(*nimErr_)) goto LA166_;
*nimErr_ = oldNimErrFin192_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA166_;
}
LA190_: ;
{
LA166_:;
}
{
oldNimErrFin166_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&arg);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin166_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA160_;
LA164_: ;
{
NIM_BOOL T198_;
NIM_BOOL T199_;
T198_ = (NIM_BOOL)0;
T199_ = (NIM_BOOL)0;
T199_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T199_)) goto LA200_;
T199_ = ((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)5) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)6));
LA200_: ;
T198_ = T199_;
if (!(T198_)) goto LA201_;
T198_ = (((*tracked).currOptions &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)9)))&31U)))!=0);
LA201_: ;
if (!T198_) goto LA202_;
checkBounds__sempass50_3717(tracked, (*n)._kind_6.sons.p->data[((NI)1)], (*n)._kind_6.sons.p->data[((NI)2)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA160_;
LA202_: ;
LA160_: ;
{
NIM_BOOL T206_;
T206_ = (NIM_BOOL)0;
T206_ = !(((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)));
if (T206_) goto LA207_;
T206_ = !(((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)269) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)251) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)27) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)28)));
LA207_: ;
if (!T206_) goto LA208_;
{
NI i_3;
NI colontmp__2;
NI i_4;
i_3 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_4 = ((NI)0);
{
while (1) {
if (!(i_4 < colontmp__2)) goto LA212 ;
i_3 = i_4;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[i_3]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_4 += ((NI)1);
} LA212: ;
}
}
}
LA208_: ;
}
LA17_: ;
{
NIM_BOOL T215_;
NIM_BOOL T216_;
NIM_BOOL T217_;
NimStringV2 colontmpD__6;
NI opKind;
T215_ = (NIM_BOOL)0;
T216_ = (NIM_BOOL)0;
T217_ = (NIM_BOOL)0;
T217_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T217_)) goto LA218_;
T217_ = (((NI)0) < (*(*(*a)._kind_4.sym).name).s.len);
LA218_: ;
T216_ = T217_;
if (!(T216_)) goto LA219_;
T216_ = ((NU8)((*(*(*a)._kind_4.sym).name).s.p->data[((NI)0)]) == (NU8)(61));
LA219_: ;
T215_ = T216_;
if (!(T215_)) goto LA220_;
T215_ = !(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)));
LA220_: ;
if (!T215_) goto LA221_;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__6 = nsuNormalize((*(*(*a)._kind_4.sym).name).s);
if (NIM_UNLIKELY(*nimErr_)) goto LA223_;
opKind = find__sempass50_4016(AttachedOpToStr__ast_4931, colontmpD__6);
{
if (!eqStrings((*(*(*a)._kind_4.sym).name).s, TM__O8rpA4QnF63fyis4dAzZxA_73)) goto LA226_;
opKind = ((NI)1);
}
LA226_: ;
{
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* colontmpD__7;
if (!!((opKind == ((NI)-1)))) goto LA230_;
t = NIM_NIL;
colontmpD__7 = NIM_NIL;
t = skipTypes__ast_4803((*(*n)._kind_6.sons.p->data[((NI)1)]).typ, TM__O8rpA4QnF63fyis4dAzZxA_74);
if (NIM_UNLIKELY(*nimErr_)) goto LA232_;
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* op_2;
colontmpD__7 = getAttachedOp__modulegraphs_4580((*tracked).graph, t, ((tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA) (opKind)));
if (NIM_UNLIKELY(*nimErr_)) goto LA232_;
if (!!(((*a)._kind_4.sym == colontmpD__7))) goto LA235_;
op_2 = NIM_NIL;
createTypeBoundOps__sempass50_133(tracked, t, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA237_;
op_2 = getAttachedOp__modulegraphs_4580((*tracked).graph, t, ((tyEnum_TTypeAttachedOp__ljjE0gT86OWTlfE9cOGtFgA) (opKind)));
if (NIM_UNLIKELY(*nimErr_)) goto LA237_;
{
if (!!((op_2 == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)))) goto LA240_;
eqsink___ast_4066(&(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym, op_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA237_;
op_2 = 0;
}
LA240_: ;
{
LA237_:;
}
{
oldNimErrFin237_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&op_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA232_;
*nimErr_ = oldNimErrFin237_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA232_;
}
LA235_: ;
{
LA232_:;
}
{
oldNimErrFin232_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&colontmpD__7);
if (NIM_UNLIKELY(*nimErr_)) goto LA223_;
eqdestroy___ast_3543(&t);
if (NIM_UNLIKELY(*nimErr_)) goto LA223_;
*nimErr_ = oldNimErrFin232_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA223_;
}
LA230_: ;
{
LA223_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__6));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA221_: ;
{
NIM_BOOL T250_;
T250_ = (NIM_BOOL)0;
T250_ = !((op == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T250_)) goto LA251_;
T250_ = ((*op).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
LA251_: ;
if (!T250_) goto LA252_;
{
NI i_5;
NI colontmp__3;
NI T255_;
NI T256_;
NI i_6;
i_5 = (NI)0;
colontmp__3 = (NI)0;
T255_ = (NI)0;
T255_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T256_ = (NI)0;
T256_ = len__ast_5071(op);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmp__3 = ((T255_ <= T256_) ? T255_ : T256_);
i_6 = ((NI)1);
{
while (1) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* paramType;
if (!(i_6 < colontmp__3)) goto LA258 ;
paramType = NIM_NIL;
i_5 = i_6;
eqcopy___ast_3546(&paramType, (*op).sons.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA259_;
switch ((*paramType).kind) {
case ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)46):
{
createTypeBoundOps__sempass50_133(tracked, (*paramType).sons.p->data[((NI)0)], (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA259_;
checkForSink__sempass50_3738(tracked, (*n)._kind_6.sons.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA259_;
}
break;
case ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23):
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__8;
colontmpD__8 = NIM_NIL;
{
NIM_BOOL T265_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__9;
T265_ = (NIM_BOOL)0;
T265_ = isOutParam__ast_6694(paramType);
if (NIM_UNLIKELY(*nimErr_)) goto LA262_;
if (!T265_) goto LA266_;
colontmpD__9 = NIM_NIL;
colontmpD__9 = skipAddr__ast_6671((*n)._kind_6.sons.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA268_;
initVar__sempass50_353(tracked, colontmpD__9, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA268_;
{
LA268_:;
}
{
oldNimErrFin268_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__9);
if (NIM_UNLIKELY(*nimErr_)) goto LA262_;
*nimErr_ = oldNimErrFin268_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA262_;
}
LA266_: ;
{
NIM_BOOL T273_;
NimStringV2 colontmpD__10;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T278_;
NimStringV2 T279_;
T273_ = (NIM_BOOL)0;
T273_ = strictFuncsActive__sempass50_3745(tracked);
if (NIM_UNLIKELY(*nimErr_)) goto LA262_;
if (!(T273_)) goto LA274_;
colontmpD__8 = skipAddr__ast_6671((*n)._kind_6.sons.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA262_;
T273_ = isDangerousLocation__semstrictfuncs_6(colontmpD__8, (*tracked).owner);
if (NIM_UNLIKELY(*nimErr_)) goto LA262_;
LA274_: ;
if (!T273_) goto LA275_;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
T278_ = 0;
T279_.len = 0; T279_.p = NIM_NIL;
T279_ = renderTree__renderer_50((*n)._kind_6.sons.p->data[i_5], T278_);
if (NIM_UNLIKELY(*nimErr_)) goto LA277_;
colontmpD__10 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_80, T279_);
if (NIM_UNLIKELY(*nimErr_)) goto LA277_;
liMessage__msgs_1172((*tracked).config, (*(*n)._kind_6.sons.p->data[i_5]).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__10, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_81), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA277_;
(*tracked).hasSideEffect = NIM_TRUE;
{
LA277_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__10));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA262_;
}
LA275_: ;
{
LA262_:;
}
{
oldNimErrFin262_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__8);
if (NIM_UNLIKELY(*nimErr_)) goto LA259_;
*nimErr_ = oldNimErrFin262_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA259_;
}
break;
default:
{
}
break;
}
i_6 += ((NI)1);
{
LA259_:;
}
{
oldNimErrFin259_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&paramType);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin259_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA258: ;
}
}
}
LA252_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&op);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&a);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, guardDotAccess__sempass50_206)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* ri;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* g;
NIM_BOOL oldNimErrFin18_;
NIM_BOOL oldNimErrFin55_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
ri = NIM_NIL;
g = NIM_NIL;
ri = (*n)._kind_6.sons.p->data[((NI)1)];
{
NIM_BOOL T4_;
T4_ = (NIM_BOOL)0;
T4_ = !(((*ri).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)));
if (T4_) goto LA5_;
T4_ = !(((*(*ri)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)19)));
LA5_: ;
if (!T4_) goto LA6_;
eqdestroy___ast_4060(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA6_: ;
eqcopy___ast_4063(&g, (*(*ri)._kind_4.sym)._kind_2.guard);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T10_;
T10_ = (NIM_BOOL)0;
T10_ = (g == 0);
if (T10_) goto LA11_;
T10_ = (*a).isTopLevel;
LA11_: ;
if (!T10_) goto LA12_;
eqdestroy___ast_4060(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA12_: ;
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* field;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* ty;
if (!((*g).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)0))) goto LA16_;
field = NIM_NIL;
ty = NIM_NIL;
field = ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL);
ty = skipTypes__ast_4803((*(*n)._kind_6.sons.p->data[((NI)0)]).typ, TM__O8rpA4QnF63fyis4dAzZxA_82);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
{
NIM_BOOL T21_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* T25_;
T21_ = (NIM_BOOL)0;
T21_ = ((*ty).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)18));
if (!(T21_)) goto LA22_;
T21_ = !(((*ty).n == 0));
LA22_: ;
if (!T21_) goto LA23_;
T25_ = NIM_NIL;
T25_ = lookupInRecord__astalgo_85((*ty).n, (*g).name);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
eqsink___ast_4066(&field, T25_);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
}
goto LA19_;
LA23_: ;
{
{
while (1) {
NIM_BOOL T29_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* T31_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* T40_;
T29_ = (NIM_BOOL)0;
T29_ = !((ty == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T29_)) goto LA30_;
T29_ = ((*ty).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)17));
LA30_: ;
if (!T29_) goto LA28 ;
T31_ = NIM_NIL;
T31_ = lookupInRecord__astalgo_85((*ty).n, (*g).name);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
eqsink___ast_4066(&field, T31_);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
{
if (!!((field == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)))) goto LA34_;
goto LA27;
}
LA34_: ;
eqcopy___ast_3546(&ty, (*ty).sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
{
if (!(ty == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL))) goto LA38_;
goto LA27;
}
LA38_: ;
T40_ = NIM_NIL;
T40_ = skipTypes__ast_4803(ty, TM__O8rpA4QnF63fyis4dAzZxA_15);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
eqsink___ast_3549(&ty, T40_);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
} LA28: ;
} LA27: ;
}
LA19_: ;
{
NimStringV2 colontmpD_;
NimStringV2 T46_;
if (!(field == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL))) goto LA43_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
T46_.len = 0; T46_.p = NIM_NIL;
T46_ = rawNewString((*(*g).name).s.len + 21);
appendString((&T46_), TM__O8rpA4QnF63fyis4dAzZxA_84);
appendString((&T46_), (*(*g).name).s);
colontmpD_ = T46_;
liMessage__msgs_1172((*a).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD_, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_85), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___ast_3543(&ty);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_4060(&field);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_4060(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
{
LA45_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
}
LA43_: ;
eqsink___ast_4066(&g, field);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
field = 0;
{
LA18_:;
}
{
oldNimErrFin18_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&ty);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_4060(&field);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin18_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA16_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* dot;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T56_;
NimStringV2 T66_;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T67_;
if (!((*g).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)19))) goto LA53_;
dot = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
dot = newNodeI__ast_3953(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45), (*n).info, ((NI)2));
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
eqcopy___ast_3457(&(*dot)._kind_6.sons.p->data[((NI)0)], (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
T56_ = NIM_NIL;
T56_ = newSymNode__ast_4784(g);
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
eqsink___ast_3460(&(*dot)._kind_6.sons.p->data[((NI)1)], T56_);
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
eqcopy___ast_3546(&(*dot).typ, (*g).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** L;
NI i;
NI L_2;
NI T58_;
L = (tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q**)0;
i = ((NI)0);
T58_ = (*a).locked.len;
L_2 = T58_;
{
while (1) {
if (!(i < L_2)) goto LA60 ;
L = &(*a).locked.p->data[i];
{
NIM_BOOL T63_;
T63_ = (NIM_BOOL)0;
T63_ = sameTree__guards_689(dot, (*L));
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
if (!T63_) goto LA64_;
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___ast_3454(&dot);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_4060(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA64_: ;
i += ((NI)1);
} LA60: ;
}
}
T66_.len = 0; T66_.p = NIM_NIL;
T67_ = 0;
colontmpD__2 = renderTree__renderer_50(n, T67_);
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
T66_ = rawNewString(colontmpD__2.len + 18);
appendString((&T66_), TM__O8rpA4QnF63fyis4dAzZxA_86);
appendString((&T66_), colontmpD__2);
colontmpD__3 = T66_;
liMessage__msgs_1172((*a).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__3, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_87), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
{
LA55_:;
}
{
oldNimErrFin55_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___ast_3454(&dot);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin55_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA51_;
LA53_: ;
{
guardGlobal__sempass50_190(a, n, g);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA51_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addToIntersection__sempass50_2424)(tySequence__8Np6tlClE5az1CyqZdN19bQ* inter, NI s) {
NI colontmpD_;
tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ T9_;
{ colontmpD_ = (NI)0;
{
NI j;
NI colontmp_;
NI T2_;
NI i;
j = (NI)0;
colontmp_ = (NI)0;
T2_ = (*inter).len;
colontmp_ = T2_;
i = ((NI)0);
{
while (1) {
if (!(i < colontmp_)) goto LA4 ;
j = i;
{
if (!(s == (*inter).p->data[j].Field0)) goto LA7_;
(*inter).p->data[j].Field1 += ((NI)1);
goto BeforeRet_;
}
LA7_: ;
i += ((NI)1);
} LA4: ;
}
}
colontmpD_ = s;
T9_.Field0 = colontmpD_;
T9_.Field1 = ((NI)1);
add__sempass50_2443((&(*inter)), T9_);
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, catchesAll__sempass50_2628)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NI T3_;
T3_ = (NI)0;
T3_ = len__ast_3325((*tracked).exc);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(((NI)0) < T3_)) goto LA4_;
setLen__ast_3741((&(*(*tracked).exc)._kind_6.sons), ((NI) ((*tracked).bottom)));
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, catches__sempass50_2593)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* e) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* e_2;
NI L;
NI i;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
e_2 = NIM_NIL;
e_2 = skipTypes__ast_4803(e, TM__O8rpA4QnF63fyis4dAzZxA_15);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
L = len__ast_3325((*tracked).exc);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i = (*tracked).bottom;
{
while (1) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD_;
if (!(i < L)) goto LA3 ;
colontmpD_ = NIM_NIL;
{
NI T7_;
colontmpD_ = excType__sempass50_2496((*tracked).graph, (*(*tracked).exc)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
T7_ = (NI)0;
T7_ = safeInheritanceDiff__types_3611(colontmpD_, e_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
if (!(T7_ <= ((NI)0))) goto LA8_;
eqcopy___ast_3457(&(*(*tracked).exc)._kind_6.sons.p->data[i], (*(*tracked).exc)._kind_6.sons.p->data[(NI)(L - ((NI)1))]);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
L -= ((NI)1);
}
goto LA5_;
LA8_: ;
{
i += ((NI)1);
}
LA5_: ;
{
LA4_:;
}
{
oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin4_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA3: ;
}
{
NI T15_;
T15_ = (NI)0;
T15_ = len__ast_3325((*tracked).exc);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(((NI)0) < T15_)) goto LA16_;
setLen__ast_3741((&(*(*tracked).exc)._kind_6.sons), ((NI) (L)));
}
goto LA13_;
LA16_: ;
{
}
LA13_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&e_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, trackTryStmt__sempass50_2643)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tySequence__8Np6tlClE5az1CyqZdN19bQ inter;
NI oldBottom;
NI T2_;
NI oldState;
NI T3_;
NI branches;
NIM_BOOL hasFinally;
NIM_BOOL oldNimErrFin11_;
NIM_BOOL oldNimErrFin38_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
inter.len = 0; inter.p = NIM_NIL;
oldBottom = (*tracked).bottom;
T2_ = (NI)0;
T2_ = len__ast_3325((*tracked).exc);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*tracked).bottom = T2_;
T3_ = (*tracked).init.len;
oldState = T3_;
inter.len = 0; inter.p = (tySequence__8Np6tlClE5az1CyqZdN19bQ_Content*) newSeqPayload(0, sizeof(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ), NIM_ALIGNOF(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ));
(*tracked).inTryStmt += ((NI)1);
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*tracked).inTryStmt -= ((NI)1);
{
NI i;
NI colontmp_;
NI T5_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
T5_ = (*tracked).init.len;
colontmp_ = T5_;
i_2 = oldState;
{
while (1) {
if (!(i_2 < colontmp_)) goto LA7 ;
i = i_2;
addToIntersection__sempass50_2424((&inter), (*tracked).init.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 += ((NI)1);
} LA7: ;
}
}
branches = ((NI)1);
hasFinally = NIM_FALSE;
(*tracked).inExceptOrFinallyStmt += ((NI)1);
{
NI i_3;
NI colontmp__2;
NI i_4;
i_3 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_4 = ((NI)1);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
if (!(i_4 < colontmp__2)) goto LA10 ;
b = NIM_NIL;
i_3 = i_4;
eqcopy___ast_3457(&b, (*n)._kind_6.sons.p->data[i_3]);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
{
if (!((*b).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)87))) goto LA14_;
branches += ((NI)1);
{
NI T18_;
T18_ = (NI)0;
T18_ = len__ast_3325(b);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
if (!(T18_ == ((NI)1))) goto LA19_;
catchesAll__sempass50_2628(tracked);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
}
goto LA16_;
LA19_: ;
{
{
NI j;
NI colontmp__3;
NI T23_;
NI i_5;
j = (NI)0;
colontmp__3 = (NI)0;
T23_ = (NI)0;
T23_ = len__ast_3325(b);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
colontmp__3 = (NI)(T23_ - ((NI)1));
i_5 = ((NI)0);
{
while (1) {
if (!(i_5 < colontmp__3)) goto LA25 ;
j = i_5;
{
NIM_BOOL T28_;
T28_ = (NIM_BOOL)0;
T28_ = isInfixAs__ast_6377((*b)._kind_6.sons.p->data[j]);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
if (!T28_) goto LA29_;
catches__sempass50_2593(tracked, (*(*(*b)._kind_6.sons.p->data[j])._kind_6.sons.p->data[((NI)1)]).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
createTypeBoundOps__sempass50_133(tracked, (*(*(*b)._kind_6.sons.p->data[j])._kind_6.sons.p->data[((NI)2)]).typ, (*(*(*b)._kind_6.sons.p->data[j])._kind_6.sons.p->data[((NI)2)]).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
}
goto LA26_;
LA29_: ;
{
catches__sempass50_2593(tracked, (*(*b)._kind_6.sons.p->data[j]).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
}
LA26_: ;
i_5 += ((NI)1);
} LA25: ;
}
}
}
LA16_: ;
}
goto LA12_;
LA14_: ;
{
}
LA12_: ;
i_4 += ((NI)1);
{
LA11_:;
}
{
oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&b);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin11_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA10: ;
}
}
{
NI i_6;
NI colontmp__4;
NI i_7;
i_6 = (NI)0;
colontmp__4 = (NI)0;
colontmp__4 = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_7 = ((NI)1);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b_2;
if (!(i_7 < colontmp__4)) goto LA37 ;
b_2 = NIM_NIL;
i_6 = i_7;
eqcopy___ast_3457(&b_2, (*n)._kind_6.sons.p->data[i_6]);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
{
NI T52_;
if (!((*b_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)87))) goto LA41_;
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
{
NI j_2;
NI colontmp__5;
NI T44_;
NI i_8;
j_2 = (NI)0;
colontmp__5 = (NI)0;
T44_ = (NI)0;
T44_ = len__ast_3325(b_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
colontmp__5 = (NI)(T44_ - ((NI)1));
i_8 = ((NI)0);
{
while (1) {
if (!(i_8 < colontmp__5)) goto LA46 ;
j_2 = i_8;
{
NIM_BOOL T49_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym162_;
T49_ = (NIM_BOOL)0;
T49_ = isInfixAs__ast_6377((*b_2)._kind_6.sons.p->data[j_2]);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
if (!T49_) goto LA50_;
xX60gensym162_ = NIM_NIL;
eqcopy___ast_4063(&xX60gensym162_, (*(*(*b_2)._kind_6.sons.p->data[j_2])._kind_6.sons.p->data[((NI)2)])._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
add__varpartitions_1477((&(*tracked).init), (NI)((NI)((NU64)(((NI) ((*xX60gensym162_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym162_).Sup.itemId.item))));
eqdestroy___ast_4060(&xX60gensym162_);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
}
LA50_: ;
i_8 += ((NI)1);
} LA46: ;
}
}
T52_ = (NI)0;
T52_ = len__ast_3325(b_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
track__sempass50_2640(tracked, (*b_2)._kind_6.sons.p->data[(NI)(T52_ - ((NI)1))]);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
{
NI i_9;
NI colontmp__6;
NI T54_;
NI i_10;
i_9 = (NI)0;
colontmp__6 = (NI)0;
T54_ = (*tracked).init.len;
colontmp__6 = T54_;
i_10 = oldState;
{
while (1) {
if (!(i_10 < colontmp__6)) goto LA56 ;
i_9 = i_10;
addToIntersection__sempass50_2424((&inter), (*tracked).init.p->data[i_9]);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
i_10 += ((NI)1);
} LA56: ;
}
}
}
goto LA39_;
LA41_: ;
{
NI T58_;
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
T58_ = (NI)0;
T58_ = len__ast_3325(b_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
track__sempass50_2640(tracked, (*b_2)._kind_6.sons.p->data[(NI)(T58_ - ((NI)1))]);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
hasFinally = NIM_TRUE;
}
LA39_: ;
i_7 += ((NI)1);
{
LA38_:;
}
{
oldNimErrFin38_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&b_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin38_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA37: ;
}
}
(*tracked).bottom = oldBottom;
(*tracked).inExceptOrFinallyStmt -= ((NI)1);
{
if (!!(hasFinally)) goto LA63_;
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
}
LA63_: ;
{
NI* id;
NI* count;
NI i_11;
NI L;
NI T66_;
id = (NI*)0;
count = (NI*)0;
i_11 = ((NI)0);
T66_ = inter.len;
L = T66_;
{
while (1) {
if (!(i_11 < L)) goto LA68 ;
id = (&inter.p->data[i_11].Field0);
count = (&inter.p->data[i_11].Field1);
{
NI colontmpD_;
if (!((*count) == branches)) goto LA71_;
colontmpD_ = (NI)0;
colontmpD_ = (*id);
add__varpartitions_1477((&(*tracked).init), colontmpD_);
}
LA71_: ;
i_11 += ((NI)1);
} LA68: ;
}
}
{
LA1_:;
}
{
eqdestroy___types_1912((&inter));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, listEffects__sempass50_2588)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a) {
NIM_BOOL oldNimErrFin2_;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL oldNimErrFin22_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e;
e = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318((*a).exc);
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
i_2 = ((NI)0);
{
while (1) {
NimStringV2 colontmpD_;
if (!(i_2 < colontmp_)) goto LA5 ;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
i = i_2;
eqcopy___ast_3457(&e, (*(*a).exc)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
colontmpD_ = typeToString__types_51((*e).typ, ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
liMessage__msgs_1172((*a).config, (*e).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)109), colontmpD_, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_88), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
i_2 += ((NI)1);
{
LA6_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
} LA5: ;
}
}
{
LA2_:;
}
{
oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&e);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin2_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e_2;
e_2 = NIM_NIL;
{
NI i_3;
NI colontmp__2;
NI i_4;
i_3 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = safeLen__ast_3318((*a).tags);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
i_4 = ((NI)0);
{
while (1) {
NimStringV2 colontmpD__2;
if (!(i_4 < colontmp__2)) goto LA15 ;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
i_3 = i_4;
eqcopy___ast_3457(&e_2, (*(*a).tags)._kind_6.sons.p->data[i_3]);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
colontmpD__2 = typeToString__types_51((*e_2).typ, ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0));
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
liMessage__msgs_1172((*a).config, (*e_2).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)109), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_89), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
i_4 += ((NI)1);
{
LA16_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
} LA15: ;
}
}
{
LA12_:;
}
{
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&e_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin12_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e_3;
e_3 = NIM_NIL;
{
NI i_5;
NI colontmp__3;
NI i_6;
i_5 = (NI)0;
colontmp__3 = (NI)0;
colontmp__3 = safeLen__ast_3318((*a).forbids);
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
i_6 = ((NI)0);
{
while (1) {
NimStringV2 colontmpD__3;
if (!(i_6 < colontmp__3)) goto LA25 ;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
i_5 = i_6;
eqcopy___ast_3457(&e_3, (*(*a).forbids)._kind_6.sons.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
colontmpD__3 = typeToString__types_51((*e_3).typ, ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0));
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
liMessage__msgs_1172((*a).config, (*e_3).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)109), colontmpD__3, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_90), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
i_6 += ((NI)1);
{
LA26_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
} LA25: ;
}
}
{
LA22_:;
}
{
oldNimErrFin22_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&e_3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin22_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, trackPragmaStmt__sempass50_2911)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL oldNimErrFin4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 = ((NI)0);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* it;
tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA pragma;
if (!(i_2 < colontmp_)) goto LA3 ;
it = NIM_NIL;
i = i_2;
eqcopy___ast_3457(&it, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
pragma = whichPragma__trees_251(it);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
{
if (!(pragma == ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)178))) goto LA7_;
listEffects__sempass50_2588(tracked);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
}
LA7_: ;
i_2 += ((NI)1);
{
LA4_:;
}
{
oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&it);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin4_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA3: ;
}
}
}BeforeRet_: ;
}
static N_INLINE(void, varDecl__sempass50_281)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym37_;
NI colontmpD_;
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA3_;
xX60gensym37_ = NIM_NIL;
colontmpD_ = (NI)0;
xX60gensym37_ = (*n)._kind_4.sym;
colontmpD_ = (*a).currentBlock;
X5BX5Deq___importer_2418((&(*a).scopes), (NI)((NI)((NU64)(((NI) ((*xX60gensym37_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym37_).Sup.itemId.item))), colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, breaksBlock__sempass50_3357)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL result;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* it;
NIM_BOOL T7_;
NIM_BOOL T9_;
NIM_BOOL T10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
it = NIM_NIL;
eqcopy___ast_3457(&it, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
while (1) {
NIM_BOOL T3_;
NI T5_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T6_;
T3_ = (NIM_BOOL)0;
T3_ = ((*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)126));
if (!(T3_)) goto LA4_;
T5_ = (NI)0;
T5_ = len__ast_3325(it);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T3_ = (((NI)0) < T5_);
LA4_: ;
if (!T3_) goto LA2 ;
T6_ = NIM_NIL;
T6_ = lastSon__ast_6268(it);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3460(&it, T6_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA2: ;
}
T7_ = (NIM_BOOL)0;
T7_ = ((*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)110) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)109) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)108));
if (T7_) goto LA8_;
T9_ = (NIM_BOOL)0;
T10_ = (NIM_BOOL)0;
T10_ = ((*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)31) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)28) || (*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32));
if (!(T10_)) goto LA11_;
T10_ = ((*(*it)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
LA11_: ;
T9_ = T10_;
if (!(T9_)) goto LA12_;
T9_ = (((*(*(*it)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)16)))&63U)))!=0);
LA12_: ;
T7_ = T9_;
LA8_: ;
result = T7_;
eqdestroy___ast_3454(&it);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, trackCase__sempass50_3392)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD_;
tySequence__8Np6tlClE5az1CyqZdN19bQ inter;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
NI oldState;
NI T2_;
NI oldFacts;
NI T3_;
NIM_BOOL stringCase;
NIM_BOOL T4_;
NIM_BOOL interesting;
NIM_BOOL T6_;
NIM_BOOL T7_;
NIM_BOOL T10_;
NI toCover;
NIM_BOOL oldNimErrFin15_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmpD_ = NIM_NIL;
inter.len = 0; inter.p = NIM_NIL;
colontmpD__2 = NIM_NIL;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*tracked).inIfStmt += ((NI)1);
T2_ = (*tracked).init.len;
oldState = T2_;
T3_ = (*tracked).guards.s.len;
oldFacts = T3_;
T4_ = (NIM_BOOL)0;
T4_ = !(((*(*n)._kind_6.sons.p->data[((NI)0)]).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T4_)) goto LA5_;
colontmpD_ = skipTypes__ast_4803((*(*n)._kind_6.sons.p->data[((NI)0)]).typ, TM__O8rpA4QnF63fyis4dAzZxA_96);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T4_ = ((*colontmpD_).kind >= ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)36) && (*colontmpD_).kind <= ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)39) || (*colontmpD_).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)28) || (*colontmpD_).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)29));
LA5_: ;
stringCase = T4_;
T6_ = (NIM_BOOL)0;
T7_ = (NIM_BOOL)0;
T7_ = !(stringCase);
if (!(T7_)) goto LA8_;
T7_ = interestingCaseExpr__guards_122((*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA8_: ;
T6_ = T7_;
if (!(T6_)) goto LA9_;
T10_ = (NIM_BOOL)0;
T10_ = hasWarn__options_576((*tracked).config, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)46));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (T10_) goto LA11_;
T10_ = (((*(*tracked).c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)19)))&31U)))!=0);
LA11_: ;
T6_ = T10_;
LA9_: ;
interesting = T6_;
inter.len = 0; inter.p = (tySequence__8Np6tlClE5az1CyqZdN19bQ_Content*) newSeqPayload(0, sizeof(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ), NIM_ALIGNOF(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ));
toCover = ((NI)0);
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 = ((NI)1);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
if (!(i_2 < colontmp_)) goto LA14 ;
branch = NIM_NIL;
colontmpD__3 = NIM_NIL;
i = i_2;
eqcopy___ast_3457(&branch, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
{
if (!interesting) goto LA18_;
setLen__ast_3741((&(*tracked).guards.s), ((NI) (oldFacts)));
addCaseBranchFacts__guards_1963((&(*tracked).guards), n, i);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
}
LA18_: ;
{
NI i_3;
NI colontmp__2;
NI i_4;
i_3 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = len__ast_3325(branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
i_4 = ((NI)0);
{
while (1) {
if (!(i_4 < colontmp__2)) goto LA22 ;
i_3 = i_4;
track__sempass50_2640(tracked, (*branch)._kind_6.sons.p->data[i_3]);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
i_4 += ((NI)1);
} LA22: ;
}
}
{
NIM_BOOL T25_;
colontmpD__3 = lastSon__ast_6268(branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
T25_ = (NIM_BOOL)0;
T25_ = breaksBlock__sempass50_3357(colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
if (!!(T25_)) goto LA26_;
toCover += ((NI)1);
}
LA26_: ;
{
NI i_5;
NI colontmp__3;
NI T29_;
NI i_6;
i_5 = (NI)0;
colontmp__3 = (NI)0;
T29_ = (*tracked).init.len;
colontmp__3 = T29_;
i_6 = oldState;
{
while (1) {
if (!(i_6 < colontmp__3)) goto LA31 ;
i_5 = i_6;
addToIntersection__sempass50_2424((&inter), (*tracked).init.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
i_6 += ((NI)1);
} LA31: ;
}
}
i_2 += ((NI)1);
{
LA15_:;
}
{
oldNimErrFin15_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin15_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA14: ;
}
}
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
{
NIM_BOOL T36_;
T36_ = (NIM_BOOL)0;
T36_ = !(stringCase);
if (T36_) goto LA37_;
colontmpD__2 = lastSon__ast_6268(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T36_ = ((*colontmpD__2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88));
LA37_: ;
if (!T36_) goto LA38_;
{
NI* id;
NI* count;
NI i_7;
NI L;
NI T41_;
id = (NI*)0;
count = (NI*)0;
i_7 = ((NI)0);
T41_ = inter.len;
L = T41_;
{
while (1) {
if (!(i_7 < L)) goto LA43 ;
id = (&inter.p->data[i_7].Field0);
count = (&inter.p->data[i_7].Field1);
{
NI colontmpD__4;
if (!(toCover <= (*count))) goto LA46_;
colontmpD__4 = (NI)0;
colontmpD__4 = (*id);
add__varpartitions_1477((&(*tracked).init), colontmpD__4);
}
LA46_: ;
i_7 += ((NI)1);
} LA43: ;
}
}
}
LA38_: ;
setLen__ast_3741((&(*tracked).guards.s), ((NI) (oldFacts)));
(*tracked).inIfStmt -= ((NI)1);
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___types_1912((&inter));
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, trackIf__sempass50_3508)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
tySequence__8Np6tlClE5az1CyqZdN19bQ inter;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
NI oldFacts;
NI T2_;
NI oldState;
NI T3_;
NI toCover;
NIM_BOOL oldNimErrFin16_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
inter.len = 0; inter.p = NIM_NIL;
colontmpD_ = NIM_NIL;
track__sempass50_2640(tracked, (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*tracked).inIfStmt += ((NI)1);
T2_ = (*tracked).guards.s.len;
oldFacts = T2_;
addFact__guards_618((&(*tracked).guards), (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T3_ = (*tracked).init.len;
oldState = T3_;
inter.len = 0; inter.p = (tySequence__8Np6tlClE5az1CyqZdN19bQ_Content*) newSeqPayload(0, sizeof(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ), NIM_ALIGNOF(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ));
toCover = ((NI)0);
track__sempass50_2640(tracked, (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = breaksBlock__sempass50_3357((*(*n)._kind_6.sons.p->data[((NI)0)])._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T6_)) goto LA7_;
toCover += ((NI)1);
}
LA7_: ;
{
NI i;
NI colontmp_;
NI T10_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
T10_ = (*tracked).init.len;
colontmp_ = T10_;
i_2 = oldState;
{
while (1) {
if (!(i_2 < colontmp_)) goto LA12 ;
i = i_2;
addToIntersection__sempass50_2424((&inter), (*tracked).init.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 += ((NI)1);
} LA12: ;
}
}
{
NI i_3;
NI colontmp__2;
NI i_4;
i_3 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_4 = ((NI)1);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
if (!(i_4 < colontmp__2)) goto LA15 ;
branch = NIM_NIL;
colontmpD__2 = NIM_NIL;
i_3 = i_4;
eqcopy___ast_3457(&branch, (*n)._kind_6.sons.p->data[i_3]);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
setLen__ast_3741((&(*tracked).guards.s), ((NI) (oldFacts)));
{
NI j;
NI colontmp__3;
NI res;
j = (NI)0;
colontmp__3 = (NI)0;
colontmp__3 = (NI)(i_3 - ((NI)1));
res = ((NI)0);
{
while (1) {
if (!(res <= colontmp__3)) goto LA19 ;
j = res;
addFactNeg__guards_641((&(*tracked).guards), (*(*n)._kind_6.sons.p->data[j])._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
res += ((NI)1);
} LA19: ;
}
}
{
NI T22_;
T22_ = (NI)0;
T22_ = len__ast_3325(branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
if (!(((NI)1) < T22_)) goto LA23_;
addFact__guards_618((&(*tracked).guards), (*branch)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
}
LA23_: ;
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
{
NI i_5;
NI colontmp__4;
NI i_6;
i_5 = (NI)0;
colontmp__4 = (NI)0;
colontmp__4 = len__ast_3325(branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
i_6 = ((NI)0);
{
while (1) {
if (!(i_6 < colontmp__4)) goto LA27 ;
i_5 = i_6;
track__sempass50_2640(tracked, (*branch)._kind_6.sons.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
i_6 += ((NI)1);
} LA27: ;
}
}
{
NIM_BOOL T30_;
colontmpD__2 = lastSon__ast_6268(branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
T30_ = (NIM_BOOL)0;
T30_ = breaksBlock__sempass50_3357(colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
if (!!(T30_)) goto LA31_;
toCover += ((NI)1);
}
LA31_: ;
{
NI i_7;
NI colontmp__5;
NI T34_;
NI i_8;
i_7 = (NI)0;
colontmp__5 = (NI)0;
T34_ = (*tracked).init.len;
colontmp__5 = T34_;
i_8 = oldState;
{
while (1) {
if (!(i_8 < colontmp__5)) goto LA36 ;
i_7 = i_8;
addToIntersection__sempass50_2424((&inter), (*tracked).init.p->data[i_7]);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
i_8 += ((NI)1);
} LA36: ;
}
}
i_4 += ((NI)1);
{
LA16_:;
}
{
oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&branch);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin16_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA15: ;
}
}
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
{
NI T41_;
colontmpD_ = lastSon__ast_6268(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T41_ = (NI)0;
T41_ = len__ast_3325(colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(T41_ == ((NI)1))) goto LA42_;
{
NI* id;
NI* count;
NI i_9;
NI L;
NI T45_;
id = (NI*)0;
count = (NI*)0;
i_9 = ((NI)0);
T45_ = inter.len;
L = T45_;
{
while (1) {
if (!(i_9 < L)) goto LA47 ;
id = (&inter.p->data[i_9].Field0);
count = (&inter.p->data[i_9].Field1);
{
NI colontmpD__3;
if (!(toCover <= (*count))) goto LA50_;
colontmpD__3 = (NI)0;
colontmpD__3 = (*id);
add__varpartitions_1477((&(*tracked).init), colontmpD__3);
}
LA50_: ;
i_9 += ((NI)1);
} LA47: ;
}
}
}
LA42_: ;
setLen__ast_3741((&(*tracked).guards.s), ((NI) (oldFacts)));
(*tracked).inIfStmt -= ((NI)1);
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___types_1912((&inter));
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, trackBlock__sempass50_3636)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NI oldState;
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)126))) goto LA3_;
oldState = ((NI)-1);
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA7 ;
i = i_2;
{
NIM_BOOL T10_;
T10_ = (NIM_BOOL)0;
T10_ = hasSubnodeWith__ast_5999((*n)._kind_6.sons.p->data[i], ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)110));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T10_) goto LA11_;
{
NI T17_;
if (!(oldState < ((NI)0))) goto LA15_;
T17_ = (*tracked).init.len;
oldState = T17_;
}
LA15_: ;
}
LA11_: ;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 += ((NI)1);
} LA7: ;
}
}
{
if (!(((NI)0) < oldState)) goto LA20_;
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
}
LA20_: ;
}
goto LA1_;
LA3_: ;
{
track__sempass50_2640(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA1_: ;
}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, fromSystem__astalgo_242)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* op) {
NIM_BOOL result;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
colontmpD_ = NIM_NIL;
colontmpD_ = getModule__astalgo_220(op);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
result = (((*colontmpD_).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)15)))&63U)))!=0);
eqdestroy___ast_4060(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, createBlockContext__sempass50_4145)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* Result) {
NI oldForbidsLen;
NI T5_;
NI T6_;
NI T7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
oldForbidsLen = ((NI)0);
{
if (!!(((*tracked).forbids == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)))) goto LA3_;
oldForbidsLen = len__ast_3325((*tracked).forbids);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
nimZeroMem((void*)Result, sizeof(tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw));
T5_ = (*tracked).locked.len;
(*Result).oldLocked = T5_;
(*Result).enforcedGcSafety = NIM_FALSE;
(*Result).enforceNoSideEffects = NIM_FALSE;
T6_ = (NI)0;
T6_ = len__ast_3325((*tracked).exc);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*Result).oldExc = T6_;
T7_ = (NI)0;
T7_ = len__ast_3325((*tracked).tags);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*Result).oldTags = T7_;
(*Result).oldForbids = oldForbidsLen;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, lockLocations__sempass50_177)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragma) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
if (!!(((*pragma).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34)))) goto LA3_;
liMessage__msgs_1172((*a).config, (*pragma).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__O8rpA4QnF63fyis4dAzZxA_106, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_107), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA3_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmp_;
x = NIM_NIL;
colontmp_ = NIM_NIL;
eqcopy___ast_3457(&colontmp_, (*pragma)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NI i;
NI colontmp__2;
NI i_2;
i = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = safeLen__ast_3318(colontmp_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 = ((NI)0);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* blitTmp;
if (!(i_2 < colontmp__2)) goto LA8 ;
i = i_2;
eqcopy___ast_3457(&x, (*colontmp_)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
blitTmp = x;
x = 0;
add__ast_4147((&(*a).locked), blitTmp);
i_2 += ((NI)1);
} LA8: ;
}
}
eqdestroy___ast_3454(&colontmp_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&x);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, castBlock__sempass50_4226)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragma, tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* bc) {
tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
T1_ = (tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)0;
T1_ = whichPragma__trees_251(pragma);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
switch (T1_) {
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)110):
{
(*bc).enforcedGcSafety = NIM_TRUE;
}
break;
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)109):
{
(*bc).enforceNoSideEffects = NIM_TRUE;
}
break;
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)179):
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n;
n = NIM_NIL;
eqcopy___ast_3457(&n, (*pragma)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)39) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)41))) goto LA7_;
eqsink___ast_3460(&(*bc).tags, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
n = 0;
}
goto LA5_;
LA7_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T10_;
T10_ = NIM_NIL;
T10_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*pragma).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3460(&(*bc).tags, T10_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
add__ast_6233((*bc).tags, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA5_: ;
eqdestroy___ast_3454(&n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)180):
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n_2;
n_2 = NIM_NIL;
eqcopy___ast_3457(&n_2, (*pragma)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!((*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)39) || (*n_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)41))) goto LA14_;
eqsink___ast_3460(&(*bc).forbids, n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
n_2 = 0;
}
goto LA12_;
LA14_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T17_;
T17_ = NIM_NIL;
T17_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*pragma).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3460(&(*bc).forbids, T17_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
add__ast_6233((*bc).forbids, n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA12_: ;
eqdestroy___ast_3454(&n_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)174):
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n_3;
n_3 = NIM_NIL;
eqcopy___ast_3457(&n_3, (*pragma)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!((*n_3).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)39) || (*n_3).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)41))) goto LA21_;
eqsink___ast_3460(&(*bc).exc, n_3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
n_3 = 0;
}
goto LA19_;
LA21_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T24_;
T24_ = NIM_NIL;
T24_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*pragma).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3460(&(*bc).exc, T24_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
add__ast_6233((*bc).exc, n_3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA19_: ;
eqdestroy___ast_3454(&n_3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)86):
{
}
break;
default:
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 T28_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T28_.len = 0; T28_.p = NIM_NIL;
colontmpD_ = dollar___renderer_2511(pragma);
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
T28_ = rawNewString(colontmpD_.len + 22);
appendString((&T28_), TM__O8rpA4QnF63fyis4dAzZxA_109);
appendString((&T28_), colontmpD_);
colontmpD__2 = T28_;
liMessage__msgs_1172((*tracked).config, (*pragma).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_110), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
{
LA27_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, applyBlockContext__sempass50_4189)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* bc) {
{
if (!(*bc).enforcedGcSafety) goto LA3_;
(*tracked).inEnforcedGcSafe = NIM_TRUE;
}
LA3_: ;
{
if (!(*bc).enforceNoSideEffects) goto LA7_;
(*tracked).inEnforcedNoSideEffects = NIM_TRUE;
}
LA7_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addNotTag__sempass50_2558)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* a, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* comesFrom) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* aa;
NIM_BOOL oldNimErrFin5_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
aa = NIM_NIL;
eqcopy___ast_3457(&aa, (*a).forbids);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = len__ast_3325(aa);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 = ((NI)0);
{
while (1) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__2;
if (!(i_2 < colontmp_)) goto LA4 ;
colontmpD_ = NIM_NIL;
colontmpD__2 = NIM_NIL;
i = i_2;
{
tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w T8_;
NIM_BOOL T9_;
colontmpD_ = skipTypes__ast_4803((*(*aa)._kind_6.sons.p->data[i]).typ, TM__O8rpA4QnF63fyis4dAzZxA_15);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
colontmpD__2 = skipTypes__ast_4803((*e).typ, TM__O8rpA4QnF63fyis4dAzZxA_15);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
T8_ = 0;
T9_ = (NIM_BOOL)0;
T9_ = sameType__types_2000(colontmpD_, colontmpD__2, T8_);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
if (!T9_) goto LA10_;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&aa);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA10_: ;
i_2 += ((NI)1);
{
LA5_:;
}
{
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin5_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA4: ;
}
}
throws__sempass50_2467((*a).forbids, e, comesFrom);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&aa);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, unapplyBlockContext__sempass50_4192)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* bc) {
NIM_BOOL oldNimErrFin14_;
NIM_BOOL oldNimErrFin25_;
NIM_BOOL oldNimErrFin36_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
if (!(*bc).enforcedGcSafety) goto LA3_;
(*tracked).inEnforcedGcSafe = NIM_FALSE;
}
LA3_: ;
{
if (!(*bc).enforceNoSideEffects) goto LA7_;
(*tracked).inEnforcedNoSideEffects = NIM_FALSE;
}
LA7_: ;
setLen__ast_3741((&(*tracked).locked), ((NI) ((*bc).oldLocked)));
{
if (!!(((*bc).exc == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)))) goto LA11_;
setLen__ast_3741((&(*(*tracked).exc)._kind_6.sons), ((NI) ((*bc).oldExc)));
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e;
e = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318((*bc).exc);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA17 ;
i = i_2;
eqcopy___ast_3457(&e, (*(*bc).exc)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
addRaiseEffect__sempass50_2522(tracked, e, e);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
i_2 += ((NI)1);
} LA17: ;
}
}
{
LA14_:;
}
{
oldNimErrFin14_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&e);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin14_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
LA11_: ;
{
if (!!(((*bc).tags == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)))) goto LA22_;
setLen__ast_3741((&(*(*tracked).tags)._kind_6.sons), ((NI) ((*bc).oldTags)));
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* t;
t = NIM_NIL;
{
NI i_3;
NI colontmp__2;
NI i_4;
i_3 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = safeLen__ast_3318((*bc).tags);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
i_4 = ((NI)0);
{
while (1) {
if (!(i_4 < colontmp__2)) goto LA28 ;
i_3 = i_4;
eqcopy___ast_3457(&t, (*(*bc).tags)._kind_6.sons.p->data[i_3]);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
addTag__sempass50_2544(tracked, t, t);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
i_4 += ((NI)1);
} LA28: ;
}
}
{
LA25_:;
}
{
oldNimErrFin25_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&t);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin25_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
LA22_: ;
{
if (!!(((*bc).forbids == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)))) goto LA33_;
setLen__ast_3741((&(*(*tracked).forbids)._kind_6.sons), ((NI) ((*bc).oldForbids)));
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* t_2;
t_2 = NIM_NIL;
{
NI i_5;
NI colontmp__3;
NI i_6;
i_5 = (NI)0;
colontmp__3 = (NI)0;
colontmp__3 = safeLen__ast_3318((*bc).forbids);
if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
i_6 = ((NI)0);
{
while (1) {
if (!(i_6 < colontmp__3)) goto LA39 ;
i_5 = i_6;
eqcopy___ast_3457(&t_2, (*(*bc).forbids)._kind_6.sons.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
addNotTag__sempass50_2558(tracked, t_2, t_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
i_6 += ((NI)1);
} LA39: ;
}
}
{
LA36_:;
}
{
oldNimErrFin36_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&t_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin36_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
LA33_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___sempass50_4165)(tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw* dest) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLast((*dest).exc);
if (!T3_) goto LA4_;
eqdestroy___ast_3466((*dest).exc);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).exc, ((NI)8));
}
LA4_: ;
{
NIM_BOOL T8_;
T8_ = (NIM_BOOL)0;
T8_ = nimDecRefIsLast((*dest).tags);
if (!T8_) goto LA9_;
eqdestroy___ast_3466((*dest).tags);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).tags, ((NI)8));
}
LA9_: ;
{
NIM_BOOL T13_;
T13_ = (NIM_BOOL)0;
T13_ = nimDecRefIsLast((*dest).forbids);
if (!T13_) goto LA14_;
eqdestroy___ast_3466((*dest).forbids);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
nimRawDispose((*dest).forbids, ((NI)8));
}
LA14_: ;
}BeforeRet_: ;
}
static N_INLINE(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, getBody__modulegraphs_14894)(tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = NIM_NIL;
eqcopy___ast_3457(&result, (*(*s).ast)._kind_6.sons.p->data[((NI)6)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* T7_;
tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* T8_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T9_;
T3_ = (NIM_BOOL)0;
T3_ = (result == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (!(T3_)) goto LA4_;
T3_ = ((*(*g).config).symbolFiles == ((tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ)2) || (*(*g).config).symbolFiles == ((tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ)3) || (*(*g).config).symbolFiles == ((tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ)4));
LA4_: ;
if (!T3_) goto LA5_;
T7_ = NIM_NIL;
T7_ = (*g).config;
T8_ = NIM_NIL;
T8_ = (*g).cache;
T9_ = NIM_NIL;
T9_ = loadProcBody__icZic_10545(T7_, T8_, (&(*g).packed_0), s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___ast_3460(&result, T9_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqcopy___ast_3457(&(*(*s).ast)._kind_6.sons.p->data[((NI)6)], result);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA5_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, trackInnerProc__sempass50_4260)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL oldNimErrFin16_;
NIM_BOOL oldNimErrFin22_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
switch ((*n).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3):
{
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s;
s = NIM_NIL;
s = (*n)._kind_4.sym;
{
NIM_BOOL T4_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym375_;
T4_ = (NIM_BOOL)0;
T4_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3));
if (!(T4_)) goto LA5_;
T4_ = ((*s).owner == (*tracked).owner);
LA5_: ;
if (!T4_) goto LA6_;
xX60gensym375_ = NIM_NIL;
eqcopy___ast_4063(&xX60gensym375_, s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
incl__pureZcollectionsZintsets_202((&(*tracked).escapingParams), (NI)((NI)((NU64)(((NI) ((*xX60gensym375_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym375_).Sup.itemId.item))));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_4060(&xX60gensym375_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA6_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)4) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23):
{
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)79):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)81):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)80):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)51):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)159):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)52):
{
{
NIM_BOOL T12_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
T12_ = (NIM_BOOL)0;
T12_ = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T12_)) goto LA13_;
T12_ = !(((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).ast == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)));
LA13_: ;
if (!T12_) goto LA14_;
colontmpD_ = NIM_NIL;
colontmpD_ = getBody__modulegraphs_14894((*tracked).graph, (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
trackInnerProc__sempass50_4260(tracked, colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
{
LA16_:;
}
{
oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin16_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA14_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)98):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)82):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)83):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)161):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)101):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)102):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)121):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)116):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)118):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)90):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)125):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)158):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)132):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)123):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)122):
{
}
break;
default:
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* ch;
ch = NIM_NIL;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA25 ;
i = i_2;
eqcopy___ast_3457(&ch, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
trackInnerProc__sempass50_4260(tracked, ch);
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
i_2 += ((NI)1);
} LA25: ;
}
}
{
LA22_:;
}
{
oldNimErrFin22_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&ch);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin22_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
break;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, allowCStringConv__sempass50_4304)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
switch ((*n).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)20) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)22):
{
result = NIM_TRUE;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3):
{
result = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)10) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3));
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)63):
{
result = isCharArrayPtr__types_4388((*n).typ, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32):
{
NIM_BOOL T5_;
T5_ = (NIM_BOOL)0;
T5_ = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T5_)) goto LA6_;
T5_ = ((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)16));
LA6_: ;
result = isCharArrayPtr__types_4388((*n).typ, T5_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
default:
{
result = isCharArrayPtr__types_4388((*n).typ, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, checkRange__sempass50_3721)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* value, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ) {
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
t = NIM_NIL;
t = skipTypes__ast_4803(typ, TM__O8rpA4QnF63fyis4dAzZxA_121);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* lowBound;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* highBound;
if (!((*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)20))) goto LA4_;
lowBound = NIM_NIL;
highBound = NIM_NIL;
lowBound = copyTree__ast_5856((*(*t).n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
(*lowBound).info = (*value).info;
highBound = copyTree__ast_5856((*(*t).n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
(*highBound).info = (*value).info;
checkLe__sempass50_3713(c, lowBound, value);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
checkLe__sempass50_3713(c, value, highBound);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
{
LA6_:;
}
{
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&highBound);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_3454(&lowBound);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin6_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA4_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&t);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, track__sempass50_2640)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* tracked, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL oldNimErrFin33_;
NIM_BOOL oldNimErrFin100_;
NIM_BOOL oldNimErrFin111_;
NIM_BOOL oldNimErrFin81_;
NIM_BOOL oldNimErrFin77_;
NIM_BOOL oldNimErrFin152_;
NIM_BOOL oldNimErrFin148_;
NIM_BOOL oldNimErrFin193_;
NIM_BOOL oldNimErrFin197_;
NIM_BOOL oldNimErrFin187_;
NIM_BOOL oldNimErrFin180_;
NIM_BOOL oldNimErrFin219_;
NIM_BOOL oldNimErrFin209_;
NIM_BOOL oldNimErrFin236_;
NIM_BOOL oldNimErrFin170_;
NIM_BOOL oldNimErrFin252_;
NIM_BOOL oldNimErrFin285_;
NIM_BOOL oldNimErrFin278_;
NIM_BOOL oldNimErrFin304_;
NIM_BOOL oldNimErrFin322_;
NIM_BOOL oldNimErrFin337_;
NIM_BOOL oldNimErrFin426_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
switch ((*n).kind) {
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3):
{
useVar__sempass50_2369(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T4_;
T4_ = (NIM_BOOL)0;
T4_ = !(((*(*n)._kind_4.sym).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T4_)) goto LA5_;
T4_ = (((*(*(*n)._kind_4.sym).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)31)))&63U)))!=0);
LA5_: ;
if (!T4_) goto LA6_;
(*(*tracked).owner).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)42))) & 63);
{
NIM_BOOL T10_;
tySet_tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q T11_;
tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w T13_;
T10_ = (NIM_BOOL)0;
T11_ = 0;
T10_ = !(!(((IL64(2147483664) & (*(*n).typ).flags) == T11_)));
if (!(T10_)) goto LA12_;
T13_ = 0;
T10_ = sameType__types_2000((*n).typ, (*(*n)._kind_4.sym).typ, T13_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA12_: ;
if (!T10_) goto LA14_;
eqcopy___ast_3546(&(*n).typ, (*(*n)._kind_4.sym).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA14_: ;
}
LA6_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)64):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)63):
{
{
NIM_BOOL T19_;
T19_ = (NIM_BOOL)0;
T19_ = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T19_)) goto LA20_;
T19_ = isLocalSym__sempass50_153(tracked, (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA20_: ;
if (!T19_) goto LA21_;
useVarNoInitCheck__sempass50_1191(tracked, (*n)._kind_6.sons.p->data[((NI)0)], (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA17_;
LA21_: ;
{
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA17_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)108):
{
{
if (!!(((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA27_;
(*(*n)._kind_6.sons.p->data[((NI)0)]).info = (*n).info;
addRaiseEffect__sempass50_2522(tracked, (*n)._kind_6.sons.p->data[((NI)0)], n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA31 ;
i = i_2;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 += ((NI)1);
} LA31: ;
}
}
createTypeBoundOps__sempass50_133(tracked, (*(*n)._kind_6.sons.p->data[((NI)0)]).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA25_;
LA27_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
colontmpD_ = NIM_NIL;
colontmpD_ = createRaise__sempass50_2508((*tracked).graph, n);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
addRaiseEffect__sempass50_2522(tracked, colontmpD_, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL));
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
LA33_:;
}
{
oldNimErrFin33_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin33_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA25_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32):
{
trackCall__sempass50_3756(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45):
{
guardDotAccess__sempass50_206(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NI i_3;
NI colontmp__2;
NI i_4;
i_3 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_4 = ((NI)0);
{
while (1) {
if (!(i_4 < colontmp__2)) goto LA40 ;
i_3 = i_4;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[i_3]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_4 += ((NI)1);
} LA40: ;
}
}
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)46):
{
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T44_;
T44_ = (NIM_BOOL)0;
T44_ = hasWarn__options_576((*tracked).config, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)46));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (T44_) goto LA45_;
T44_ = (((*(*tracked).c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)19)))&31U)))!=0);
LA45_: ;
if (!T44_) goto LA46_;
checkFieldAccess__guards_2008((&(*tracked).guards), n, (*tracked).config, (((*(*tracked).c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)19)))&31U)))!=0));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA46_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)106):
{
trackTryStmt__sempass50_2643(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)90):
{
trackPragmaStmt__sempass50_2911(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)73):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)74):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)149):
{
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
initVar__sempass50_353(tracked, (*n)._kind_6.sons.p->data[((NI)0)], NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
invalidateFacts__guards_769((&(*tracked).guards), (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*tracked).leftPartOfAsgn += ((NI)1);
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*tracked).leftPartOfAsgn -= ((NI)1);
addAsgnFact__guards_1938((&(*tracked).guards), (*n)._kind_6.sons.p->data[((NI)0)], (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
notNilCheck__sempass50_2991(tracked, (*n)._kind_6.sons.p->data[((NI)1)], (*(*n)._kind_6.sons.p->data[((NI)0)]).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T53_;
T53_ = (NIM_BOOL)0;
T53_ = !(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)));
if (!(T53_)) goto LA54_;
T53_ = !(((*(*(*n)._kind_6.sons.p->data[((NI)0)]).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)27) || (*(*(*n)._kind_6.sons.p->data[((NI)0)]).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)48)));
LA54_: ;
if (!T53_) goto LA55_;
createTypeBoundOps__sempass50_133(tracked, (*(*n)._kind_6.sons.p->data[((NI)0)]).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA55_: ;
{
NIM_BOOL T59_;
NIM_BOOL T61_;
T59_ = (NIM_BOOL)0;
T59_ = !(((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)));
if (T59_) goto LA60_;
T61_ = (NIM_BOOL)0;
T61_ = isLocalSym__sempass50_153(tracked, (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T59_ = !(T61_);
LA60_: ;
if (!T59_) goto LA62_;
checkForSink__sempass50_3738(tracked, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T66_;
NimStringV2 colontmpD__2;
tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA T71_;
NimStringV2 T72_;
T66_ = (NIM_BOOL)0;
T66_ = strictFuncsActive__sempass50_3745(tracked);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(T66_)) goto LA67_;
T66_ = isDangerousLocation__semstrictfuncs_6((*n)._kind_6.sons.p->data[((NI)0)], (*tracked).owner);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA67_: ;
if (!T66_) goto LA68_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
(*tracked).hasSideEffect = NIM_TRUE;
T71_ = 0;
T72_.len = 0; T72_.p = NIM_NIL;
T72_ = renderTree__renderer_50((*n)._kind_6.sons.p->data[((NI)0)], T71_);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
colontmpD__2 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_92, T72_);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
liMessage__msgs_1172((*tracked).config, (*(*n)._kind_6.sons.p->data[((NI)0)]).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_93), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
{
LA70_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA68_: ;
}
LA62_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)99):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)100):
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child;
child = NIM_NIL;
{
NI i_5;
NI colontmp__3;
NI i_6;
i_5 = (NI)0;
colontmp__3 = (NI)0;
colontmp__3 = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA77_;
i_6 = ((NI)0);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* last;
if (!(i_6 < colontmp__3)) goto LA80 ;
last = NIM_NIL;
i_5 = i_6;
eqcopy___ast_3457(&child, (*n)._kind_6.sons.p->data[i_5]);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
last = lastSon__ast_6268(child);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
{
if (!!(((*last).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA84_;
track__sempass50_2640(tracked, last);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
}
LA84_: ;
{
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA88_;
{
NI T94_;
if (!((*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)36))) goto LA92_;
T94_ = (NI)0;
T94_ = len__ast_3325(child);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
createTypeBoundOps__sempass50_133(tracked, (*(*child)._kind_6.sons.p->data[(NI)(T94_ - ((NI)1))]).typ, (*child).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
{
NI i_7;
NI colontmp__4;
NI T96_;
NI i_8;
i_7 = (NI)0;
colontmp__4 = (NI)0;
T96_ = (NI)0;
T96_ = len__ast_3325(child);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
colontmp__4 = (NI)(T96_ - ((NI)2));
i_8 = ((NI)0);
{
while (1) {
if (!(i_8 < colontmp__4)) goto LA98 ;
i_7 = i_8;
createTypeBoundOps__sempass50_133(tracked, (*(*child)._kind_6.sons.p->data[i_7]).typ, (*child).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
i_8 += ((NI)1);
} LA98: ;
}
}
}
goto LA90_;
LA92_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
colontmpD__3 = NIM_NIL;
colontmpD__3 = skipPragmaExpr__ast_3910((*child)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA100_;
createTypeBoundOps__sempass50_133(tracked, (*colontmpD__3).typ, (*child).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA100_;
{
LA100_:;
}
{
oldNimErrFin100_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
*nimErr_ = oldNimErrFin100_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
}
LA90_: ;
}
LA88_: ;
{
if (!((*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)35))) goto LA105_;
{
NI i_9;
NI colontmp__5;
NI T108_;
NI i_10;
i_9 = (NI)0;
colontmp__5 = (NI)0;
T108_ = (NI)0;
T108_ = len__ast_3325(child);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
colontmp__5 = (NI)(T108_ - ((NI)2));
i_10 = ((NI)0);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
if (!(i_10 < colontmp__5)) goto LA110 ;
a = NIM_NIL;
i_9 = i_10;
a = skipPragmaExpr__ast_3910((*child)._kind_6.sons.p->data[i_9]);
if (NIM_UNLIKELY(*nimErr_)) goto LA111_;
varDecl__sempass50_281(tracked, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA111_;
{
if (!!(((*last).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA114_;
initVar__sempass50_353(tracked, a, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA111_;
addAsgnFact__guards_1938((&(*tracked).guards), a, last);
if (NIM_UNLIKELY(*nimErr_)) goto LA111_;
notNilCheck__sempass50_2991(tracked, last, (*a).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA111_;
}
LA114_: ;
i_10 += ((NI)1);
{
LA111_:;
}
{
oldNimErrFin111_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&a);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
*nimErr_ = oldNimErrFin111_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
} LA110: ;
}
}
}
goto LA103_;
LA105_: ;
{
if (!((*child).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)36))) goto LA119_;
{
NI i_11;
NI colontmp__6;
NI T122_;
NI i_12;
i_11 = (NI)0;
colontmp__6 = (NI)0;
T122_ = (NI)0;
T122_ = len__ast_3325(child);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
colontmp__6 = (NI)(T122_ - ((NI)1));
i_12 = ((NI)0);
{
while (1) {
if (!(i_12 < colontmp__6)) goto LA124 ;
i_11 = i_12;
{
{
NIM_BOOL T128_;
NIM_BOOL T130_;
T128_ = (NIM_BOOL)0;
T128_ = ((*(*child)._kind_6.sons.p->data[i_11]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1));
if (T128_) goto LA129_;
T130_ = (NIM_BOOL)0;
T130_ = ((*(*child)._kind_6.sons.p->data[i_11]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T130_)) goto LA131_;
T130_ = eqStrings((*(*(*(*child)._kind_6.sons.p->data[i_11])._kind_4.sym).name).s, TM__O8rpA4QnF63fyis4dAzZxA_95);
LA131_: ;
T128_ = T130_;
LA129_: ;
if (!T128_) goto LA132_;
goto LA125;
}
LA132_: ;
varDecl__sempass50_281(tracked, (*child)._kind_6.sons.p->data[i_11]);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
{
if (!!(((*last).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA136_;
initVar__sempass50_353(tracked, (*child)._kind_6.sons.p->data[i_11], NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
}
LA136_: ;
{
if (!((*last).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)37) || (*last).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)160))) goto LA140_;
addAsgnFact__guards_1938((&(*tracked).guards), (*child)._kind_6.sons.p->data[i_11], (*last)._kind_6.sons.p->data[i_11]);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
notNilCheck__sempass50_2991(tracked, (*last)._kind_6.sons.p->data[i_11], (*(*child)._kind_6.sons.p->data[i_11]).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
}
LA140_: ;
} LA125: ;
i_12 += ((NI)1);
} LA124: ;
}
}
}
goto LA103_;
LA119_: ;
LA103_: ;
i_6 += ((NI)1);
{
LA81_:;
}
{
oldNimErrFin81_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&last);
if (NIM_UNLIKELY(*nimErr_)) goto LA77_;
*nimErr_ = oldNimErrFin81_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA77_;
} LA80: ;
}
}
{
LA77_:;
}
{
oldNimErrFin77_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&child);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin77_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)101):
{
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* child_2;
child_2 = NIM_NIL;
{
NI i_13;
NI colontmp__7;
NI i_14;
i_13 = (NI)0;
colontmp__7 = (NI)0;
colontmp__7 = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA148_;
i_14 = ((NI)0);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* last_2;
if (!(i_14 < colontmp__7)) goto LA151 ;
last_2 = NIM_NIL;
i_13 = i_14;
eqcopy___ast_3457(&child_2, (*n)._kind_6.sons.p->data[i_13]);
if (NIM_UNLIKELY(*nimErr_)) goto LA152_;
last_2 = lastSon__ast_6268(child_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA152_;
track__sempass50_2640(tracked, last_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA152_;
i_14 += ((NI)1);
{
LA152_:;
}
{
oldNimErrFin152_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&last_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA148_;
*nimErr_ = oldNimErrFin152_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA148_;
} LA151: ;
}
}
{
LA148_:;
}
{
oldNimErrFin148_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&child_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin148_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)97):
{
trackCase__sempass50_3392(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)93):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)92):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)48):
{
trackIf__sempass50_3508(tracked, n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)112):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)127):
{
trackBlock__sempass50_3636(tracked, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)96):
{
(*tracked).currentBlock += ((NI)1);
{
NIM_BOOL T163_;
T163_ = (NIM_BOOL)0;
T163_ = isTrue__trees_382((*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T163_) goto LA164_;
trackBlock__sempass50_3636(tracked, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA161_;
LA164_: ;
{
NI oldState;
NI T167_;
NI oldFacts;
NI T168_;
T167_ = (*tracked).init.len;
oldState = T167_;
T168_ = (*tracked).guards.s.len;
oldFacts = T168_;
addFact__guards_618((&(*tracked).guards), (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState)));
setLen__ast_3741((&(*tracked).guards.s), ((NI) (oldFacts)));
}
LA161_: ;
(*tracked).currentBlock -= ((NI)1);
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)94):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)95):
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* iterCall;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* loopBody;
NI oldState_2;
NI T171_;
NI oldFacts_2;
NI T172_;
NI T173_;
NI T228_;
iterCall = NIM_NIL;
loopBody = NIM_NIL;
(*tracked).currentBlock += ((NI)1);
T171_ = (*tracked).init.len;
oldState_2 = T171_;
T172_ = (*tracked).guards.s.len;
oldFacts_2 = T172_;
T173_ = (NI)0;
T173_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
eqcopy___ast_3457(&iterCall, (*n)._kind_6.sons.p->data[(NI)(T173_ - ((NI)2))]);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
{
NIM_BOOL T176_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* op;
T176_ = (NIM_BOOL)0;
T176_ = (((*tracked).currOptions &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)9)))&31U)))!=0);
if (!(T176_)) goto LA177_;
T176_ = ((*iterCall).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27) || (*iterCall).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29) || (*iterCall).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30) || (*iterCall).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)31) || (*iterCall).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) || (*iterCall).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)28) || (*iterCall).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32));
LA177_: ;
if (!T176_) goto LA178_;
op = NIM_NIL;
eqcopy___ast_3457(&op, (*iterCall)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA180_;
{
NIM_BOOL T183_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* iterVar;
T183_ = (NIM_BOOL)0;
T183_ = ((*op).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T183_)) goto LA184_;
T183_ = fromSystem__astalgo_242((*op)._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA180_;
LA184_: ;
if (!T183_) goto LA185_;
iterVar = NIM_NIL;
eqcopy___ast_3457(&iterVar, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA187_;
if (eqStrings((*(*(*op)._kind_4.sym).name).s, TM__O8rpA4QnF63fyis4dAzZxA_98)) goto LA188_;
if (eqStrings((*(*(*op)._kind_4.sym).name).s, TM__O8rpA4QnF63fyis4dAzZxA_100)) goto LA188_;
if (eqStrings((*(*(*op)._kind_4.sym).name).s, TM__O8rpA4QnF63fyis4dAzZxA_102)) goto LA188_;
if (eqStrings((*(*(*op)._kind_4.sym).name).s, TM__O8rpA4QnF63fyis4dAzZxA_104)) goto LA189_;
goto LA190_;
LA188_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* lower;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* upper;
lower = NIM_NIL;
upper = NIM_NIL;
eqcopy___ast_3457(&lower, (*iterCall)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA193_;
eqcopy___ast_3457(&upper, (*iterCall)._kind_6.sons.p->data[((NI)2)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA193_;
addFactLe__guards_1842((&(*tracked).guards), lower, iterVar);
if (NIM_UNLIKELY(*nimErr_)) goto LA193_;
addFactLe__guards_1842((&(*tracked).guards), iterVar, upper);
if (NIM_UNLIKELY(*nimErr_)) goto LA193_;
{
LA193_:;
}
{
oldNimErrFin193_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&upper);
if (NIM_UNLIKELY(*nimErr_)) goto LA187_;
eqdestroy___ast_3454(&lower);
if (NIM_UNLIKELY(*nimErr_)) goto LA187_;
*nimErr_ = oldNimErrFin193_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA187_;
}
goto LA191_;
LA189_: ;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* lower_2;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* upper_2;
lower_2 = NIM_NIL;
upper_2 = NIM_NIL;
eqcopy___ast_3457(&lower_2, (*iterCall)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA197_;
eqcopy___ast_3457(&upper_2, (*iterCall)._kind_6.sons.p->data[((NI)2)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA197_;
addFactLe__guards_1842((&(*tracked).guards), lower_2, iterVar);
if (NIM_UNLIKELY(*nimErr_)) goto LA197_;
addFactLt__guards_1850((&(*tracked).guards), iterVar, upper_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA197_;
{
LA197_:;
}
{
oldNimErrFin197_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&upper_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA187_;
eqdestroy___ast_3454(&lower_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA187_;
*nimErr_ = oldNimErrFin197_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA187_;
}
goto LA191_;
LA190_: ;
{
}
LA191_: ;
{
LA187_:;
}
{
oldNimErrFin187_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&iterVar);
if (NIM_UNLIKELY(*nimErr_)) goto LA180_;
*nimErr_ = oldNimErrFin187_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA180_;
}
LA185_: ;
{
LA180_:;
}
{
oldNimErrFin180_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&op);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
*nimErr_ = oldNimErrFin180_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
}
LA178_: ;
{
NI i_15;
NI colontmp__8;
NI T206_;
NI i_16;
i_15 = (NI)0;
colontmp__8 = (NI)0;
T206_ = (NI)0;
T206_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
colontmp__8 = (NI)(T206_ - ((NI)2));
i_16 = ((NI)0);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* it;
if (!(i_16 < colontmp__8)) goto LA208 ;
it = NIM_NIL;
i_15 = i_16;
eqcopy___ast_3457(&it, (*n)._kind_6.sons.p->data[i_15]);
if (NIM_UNLIKELY(*nimErr_)) goto LA209_;
track__sempass50_2640(tracked, it);
if (NIM_UNLIKELY(*nimErr_)) goto LA209_;
{
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA212_;
{
if (!((*it).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)36))) goto LA216_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x;
x = NIM_NIL;
x = 0;
{
NI i_17;
NI colontmp__9;
NI i_18;
i_17 = (NI)0;
colontmp__9 = (NI)0;
colontmp__9 = safeLen__ast_3318(it);
if (NIM_UNLIKELY(*nimErr_)) goto LA219_;
i_18 = ((NI)0);
{
while (1) {
if (!(i_18 < colontmp__9)) goto LA222 ;
i_17 = i_18;
eqcopy___ast_3457(&x, (*it)._kind_6.sons.p->data[i_17]);
if (NIM_UNLIKELY(*nimErr_)) goto LA219_;
createTypeBoundOps__sempass50_133(tracked, (*x).typ, (*x).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA219_;
i_18 += ((NI)1);
} LA222: ;
}
}
{
LA219_:;
}
{
oldNimErrFin219_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&x);
if (NIM_UNLIKELY(*nimErr_)) goto LA209_;
*nimErr_ = oldNimErrFin219_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA209_;
}
}
goto LA214_;
LA216_: ;
{
createTypeBoundOps__sempass50_133(tracked, (*it).typ, (*it).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA209_;
}
LA214_: ;
}
LA212_: ;
i_16 += ((NI)1);
{
LA209_:;
}
{
oldNimErrFin209_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&it);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
*nimErr_ = oldNimErrFin209_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
} LA208: ;
}
}
T228_ = (NI)0;
T228_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
eqcopy___ast_3457(&loopBody, (*n)._kind_6.sons.p->data[(NI)(T228_ - ((NI)1))]);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
{
NIM_BOOL T231_;
NI T233_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__4;
T231_ = (NIM_BOOL)0;
T231_ = !(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)));
if (!(T231_)) goto LA232_;
T233_ = (NI)0;
T233_ = safeLen__ast_3318(iterCall);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
T231_ = (((NI)1) < T233_);
LA232_: ;
if (!T231_) goto LA234_;
colontmpD__4 = NIM_NIL;
{
NIM_BOOL T239_;
T239_ = (NIM_BOOL)0;
T239_ = !(((*(*iterCall)._kind_6.sons.p->data[((NI)1)]).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T239_)) goto LA240_;
colontmpD__4 = skipTypes__ast_4803((*(*iterCall)._kind_6.sons.p->data[((NI)1)]).typ, TM__O8rpA4QnF63fyis4dAzZxA_38);
if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
T239_ = !(((*colontmpD__4).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)48) || (*colontmpD__4).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)27)));
LA240_: ;
if (!T239_) goto LA241_;
createTypeBoundOps__sempass50_133(tracked, (*(*iterCall)._kind_6.sons.p->data[((NI)1)]).typ, (*(*iterCall)._kind_6.sons.p->data[((NI)1)]).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA236_;
}
LA241_: ;
{
LA236_:;
}
{
oldNimErrFin236_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__4);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
*nimErr_ = oldNimErrFin236_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
}
LA234_: ;
track__sempass50_2640(tracked, iterCall);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
track__sempass50_2640(tracked, loopBody);
if (NIM_UNLIKELY(*nimErr_)) goto LA170_;
setLen__pureZosproc_310((&(*tracked).init), ((NI) (oldState_2)));
setLen__ast_3741((&(*tracked).guards.s), ((NI) (oldFacts_2)));
(*tracked).currentBlock -= ((NI)1);
{
LA170_:;
}
{
oldNimErrFin170_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&loopBody);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&iterCall);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin170_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)38):
{
NI oldFacts_3;
NI T248_;
T248_ = (*tracked).guards.s.len;
oldFacts_3 = T248_;
{
NI i_19;
NI colontmp__10;
NI i_20;
i_19 = (NI)0;
colontmp__10 = (NI)0;
colontmp__10 = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_20 = ((NI)1);
{
while (1) {
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x_2;
if (!(i_20 < colontmp__10)) goto LA251 ;
x_2 = NIM_NIL;
i_19 = i_20;
eqcopy___ast_3457(&x_2, (*n)._kind_6.sons.p->data[i_19]);
if (NIM_UNLIKELY(*nimErr_)) goto LA252_;
track__sempass50_2640(tracked, x_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA252_;
{
NIM_BOOL T255_;
T255_ = (NIM_BOOL)0;
T255_ = ((*(*x_2)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T255_)) goto LA256_;
T255_ = (((*(*(*x_2)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)20)))&63U)))!=0);
LA256_: ;
if (!T255_) goto LA257_;
addDiscriminantFact__guards_1925((&(*tracked).guards), x_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA252_;
}
LA257_: ;
{
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA261_;
createTypeBoundOps__sempass50_133(tracked, (*(*x_2)._kind_6.sons.p->data[((NI)1)]).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA252_;
}
LA261_: ;
{
if (!((*x_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34))) goto LA265_;
{
if (!((*(*x_2)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3))) goto LA269_;
notNilCheck__sempass50_2991(tracked, (*x_2)._kind_6.sons.p->data[((NI)1)], (*(*(*x_2)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA252_;
}
LA269_: ;
checkForSink__sempass50_3738(tracked, (*x_2)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA252_;
}
goto LA263_;
LA265_: ;
{
checkForSink__sempass50_3738(tracked, x_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA252_;
}
LA263_: ;
i_20 += ((NI)1);
{
LA252_:;
}
{
oldNimErrFin252_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&x_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin252_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA251: ;
}
}
setLen__ast_3741((&(*tracked).guards.s), ((NI) (oldFacts_3)));
{
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__5;
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA276_;
colontmpD__5 = NIM_NIL;
{
NIM_BOOL T281_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__6;
T281_ = (NIM_BOOL)0;
T281_ = !(((*n).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T281_)) goto LA282_;
colontmpD__5 = skipTypes__ast_4803((*n).typ, TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA278_;
T281_ = ((*colontmpD__5).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22));
LA282_: ;
if (!T281_) goto LA283_;
colontmpD__6 = NIM_NIL;
colontmpD__6 = lastSon__ast_4811((*n).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA285_;
createTypeBoundOps__sempass50_133(tracked, colontmpD__6, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA285_;
{
LA285_:;
}
{
oldNimErrFin285_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__6);
if (NIM_UNLIKELY(*nimErr_)) goto LA278_;
*nimErr_ = oldNimErrFin285_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA278_;
}
LA283_: ;
createTypeBoundOps__sempass50_133(tracked, (*n).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA278_;
{
LA278_:;
}
{
oldNimErrFin278_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__5);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin278_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA276_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)160):
{
{
NI i_21;
NI colontmp__11;
NI i_22;
i_21 = (NI)0;
colontmp__11 = (NI)0;
colontmp__11 = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_22 = ((NI)0);
{
while (1) {
if (!(i_22 < colontmp__11)) goto LA293 ;
i_21 = i_22;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[i_21]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA296_;
{
if (!((*(*n)._kind_6.sons.p->data[i_21]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34))) goto LA300_;
createTypeBoundOps__sempass50_133(tracked, (*(*(*n)._kind_6.sons.p->data[i_21])._kind_6.sons.p->data[((NI)0)]).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA298_;
LA300_: ;
{
createTypeBoundOps__sempass50_133(tracked, (*(*n)._kind_6.sons.p->data[i_21]).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA298_: ;
}
LA296_: ;
checkForSink__sempass50_3738(tracked, (*n)._kind_6.sons.p->data[i_21]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_22 += ((NI)1);
} LA293: ;
}
}
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)91):
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragmaList;
tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw bc;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__7;
pragmaList = NIM_NIL;
nimZeroMem((void*)(&bc), sizeof(tyObject_PragmaBlockContext__PuXkLwuijM7DDamSfgfAxw));
colontmpD__7 = NIM_NIL;
eqcopy___ast_3457(&pragmaList, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
createBlockContext__sempass50_4145(tracked, (&bc));
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
{
NI i_23;
NI colontmp__12;
NI i_24;
i_23 = (NI)0;
colontmp__12 = (NI)0;
colontmp__12 = len__ast_3325(pragmaList);
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
i_24 = ((NI)0);
{
while (1) {
tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA pragma;
if (!(i_24 < colontmp__12)) goto LA307 ;
i_23 = i_24;
pragma = whichPragma__trees_251((*pragmaList)._kind_6.sons.p->data[i_23]);
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
switch (pragma) {
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)223):
{
lockLocations__sempass50_177(tracked, (*pragmaList)._kind_6.sons.p->data[i_23]);
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
}
break;
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)110):
{
bc.enforcedGcSafety = NIM_TRUE;
}
break;
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)109):
{
bc.enforceNoSideEffects = NIM_TRUE;
}
break;
case ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)9):
{
castBlock__sempass50_4226(tracked, (*(*pragmaList)._kind_6.sons.p->data[i_23])._kind_6.sons.p->data[((NI)1)], (&bc));
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
}
break;
default:
{
}
break;
}
i_24 += ((NI)1);
} LA307: ;
}
}
applyBlockContext__sempass50_4189(tracked, (&bc));
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
colontmpD__7 = lastSon__ast_6268(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
track__sempass50_2640(tracked, colontmpD__7);
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
unapplyBlockContext__sempass50_4192(tracked, (&bc));
if (NIM_UNLIKELY(*nimErr_)) goto LA304_;
{
LA304_:;
}
{
oldNimErrFin304_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__7);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___sempass50_4165((&bc));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&pragmaList);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin304_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)79):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)81):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)80):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)51):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)159):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)52):
{
{
NIM_BOOL T318_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__8;
T318_ = (NIM_BOOL)0;
T318_ = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T318_)) goto LA319_;
T318_ = !(((*(*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).ast == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)));
LA319_: ;
if (!T318_) goto LA320_;
colontmpD__8 = NIM_NIL;
colontmpD__8 = getBody__modulegraphs_14894((*tracked).graph, (*(*n)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA322_;
trackInnerProc__sempass50_4260(tracked, colontmpD__8);
if (NIM_UNLIKELY(*nimErr_)) goto LA322_;
{
LA322_:;
}
{
oldNimErrFin322_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&colontmpD__8);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin322_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA320_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)98):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)82):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)83):
{
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)61):
{
{
NI T329_;
T329_ = (NI)0;
T329_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(T329_ == ((NI)2))) goto LA330_;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA334_;
createTypeBoundOps__sempass50_133(tracked, (*n).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA334_: ;
}
LA330_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)58):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)59):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)60):
{
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__9;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__10;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t;
colontmpD__9 = NIM_NIL;
colontmpD__10 = NIM_NIL;
t = NIM_NIL;
{
NIM_BOOL T340_;
NIM_BOOL T341_;
NIM_BOOL T344_;
NimStringV2 colontmpD__11;
NimStringV2 T348_;
T340_ = (NIM_BOOL)0;
T341_ = (NIM_BOOL)0;
T341_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)58) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)59));
if (!(T341_)) goto LA342_;
colontmpD__9 = skipTypes__ast_4803((*n).typ, TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
T341_ = ((*colontmpD__9).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)29));
LA342_: ;
T340_ = T341_;
if (!(T340_)) goto LA343_;
T344_ = (NIM_BOOL)0;
T344_ = allowCStringConv__sempass50_4304((*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
T340_ = !(T344_);
LA343_: ;
if (!T340_) goto LA345_;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
T348_.len = 0; T348_.p = NIM_NIL;
T348_ = dollar___renderer_2511((*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA347_;
colontmpD__11 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_112, T348_);
if (NIM_UNLIKELY(*nimErr_)) goto LA347_;
liMessage__msgs_1172((*tracked).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)69), colontmpD__11, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_113), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA347_;
{
LA347_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__11));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
}
LA345_: ;
{
NIM_BOOL T353_;
NimStringV2 colontmpD__12;
T353_ = (NIM_BOOL)0;
colontmpD__10 = skipTypes__ast_4803((*n).typ, TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
T353_ = ((*colontmpD__10).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)29));
if (!(T353_)) goto LA354_;
T353_ = isCharArrayPtr__types_4388((*(*n)._kind_6.sons.p->data[((NI)1)]).typ, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
LA354_: ;
if (!T353_) goto LA355_;
colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
colontmpD__12 = typeToString__types_51((*(*n)._kind_6.sons.p->data[((NI)1)]).typ, ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0));
if (NIM_UNLIKELY(*nimErr_)) goto LA357_;
liMessage__msgs_1172((*tracked).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)70), colontmpD__12, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_114), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA357_;
{
LA357_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__12));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
}
LA355_: ;
t = skipTypes__ast_4803((*n).typ, TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
{
if (!((*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)14))) goto LA362_;
{
NimStringV2 colontmpD__13;
NimStringV2 T369_;
if (!(((*t).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)5)))&63U)))!=0)) goto LA366_;
colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
T369_.len = 0; T369_.p = NIM_NIL;
T369_ = dollar___renderer_2511(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA368_;
colontmpD__13 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_116, T369_);
if (NIM_UNLIKELY(*nimErr_)) goto LA368_;
liMessage__msgs_1172((*tracked).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)68), colontmpD__13, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_117), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA368_;
{
LA368_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__13));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
}
goto LA364_;
LA366_: ;
{
NimStringV2 colontmpD__14;
NimStringV2 T374_;
colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
T374_.len = 0; T374_.p = NIM_NIL;
T374_ = dollar___renderer_2511(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA373_;
colontmpD__14 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_119, T374_);
if (NIM_UNLIKELY(*nimErr_)) goto LA373_;
liMessage__msgs_1172((*tracked).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)67), colontmpD__14, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_120), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA373_;
{
LA373_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__14));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
}
LA364_: ;
}
LA362_: ;
{
NI T379_;
T379_ = (NI)0;
T379_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
if (!(T379_ == ((NI)2))) goto LA380_;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
{
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA384_;
createTypeBoundOps__sempass50_133(tracked, (*n).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
{
if (!!(((*(*(*n)._kind_6.sons.p->data[((NI)1)]).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)28)))) goto LA388_;
createTypeBoundOps__sempass50_133(tracked, (*(*n)._kind_6.sons.p->data[((NI)1)]).typ, (*(*n)._kind_6.sons.p->data[((NI)1)]).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
}
LA388_: ;
}
LA384_: ;
{
if (!(((*tracked).currOptions &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)9)))&31U)))!=0)) goto LA392_;
checkRange__sempass50_3721(tracked, (*n)._kind_6.sons.p->data[((NI)1)], (*n).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA337_;
}
LA392_: ;
}
LA380_: ;
{
LA337_:;
}
{
oldNimErrFin337_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&t);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&colontmpD__10);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&colontmpD__9);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin337_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)67):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)66):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)70):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)68):
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)69):
{
{
NI T399_;
T399_ = (NI)0;
T399_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(T399_ == ((NI)1))) goto LA400_;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA404_;
createTypeBoundOps__sempass50_133(tracked, (*n).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
createTypeBoundOps__sempass50_133(tracked, (*(*n)._kind_6.sons.p->data[((NI)0)]).typ, (*(*n)._kind_6.sons.p->data[((NI)0)]).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA404_: ;
{
if (!(((*tracked).currOptions &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)9)))&31U)))!=0)) goto LA408_;
checkRange__sempass50_3721(tracked, (*n)._kind_6.sons.p->data[((NI)0)], (*n).typ);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA408_: ;
}
LA400_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)41):
{
{
NI i_25;
NI colontmp__13;
NI i_26;
i_25 = (NI)0;
colontmp__13 = (NI)0;
colontmp__13 = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_26 = ((NI)0);
{
while (1) {
if (!(i_26 < colontmp__13)) goto LA413 ;
i_25 = i_26;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[i_25]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
checkForSink__sempass50_3738(tracked, (*n)._kind_6.sons.p->data[i_25]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_26 += ((NI)1);
} LA413: ;
}
}
{
if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA416_;
createTypeBoundOps__sempass50_133(tracked, (*n).typ, (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA416_: ;
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42):
{
{
NIM_BOOL T421_;
NI T423_;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__15;
T421_ = (NIM_BOOL)0;
T421_ = (((*tracked).currOptions &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)9)))&31U)))!=0);
if (!(T421_)) goto LA422_;
T423_ = (NI)0;
T423_ = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T421_ = (T423_ == ((NI)2));
LA422_: ;
if (!T421_) goto LA424_;
colontmpD__15 = NIM_NIL;
{
NIM_BOOL T429_;
T429_ = (NIM_BOOL)0;
T429_ = !(((*(*n)._kind_6.sons.p->data[((NI)0)]).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)));
if (!(T429_)) goto LA430_;
colontmpD__15 = skipTypes__ast_4803((*(*n)._kind_6.sons.p->data[((NI)0)]).typ, TM__O8rpA4QnF63fyis4dAzZxA_38);
if (NIM_UNLIKELY(*nimErr_)) goto LA426_;
T429_ = !(((*colontmpD__15).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)18)));
LA430_: ;
if (!T429_) goto LA431_;
checkBounds__sempass50_3717(tracked, (*n)._kind_6.sons.p->data[((NI)0)], (*n)._kind_6.sons.p->data[((NI)1)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA426_;
}
LA431_: ;
{
LA426_:;
}
{
oldNimErrFin426_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__15);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin426_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA424_: ;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*tracked).leftPartOfAsgn -= ((NI)1);
{
NI i_27;
NI colontmp__14;
NI i_28;
i_27 = (NI)0;
colontmp__14 = (NI)0;
colontmp__14 = len__ast_3325(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_28 = ((NI)1);
{
while (1) {
if (!(i_28 < colontmp__14)) goto LA437 ;
i_27 = i_28;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[i_27]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_28 += ((NI)1);
} LA437: ;
}
}
(*tracked).leftPartOfAsgn += ((NI)1);
}
break;
case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)161):
{
NimStringV2 colontmpD__16;
colontmpD__16.len = 0; colontmpD__16.p = NIM_NIL;
colontmpD__16 = errorToString__errorhandling_109((*tracked).config, n);
if (NIM_UNLIKELY(*nimErr_)) goto LA439_;
liMessage__msgs_1172((*tracked).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__16, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_122), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA439_;
{
LA439_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__16));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
default:
{
{
NI i_29;
NI colontmp__15;
NI i_30;
i_29 = (NI)0;
colontmp__15 = (NI)0;
colontmp__15 = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_30 = ((NI)0);
{
while (1) {
if (!(i_30 < colontmp__15)) goto LA445 ;
i_29 = i_30;
track__sempass50_2640(tracked, (*n)._kind_6.sons.p->data[i_29]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_30 += ((NI)1);
} LA445: ;
}
}
}
break;
}
}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, isClosure__ast_6472)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = ((*typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25));
if (!(T1_)) goto LA2_;
T1_ = ((*typ).callConv == ((tyEnum_TCallingConvention__XL1p2EKvOAlAHpc68ecZPw)9));
LA2_: ;
result = T1_;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, patchResult__sempass50_3679)(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw* c, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
NIM_BOOL oldNimErrFin7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* fn;
T3_ = (NIM_BOOL)0;
T3_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3));
if (!(T3_)) goto LA4_;
T3_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)11));
LA4_: ;
if (!T3_) goto LA5_;
fn = NIM_NIL;
eqcopy___ast_4063(&fn, (*c).owner);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
{
NIM_BOOL T10_;
NIM_BOOL T11_;
NIM_BOOL T12_;
NI T16_;
T10_ = (NIM_BOOL)0;
T11_ = (NIM_BOOL)0;
T12_ = (NIM_BOOL)0;
T12_ = !((fn == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)));
if (!(T12_)) goto LA13_;
T12_ = ((*fn).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*fn).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*fn).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*fn).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*fn).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*fn).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*fn).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18));
LA13_: ;
T11_ = T12_;
if (!(T11_)) goto LA14_;
T11_ = !(((*fn).ast == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)));
LA14_: ;
T10_ = T11_;
if (!(T10_)) goto LA15_;
T16_ = (NI)0;
T16_ = len__ast_3325((*fn).ast);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
T10_ = (((NI)7) < T16_);
LA15_: ;
if (!T10_) goto LA17_;
eqcopy___ast_4063(&(*n)._kind_4.sym, (*(*(*fn).ast)._kind_6.sons.p->data[((NI)7)])._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
}
goto LA8_;
LA17_: ;
{
liMessage__msgs_1172((*c).config, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__O8rpA4QnF63fyis4dAzZxA_131, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_132), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
}
LA8_: ;
{
LA7_:;
}
{
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&fn);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin7_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA5_: ;
{
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = safeLen__ast_3318(n);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA25 ;
i = i_2;
patchResult__sempass50_3679(c, (*n)._kind_6.sons.p->data[i]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 += ((NI)1);
} LA25: ;
}
}
}
LA1_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, listGcUnsafety__sempass50_605)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, NIM_BOOL onlyWarning, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* cycleCheck, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* u;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym55_;
NIM_BOOL oldNimErrFin15_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
u = NIM_NIL;
xX60gensym55_ = NIM_NIL;
eqcopy___ast_4063(&u, (*s)._kind_1.gcUnsafetyReason);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T4_;
NIM_BOOL T6_;
tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA colontmpD_;
tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA colontmpD__2;
tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msgKind;
T4_ = (NIM_BOOL)0;
T4_ = !((u == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)));
if (!(T4_)) goto LA5_;
xX60gensym55_ = u;
T6_ = (NIM_BOOL)0;
T6_ = containsOrIncl__astalgo_402(cycleCheck, (NI)((NI)((NU64)(((NI) ((*xX60gensym55_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym55_).Sup.itemId.item))));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T4_ = !(T6_);
LA5_: ;
if (!T4_) goto LA7_;
colontmpD_ = (tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)0;
colontmpD__2 = (tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)0;
{
if (!onlyWarning) goto LA11_;
colontmpD_ = ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)52);
msgKind = colontmpD_;
}
goto LA9_;
LA11_: ;
{
colontmpD__2 = ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17);
msgKind = colontmpD__2;
}
LA9_: ;
switch ((*u).kind) {
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9):
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)8):
{
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__3;
colontmpD__3 = NIM_NIL;
{
NimStringV2 colontmpD__4;
tyArray__Re75IspeoxXy2oCZHwcRrA T21_;
colontmpD__3 = skipTypes__ast_4803((*u).typ, TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
if (!((*colontmpD__3).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)25))) goto LA18_;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
T21_[0] = (*(*s).name).s;
T21_[1] = (*(*u).name).s;
colontmpD__4 = nsuFormatOpenArray(TM__O8rpA4QnF63fyis4dAzZxA_134, T21_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
liMessage__msgs_1172(conf, (*s).info, msgKind, colontmpD__4, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_135), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
{
LA20_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__4));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
}
goto LA16_;
LA18_: ;
{
NimStringV2 colontmpD__5;
tyArray__Re75IspeoxXy2oCZHwcRrA T26_;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
T26_[0] = (*(*s).name).s;
T26_[1] = (*(*u).name).s;
colontmpD__5 = nsuFormatOpenArray(TM__O8rpA4QnF63fyis4dAzZxA_137, T26_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
liMessage__msgs_1172(conf, (*s).info, msgKind, colontmpD__5, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_138), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
{
LA25_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__5));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
}
LA16_: ;
{
LA15_:;
}
{
oldNimErrFin15_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3543(&colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin15_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
break;
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) ... ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18):
{
{
NIM_BOOL T34_;
NimStringV2 colontmpD__6;
tyArray__nHXaesL0DJZHyVS07ARPRA T39_;
T34_ = (NIM_BOOL)0;
T34_ = ((*u).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14));
if (!(T34_)) goto LA35_;
T34_ = ((68157440 & (*u).flags) == 1048576);
LA35_: ;
if (!T34_) goto LA36_;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
T39_[0] = (*(*u).name).s;
colontmpD__6 = nsuFormatOpenArray(TM__O8rpA4QnF63fyis4dAzZxA_140, T39_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
liMessage__msgs_1172(conf, (*u).info, msgKind, colontmpD__6, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_141), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
{
LA38_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__6));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA32_;
LA36_: ;
{
NimStringV2 colontmpD__7;
tyArray__Re75IspeoxXy2oCZHwcRrA T44_;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
listGcUnsafety__sempass50_605(u, NIM_TRUE, cycleCheck, conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA43_;
T44_[0] = (*(*s).name).s;
T44_[1] = (*(*u).name).s;
colontmpD__7 = nsuFormatOpenArray(TM__O8rpA4QnF63fyis4dAzZxA_142, T44_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA43_;
liMessage__msgs_1172(conf, (*s).info, msgKind, colontmpD__7, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_143), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA43_;
{
LA43_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__7));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA32_: ;
}
break;
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3):
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)21):
{
NimStringV2 colontmpD__8;
tyArray__Re75IspeoxXy2oCZHwcRrA T49_;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
T49_[0] = (*(*s).name).s;
T49_[1] = (*(*u).name).s;
colontmpD__8 = nsuFormatOpenArray(TM__O8rpA4QnF63fyis4dAzZxA_145, T49_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
liMessage__msgs_1172(conf, (*s).info, msgKind, colontmpD__8, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_146), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
{
LA48_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__8));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
break;
default:
{
NimStringV2 colontmpD__9;
NimStringV2 colontmpD__10;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__9), (*(*s).name).s);
colontmpD__10 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_148, colontmpD__9);
if (NIM_UNLIKELY(*nimErr_)) goto LA53_;
liMessage__msgs_1172(conf, (*u).info, msgKind, colontmpD__10, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_149), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA53_;
{
LA53_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__10));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
break;
}
}
LA7_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&u);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, listGcUnsafety__sempass50_642)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, NIM_BOOL onlyWarning, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA cycleCheck;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&cycleCheck), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
initIntSet__pureZcollectionsZintsets_389((&cycleCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
listGcUnsafety__sempass50_605(s, onlyWarning, (&cycleCheck), conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_181((&cycleCheck));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, listSideEffects__sempass50_647)(NimStringV2* result, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* cycleCheck, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* context, NI indentLevel) {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym68_;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL oldNimErrFin7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
xX60gensym68_ = NIM_NIL;
{
NIM_BOOL T3_;
xX60gensym68_ = s;
T3_ = (NIM_BOOL)0;
T3_ = hasKey__sempass50_723((*context).sideEffects, (NI)((NI)((NU64)(((NI) ((*xX60gensym68_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym68_).Sup.itemId.item))));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T3_) goto LA4_;
{
tySequence__9csKSQ865Bdwb8TbX9cOogww colontmp_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym71_;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg* useLineInfo;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA** u;
tySequence__9csKSQ865Bdwb8TbX9cOogww* T8_;
NI i;
NI L;
NI T9_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
xX60gensym71_ = NIM_NIL;
useLineInfo = (tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg*)0;
u = (tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA**)0;
xX60gensym71_ = s;
T8_ = (tySequence__9csKSQ865Bdwb8TbX9cOogww*)0;
T8_ = X5BX5D___sempass50_1056((&(*context).sideEffects), (NI)((NI)((NU64)(((NI) ((*xX60gensym71_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym71_).Sup.itemId.item))));
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
eqcopy___semdata_1704((&colontmp_), (*T8_));
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
i = ((NI)0);
T9_ = colontmp_.len;
L = T9_;
{
while (1) {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym75_;
if (!(i < L)) goto LA11 ;
xX60gensym75_ = NIM_NIL;
useLineInfo = (&colontmp_.p->data[i].Field0);
u = &colontmp_.p->data[i].Field1;
{
NIM_BOOL T15_;
NIM_BOOL T17_;
T15_ = (NIM_BOOL)0;
T15_ = !(((*u) == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL)));
if (!(T15_)) goto LA16_;
eqcopy___ast_4063(&xX60gensym75_, (*u));
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
T17_ = (NIM_BOOL)0;
T17_ = containsOrIncl__astalgo_402(cycleCheck, (NI)((NI)((NU64)(((NI) ((*xX60gensym75_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym75_).Sup.itemId.item))));
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
T15_ = !(T17_);
LA16_: ;
if (!T15_) goto LA18_;
switch ((*(*u)).kind) {
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9):
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)8):
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
NimStringV2 colontmpD__5;
NimStringV2 colontmpD__6;
NimStringV2 colontmpD__7;
NimStringV2 colontmpD__8;
tyArray__sMpvt1sOxOJ3LFGulnbeMQ T22_;
tyArray__sMpvt1sOxOJ3LFGulnbeMQ T23_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD_ = nsuRepeatStr(TM__O8rpA4QnF63fyis4dAzZxA_156, ((NI) (indentLevel)));
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
T22_[0] = colontmpD_;
colontmpD__2 = dollar___msgs_675(conf, (*useLineInfo));
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
T22_[1] = colontmpD__2;
T22_[2] = (*(*s).name).s;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__3), (*(*(*u)).name).s);
colontmpD__4 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_158, colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
T22_[3] = colontmpD__4;
nsuAddf(result, TM__O8rpA4QnF63fyis4dAzZxA_154, T22_, 4);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
colontmpD__5 = nsuRepeatStr(TM__O8rpA4QnF63fyis4dAzZxA_160, ((NI) ((NI)(indentLevel + ((NI)1)))));
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
T23_[0] = colontmpD__5;
colontmpD__6 = dollar___msgs_675(conf, (*(*u)).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
T23_[1] = colontmpD__6;
T23_[2] = (*(*(*u)).name).s;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__7), (*(*s).name).s);
colontmpD__8 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_162, colontmpD__7);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
T23_[3] = colontmpD__8;
nsuAddf(result, TM__O8rpA4QnF63fyis4dAzZxA_159, T23_, 4);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
{
LA21_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__8));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
}
break;
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) ... ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18):
{
NimStringV2 colontmpD__9;
NimStringV2 colontmpD__10;
NimStringV2 colontmpD__11;
NimStringV2 colontmpD__12;
NimStringV2 colontmpD__13;
NimStringV2 colontmpD__14;
NimStringV2 colontmpD__15;
NimStringV2 colontmpD__16;
tyArray__sMpvt1sOxOJ3LFGulnbeMQ T28_;
tyArray__sMpvt1sOxOJ3LFGulnbeMQ T29_;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
colontmpD__16.len = 0; colontmpD__16.p = NIM_NIL;
colontmpD__9 = nsuRepeatStr(TM__O8rpA4QnF63fyis4dAzZxA_164, ((NI) (indentLevel)));
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
T28_[0] = colontmpD__9;
colontmpD__10 = dollar___msgs_675(conf, (*useLineInfo));
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
T28_[1] = colontmpD__10;
T28_[2] = (*(*s).name).s;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__11), (*(*(*u)).name).s);
colontmpD__12 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_166, colontmpD__11);
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
T28_[3] = colontmpD__12;
nsuAddf(result, TM__O8rpA4QnF63fyis4dAzZxA_163, T28_, 4);
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
colontmpD__13 = nsuRepeatStr(TM__O8rpA4QnF63fyis4dAzZxA_168, ((NI) ((NI)(indentLevel + ((NI)1)))));
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
T29_[0] = colontmpD__13;
colontmpD__14 = dollar___msgs_675(conf, (*(*u)).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
T29_[1] = colontmpD__14;
T29_[2] = (*(*(*u)).name).s;
colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__15), (*(*s).name).s);
colontmpD__16 = nsuFormatSingleElem(TM__O8rpA4QnF63fyis4dAzZxA_170, colontmpD__15);
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
T29_[3] = colontmpD__16;
nsuAddf(result, TM__O8rpA4QnF63fyis4dAzZxA_167, T29_, 4);
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
listSideEffects__sempass50_647(result, (*u), cycleCheck, conf, context, (NI)(indentLevel + ((NI)2)));
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
{
LA27_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__16));
eqdestroy___stdZassertions_13((&colontmpD__14));
eqdestroy___stdZassertions_13((&colontmpD__13));
eqdestroy___stdZassertions_13((&colontmpD__12));
eqdestroy___stdZassertions_13((&colontmpD__10));
eqdestroy___stdZassertions_13((&colontmpD__9));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
}
break;
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3):
case ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)21):
{
NimStringV2 colontmpD__17;
NimStringV2 colontmpD__18;
tyArray__sMpvt1sOxOJ3LFGulnbeMQ T34_;
colontmpD__17.len = 0; colontmpD__17.p = NIM_NIL;
colontmpD__18.len = 0; colontmpD__18.p = NIM_NIL;
colontmpD__17 = nsuRepeatStr(TM__O8rpA4QnF63fyis4dAzZxA_172, ((NI) (indentLevel)));
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T34_[0] = colontmpD__17;
colontmpD__18 = dollar___msgs_675(conf, (*useLineInfo));
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T34_[1] = colontmpD__18;
T34_[2] = (*(*s).name).s;
T34_[3] = TM__O8rpA4QnF63fyis4dAzZxA_174;
nsuAddf(result, TM__O8rpA4QnF63fyis4dAzZxA_171, T34_, 4);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
LA33_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__18));
eqdestroy___stdZassertions_13((&colontmpD__17));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
}
break;
default:
{
NimStringV2 colontmpD__19;
NimStringV2 colontmpD__20;
tyArray__sMpvt1sOxOJ3LFGulnbeMQ T39_;
colontmpD__19.len = 0; colontmpD__19.p = NIM_NIL;
colontmpD__20.len = 0; colontmpD__20.p = NIM_NIL;
colontmpD__19 = nsuRepeatStr(TM__O8rpA4QnF63fyis4dAzZxA_176, ((NI) (indentLevel)));
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
T39_[0] = colontmpD__19;
colontmpD__20 = dollar___msgs_675(conf, (*useLineInfo));
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
T39_[1] = colontmpD__20;
T39_[2] = (*(*s).name).s;
T39_[3] = TM__O8rpA4QnF63fyis4dAzZxA_178;
nsuAddf(result, TM__O8rpA4QnF63fyis4dAzZxA_175, T39_, 4);
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
{
LA38_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__20));
eqdestroy___stdZassertions_13((&colontmpD__19));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
}
break;
}
}
LA18_: ;
i += ((NI)1);
{
LA12_:;
}
{
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&xX60gensym75_);
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
*nimErr_ = oldNimErrFin12_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
} LA11: ;
}
{
LA7_:;
}
{
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___semdata_1701((&colontmp_));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin7_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, listSideEffects__sempass50_1185)(NimStringV2* result, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* context) {
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA cycleCheck;
tyArray__nHXaesL0DJZHyVS07ARPRA T2_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&cycleCheck), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
initIntSet__pureZcollectionsZintsets_389((&cycleCheck));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T2_[0] = (*(*s).name).s;
nsuAddf(result, TM__O8rpA4QnF63fyis4dAzZxA_152, T2_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
listSideEffects__sempass50_647(result, s, (&cycleCheck), conf, context, ((NI)1));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZcollectionsZintsets_181((&cycleCheck));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, trackProc__sempass50_5223)(tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body) {
tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effects;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* inferredEffects;
tyObject_TEffects__YYtynIOekhyXILpEaWFeZw t;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD_;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* p;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* raisesSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tagsSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* forbidsSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* requiresSpec;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* ensuresSpec;
tyObject_MutationInfo__09cglYawlQfhTDITHVV8vBw mutationInfo;
NIM_BOOL emitWarnings;
NIM_BOOL oldNimErrFin33_;
NIM_BOOL oldNimErrFin29_;
NIM_BOOL oldNimErrFin70_;
NIM_BOOL oldNimErrFin105_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
g = NIM_NIL;
effects = NIM_NIL;
inferredEffects = NIM_NIL;
nimZeroMem((void*)(&t), sizeof(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw));
colontmpD_ = NIM_NIL;
p = NIM_NIL;
raisesSpec = NIM_NIL;
tagsSpec = NIM_NIL;
forbidsSpec = NIM_NIL;
requiresSpec = NIM_NIL;
ensuresSpec = NIM_NIL;
nimZeroMem((void*)(&mutationInfo), sizeof(tyObject_MutationInfo__09cglYawlQfhTDITHVV8vBw));
eqcopy___modulegraphs_11315(&g, (*c).graph);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqcopy___ast_3457(&effects, (*(*(*s).typ).n)._kind_6.sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!(((*effects).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152)))) goto LA4_;
eqdestroy___varpartitions_199((&mutationInfo));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&ensuresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&requiresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&p);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___sempass50_5497((&t));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&inferredEffects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___modulegraphs_11312(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA4_: ;
{
NIM_BOOL T8_;
T8_ = (NIM_BOOL)0;
T8_ = hasRealBody__sempass50_5212(s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T8_)) goto LA9_;
eqdestroy___varpartitions_199((&mutationInfo));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&ensuresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&requiresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&p);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___sempass50_5497((&t));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&inferredEffects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___modulegraphs_11312(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA9_: ;
emitWarnings = (((*(*s).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)44)))&63U)))!=0);
{
NIM_BOOL T13_;
NI T14_;
T13_ = (NIM_BOOL)0;
T14_ = (NI)0;
T14_ = len__ast_3325(effects);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T13_ = (T14_ == ((NI)6));
if (!(T13_)) goto LA15_;
T13_ = !(emitWarnings);
LA15_: ;
if (!T13_) goto LA16_;
eqdestroy___varpartitions_199((&mutationInfo));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&ensuresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&requiresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&p);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___sempass50_5497((&t));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&inferredEffects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___modulegraphs_11312(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA16_: ;
inferredEffects = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*s).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
initEffects__sempass50_5171(g, inferredEffects, s, (&t), c);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
rawInitEffects__sempass50_5158(g, effects);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T20_;
NIM_BOOL T21_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* res;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym605_;
T20_ = (NIM_BOOL)0;
T21_ = (NIM_BOOL)0;
T21_ = isEmptyType__ast_6215((*(*s).typ).sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T20_ = !(T21_);
if (!(T20_)) goto LA22_;
T20_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14));
LA22_: ;
if (!T20_) goto LA23_;
res = NIM_NIL;
xX60gensym605_ = NIM_NIL;
res = (*(*(*s).ast)._kind_6.sons.p->data[((NI)7)])._kind_4.sym;
eqcopy___ast_4063(&xX60gensym605_, res);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
X5BX5Deq___importer_2418((&t.scopes), (NI)((NI)((NU64)(((NI) ((*xX60gensym605_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym605_).Sup.itemId.item))), t.currentBlock);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___ast_4060(&xX60gensym605_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA23_: ;
track__sempass50_2640((&t), body);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* params;
if (!!(((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17)))) goto LA27_;
params = NIM_NIL;
eqcopy___ast_3457(&params, (*(*s).typ).n);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = len__ast_3325(params);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
i_2 = ((NI)1);
{
while (1) {
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* param;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ;
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__2;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym610_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym612_;
if (!(i_2 < colontmp_)) goto LA32 ;
param = NIM_NIL;
typ = NIM_NIL;
colontmpD__2 = NIM_NIL;
xX60gensym610_ = NIM_NIL;
xX60gensym612_ = NIM_NIL;
i = i_2;
eqcopy___ast_4063(&param, (*(*params)._kind_6.sons.p->data[i])._kind_4.sym);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
eqcopy___ast_3546(&typ, (*param).typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
NIM_BOOL T36_;
NIM_BOOL T38_;
NIM_BOOL T40_;
T36_ = (NIM_BOOL)0;
T36_ = isSinkTypeForParam__types_4356(typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (T36_) goto LA37_;
T38_ = (NIM_BOOL)0;
T38_ = ((*t.config).selectedGC == ((tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg)4) || (*t.config).selectedGC == ((tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg)5));
if (!(T38_)) goto LA39_;
T40_ = (NIM_BOOL)0;
colontmpD__2 = skipTypes__ast_4803(typ, TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T40_ = isClosure__ast_6472(colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (T40_) goto LA41_;
eqcopy___ast_4063(&xX60gensym610_, param);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T40_ = contains__astalgo_3655((&t.escapingParams), (NI)((NI)((NU64)(((NI) ((*xX60gensym610_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym610_).Sup.itemId.item))));
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
LA41_: ;
T38_ = T40_;
LA39_: ;
T36_ = T38_;
LA37_: ;
if (!T36_) goto LA42_;
createTypeBoundOps__sempass50_133((&t), typ, (*param).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA42_: ;
{
NIM_BOOL T46_;
NIM_BOOL T48_;
T46_ = (NIM_BOOL)0;
T46_ = isOutParam__ast_6694(typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
if (!(T46_)) goto LA47_;
eqcopy___ast_4063(&xX60gensym612_, param);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
T48_ = (NIM_BOOL)0;
T48_ = contains__sigmatch_4656(((t.init).p) ? (t.init.p->data) : NIM_NIL, t.init.len, (NI)((NI)((NU64)(((NI) ((*xX60gensym612_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym612_).Sup.itemId.item))));
T46_ = !(T48_);
LA47_: ;
if (!T46_) goto LA49_;
liMessage__msgs_1172((*g).config, (*param).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)45), (*(*param).name).s, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_123), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
}
LA49_: ;
i_2 += ((NI)1);
{
LA33_:;
}
{
oldNimErrFin33_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&xX60gensym612_);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
eqdestroy___ast_4060(&xX60gensym610_);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
eqdestroy___ast_3543(&colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
eqdestroy___ast_3543(&typ);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
eqdestroy___ast_4060(&param);
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
*nimErr_ = oldNimErrFin33_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
} LA32: ;
}
}
{
LA29_:;
}
{
oldNimErrFin29_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_3454(&params);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin29_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA27_: ;
{
NIM_BOOL T57_;
NIM_BOOL T58_;
NIM_BOOL T59_;
NIM_BOOL T60_;
NIM_BOOL T62_;
NIM_BOOL T63_;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* res_2;
tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* xX60gensym622_;
T57_ = (NIM_BOOL)0;
T58_ = (NIM_BOOL)0;
T59_ = (NIM_BOOL)0;
T60_ = (NIM_BOOL)0;
T60_ = isEmptyType__ast_6215((*(*s).typ).sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T59_ = !(T60_);
if (!(T59_)) goto LA61_;
T62_ = (NIM_BOOL)0;
T63_ = (NIM_BOOL)0;
T63_ = requiresInit__typeallowed_593((*(*s).typ).sons.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (T63_) goto LA64_;
colontmpD_ = skipTypes__ast_4803((*(*s).typ).sons.p->data[((NI)0)], TM__O8rpA4QnF63fyis4dAzZxA_43);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T63_ = ((*colontmpD_).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23));
LA64_: ;
T62_ = T63_;
if (T62_) goto LA65_;
T62_ = (((*c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)18)))&31U)))!=0);
LA65_: ;
T59_ = T62_;
LA61_: ;
T58_ = T59_;
if (!(T58_)) goto LA66_;
T58_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14));
LA66_: ;
T57_ = T58_;
if (!(T57_)) goto LA67_;
T57_ = ((*s).magic == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)0));
LA67_: ;
if (!T57_) goto LA68_;
res_2 = NIM_NIL;
xX60gensym622_ = NIM_NIL;
res_2 = (*(*(*s).ast)._kind_6.sons.p->data[((NI)7)])._kind_4.sym;
{
NIM_BOOL T73_;
eqcopy___ast_4063(&xX60gensym622_, res_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
T73_ = (NIM_BOOL)0;
T73_ = contains__sigmatch_4656(((t.init).p) ? (t.init.p->data) : NIM_NIL, t.init.len, (NI)((NI)((NU64)(((NI) ((*xX60gensym622_).Sup.itemId.module))) << (NU64)(((NI)24))) + ((NI) ((*xX60gensym622_).Sup.itemId.item))));
if (!!(T73_)) goto LA74_;
liMessage__msgs_1172((*g).config, (*body).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)45), TM__O8rpA4QnF63fyis4dAzZxA_125, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_126), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
}
LA74_: ;
{
LA70_:;
}
{
oldNimErrFin70_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___ast_4060(&xX60gensym622_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin70_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA68_: ;
eqcopy___ast_3457(&p, (*(*s).ast)._kind_6.sons.p->data[((NI)4)]);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
raisesSpec = effectSpec__trees_291(p, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)174));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!((raisesSpec == 0))) goto LA80_;
checkRaisesSpec__sempass50_4892(g, NIM_FALSE, raisesSpec, t.exc, TM__O8rpA4QnF63fyis4dAzZxA_127, NIM_TRUE, subtypeRelation__sempass50_4879, (*(*s).ast)._kind_6.sons.p->data[((NI)0)], NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)0)], raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
raisesSpec = 0;
}
goto LA78_;
LA80_: ;
{
eqcopy___ast_3457(&(*effects)._kind_6.sons.p->data[((NI)0)], t.exc);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA78_: ;
tagsSpec = effectSpec__trees_291(p, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)179));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!((tagsSpec == 0))) goto LA85_;
checkRaisesSpec__sempass50_4892(g, NIM_FALSE, tagsSpec, t.tags, TM__O8rpA4QnF63fyis4dAzZxA_128, NIM_FALSE, subtypeRelation__sempass50_4879, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)3)], tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
tagsSpec = 0;
}
goto LA83_;
LA85_: ;
{
eqcopy___ast_3457(&(*effects)._kind_6.sons.p->data[((NI)3)], t.tags);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA83_: ;
forbidsSpec = effectSpec__trees_291(p, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)180));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!((forbidsSpec == 0))) goto LA90_;
checkRaisesSpec__sempass50_4892(g, NIM_FALSE, forbidsSpec, t.tags, TM__O8rpA4QnF63fyis4dAzZxA_129, NIM_FALSE, subtypeRelation__sempass50_4879, ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL), NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)5)], forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
forbidsSpec = 0;
}
goto LA88_;
LA90_: ;
{
eqcopy___ast_3457(&(*effects)._kind_6.sons.p->data[((NI)5)], t.forbids);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA88_: ;
requiresSpec = propSpec__trees_323(p, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)181));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!((requiresSpec == 0))) goto LA95_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)1)], requiresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
requiresSpec = 0;
}
LA95_: ;
ensuresSpec = propSpec__trees_323(p, ((tyEnum_TSpecialWord__hTGV9ad79bZJfqtldnYLJ8AA)182));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!!((ensuresSpec == 0))) goto LA99_;
patchResult__sempass50_3679((&t), ensuresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___ast_3460(&(*effects)._kind_6.sons.p->data[((NI)2)], ensuresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
ensuresSpec = 0;
}
LA99_: ;
nimZeroMem((void*)(&mutationInfo), sizeof(tyObject_MutationInfo__09cglYawlQfhTDITHVV8vBw));
{
tyObject_Partitions__8JEvj7xHrL5kIFiSTpKnZg partitions;
if (!(((*c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)12)))&31U)))!=0)) goto LA103_;
nimZeroMem((void*)(&partitions), sizeof(tyObject_Partitions__8JEvj7xHrL5kIFiSTpKnZg));
computeGraphPartitions__varpartitions_2092(s, body, g, 2, (&partitions));
if (NIM_UNLIKELY(*nimErr_)) goto LA105_;
checkBorrowedLocations__varpartitions_2394((&partitions), body, (*g).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA105_;
{
LA105_:;
}
{
oldNimErrFin105_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___varpartitions_2125((&partitions));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin105_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA103_: ;
{
NIM_BOOL T110_;
T110_ = (NIM_BOOL)0;
T110_ = (((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)26)))&63U)))!=0);
if (!(T110_)) goto LA111_;
T110_ = t.gcUnsafe;
LA111_: ;
if (!T110_) goto LA112_;
{
NIM_BOOL T116_;
T116_ = (NIM_BOOL)0;
T116_ = (((*(*g).config).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)24)))&63U)))!=0);
if (!(T116_)) goto LA117_;
T116_ = (((*(*g).config).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)26)))&63U)))!=0);
LA117_: ;
if (!T116_) goto LA118_;
listGcUnsafety__sempass50_642(s, NIM_FALSE, (*g).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA114_;
LA118_: ;
{
listGcUnsafety__sempass50_642(s, NIM_TRUE, (*g).config);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA114_: ;
}
LA112_: ;
{
NIM_BOOL T123_;
T123_ = (NIM_BOOL)0;
T123_ = (((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)12)))&63U)))!=0);
if (!(T123_)) goto LA124_;
T123_ = t.hasSideEffect;
LA124_: ;
if (!T123_) goto LA125_;
{
NimStringV2 msg;
if (!((*c).compilesContextId == ((NI)0))) goto LA129_;
msg.len = 0; msg.p = NIM_NIL;
msg = TM__O8rpA4QnF63fyis4dAzZxA_150;
listSideEffects__sempass50_1185((&msg), s, (*g).config, t.c);
if (NIM_UNLIKELY(*nimErr_)) goto LA131_;
liMessage__msgs_1172((*g).config, (*s).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), msg, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_179), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA131_;
{
LA131_:;
}
{
eqdestroy___stdZassertions_13((&msg));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA127_;
LA129_: ;
{
liMessage__msgs_1172((*g).config, (*s).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__O8rpA4QnF63fyis4dAzZxA_180, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__O8rpA4QnF63fyis4dAzZxA_181), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA127_: ;
}
LA125_: ;
{
if (!!(t.gcUnsafe)) goto LA137_;
(*(*s).typ).flags |= ((NU64)1)<<(((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)7))) & 63);
}
LA137_: ;
{
NIM_BOOL T141_;
T141_ = (NIM_BOOL)0;
T141_ = !(t.hasSideEffect);
if (!(T141_)) goto LA142_;
T141_ = !((((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)13)))&63U)))!=0));
LA142_: ;
if (!T141_) goto LA143_;
(*(*s).typ).flags |= ((NU64)1)<<(((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1))) & 63);
}
LA143_: ;
{
NIM_BOOL T147_;
T147_ = (NIM_BOOL)0;
T147_ = (((*c).features &((NU32)1<<((NU)((((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)13)))&31U)))!=0);
if (!(T147_)) goto LA148_;
T147_ = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12));
LA148_: ;
if (!T147_) goto LA149_;
checkNil__nilcheck_10843(s, body, (*g).config, (*c).Sup.idgen);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA149_: ;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___varpartitions_199((&mutationInfo));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&ensuresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&requiresSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&forbidsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&tagsSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&raisesSpec);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&p);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3543(&colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___sempass50_5497((&t));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&inferredEffects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___modulegraphs_11312(&g);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, trackStmt__sempass50_5544)(tyObject_TContext__QUPFyDhhyyn3RQbxNbH7xg* c, tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* module, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, NIM_BOOL isTopLevel) {
tyObject_ModuleGraphcolonObjectType___g2oCqJbiuGsLLrs8RBMKXg* g;
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* effects;
tyObject_TEffects__YYtynIOekhyXILpEaWFeZw t;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
g = NIM_NIL;
effects = NIM_NIL;
nimZeroMem((void*)(&t), sizeof(tyObject_TEffects__YYtynIOekhyXILpEaWFeZw));
{
if (!((TM__O8rpA4QnF63fyis4dAzZxA_182[(NU)(((*n).kind))>>3] &(1U<<((NU)(((*n).kind))&7U)))!=0)) goto LA4_;
eqdestroy___sempass50_5497((&t));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA4_: ;
g = (*c).graph;
effects = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (*n).info);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
initEffects__sempass50_5171(g, effects, module, (&t), c);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
t.isTopLevel = isTopLevel;
track__sempass50_2640((&t), n);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___sempass50_5497((&t));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___ast_3454(&effects);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}