/* Generated by Nim Compiler v1.9.0 */ #define NIM_INTBITS 64 #include "nimbase.h" #include #undef LANGUAGE_C #undef MIPSEB #undef MIPSEL #undef PPC #undef R3000 #undef R4000 #undef i386 #undef linux #undef mips #undef near #undef far #undef powerpc #undef unix #define nimfr_(x, y) #define nimln_(x, y) typedef struct tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q; typedef struct NimStrPayload NimStrPayload; typedef struct NimStringV2 NimStringV2; typedef struct tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA; typedef struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg; typedef struct tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA; typedef struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA; typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ tySequence__xxu3GgaFAGO6lOns9aHaeLQ; typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content; typedef struct tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ tyObject_TIdObj__jPSvrmNCWI4CL3MSWxUHJQ; typedef struct RootObj RootObj; typedef struct TNimTypeV2 TNimTypeV2; typedef struct tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw tyObject_ItemId__RG5oiYa2xm9bBBKInuP3ECw; typedef struct tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA tyObject_TLoc__cQfx3WjJDtozqFtY4RdR9cA; typedef struct tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg tyObject_TLib__tP0u9cd1FuZgfCfM3WIm9cRg; typedef struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ; typedef struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content; typedef struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg; typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w; struct NimStrPayload { NI cap; NIM_CHAR data[SEQ_DECL_SIZE]; }; struct NimStringV2 { NI len; NimStrPayload* p; }; typedef NIM_BOOL tyArray__zl3qUQvo0CT9bJi9b5H7mRkw[65]; struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg { NU16 line; NI16 col; NI32 fileIndex; }; 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 NU8 tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ; typedef NU8 tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ; 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 NU16 tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg; 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 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_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg; 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 NU8 tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg; typedef NU8 tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ[9]; typedef NU8 tyEnum_TDistinctCompare__H0D0zbMLh4bchAD4N9bLm5A; typedef NU8 tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w; typedef NU8 tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ; typedef NU8 tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q; typedef NU8 tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA; typedef NU8 tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw; typedef NU16 tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA; struct tyTuple__kN8up2W6YKc5YA9avn5mV5w { NimStringV2 Field0; NI Field1; NI Field2; }; struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA { NI id; NimStringV2 s; tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* next; NI h; }; typedef NU8 tyEnum_TAliasRequest__19anJwPpgb66lTqx4j4CB3g; #ifndef tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP #define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];}; #endif #ifndef tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content_PP #define tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content_PP struct tySequence__iPgAQ0li6vRlH9cX9aT6CQgQ_Content { NI cap; tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* data[SEQ_DECL_SIZE];}; #endif static N_INLINE(NIM_BOOL, isAtom__ast_6204)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); N_LIB_PRIVATE N_NIMCALL(tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg, isAssignable__parampatterns_349)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); static N_INLINE(NIM_BOOL, dontInlineConstant__trees_427)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* orig, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* cnst); static N_INLINE(NI, len__ast_3325)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); static N_INLINE(NIM_BOOL*, nimErrorFlag)(void); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, astdef__ast_4072)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s); 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(void, eqdestroy___ast_3454)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, compareTypes__types_2855)(tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* x, tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* y, tyEnum_TDistinctCompare__H0D0zbMLh4bchAD4N9bLm5A cmp, tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w flags); N_LIB_PRIVATE N_NIMCALL(tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg, getMagic__trees_144)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* op); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, lastSon__ast_6268)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); N_LIB_PRIVATE N_NIMCALL(tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ, checkForSideEffects__parampatterns_224)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n); N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3457)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src); static N_INLINE(NIM_BOOL, isRoutine__ast_6105)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNodeI__ast_3949)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info); N_LIB_PRIVATE N_NIMCALL(void, eqsink___stdZassertions_19)(NimStringV2* dest, NimStringV2 src); N_NIMCALL(NimStringV2, rawNewString)(NI cap); static N_INLINE(void, nimAddCharV1)(NimStringV2* s, NIM_CHAR c); N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s, NI addlen); N_LIB_PRIVATE N_NIMCALL(void, compileConstraints__parampatterns_70)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* p, NimStringV2* result, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf); N_LIB_PRIVATE N_NIMCALL(void, patternError__parampatterns_38)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf); 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); 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, renderTree__renderer_50)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tySet_tyEnum_TRenderFlag__MM5FVX0phapzCgLaUUssTA renderFlags); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_13)(NimStringV2* dest); N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_133)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA** dest); N_LIB_PRIVATE N_NIMCALL(void, eqcopy___idents_136)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA** dest, tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* src); 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); static N_INLINE(void, add__parampatterns_41)(NimStringV2* code, tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ op); N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuNormalize)(NimStringV2 s); N_LIB_PRIVATE N_NIMCALL(NI, hashString)(NimStringV2 s); static N_INLINE(void, nimPrepareStrMutationV2)(NimStringV2* s); N_LIB_PRIVATE N_NIMCALL(void, nimPrepareStrMutationImpl__system_2301)(NimStringV2* s); static N_INLINE(NimStringV2, toFileLineCol__msgs_666)(tyTuple__kN8up2W6YKc5YA9avn5mV5w* info); 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(NI, nsuCmpIgnoreStyle)(NimStringV2 a, NimStringV2 b); N_LIB_PRIVATE N_NIMCALL(NimStringV2, toHumanStr__ast_6611)(tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ kind); N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___ast_192)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ e); 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_3460)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src); static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__IfESpe2yD3DScypV9a7z8Mg_2 = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} ; static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__IfESpe2yD3DScypV9a7z8Mg_3 = { 0x10, 0xa8, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00, 0x00} ; static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__IfESpe2yD3DScypV9a7z8Mg_4 = { 0x10, 0xa8, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00, 0x00} ; static const struct { NI cap; NIM_CHAR data[15+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_5 = { 15 | NIM_STRLIT_FLAG, "illformed AST: " }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_6 = {15, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_5}; static const struct { NI cap; NIM_CHAR data[43+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_8 = { 43 | NIM_STRLIT_FLAG, "/home/wind/nimv2/compiler/parampatterns.nim" }; static const struct { NI cap; NIM_CHAR data[1+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_9 = { 1 | NIM_STRLIT_FLAG, "|" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_10 = {1, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_9}; static const struct { NI cap; NIM_CHAR data[1+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_11 = { 1 | NIM_STRLIT_FLAG, "&" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_12 = {1, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_11}; static const struct { NI cap; NIM_CHAR data[1+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_13 = { 1 | NIM_STRLIT_FLAG, "~" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_14 = {1, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_13}; static const struct { NI cap; NIM_CHAR data[4+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_15 = { 4 | NIM_STRLIT_FLAG, "atom" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_16 = {4, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_15}; static const struct { NI cap; NIM_CHAR data[3+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_17 = { 3 | NIM_STRLIT_FLAG, "lit" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_18 = {3, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_17}; static const struct { NI cap; NIM_CHAR data[3+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_19 = { 3 | NIM_STRLIT_FLAG, "sym" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_20 = {3, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_19}; static const struct { NI cap; NIM_CHAR data[5+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_21 = { 5 | NIM_STRLIT_FLAG, "ident" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_22 = {5, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_21}; static const struct { NI cap; NIM_CHAR data[4+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_23 = { 4 | NIM_STRLIT_FLAG, "call" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_24 = {4, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_23}; static const struct { NI cap; NIM_CHAR data[5+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_25 = { 5 | NIM_STRLIT_FLAG, "alias" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_26 = {5, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_25}; static const struct { NI cap; NIM_CHAR data[7+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_27 = { 7 | NIM_STRLIT_FLAG, "noalias" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_28 = {7, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_27}; static const struct { NI cap; NIM_CHAR data[6+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_29 = { 6 | NIM_STRLIT_FLAG, "lvalue" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_30 = {6, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_29}; static const struct { NI cap; NIM_CHAR data[5+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_31 = { 5 | NIM_STRLIT_FLAG, "local" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_32 = {5, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_31}; static const struct { NI cap; NIM_CHAR data[10+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_33 = { 10 | NIM_STRLIT_FLAG, "sideeffect" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_34 = {10, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_33}; static const struct { NI cap; NIM_CHAR data[12+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_35 = { 12 | NIM_STRLIT_FLAG, "nosideeffect" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_36 = {12, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_35}; static const struct { NI cap; NIM_CHAR data[1+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_37 = { 1 | NIM_STRLIT_FLAG, "(" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_38 = {1, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_37}; static const struct { NI cap; NIM_CHAR data[2+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_39 = { 2 | NIM_STRLIT_FLAG, ", " }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_40 = {2, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_39}; static const struct { NI cap; NIM_CHAR data[1+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_41 = { 1 | NIM_STRLIT_FLAG, ")" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_42 = {1, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_41}; static const struct { NI cap; NIM_CHAR data[29+1]; } TM__IfESpe2yD3DScypV9a7z8Mg_45 = { 29 | NIM_STRLIT_FLAG, "parameter pattern too complex" }; static const NimStringV2 TM__IfESpe2yD3DScypV9a7z8Mg_46 = {29, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_45}; static NIM_CONST tySet_tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ TM__IfESpe2yD3DScypV9a7z8Mg_48 = { 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00, 0x00} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__IfESpe2yD3DScypV9a7z8Mg_7 = {{43, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_8}, ((NI)46), ((NI)12)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__IfESpe2yD3DScypV9a7z8Mg_43 = {{43, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_8}, ((NI)101), ((NI)6)} ; extern NIM_CONST tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg unknownLineInfo__lineinfos_338; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__IfESpe2yD3DScypV9a7z8Mg_44 = {{43, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_8}, ((NI)108), ((NI)6)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__IfESpe2yD3DScypV9a7z8Mg_47 = {{43, (NimStrPayload*)&TM__IfESpe2yD3DScypV9a7z8Mg_8}, ((NI)128), ((NI)19)} ; extern NIM_BOOL nimInErrorMode__system_3980; static N_INLINE(NIM_BOOL, isAtom__ast_6204)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) { NIM_BOOL result; NIM_BOOL T1_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = (((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0) <= (*n).kind); if (!(T1_)) goto LA2_; T1_ = ((*n).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23)); LA2_: ; result = T1_; return result; } static N_INLINE(NI, 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(NIM_BOOL*, nimErrorFlag)(void) { NIM_BOOL* result; result = (NIM_BOOL*)0; result = (&nimInErrorMode__system_3980); return result; } static N_INLINE(NIM_BOOL, dontInlineConstant__trees_427)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* orig, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* cnst) { NIM_BOOL result; NIM_BOOL T1_; NIM_BOOL T2_; NI T5_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T2_ = (NIM_BOOL)0; T2_ = !(((*orig).kind == (*cnst).kind)); if (!(T2_)) goto LA3_; T2_ = ((*cnst).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)39) || (*cnst).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)37) || (*cnst).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)160) || (*cnst).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)41) || (*cnst).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)38)); LA3_: ; T1_ = T2_; if (!(T1_)) goto LA4_; T5_ = (NI)0; T5_ = len__ast_3325(cnst); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; T1_ = (((*cnst).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)38)) < T5_); LA4_: ; result = T1_; }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg, isAssignable__parampatterns_349)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* owner, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) { tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg result; NIM_BOOL oldNimErrFin48_; NIM_BOOL oldNimErrFin68_; NIM_BOOL oldNimErrFin80_; NIM_BOOL oldNimErrFin124_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = (tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)0; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)0); switch ((*n).kind) { case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1): { { NIM_BOOL T4_; T4_ = (NIM_BOOL)0; T4_ = !(((*n).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL))); if (!(T4_)) goto LA5_; T4_ = ((*(*n).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23)); LA5_: ; if (!T4_) goto LA6_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } LA6_: ; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3): { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_; colontmpD_ = NIM_NIL; { tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg colontmpD__2; tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg colontmpD__3; if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3))) goto LA11_; colontmpD__2 = (tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)0; colontmpD__3 = (tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)0; { if (!((*(*(*n)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23) || (*(*(*n)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)46))) goto LA15_; colontmpD__2 = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); result = colontmpD__2; } goto LA13_; LA15_: ; { colontmpD__3 = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)4); result = colontmpD__3; } LA13_: ; } goto LA9_; LA11_: ; { NIM_BOOL T19_; T19_ = (NIM_BOOL)0; T19_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)10)); if (!(T19_)) goto LA20_; colontmpD_ = astdef__ast_4072((*n)._kind_4.sym); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; T19_ = dontInlineConstant__trees_427(n, colontmpD_); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; LA20_: ; if (!T19_) goto LA21_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)4); } goto LA9_; LA21_: ; { if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)8) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)11) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)5) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)21))) goto LA24_; { if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)3) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)9) || (*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)21))) goto LA28_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)4); } goto LA26_; LA28_: ; { { NIM_BOOL T33_; NIM_BOOL T34_; T33_ = (NIM_BOOL)0; T34_ = (NIM_BOOL)0; T34_ = !((owner == ((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL))); if (!(T34_)) goto LA35_; T34_ = (owner == (*(*n)._kind_4.sym).owner); LA35_: ; T33_ = T34_; if (!(T33_)) goto LA36_; T33_ = !((((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)3)))&63U)))!=0)); LA36_: ; if (!T33_) goto LA37_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)2); } goto LA31_; LA37_: ; { result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } LA31_: ; } LA26_: ; } goto LA9_; LA24_: ; { tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t; if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)7))) goto LA41_; t = NIM_NIL; t = skipTypes__ast_4803((*(*n)._kind_4.sym).typ, TM__IfESpe2yD3DScypV9a7z8Mg_2); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; { if (!((*t).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23))) goto LA45_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)6); } LA45_: ; eqdestroy___ast_3543(&t); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } goto LA9_; LA41_: ; LA9_: ; eqdestroy___ast_3454(&colontmpD_); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45): { tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t_2; t_2 = NIM_NIL; t_2 = skipTypes__ast_4803((*(*n)._kind_6.sons.p->data[((NI)0)]).typ, TM__IfESpe2yD3DScypV9a7z8Mg_3); if (NIM_UNLIKELY(*nimErr_)) goto LA48_; { if (!((*t_2).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23) || (*t_2).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)46) || (*t_2).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)21) || (*t_2).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22))) goto LA51_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } goto LA49_; LA51_: ; { if (!((*t_2).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)47))) goto LA54_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)4); } goto LA49_; LA54_: ; { result = isAssignable__parampatterns_349(owner, (*n)._kind_6.sons.p->data[((NI)0)]); if (NIM_UNLIKELY(*nimErr_)) goto LA48_; } LA49_: ; { NIM_BOOL T59_; NIM_BOOL T60_; T59_ = (NIM_BOOL)0; T60_ = (NIM_BOOL)0; T60_ = !((result == ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)0))); if (!(T60_)) goto LA61_; T60_ = ((*(*n)._kind_6.sons.p->data[((NI)1)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)); LA61_: ; T59_ = T60_; if (!(T59_)) goto LA62_; T59_ = (((*(*(*n)._kind_6.sons.p->data[((NI)1)])._kind_4.sym).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)20)))&63U)))!=0); LA62_: ; if (!T59_) goto LA63_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)3); } LA63_: ; { LA48_:; } { oldNimErrFin48_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3543(&t_2); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin48_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42): { tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* t_3; t_3 = NIM_NIL; t_3 = skipTypes__ast_4803((*(*n)._kind_6.sons.p->data[((NI)0)]).typ, TM__IfESpe2yD3DScypV9a7z8Mg_3); if (NIM_UNLIKELY(*nimErr_)) goto LA68_; { if (!((*t_3).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23) || (*t_3).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)46) || (*t_3).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)21) || (*t_3).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22))) goto LA71_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } goto LA69_; LA71_: ; { if (!((*t_3).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)47))) goto LA74_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)4); } goto LA69_; LA74_: ; { result = isAssignable__parampatterns_349(owner, (*n)._kind_6.sons.p->data[((NI)0)]); if (NIM_UNLIKELY(*nimErr_)) goto LA68_; } LA69_: ; { LA68_:; } { oldNimErrFin68_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3543(&t_3); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin68_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)58): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)59): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)60): { tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD__4; colontmpD__4 = NIM_NIL; { colontmpD__4 = skipTypes__ast_4803((*n).typ, TM__IfESpe2yD3DScypV9a7z8Mg_4); if (NIM_UNLIKELY(*nimErr_)) goto LA80_; if (!((*colontmpD__4).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)27) || (*colontmpD__4).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)18) || (*colontmpD__4).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)17))) goto LA83_; result = isAssignable__parampatterns_349(owner, (*n)._kind_6.sons.p->data[((NI)1)]); if (NIM_UNLIKELY(*nimErr_)) goto LA80_; } goto LA81_; LA83_: ; { tySet_tyEnum_TTypeCmpFlag__taKmDpZ7mWMrTpIE9cV59a7w T86_; NIM_BOOL T87_; T86_ = 0; T87_ = (NIM_BOOL)0; T87_ = compareTypes__types_2855((*n).typ, (*(*n)._kind_6.sons.p->data[((NI)1)]).typ, ((tyEnum_TDistinctCompare__H0D0zbMLh4bchAD4N9bLm5A)1), T86_); if (NIM_UNLIKELY(*nimErr_)) goto LA80_; if (!T87_) goto LA88_; result = isAssignable__parampatterns_349(owner, (*n)._kind_6.sons.p->data[((NI)1)]); if (NIM_UNLIKELY(*nimErr_)) goto LA80_; } goto LA81_; LA88_: ; LA81_: ; { LA80_:; } { oldNimErrFin80_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3543(&colontmpD__4); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin80_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65): { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n0; n0 = NIM_NIL; n0 = (*n)._kind_6.sons.p->data[((NI)0)]; { if (!((*(*n0).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)47))) goto LA95_; { NIM_BOOL T99_; T99_ = (NIM_BOOL)0; T99_ = ((*n0).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)); if (!(T99_)) goto LA100_; T99_ = ((*(*n0)._kind_4.sym).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)11)); LA100_: ; if (!T99_) goto LA101_; result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } goto LA97_; LA101_: ; { result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)5); } LA97_: ; } goto LA93_; LA95_: ; { result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } LA93_: ; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)47): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)64): { result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)67): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)66): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)46): { result = isAssignable__parampatterns_349(owner, (*n)._kind_6.sons.p->data[((NI)0)]); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32): { { tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg T110_; T110_ = (tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)0; T110_ = getMagic__trees_144(n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; if (!(T110_ == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)5) || T110_ == ((tyEnum_TMagic__mTDI9bmjHUNrwgx3GHm4Krg)126))) goto LA111_; result = isAssignable__parampatterns_349(owner, (*n)._kind_6.sons.p->data[((NI)1)]); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } goto LA108_; LA111_: ; { if (!!(((*n).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)))) goto LA114_; switch ((*(*n).typ).kind) { case ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23): { result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } break; case ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)47): { result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)5); } break; default: { } break; } } goto LA108_; LA114_: ; LA108_: ; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)126): { { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__5; if (!!(((*n).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL)))) goto LA122_; colontmpD__5 = NIM_NIL; colontmpD__5 = lastSon__ast_6268(n); if (NIM_UNLIKELY(*nimErr_)) goto LA124_; result = isAssignable__parampatterns_349(owner, colontmpD__5); if (NIM_UNLIKELY(*nimErr_)) goto LA124_; { LA124_:; } { oldNimErrFin124_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&colontmpD__5); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin124_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA122_: ; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)143): { result = ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1); } break; default: { } break; } }BeforeRet_: ; return result; } static N_INLINE(NIM_BOOL, isRoutine__ast_6105)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s) { NIM_BOOL result; result = (NIM_BOOL)0; result = ((*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)12) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)13) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)18) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)17) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)15) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)14) || (*s).kind == ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)16)); return result; } N_LIB_PRIVATE N_NIMCALL(tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ, checkForSideEffects__parampatterns_224)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) { tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ result; NIM_BOOL oldNimErrFin2_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = (tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)0; switch ((*n).kind) { case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32): { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* op; op = NIM_NIL; eqcopy___ast_3457(&op, (*n)._kind_6.sons.p->data[((NI)0)]); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; { NIM_BOOL T5_; tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* s; T5_ = (NIM_BOOL)0; T5_ = ((*op).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)); if (!(T5_)) goto LA6_; T5_ = isRoutine__ast_6105((*op)._kind_4.sym); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; LA6_: ; if (!T5_) goto LA7_; s = NIM_NIL; s = (*op)._kind_4.sym; { if (!(((*s).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__TAs9cOBd13PVhEf42OX9cOdg)13)))&63U)))!=0)) goto LA11_; result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)1); eqdestroy___ast_3454(&op); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; goto BeforeRet_; } goto LA9_; LA11_: ; { if (!(((*(*op).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1)))&63U)))!=0)) goto LA14_; result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)2); } goto LA9_; LA14_: ; { result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)1); } LA9_: ; } goto LA3_; LA7_: ; { if (!(((*(*op).typ).flags &((NU64)1<<((NU)((((tyEnum_TTypeFlag__wRa4s6r4s9cXJ9abWKsrci1Q)1)))&63U)))!=0)) goto LA18_; result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)2); } goto LA3_; LA18_: ; { result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)1); eqdestroy___ast_3454(&op); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; goto BeforeRet_; } LA3_: ; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = len__ast_3325(n); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; i_2 = ((NI)0); { while (1) { tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ ret; if (!(i_2 < colontmp_)) goto LA23 ; i = i_2; ret = checkForSideEffects__parampatterns_224((*n)._kind_6.sons.p->data[i]); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; { if (!(ret == ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)1))) goto LA26_; result = ret; eqdestroy___ast_3454(&op); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; goto BeforeRet_; } goto LA24_; LA26_: ; { NIM_BOOL T29_; T29_ = (NIM_BOOL)0; T29_ = (ret == ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)0)); if (!(T29_)) goto LA30_; T29_ = (result == ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)2)); LA30_: ; if (!T29_) goto LA31_; result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)0); } goto LA24_; LA31_: ; LA24_: ; i_2 += ((NI)1); } LA23: ; } } { LA2_:; } { oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&op); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin2_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23): { result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)2); } break; default: { result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)2); { 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) { tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ ret_2; if (!(i_4 < colontmp__2)) goto LA39 ; i_3 = i_4; ret_2 = checkForSideEffects__parampatterns_224((*n)._kind_6.sons.p->data[i_3]); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; { if (!(ret_2 == ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)1))) goto LA42_; result = ret_2; goto BeforeRet_; } goto LA40_; LA42_: ; { NIM_BOOL T45_; T45_ = (NIM_BOOL)0; T45_ = (ret_2 == ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)0)); if (!(T45_)) goto LA46_; T45_ = (result == ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)2)); LA46_: ; if (!T45_) goto LA47_; result = ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)0); } goto LA40_; LA47_: ; LA40_: ; i_4 += ((NI)1); } LA39: ; } } } break; } }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, matchNodeKinds__parampatterns_510)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) { NIM_BOOL result; NimStringV2 code; tyArray__zl3qUQvo0CT9bJi9b5H7mRkw stack; NI sp; NI pc; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = (NIM_BOOL)0; code.len = 0; code.p = NIM_NIL; stack[(((NI)0))- 0] = NIM_TRUE; sp = ((NI)1); code = (*p)._kind_3.strVal; pc = ((NI)1); { while (1) { switch (((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ) (((NU8)(code.p->data[pc]))))) { case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)1): { goto LA1; } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)2): { NIM_BOOL T5_; T5_ = (NIM_BOOL)0; T5_ = stack[((NI)(sp - ((NI)1)))- 0]; if (T5_) goto LA6_; T5_ = stack[((NI)(sp - ((NI)2)))- 0]; LA6_: ; stack[((NI)(sp - ((NI)2)))- 0] = T5_; sp -= ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)3): { NIM_BOOL T8_; T8_ = (NIM_BOOL)0; T8_ = stack[((NI)(sp - ((NI)1)))- 0]; if (!(T8_)) goto LA9_; T8_ = stack[((NI)(sp - ((NI)2)))- 0]; LA9_: ; stack[((NI)(sp - ((NI)2)))- 0] = T8_; sp -= ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)4): { stack[((NI)(sp - ((NI)1)))- 0] = !(stack[((NI)(sp - ((NI)1)))- 0]); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)5): { stack[(sp)- 0] = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)); sp += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)6): { NIM_BOOL T13_; T13_ = (NIM_BOOL)0; T13_ = isAtom__ast_6204(n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; stack[(sp)- 0] = T13_; sp += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)7): { stack[(sp)- 0] = ((*n).kind >= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)5) && (*n).kind <= ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23)); sp += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)8): { stack[(sp)- 0] = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2)); sp += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)9): { stack[(sp)- 0] = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)31) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)28) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32)); sp += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)10): { tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ kind; NIM_BOOL T18_; kind = ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ) (((NU8)(code.p->data[(NI)(pc + ((NI)1))])))); T18_ = (NIM_BOOL)0; T18_ = ((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3)); if (!(T18_)) goto LA19_; T18_ = ((*(*n)._kind_4.sym).kind == kind); LA19_: ; stack[(sp)- 0] = T18_; sp += ((NI)1); pc += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)11): { tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind_2; kind_2 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ) (((NU8)(code.p->data[(NI)(pc + ((NI)1))])))); stack[(sp)- 0] = ((*n).kind == kind_2); sp += ((NI)1); pc += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)12): { tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg T22_; T22_ = (tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)0; T22_ = isAssignable__parampatterns_349(((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL), n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; stack[(sp)- 0] = (T22_ == ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1) || T22_ == ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)2)); sp += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)13): { tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg T24_; T24_ = (tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)0; T24_ = isAssignable__parampatterns_349(((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL), n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; stack[(sp)- 0] = (T24_ == ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)2)); sp += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)14): { tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ T26_; T26_ = (tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)0; T26_ = checkForSideEffects__parampatterns_224(n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; stack[(sp)- 0] = (T26_ == ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)1)); sp += ((NI)1); } break; case ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)15): { tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ T28_; T28_ = (tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)0; T28_ = checkForSideEffects__parampatterns_224(n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; stack[(sp)- 0] = !((T28_ == ((tyEnum_TSideEffectAnalysis__JRXtwiNW9cNSWh30D1cHhaQ)1))); sp += ((NI)1); } break; } pc += ((NI)1); } } LA1: ; result = stack[((NI)(sp - ((NI)1)))- 0]; }BeforeRet_: ; return result; } static N_INLINE(void, nimAddCharV1)(NimStringV2* s, NIM_CHAR c) { prepareAdd(s, ((NI)1)); (*(*s).p).data[(*s).len] = c; (*(*s).p).data[(NI)((*s).len + ((NI)1))] = 0; (*s).len += ((NI)1); } 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, patternError__parampatterns_38)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) { NimStringV2 colontmpD_; NimStringV2 colontmpD__2; NimStringV2 T2_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); colontmpD_.len = 0; colontmpD_.p = NIM_NIL; colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL; T2_.len = 0; T2_.p = NIM_NIL; colontmpD_ = renderTree__renderer_50(n, 4); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; T2_ = rawNewString(colontmpD_.len + 15); appendString((&T2_), TM__IfESpe2yD3DScypV9a7z8Mg_6); appendString((&T2_), colontmpD_); colontmpD__2 = T2_; liMessage__msgs_1172(conf, (*n).info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), (&TM__IfESpe2yD3DScypV9a7z8Mg_7), NIM_FALSE); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; { LA1_:; } { eqdestroy___stdZassertions_13((&colontmpD__2)); eqdestroy___stdZassertions_13((&colontmpD_)); } 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(void, add__parampatterns_41)(NimStringV2* code, tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ op) { nimAddCharV1((&(*code)), ((NIM_CHAR) (((NI) (op))))); } static N_INLINE(void, nimPrepareStrMutationV2)(NimStringV2* s) { { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = !(((*s).p == ((NimStrPayload*) NIM_NIL))); if (!(T3_)) goto LA4_; T3_ = ((NI)((*(*s).p).cap & ((NI)IL64(4611686018427387904))) == ((NI)IL64(4611686018427387904))); LA4_: ; if (!T3_) goto LA5_; nimPrepareStrMutationImpl__system_2301(s); } LA5_: ; } 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__IfESpe2yD3DScypV9a7z8Mg_38); addInt__stdZprivateZdigitsutils_198((&result), (*info).Field1); { if (!(((NI)0) < (NI)((*info).Field2 + ((NI)1)))) goto LA7_; prepareAdd((&result), 2); appendString((&result), TM__IfESpe2yD3DScypV9a7z8Mg_40); addInt__stdZprivateZdigitsutils_198((&result), (NI)((*info).Field2 + ((NI)1))); } LA7_: ; prepareAdd((&result), 1); appendString((&result), TM__IfESpe2yD3DScypV9a7z8Mg_42); } LA3_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, compileConstraints__parampatterns_70)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* p, NimStringV2* result, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) { NIM_BOOL oldNimErrFin2_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); switch ((*p).kind) { case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32): { tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* op; op = NIM_NIL; { if (!!(((*(*p)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2)))) goto LA5_; patternError__parampatterns_38((*p)._kind_6.sons.p->data[((NI)0)], conf); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; eqdestroy___idents_133(&op); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; goto BeforeRet_; } LA5_: ; eqcopy___idents_136(&op, (*(*p)._kind_6.sons.p->data[((NI)0)])._kind_5.ident); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; { NI T9_; T9_ = (NI)0; T9_ = len__ast_3325(p); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; if (!(T9_ == ((NI)3))) goto LA10_; { NIM_BOOL T14_; T14_ = (NIM_BOOL)0; T14_ = eqStrings((*op).s, TM__IfESpe2yD3DScypV9a7z8Mg_10); if (T14_) goto LA15_; T14_ = ((*op).id == ((NI)47)); LA15_: ; if (!T14_) goto LA16_; compileConstraints__parampatterns_70((*p)._kind_6.sons.p->data[((NI)1)], result, conf); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; compileConstraints__parampatterns_70((*p)._kind_6.sons.p->data[((NI)2)], result, conf); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)2)); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } goto LA12_; LA16_: ; { NIM_BOOL T19_; T19_ = (NIM_BOOL)0; T19_ = eqStrings((*op).s, TM__IfESpe2yD3DScypV9a7z8Mg_12); if (T19_) goto LA20_; T19_ = ((*op).id == ((NI)2)); LA20_: ; if (!T19_) goto LA21_; compileConstraints__parampatterns_70((*p)._kind_6.sons.p->data[((NI)1)], result, conf); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; compileConstraints__parampatterns_70((*p)._kind_6.sons.p->data[((NI)2)], result, conf); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)3)); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } goto LA12_; LA21_: ; { patternError__parampatterns_38(p, conf); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } LA12_: ; } goto LA7_; LA10_: ; { NIM_BOOL T25_; NI T26_; NIM_BOOL T28_; T25_ = (NIM_BOOL)0; T26_ = (NI)0; T26_ = len__ast_3325(p); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; T25_ = (T26_ == ((NI)2)); if (!(T25_)) goto LA27_; T28_ = (NIM_BOOL)0; T28_ = eqStrings((*op).s, TM__IfESpe2yD3DScypV9a7z8Mg_14); if (T28_) goto LA29_; T28_ = ((*op).id == ((NI)43)); LA29_: ; T25_ = T28_; LA27_: ; if (!T25_) goto LA30_; compileConstraints__parampatterns_70((*p)._kind_6.sons.p->data[((NI)1)], result, conf); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)4)); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } goto LA7_; LA30_: ; { patternError__parampatterns_38(p, conf); if (NIM_UNLIKELY(*nimErr_)) goto LA2_; } LA7_: ; { LA2_:; } { oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___idents_133(&op); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin2_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)53): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)37): { { NI T38_; T38_ = (NI)0; T38_ = len__ast_3325(p); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; if (!(T38_ == ((NI)1))) goto LA39_; compileConstraints__parampatterns_70((*p)._kind_6.sons.p->data[((NI)0)], result, conf); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } goto LA36_; LA39_: ; { patternError__parampatterns_38(p, conf); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA36_: ; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2): { NimStringV2 spec; spec.len = 0; spec.p = NIM_NIL; spec = nsuNormalize((*(*p)._kind_5.ident).s); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; switch (hashString(spec) & 15) { case 2: if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_36)) goto LA54_; break; case 4: if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_20)) goto LA46_; if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_30)) goto LA51_; if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_34)) goto LA53_; break; case 6: if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_22)) goto LA47_; break; case 10: if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_28)) goto LA50_; break; case 11: if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_16)) goto LA44_; break; case 12: if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_18)) goto LA45_; break; case 13: if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_24)) goto LA48_; break; case 14: if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_26)) goto LA49_; if (eqStrings(spec, TM__IfESpe2yD3DScypV9a7z8Mg_32)) goto LA52_; break; } goto LA55_; LA44_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)6)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA45_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)7)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA46_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)5)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA47_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)8)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA48_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)9)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA49_: ; { nimPrepareStrMutationV2((&(*result))); (*result).p->data[((NI)0)] = 2; } goto LA56_; LA50_: ; { nimPrepareStrMutationV2((&(*result))); (*result).p->data[((NI)0)] = 3; } goto LA56_; LA51_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)12)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA52_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)13)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA53_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)14)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA54_: ; { add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)15)); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } goto LA56_; LA55_: ; { { NimStringV2 argX60gensym13_; if (!NIM_FALSE) goto LA71_; argX60gensym13_.len = 0; argX60gensym13_.p = NIM_NIL; argX60gensym13_ = toFileLineCol__msgs_666((&TM__IfESpe2yD3DScypV9a7z8Mg_43)); if (NIM_UNLIKELY(*nimErr_)) goto LA73_; internalErrorImpl__msgs_1510(conf, unknownLineInfo__lineinfos_338, argX60gensym13_, (&TM__IfESpe2yD3DScypV9a7z8Mg_43)); if (NIM_UNLIKELY(*nimErr_)) goto LA73_; { LA73_:; } { eqdestroy___stdZassertions_13((&argX60gensym13_)); } if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } LA71_: ; { tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ i; i = (tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)0; { tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ v; NI res; v = (tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ)0; res = ((NI)0); { while (1) { NimStringV2 colontmpD_; if (!(res <= ((NI)25))) goto LA79 ; colontmpD_.len = 0; colontmpD_.p = NIM_NIL; v = ((tyEnum_TSymKind__EmlFK9c4sdJy7UDy5lm8yQQ) (res)); i = v; { NI T83_; colontmpD_ = toHumanStr__ast_6611(i); if (NIM_UNLIKELY(*nimErr_)) goto LA80_; T83_ = (NI)0; T83_ = nsuCmpIgnoreStyle(colontmpD_, spec); if (NIM_UNLIKELY(*nimErr_)) goto LA80_; if (!(T83_ == ((NI)0))) goto LA84_; add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)10)); if (NIM_UNLIKELY(*nimErr_)) goto LA80_; nimAddCharV1((&(*result)), ((NIM_CHAR) (((NI) (i))))); eqdestroy___stdZassertions_13((&colontmpD_)); eqdestroy___stdZassertions_13((&spec)); goto BeforeRet_; } LA84_: ; res += ((NI)1); { LA80_:; } { eqdestroy___stdZassertions_13((&colontmpD_)); } if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } LA79: ; } } } { NimStringV2 argX60gensym15_; if (!NIM_FALSE) goto LA90_; argX60gensym15_.len = 0; argX60gensym15_.p = NIM_NIL; argX60gensym15_ = toFileLineCol__msgs_666((&TM__IfESpe2yD3DScypV9a7z8Mg_44)); if (NIM_UNLIKELY(*nimErr_)) goto LA92_; internalErrorImpl__msgs_1510(conf, unknownLineInfo__lineinfos_338, argX60gensym15_, (&TM__IfESpe2yD3DScypV9a7z8Mg_44)); if (NIM_UNLIKELY(*nimErr_)) goto LA92_; { LA92_:; } { eqdestroy___stdZassertions_13((&argX60gensym15_)); } if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } LA90_: ; { tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ i_2; i_2 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0; { tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ v_2; NI res_2; v_2 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0; res_2 = ((NI)0); { while (1) { NimStringV2 colontmpD__2; if (!(res_2 <= ((NI)164))) goto LA98 ; colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL; v_2 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ) (res_2)); i_2 = v_2; { NI T102_; colontmpD__2 = dollar___ast_192(i_2); T102_ = (NI)0; T102_ = nsuCmpIgnoreStyle(colontmpD__2, spec); if (NIM_UNLIKELY(*nimErr_)) goto LA99_; if (!(T102_ == ((NI)0))) goto LA103_; add__parampatterns_41(result, ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)11)); if (NIM_UNLIKELY(*nimErr_)) goto LA99_; nimAddCharV1((&(*result)), ((NIM_CHAR) (((NI) (i_2))))); eqdestroy___stdZassertions_13((&colontmpD__2)); eqdestroy___stdZassertions_13((&spec)); goto BeforeRet_; } LA103_: ; res_2 += ((NI)1); { LA99_:; } { eqdestroy___stdZassertions_13((&colontmpD__2)); } if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } LA98: ; } } } patternError__parampatterns_38(p, conf); if (NIM_UNLIKELY(*nimErr_)) goto LA43_; } LA56_: ; { LA43_:; } { eqdestroy___stdZassertions_13((&spec)); } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; default: { patternError__parampatterns_38(p, conf); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } break; } }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, semNodeKindConstraints__parampatterns_191)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NI start) { tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result; NimStringV2 T1_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = NIM_NIL; result = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)20), (*n).info); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; T1_.len = 0; T1_.p = NIM_NIL; T1_ = rawNewString(((NI)10)); eqsink___stdZassertions_19((&(*result)._kind_3.strVal), T1_); nimAddCharV1((&(*result)._kind_3.strVal), 1); { NI T4_; T4_ = (NI)0; T4_ = len__ast_3325(n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; if (!(((NI)2) <= T4_)) goto LA5_; { NI i; NI colontmp_; NI T8_; NI i_2; i = (NI)0; colontmp_ = (NI)0; T8_ = (NI)0; T8_ = len__ast_3325(n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; colontmp_ = ((NI) (T8_)); i_2 = start; { while (1) { if (!(((NI) (i_2)) < ((NI) (colontmp_)))) goto LA10 ; i = i_2; compileConstraints__parampatterns_70((*n)._kind_6.sons.p->data[i], (&(*result)._kind_3.strVal), conf); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; i_2 += ((NI)1); } LA10: ; } } { if (!(((NI)63) < (*result)._kind_3.strVal.len)) goto LA13_; internalErrorImpl__msgs_1510(conf, (*n).info, TM__IfESpe2yD3DScypV9a7z8Mg_46, (&TM__IfESpe2yD3DScypV9a7z8Mg_47)); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA13_: ; } goto LA2_; LA5_: ; { patternError__parampatterns_38(n, conf); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; } LA2_: ; add__parampatterns_41((&(*result)._kind_3.strVal), ((tyEnum_TOpcode__yxlknmXAY63F8OhAFP9ahuQ)1)); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(tyEnum_TAliasRequest__19anJwPpgb66lTqx4j4CB3g, whichAlias__parampatterns_48)(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* p) { tyEnum_TAliasRequest__19anJwPpgb66lTqx4j4CB3g result; result = (tyEnum_TAliasRequest__19anJwPpgb66lTqx4j4CB3g)0; { if (!!(((*p).constraint == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)))) goto LA3_; result = ((tyEnum_TAliasRequest__19anJwPpgb66lTqx4j4CB3g) (((NU8)((*(*p).constraint)._kind_3.strVal.p->data[((NI)0)])))); } goto LA1_; LA3_: ; { result = ((tyEnum_TAliasRequest__19anJwPpgb66lTqx4j4CB3g)1); } LA1_: ; return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*, exprRoot__parampatterns_314)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, NIM_BOOL allowCalls) { tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* result; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* it; NIM_BOOL oldNimErrFin6_; NIM_BOOL oldNimErrFin1_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = NIM_NIL; it = NIM_NIL; eqcopy___ast_3457(&it, n); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; { while (1) { switch ((*it).kind) { case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)3): { eqcopy___ast_4063(&result, (*it)._kind_4.sym); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; eqdestroy___ast_3454(&it); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; goto BeforeRet_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)65): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)47): { tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* colontmpD_; colontmpD_ = NIM_NIL; { colontmpD_ = skipTypes__ast_4803((*(*it)._kind_6.sons.p->data[((NI)0)]).typ, TM__IfESpe2yD3DScypV9a7z8Mg_48); if (NIM_UNLIKELY(*nimErr_)) goto LA6_; if (!((*colontmpD_).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)21) || (*colontmpD_).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)22))) goto LA9_; eqdestroy___ast_3543(&colontmpD_); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; goto LA2; } goto LA7_; LA9_: ; { eqcopy___ast_3457(&it, (*it)._kind_6.sons.p->data[((NI)0)]); if (NIM_UNLIKELY(*nimErr_)) goto LA6_; } LA7_: ; { LA6_:; } { oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3543(&colontmpD_); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; *nimErr_ = oldNimErrFin6_; } if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)64): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)67): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)66): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)46): { eqcopy___ast_3457(&it, (*it)._kind_6.sons.p->data[((NI)0)]); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)58): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)59): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)60): { eqcopy___ast_3457(&it, (*it)._kind_6.sons.p->data[((NI)1)]); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115): case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)126): { { NIM_BOOL T19_; NI T20_; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T24_; T19_ = (NIM_BOOL)0; T20_ = (NI)0; T20_ = len__ast_3325(it); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; T19_ = (((NI)0) < T20_); if (!(T19_)) goto LA21_; T19_ = !(((*it).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL))); LA21_: ; if (!T19_) goto LA22_; T24_ = NIM_NIL; T24_ = lastSon__ast_6268(it); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; eqsink___ast_3460(&it, T24_); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } goto LA17_; LA22_: ; { goto LA2; } LA17_: ; } break; case ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) ... ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32): { { NIM_BOOL T29_; NIM_BOOL T30_; NIM_BOOL T31_; NI T35_; T29_ = (NIM_BOOL)0; T30_ = (NIM_BOOL)0; T31_ = (NIM_BOOL)0; T31_ = allowCalls; if (!(T31_)) goto LA32_; T31_ = !(((*it).typ == ((tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA*) NIM_NIL))); LA32_: ; T30_ = T31_; if (!(T30_)) goto LA33_; T30_ = ((*(*it).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)23) || (*(*it).typ).kind == ((tyEnum_TTypeKind__cu4lI59aFp7m9cDkg2Nfr7ZQ)47)); LA33_: ; T29_ = T30_; if (!(T29_)) goto LA34_; T35_ = (NI)0; T35_ = len__ast_3325(it); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; T29_ = (((NI)1) < T35_); LA34_: ; if (!T29_) goto LA36_; eqcopy___ast_3457(&it, (*it)._kind_6.sons.p->data[((NI)1)]); if (NIM_UNLIKELY(*nimErr_)) goto LA1_; } goto LA27_; LA36_: ; { goto LA2; } LA27_: ; } break; default: { goto LA2; } break; } } } LA2: ; { LA1_:; } { oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE; eqdestroy___ast_3454(&it); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; *nimErr_ = oldNimErrFin1_; } if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isLValue__parampatterns_502)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) { NIM_BOOL result; tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg T1_; NIM_BOOL* nimErr_; {nimErr_ = nimErrorFlag(); result = (NIM_BOOL)0; T1_ = (tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)0; T1_ = isAssignable__parampatterns_349(((tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA*) NIM_NIL), n); if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; result = (T1_ == ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)1) || T1_ == ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)2) || T1_ == ((tyEnum_TAssignableResult__tM1HL39bOpJzxn4WjZuSvIg)6)); }BeforeRet_: ; return result; }