/* Generated by Nim Compiler v1.6.2 */ #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_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ; typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ; typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw; typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w; typedef struct RootObj RootObj; typedef struct TNimType TNimType; typedef struct TNimNode TNimNode; typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g; typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg; typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA; typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q; typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA; typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA; typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA; typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A; typedef struct NimStringDesc NimStringDesc; typedef struct TGenericSeq TGenericSeq; typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ; typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA; typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA; typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w; typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw; typedef struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ tySequence__4mZLwkxT8rbt9bf3wXrXYNQ; typedef struct tySequence__rQHmYk1HzcwNxKBymIFHpA tySequence__rQHmYk1HzcwNxKBymIFHpA; typedef struct tySequence__XMM60DtBsc6xYsIpNANkrA tySequence__XMM60DtBsc6xYsIpNANkrA; typedef struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw; typedef struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg; typedef struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg; typedef struct tySequence__mWRMiYLthG9coLjkbElCxkw tySequence__mWRMiYLthG9coLjkbElCxkw; typedef struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyObject_Table__iowAVDkco3qpbEH0z8OmkQ; typedef struct tySequence__bTDCDwD2P7TodzbAefLcSw tySequence__bTDCDwD2P7TodzbAefLcSw; typedef struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w; typedef struct tySequence__3MPVXAHA08SszBrU4ffqEg tySequence__3MPVXAHA08SszBrU4ffqEg; typedef struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw tyObject_Table__KcymdZjUsmGSK8BxmvoJgw; typedef struct tySequence__YCf5zJHm4JI06qpmKwPUWg tySequence__YCf5zJHm4JI06qpmKwPUWg; typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA; typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw; typedef struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ; typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA; typedef struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ tySequence__eHqUwlHGGaPw0TDPDeL79cQ; typedef struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA; typedef struct tySequence__61s9cbAniKuBrdHwBhMDfQg tySequence__61s9cbAniKuBrdHwBhMDfQg; typedef struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA tyObject_Table__fdKWDDO1P17zvuQPReVgRA; typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg; typedef struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ; typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg; typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA; typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw; typedef struct tySequence__s9byh6WFJ16lPMcmqdaMTHA tySequence__s9byh6WFJ16lPMcmqdaMTHA; typedef struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw tyObject_Table__Ue6w4c82v7gc7t2qntTbAw; typedef struct tySequence__1U9bG8RcAedEeYkQLZjVFKA tySequence__1U9bG8RcAedEeYkQLZjVFKA; typedef struct tyObject_Table__G1v8c16HePOldLeucwe05Q tyObject_Table__G1v8c16HePOldLeucwe05Q; typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ; typedef struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA; typedef struct tySequence__23SMqauuRsbDANhthj9bWlA tySequence__23SMqauuRsbDANhthj9bWlA; typedef struct tyObject_Table__NttoEzoiq5CiphZe81oadg tyObject_Table__NttoEzoiq5CiphZe81oadg; typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA; typedef struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg tyObject_Table__nagDFX4QHx0s6Fvma9blmSg; typedef struct tySequence__pHNq3oXj9av2sEUdqaqeZjw tySequence__pHNq3oXj9av2sEUdqaqeZjw; typedef struct tySequence__MAQKEADohlpnXTModtugbQ tySequence__MAQKEADohlpnXTModtugbQ; typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q; typedef struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA; typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w; typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g; typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w; typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ; typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA; typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg; typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ; typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg; typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw; typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA; typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw; typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw; typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg; typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg; typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg; typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ; typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg; typedef struct tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug; typedef struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w; typedef struct tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw; typedef struct tySequence__eiMlYcU7NrAOGD2H36QOOQ tySequence__eiMlYcU7NrAOGD2H36QOOQ; typedef struct tyObject_TProcCon__s5jyYR8yL1QmFqiHICzU9aQ tyObject_TProcCon__s5jyYR8yL1QmFqiHICzU9aQ; typedef struct tyObject_TMatchedConcept__9blNHn9cqK8EfxnwsfjDnKvg tyObject_TMatchedConcept__9blNHn9cqK8EfxnwsfjDnKvg; typedef struct tySequence__oYkV9aFZe0MXcEAprJaOUsA tySequence__oYkV9aFZe0MXcEAprJaOUsA; typedef struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q; typedef struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA tySequence__Mh9agqM29bm9aP5AUL1x7dZGA; typedef struct tySequence__arD7Tw6eD6lvOczWZl9buNg tySequence__arD7Tw6eD6lvOczWZl9buNg; typedef struct tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw; typedef struct tySequence__jWKvSdankQPoT5bw9cBU9aiw tySequence__jWKvSdankQPoT5bw9cBU9aiw; typedef struct tySequence__xSqu3cxq5WeFlOO3YgE6yA tySequence__xSqu3cxq5WeFlOO3YgE6yA; typedef struct tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w; typedef struct tySequence__Bis5AbpONWcIRrPyPJS8Yw tySequence__Bis5AbpONWcIRrPyPJS8Yw; typedef struct tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w; typedef struct tySequence__E8pi9b5QNahsURYzXMjh3qw tySequence__E8pi9b5QNahsURYzXMjh3qw; typedef struct tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ; typedef struct tySequence__Hkw5zrAn53wlKDHdJF1GFA tySequence__Hkw5zrAn53wlKDHdJF1GFA; typedef struct tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA; typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g; typedef struct tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q; typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw; typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg; typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A; typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA; typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ; typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg; typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw; typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ; typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q; typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw; typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ; typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig; typedef struct tySequence__vGU8AyGT6KxtLJwEg0BpNw tySequence__vGU8AyGT6KxtLJwEg0BpNw; typedef struct tyTuple__KvKIqRIx9anKcDMu8DPSkHw tyTuple__KvKIqRIx9anKcDMu8DPSkHw; typedef struct tyTuple__Y6Ewh3MCxsjd1bsriN6Gag tyTuple__Y6Ewh3MCxsjd1bsriN6Gag; typedef struct tySequence__8Np6tlClE5az1CyqZdN19bQ tySequence__8Np6tlClE5az1CyqZdN19bQ; typedef struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ; typedef struct tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA; typedef struct tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug; typedef struct tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag; typedef struct tySequence__7PsCyIDXDb8nGSU5UlS9cAA tySequence__7PsCyIDXDb8nGSU5UlS9cAA; typedef struct tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA; typedef struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA; typedef struct tySequence__vv5mGmK03BCr5e3LTZA5Hw tySequence__vv5mGmK03BCr5e3LTZA5Hw; typedef struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w; typedef struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ; typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA; typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA; typedef struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw; typedef struct tySequence__29bS0n2QNyO1R7e0qMMOvLA tySequence__29bS0n2QNyO1R7e0qMMOvLA; typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg; typedef struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg tySequence__REuPuHuSlOkZ0Q5oqzDrQg; typedef struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA tySequence__I9aQmO9asXXWJ58UI9c8BCSzA; typedef struct tySequence__NyaOkf8ZwxP6rkRF5TOkew tySequence__NyaOkf8ZwxP6rkRF5TOkew; typedef struct tySequence__L9bOt8CaTEmIjgtuZvp6syg tySequence__L9bOt8CaTEmIjgtuZvp6syg; typedef struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ tySequence__im8UB2GsZvUaQ4a1wKGWhQ; typedef struct tySequence__xxnXDLpoqBo8zJzP9b1073g tySequence__xxnXDLpoqBo8zJzP9b1073g; typedef struct tySequence__DfmUmNgVGnYaiV1I6227tw tySequence__DfmUmNgVGnYaiV1I6227tw; typedef struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA tySequence__t8Uv4lEJ4lkuECvP9c6JMhA; typedef struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg; typedef struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ; typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ; typedef struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g tyObject_Table__CE4eiu6FavV1vmUiTXQ70g; typedef struct tySequence__9bT7o0CflHuiE4VhmtqBPCw tySequence__9bT7o0CflHuiE4VhmtqBPCw; typedef struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw; typedef struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q tyObject_Table__TRm6MPqklA8EYBmBMY117Q; typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ; typedef struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ; typedef struct tySequence__O5RcspOP32YJ4YtU5ppxxA tySequence__O5RcspOP32YJ4YtU5ppxxA; typedef struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg; typedef struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ; typedef struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ; typedef struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg tyTuple__o67sDX0wYbEuhI9cJYAbDtg; typedef struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA; typedef struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg; typedef struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA tySequence__ipEvhpHAmm8ZCn9bZAOdNYA; typedef struct tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA; typedef struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q tyTuple__9aNnDWBFMF44sfFinBpMT4Q; typedef struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg; typedef struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g tySequence__159bHWBGAOOs6U7OZ9cQlO0g; typedef struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ tyTuple__VrD6plbUKJjYKM0lCr3hGQ; typedef struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA; typedef struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA tyTuple__1ZbjBgxAbnye0IFMZ6w4OA; typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw; typedef struct tyTuple__rplX06U9bjhu9asm5pWdgqsA tyTuple__rplX06U9bjhu9asm5pWdgqsA; typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q; typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ; typedef struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A; typedef struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ tyTuple__3i6hlQmqrn6m7tuVN8FHjQ; typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw; typedef struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw; typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg; typedef struct tyTuple__wcNatyuf8WOqAhGLhSvgiw tyTuple__wcNatyuf8WOqAhGLhSvgiw; typedef struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg; typedef struct tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g; typedef struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ; typedef struct tyObject_ImportedModule__kyodd8HBOgfP30dipCL3JQ tyObject_ImportedModule__kyodd8HBOgfP30dipCL3JQ; typedef struct tyObject_TOptionEntry__H9ac5KbrDJVwT1zH5O83r7w tyObject_TOptionEntry__H9ac5KbrDJVwT1zH5O83r7w; typedef struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg; typedef struct tyObject_TInstantiationPair__HkXM4cJmOpk8zFcmq9c9c3gQ tyObject_TInstantiationPair__HkXM4cJmOpk8zFcmq9c9c3gQ; typedef struct tyTuple__KNXySARiHvEh2wA9asnyYmw tyTuple__KNXySARiHvEh2wA9asnyYmw; typedef struct tyTuple__NAaJgGVgNmlGoqmiWxdOHQ tyTuple__NAaJgGVgNmlGoqmiWxdOHQ; typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA; typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw; typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw; typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg; typedef struct tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA; typedef struct tyObject_Connection__EevFKe104MtQGkxxkLKkgg tyObject_Connection__EevFKe104MtQGkxxkLKkgg; typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q; typedef struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow; typedef struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg; typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ; typedef struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA tyTuple__Q7r9caOmeWqQGZCIBHhGRUA; typedef struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg; typedef struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw tyTuple__XyJ8LOAZzVVXSsmt09b8uWw; typedef struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA; typedef struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw tySequence__vC9cvg0R8tfBaOXXi3sfMzw; typedef struct tyTuple__9aoobCDZB4x41HJSOmh0mwA tyTuple__9aoobCDZB4x41HJSOmh0mwA; typedef struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA tyTuple__g0Q6Qx15nK53ce9aLo7YyrA; typedef struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw; typedef struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw; typedef struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA; typedef struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ; typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA; typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A; typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ; typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op); typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p); struct TNimType { NI size; NI align; tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind; tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags; TNimType* base; TNimNode* node; void* finalizer; tyProc__ojoeKfW4VYIm36I9cpDTQIg marker; tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy; }; struct RootObj { TNimType* m_type; }; struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g { NI32 module; NI32 item; }; struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w { RootObj Sup; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId; }; typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw; typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg; struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q { NU16 line; NI16 col; NI32 fileIndex; }; typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw; typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg; typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg; typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw; typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA; struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA { tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k; tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage; tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode; tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r; }; struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ { tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup; tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind; union{ struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody; } _kind_1; struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard; NI bitsize; NI alignment; } _kind_2; }; tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic; tyObject_TType__facALICuu8zUj0hjvbTLFg* typ; tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name; tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner; tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast; tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options; NI position; NI offset; tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc; tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint; }; typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag; typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA; typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw; struct tyObject_TType__facALICuu8zUj0hjvbTLFg { tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup; tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind; tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv; tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags; tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym; NI64 size; NI16 align; NI16 paddingAtEnd; NI16 lockLevel; tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc; tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId; }; typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg; typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw; struct TGenericSeq { NI len; NI reserved; }; struct NimStringDesc { TGenericSeq Sup; NIM_CHAR data[SEQ_DECL_SIZE]; }; struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw { tyObject_TType__facALICuu8zUj0hjvbTLFg* typ; tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info; tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags; tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind; union{ struct {NI64 intVal; } _kind_1; struct {NF floatVal; } _kind_2; struct {NimStringDesc* strVal; } _kind_3; struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym; } _kind_4; struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident; } _kind_5; struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons; } _kind_6; }; }; typedef NU16 tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw; typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__3AyzgbaZVZwTUW9bffBh5Vw) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b); 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; }; struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw { tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg* data; NI counter; }; struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg { tySequence__mWRMiYLthG9coLjkbElCxkw* data; NI counter; }; struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ { tySequence__bTDCDwD2P7TodzbAefLcSw* data; NI counter; }; typedef tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ[5]; struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w { tySequence__3MPVXAHA08SszBrU4ffqEg* data; NI counter; }; struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw { tySequence__YCf5zJHm4JI06qpmKwPUWg* data; NI counter; }; struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA { tySequence__7lEisrXlQEzwtUKW5pzRCw* data; NI counter; }; typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g; typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw; typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA; typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw; struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ { tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend; tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC; tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler; tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options; tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions; }; struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA { NI counter; tySequence__eHqUwlHGGaPw0TDPDeL79cQ* data; }; struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA { tySequence__61s9cbAniKuBrdHwBhMDfQg* data; NI counter; }; struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA { tySequence__fdmz6VkIf1ewwrssKYqRFg* data; NI counter; }; struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ { tySequence__kxu4GK0onha2t9bo86mdVAg* data; NI counter; }; typedef struct { N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0); void* ClE_0; } tyProc__In3g79a0qTcRmbTbJp9ba9ctg; typedef tyObject_TType__facALICuu8zUj0hjvbTLFg* tyArray__9bjuenwQUcqO3lbmS2wX7uA[65]; struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw { tySequence__1U9bG8RcAedEeYkQLZjVFKA* data; NI counter; }; struct tyObject_Table__G1v8c16HePOldLeucwe05Q { tySequence__fIB1rTQ55aFonoft9a9bmljQ* data; NI counter; }; typedef N_NIMCALL_PTR(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, tyProc__VHDwJFdIqpwtpUGuxiXUwg) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx); typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__mjUN9alLJ31lnSKkUsuyWMw) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx); struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA { tySequence__23SMqauuRsbDANhthj9bWlA* data; NI counter; }; struct tyObject_Table__NttoEzoiq5CiphZe81oadg { tySequence__squ9b9bUH4OLHf6cEMrt6hVA* data; NI counter; }; struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg { tySequence__pHNq3oXj9av2sEUdqaqeZjw* data; NI counter; }; typedef N_NIMCALL_PTR(void, tyProc__TjycsqkDBjsxd4da6KYTng) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info); typedef N_NIMCALL_PTR(void, tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body); typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__J7Jq15ZScfKLqcLx8sEz9cA) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TType__facALICuu8zUj0hjvbTLFg* formal, tyObject_TType__facALICuu8zUj0hjvbTLFg* actual); struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opNot; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opContains; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLe; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLt; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAnd; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opOr; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opIsNil; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opEq; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAdd; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opSub; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opMul; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opDiv; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLen; }; struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ { tySequence__4mZLwkxT8rbt9bf3wXrXYNQ* ifaces; tySequence__rQHmYk1HzcwNxKBymIFHpA* packed_0; tySequence__XMM60DtBsc6xYsIpNANkrA* encoders; tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw typeInstCache; tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg procInstCache; tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ attachedOps; tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w methodsPerType; tyObject_Table__KcymdZjUsmGSK8BxmvoJgw enumToStringProcs; tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA emittedTypeInfo; tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ startupPackedConfig; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageSyms; tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA modulesPerPackage; 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___LaK09ayL9alwKUad7rts0rTw* config; tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache; RootObj* vm; tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* usageSym; tySequence__eHqUwlHGGaPw0TDPDeL79cQ* owners; tySequence__s9byh6WFJ16lPMcmqdaMTHA* methods; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* systemModule; tyArray__9bjuenwQUcqO3lbmS2wX7uA sysTypes; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA compilerprocs; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA exposed; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageTypes; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* emptyNode; tyObject_Table__Ue6w4c82v7gc7t2qntTbAw canonTypes; tyObject_Table__G1v8c16HePOldLeucwe05Q symBodyHashes; tyProc__VHDwJFdIqpwtpUGuxiXUwg importModuleCallback; tyProc__mjUN9alLJ31lnSKkUsuyWMw includeFileCallback; tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA cacheSeqs; tyObject_Table__NttoEzoiq5CiphZe81oadg cacheCounters; tyObject_Table__nagDFX4QHx0s6Fvma9blmSg cacheTables; tySequence__MAQKEADohlpnXTModtugbQ* passes; tyProc__TjycsqkDBjsxd4da6KYTng onDefinition; tyProc__TjycsqkDBjsxd4da6KYTng onDefinitionResolveForward; tyProc__TjycsqkDBjsxd4da6KYTng onUsage; tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* globalDestructors; tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ strongSemCheck; tyProc__J7Jq15ZScfKLqcLx8sEz9cA compatibleProps; tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen; tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA operators; }; typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w; typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw; struct tyTuple__kN8up2W6YKc5YA9avn5mV5w { NimStringDesc* Field0; NI Field1; NI Field2; }; typedef NU16 tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw; typedef NU8 tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw; typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2]; typedef NU8 tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag[9]; typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw; struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA { NI id; NimStringDesc* s; tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next; NI h; }; struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g { NI refcount; TNimType* typ; }; struct tyObject_GcStack__7fytPA5bBsob6See21YMRA { void* bottom; }; struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w { NI len; NI cap; tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d; }; typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256]; typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24]; typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32]; typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24]; typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256]; struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA { tyArray__lh2A89ahMmYg9bCmpVaplLbA data; }; typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2]; struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw { tyArray__0aOLqZchNi8nWtMTi8ND8w link; NI key; NI upperBound; NI level; }; struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg { tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0; NI Field1; }; typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30]; struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg { NI len; tyArray__LzOv2eCDGiceMKQstCLmhw chunks; tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next; }; struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg { NI minLargeObj; NI maxLargeObj; tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks; NU32 flBitmap; tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap; tyArray__B6durA4ZCi1xjJvRtyYxMg matrix; tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem; NI currMem; NI maxMem; NI freeMem; NI occ; NI lastSize; tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes; NIM_BOOL locked; NIM_BOOL blockChunkSizeIncrease; NI nextChunkSize; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData; tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks; }; struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg { NI stackScans; NI cycleCollections; NI maxThreshold; NI maxStackSize; NI maxStackCells; NI cycleTableSize; NI64 maxPause; }; struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ { NI counter; NI max; tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head; tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data; }; struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ { tyObject_GcStack__7fytPA5bBsob6See21YMRA stack; NI cycleThreshold; NI zctThreshold; tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct; tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack; tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack; NI recGcLock; tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region; tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat; tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked; tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots; NI gcThreadId; }; typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ; struct TNimNode { tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind; NI offset; TNimType* typ; NCSTRING name; NI len; TNimNode** sons; }; typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw; struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w { RootObj Sup; tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen; }; typedef tyObject_TType__facALICuu8zUj0hjvbTLFg* tyArray__d88NmFOoQ1OEoX9af4f9aptg[38]; struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q { NI counter; tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* data; }; typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__RcJNn9bSvWdJgUmA1O6sbHA) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); typedef NU32 tySet_tyEnum_TExprFlag__0WWd9a4ssQWuY7Q6ZKepq9cQ; typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__39auogS0nN05zO6JrT7za9cQ) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySet_tyEnum_TExprFlag__0WWd9a4ssQWuY7Q6ZKepq9cQ flags); typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__DZXD9cPwIfL76eNszoUR9aVA) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TType__facALICuu8zUj0hjvbTLFg* t); typedef struct { N_NIMCALL_PTR(NIM_BOOL, ClP_0) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, void* ClE_0); void* ClE_0; } tyProc__7JwrY3AhkVNlleAJXClX9cw; typedef NU32 tySet_tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw; typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__qlV9aWvA5wrWVg9bI5PqwJyA) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nOrig, tySet_tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw filter, tySet_tyEnum_TExprFlag__0WWd9a4ssQWuY7Q6ZKepq9cQ flags); typedef N_NIMCALL_PTR(tyObject_TType__facALICuu8zUj0hjvbTLFg*, tyProc__IDzB9bjws1yntQXPpMRrBvA) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* prev); typedef struct { N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, ClP_0) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q pt, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, void* ClE_0); void* ClE_0; } tyProc__3cacbJ4la9bDJNibHybQSnA; typedef struct { N_NIMCALL_PTR(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, ClP_0) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* fn, tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q pt, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, void* ClE_0); void* ClE_0; } tyProc__fMj9boIZZOt9cLWRnD3rtKhA; typedef NU8 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg; typedef N_NIMCALL_PTR(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, tyProc__zh0Qj9bYHDZFnJnPjcxz6NQ) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* dc, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg op, NI col); typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ; struct tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w { tySequence__Bis5AbpONWcIRrPyPJS8Yw* data; NI counter; }; struct tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w { tySequence__E8pi9b5QNahsURYzXMjh3qw* data; NI counter; }; struct tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ { tySequence__Hkw5zrAn53wlKDHdJF1GFA* data; NI counter; }; struct tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug { tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w Sup; tyObject_TType__facALICuu8zUj0hjvbTLFg* enforceVoidContext; tyObject_TType__facALICuu8zUj0hjvbTLFg* voidType; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module; tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw* currentScope; tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw* moduleScope; tySequence__eiMlYcU7NrAOGD2H36QOOQ* imports; tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw* topLevelScope; tyObject_TProcCon__s5jyYR8yL1QmFqiHICzU9aQ* p; tyArray__d88NmFOoQ1OEoX9af4f9aptg intTypeCache; tyObject_TType__facALICuu8zUj0hjvbTLFg* nilTypeCache; tyObject_TMatchedConcept__9blNHn9cqK8EfxnwsfjDnKvg* matchedConcept; tySequence__eHqUwlHGGaPw0TDPDeL79cQ* friendModules; NI instCounter; NI* templInstCounter; NI inGenericContext; NI inStaticContext; NI inUnrolledContext; NI compilesContextId; NI compilesContextIdGenerator; NI inGenericInst; tySequence__eHqUwlHGGaPw0TDPDeL79cQ* converters; tySequence__eHqUwlHGGaPw0TDPDeL79cQ* patterns; tySequence__oYkV9aFZe0MXcEAprJaOUsA* optionStack; tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q symMapping; tySequence__arD7Tw6eD6lvOczWZl9buNg* libs; tyProc__RcJNn9bSvWdJgUmA1O6sbHA semConstExpr; tyProc__39auogS0nN05zO6JrT7za9cQ semExpr; tyProc__39auogS0nN05zO6JrT7za9cQ semTryExpr; tyProc__RcJNn9bSvWdJgUmA1O6sbHA semTryConstExpr; tyProc__DZXD9cPwIfL76eNszoUR9aVA computeRequiresInit; tyProc__7JwrY3AhkVNlleAJXClX9cw hasUnresolvedArgs; tyProc__39auogS0nN05zO6JrT7za9cQ semOperand; tyProc__RcJNn9bSvWdJgUmA1O6sbHA semConstBoolExpr; tyProc__qlV9aWvA5wrWVg9bI5PqwJyA semOverloadedCall; tyProc__IDzB9bjws1yntQXPpMRrBvA semTypeNode; tyProc__3cacbJ4la9bDJNibHybQSnA semInferredLambda; tyProc__fMj9boIZZOt9cLWRnD3rtKhA semGenerateInstance; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA includedFiles; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA pureEnumFields; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA userPragmas; tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* evalContext; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA unknownIdents; tySequence__jWKvSdankQPoT5bw9cBU9aiw* generics; NI topStmts; NI lastGenericIdx; NI hloLoopDetector; NI inParallelStmt; tyProc__zh0Qj9bYHDZFnJnPjcxz6NQ instTypeBoundOp; tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* selfName; tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache; tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA signatures; NimStringDesc* recursiveDep; NIM_BOOL suggestionsMade; NIM_BOOL isAmbiguous; tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features; NI inTypeContext; NI inConceptDecl; tySequence__xSqu3cxq5WeFlOO3YgE6yA* unusedImports; tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w exportIndirections; tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w importModuleMap; tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastTLineInfo; tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ sideEffects; NI inUncheckedAssignSection; }; struct tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q { tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* s; tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g; NIM_BOOL beSmart; }; struct tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exc; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tags; NI bottom; NI inTryStmt; NI inExceptOrFinallyStmt; NI leftPartOfAsgn; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* ownerModule; tySequence__qwqHTkRvwhrRyENtudHQ7g* init; tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q guards; tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* locked; NIM_BOOL gcUnsafe; NIM_BOOL isRecursive; NIM_BOOL isTopLevel; NIM_BOOL hasSideEffect; NIM_BOOL inEnforcedGcSafe; NIM_BOOL hasDangerousAssign; NIM_BOOL isInnerProc; NIM_BOOL inEnforcedNoSideEffects; NI16 maxLockLevel; NI16 currLockLevel; tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg currOptions; tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config; tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph; tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA escapingParams; }; typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag; typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ; struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw { tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU; tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU; tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS; tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS; NI intSize; NI floatSize; NI ptrSize; NimStringDesc* tnl; }; typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA; struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A { tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos; NIM_BOOL trackPosAttached; tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs; tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext; tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError; tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl; tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos; NI32 systemFileIdx; }; typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ; typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA; typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ; typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ; struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg { tySequence__4eRCaZmrYLLw2k30GPTiMw* data; NI counter; }; typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA; typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ; typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11]; struct tyTuple__47w2DboNEPf69aPgubZdd7Q { NI Field0; NI Field1; NI Field2; }; typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug; typedef struct { N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0); void* ClE_0; } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA; typedef struct { N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0); void* ClE_0; } tyProc__k2HFjxisIgDALbEUFojxaQ; typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA; typedef struct { N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0); void* ClE_0; } tyProc__oL9coyIA2VDTGdUcur9aL9bew; struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw { tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend; tyObject_Target__9abOl5DLX8suLujOaHSvGzw target; NI linesCompiled; tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options; tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand; tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m; tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption; NimStringDesc* unitSep; NI evalTemplateCounter; NI evalMacroCounter; NI8 exitcode; tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd; NimStringDesc* cmdInput; NIM_BOOL projectIsCmd; NIM_BOOL implicitCmd; tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC; tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc; NIM_BOOL hintProcessingDots; NI verbosity; NI numberOfProcessors; NF lastCmdTime; tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles; NI spellSuggestMax; tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines; NimStringDesc* headerFile; tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features; tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures; NimStringDesc* arguments; tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd; NIM_BOOL oldNewlines; tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler; tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes; tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes; tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes; tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes; tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors; tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug 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; NimStringDesc* outFile; NimStringDesc* outDir; NimStringDesc* jsonBuildFile; NimStringDesc* prefixDir; NimStringDesc* libpath; NimStringDesc* nimcacheDir; tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides; tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions; NimStringDesc* projectName; NimStringDesc* projectPath; NimStringDesc* projectFull; NIM_BOOL projectIsStdin; tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot; NI32 projectMainIdx; NI32 projectMainIdx2; NimStringDesc* command; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs; NimStringDesc* commandLine; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds; NIM_BOOL keepComments; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes; NimStringDesc* docSeeSrcUrl; NimStringDesc* docRoot; NimStringDesc* docCmd; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink; NimStringDesc* linkOptionsCmd; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd; NimStringDesc* linkOptions; NimStringDesc* compileOptions; NimStringDesc* cCompilerPath; tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile; tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook; NI suggestVersion; NI suggestMaxResults; tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo; tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook; tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook; NimStringDesc* cppCustomNamespace; NimStringDesc* nimMainPrefix; tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData; }; typedef NU8 tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg; struct tyTuple__KvKIqRIx9anKcDMu8DPSkHw { tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field1; }; struct tyTuple__Y6Ewh3MCxsjd1bsriN6Gag { NI Field0; NI Field1; tySequence__vGU8AyGT6KxtLJwEg0BpNw* Field2; }; typedef NU8 tySet_tyEnum_TTypeCmpFlag__72pgRXSg7774cr9aCWVPORw; typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw; struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q { NI32 module; NI32 symId; NI32 typeId_0; NIM_BOOL sealed; }; typedef NU8 tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug; typedef NU8 tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ; typedef NU8 tySet_tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw[21]; typedef NU8 tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA; typedef NimStringDesc* tyArray__JXkBzVsE9bvmcpuZvrueLVg[5]; typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1]; struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ { NI Field0; NI Field1; }; struct tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA { NI oldLocked; NI16 oldLockLevel; NIM_BOOL enforcedGcSafety; NIM_BOOL enforceNoSideEffects; NI oldExc; NI oldTags; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exc; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tags; }; typedef NU8 tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw; struct tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param; tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q mutatedHere; tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q connectedVia; tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw flags; NI maxMutation; NI minConnection; tySequence__qwqHTkRvwhrRyENtudHQ7g* mutations; }; typedef NU8 tySet_tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg; typedef NU8 tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg; struct tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag { NI abstractTime; tySequence__7PsCyIDXDb8nGSU5UlS9cAA* s; tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA* graphs; tySet_tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg goals; NIM_BOOL unanalysableMutation; NI inAsgnSource; NI inConstructor; NI inNoSideEffectSection; NI inConditional; NI inLoop; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner; tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g; }; typedef NimStringDesc* tyArray__sMpvt1sOxOJ3LFGulnbeMQ[4]; struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module; tySequence__vv5mGmK03BCr5e3LTZA5Hw* converters; tySequence__vv5mGmK03BCr5e3LTZA5Hw* patterns; tySequence__vv5mGmK03BCr5e3LTZA5Hw* pureEnums; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interf; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interfHidden; tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* uniqueName; }; typedef NU8 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q; struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw { tySequence__29bS0n2QNyO1R7e0qMMOvLA* nodes; }; typedef NU8 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g; struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg { tySequence__sM4lkSb7zS6F7OVMvW9cffQ* vals; tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys; }; struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ { tySequence__IHUFRsFxZNv7YydiUO2esQ* vals; tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys; }; struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ { NimStringDesc* definedSymbols; tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw moduleFlags; tySequence__PXIzfWocnrafGz5p3CP5LA* includes; tySequence__9bAGqSvkAaFL9bWjsEPslrFA* imports; tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw toReplay; tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw topLevel; tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw bodies; tySequence__b89aLriiJnVTD186H6zNIgg* exports; tySequence__b89aLriiJnVTD186H6zNIgg* hidden; tySequence__REuPuHuSlOkZ0Q5oqzDrQg* reexports; tySequence__b89aLriiJnVTD186H6zNIgg* compilerProcs; tySequence__48JTohSgTy339bRxHzUD8KA* converters; tySequence__48JTohSgTy339bRxHzUD8KA* methods; tySequence__48JTohSgTy339bRxHzUD8KA* trmacros; tySequence__48JTohSgTy339bRxHzUD8KA* pureEnums; tySequence__I9aQmO9asXXWJ58UI9c8BCSzA* macroUsages; tySequence__NyaOkf8ZwxP6rkRF5TOkew* typeInstCache; tySequence__L9bOt8CaTEmIjgtuZvp6syg* procInstCache; tySequence__im8UB2GsZvUaQ4a1wKGWhQ* attachedOps; tySequence__xxnXDLpoqBo8zJzP9b1073g* methodsPerType; tySequence__NyaOkf8ZwxP6rkRF5TOkew* enumToStringProcs; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* emittedTypeInfo; tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g backendFlags; tySequence__DfmUmNgVGnYaiV1I6227tw* syms; tySequence__t8Uv4lEJ4lkuECvP9c6JMhA* types; tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg strings; tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ numbers; tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ cfg; }; struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g { tySequence__9bT7o0CflHuiE4VhmtqBPCw* data; NI counter; }; struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w { tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q status; NIM_BOOL symsInit; NIM_BOOL typesInit; NIM_BOOL loadedButAliveSetChanged; tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ fromDisk; tySequence__eHqUwlHGGaPw0TDPDeL79cQ* syms; tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* types; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module; tyObject_Table__CE4eiu6FavV1vmUiTXQ70g iface; tyObject_Table__CE4eiu6FavV1vmUiTXQ70g ifaceHidden; }; struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q { tySequence__9cnx3zXnWzeclW8Ko4oUgAQ* data; NI counter; }; struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw { NI32 thisModule; NI32 lastFile; NU32 lastLit; tyObject_Table__TRm6MPqklA8EYBmBMY117Q filenames; tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* pendingTypes; tySequence__eHqUwlHGGaPw0TDPDeL79cQ* pendingSyms; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA typeMarker; tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA symMarker; tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config; }; struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ { NU32 module; NI32 item; }; struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ { NI module; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ packed_0; }; struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg { tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id; tyObject_TType__facALICuu8zUj0hjvbTLFg* typ; }; struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ { NI Field0; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1; tySequence__O5RcspOP32YJ4YtU5ppxxA* Field2; }; struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg { NI module; tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ sym; tySequence__ipEvhpHAmm8ZCn9bZAOdNYA* concreteTypes; tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* inst; }; struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg { NI Field0; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1; tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA* Field2; }; struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q { NI Field0; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field2; }; struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA { tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym; }; struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ { NI Field0; tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field1; }; struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg { NI Field0; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1; tySequence__159bHWBGAOOs6U7OZ9cQlO0g* Field2; }; struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA { NI Field0; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1; tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field2; }; struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw { NI Field0; NimStringDesc* Field1; NI32 Field2; }; struct tyTuple__rplX06U9bjhu9asm5pWdgqsA { NI Field0; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1; tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA Field2; }; struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q { NI Field0; NI32 Field1; tySequence__48JTohSgTy339bRxHzUD8KA* Field2; }; struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ { NI Field0; NI32 Field1; NI32 Field2; }; struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A { tySequence__eHqUwlHGGaPw0TDPDeL79cQ* Field0; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field1; }; typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16]; struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ { NI Field0; tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1; tyObject_TType__facALICuu8zUj0hjvbTLFg* Field2; }; struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw { NI Field0; NI Field1; tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2; }; struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw { NI Field0; NimStringDesc* Field1; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field2; }; struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg { NI Field0; NimStringDesc* Field1; NI64 Field2; }; struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg { tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g* root; NI entries; }; struct tyTuple__wcNatyuf8WOqAhGLhSvgiw { NI Field0; NimStringDesc* Field1; tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg Field2; }; typedef N_NIMCALL_PTR(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, tyProc__jkSFMhvPZ1AdGcvT2dK9a2w) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen); typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__A7Sdoem70tRxSEmKrf9cmyg) (tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* topLevelStmt); typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__EAEKmBUgKFg29agoUGtzDEQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ { tyProc__jkSFMhvPZ1AdGcvT2dK9a2w Field0; tyProc__A7Sdoem70tRxSEmKrf9cmyg Field1; tyProc__EAEKmBUgKFg29agoUGtzDEQ Field2; NIM_BOOL Field3; }; typedef NU8 tyEnum_ImportMode__OHfXXgrGOSWpZv16VYg4yQ; struct tyObject_ImportedModule__kyodd8HBOgfP30dipCL3JQ { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m; tyEnum_ImportMode__OHfXXgrGOSWpZv16VYg4yQ mode; union{ struct {tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA imported; } _mode_2; struct {tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA exceptSet; } _mode_3; }; }; struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg { tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key; RootObj* val; }; struct tyObject_TInstantiationPair__HkXM4cJmOpk8zFcmq9c9c3gQ { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* genericSym; tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* inst; }; struct tyTuple__KNXySARiHvEh2wA9asnyYmw { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field0; tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field1; }; struct tyTuple__NAaJgGVgNmlGoqmiWxdOHQ { NI Field0; tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ Field1; }; struct tyTuple__z822nu9bFF1AlQnLrHjdwpA { tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0; NimStringDesc* Field1; }; struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw { NimStringDesc* fullPath; NimStringDesc* projPath; NimStringDesc* shortName; tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName; tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName; tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines; NimStringDesc* dirtyFile; NimStringDesc* hash; NIM_BOOL dirty; }; struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw { NI Field0; NimStringDesc* Field1; }; typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA; struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg { NimStringDesc* nimname; NimStringDesc* cname; NimStringDesc* obj; tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags; NimStringDesc* customArgs; }; typedef NU8 tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA; struct tyObject_Connection__EevFKe104MtQGkxxkLKkgg { tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA kind; union{ NI parent; NI graphIndex; }; }; typedef NU8 tySet_tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ; struct tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA { tyObject_Connection__EevFKe104MtQGkxxkLKkgg con; tySet_tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ flags; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym; NI reassignedTo; NI aliveStart; NI aliveEnd; tySequence__qwqHTkRvwhrRyENtudHQ7g* borrowsFrom; }; struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q { NU32 Field0; NimStringDesc* Field1; }; struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg { NU16 line; NI16 col; NU32 file; }; struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow { tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind; tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags; NI32 operand; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeId_0; tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info; }; struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ { NU32 Field0; NI32 Field1; }; struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA { NU32 Field0; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1; }; struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg { tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0; tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg Field1; }; struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw { tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1; }; struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA { tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ key; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym; tySequence__vC9cvg0R8tfBaOXXi3sfMzw* concreteTypes; }; struct tyTuple__9aoobCDZB4x41HJSOmh0mwA { tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg Field0; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2; }; struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA { tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0; NI Field1; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2; }; typedef NU8 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ; struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw { tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ kind; NIM_BOOL generated; NIM_BOOL isOverriden; NU32 name; NI32 path; }; struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw { tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind; NU32 name; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typ; tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags; tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic; tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info; NI32 ast; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ guard; NI bitsize; NI alignment; tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options; NI position; NI offset; NU32 externalName; tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA locFlags; tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw annex; NI32 constraint; }; struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA { tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind; tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv; tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags; tySequence__vC9cvg0R8tfBaOXXi3sfMzw* types; NI32 n; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner; NI64 size; NI16 align; NI16 paddingAtEnd; NI16 lockLevel; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeInst; NI32 nonUniqueId; }; struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ { NI Field0; tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* Field1; tySequence__vC9cvg0R8tfBaOXXi3sfMzw* Field2; }; struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA { NI Field0; NI32 Field1; NU32 Field2; }; struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ { TGenericSeq Sup; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE]; }; struct tySequence__qwqHTkRvwhrRyENtudHQ7g { TGenericSeq Sup; NI data[SEQ_DECL_SIZE]; }; struct tySequence__vGU8AyGT6KxtLJwEg0BpNw { TGenericSeq Sup; tyTuple__KvKIqRIx9anKcDMu8DPSkHw data[SEQ_DECL_SIZE]; }; struct tySequence__Hkw5zrAn53wlKDHdJF1GFA { TGenericSeq Sup; tyTuple__Y6Ewh3MCxsjd1bsriN6Gag data[SEQ_DECL_SIZE]; }; struct tySequence__8Np6tlClE5az1CyqZdN19bQ { TGenericSeq Sup; tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ data[SEQ_DECL_SIZE]; }; struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A { TGenericSeq Sup; tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE]; }; struct tySequence__Bre9bNyuQOg1EJKitjSzn8w { TGenericSeq Sup; tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE]; }; struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ { TGenericSeq Sup; tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA data[SEQ_DECL_SIZE]; }; struct tySequence__rQHmYk1HzcwNxKBymIFHpA { TGenericSeq Sup; tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w data[SEQ_DECL_SIZE]; }; struct tySequence__XMM60DtBsc6xYsIpNANkrA { TGenericSeq Sup; tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw data[SEQ_DECL_SIZE]; }; struct tySequence__O5RcspOP32YJ4YtU5ppxxA { TGenericSeq Sup; tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg data[SEQ_DECL_SIZE]; }; struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg { TGenericSeq Sup; tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ data[SEQ_DECL_SIZE]; }; struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA { TGenericSeq Sup; tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg data[SEQ_DECL_SIZE]; }; struct tySequence__mWRMiYLthG9coLjkbElCxkw { TGenericSeq Sup; tyTuple__o67sDX0wYbEuhI9cJYAbDtg data[SEQ_DECL_SIZE]; }; struct tySequence__bTDCDwD2P7TodzbAefLcSw { TGenericSeq Sup; tyTuple__9aNnDWBFMF44sfFinBpMT4Q data[SEQ_DECL_SIZE]; }; struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g { TGenericSeq Sup; tyTuple__VrD6plbUKJjYKM0lCr3hGQ data[SEQ_DECL_SIZE]; }; struct tySequence__3MPVXAHA08SszBrU4ffqEg { TGenericSeq Sup; tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg data[SEQ_DECL_SIZE]; }; struct tySequence__YCf5zJHm4JI06qpmKwPUWg { TGenericSeq Sup; tyTuple__1ZbjBgxAbnye0IFMZ6w4OA data[SEQ_DECL_SIZE]; }; struct tySequence__7lEisrXlQEzwtUKW5pzRCw { TGenericSeq Sup; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE]; }; struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ { TGenericSeq Sup; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* data[SEQ_DECL_SIZE]; }; struct tySequence__61s9cbAniKuBrdHwBhMDfQg { TGenericSeq Sup; tyTuple__rplX06U9bjhu9asm5pWdgqsA data[SEQ_DECL_SIZE]; }; struct tySequence__48JTohSgTy339bRxHzUD8KA { TGenericSeq Sup; NI32 data[SEQ_DECL_SIZE]; }; struct tySequence__fdmz6VkIf1ewwrssKYqRFg { TGenericSeq Sup; tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE]; }; struct tySequence__kxu4GK0onha2t9bo86mdVAg { TGenericSeq Sup; tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE]; }; struct tySequence__s9byh6WFJ16lPMcmqdaMTHA { TGenericSeq Sup; tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A data[SEQ_DECL_SIZE]; }; struct tySequence__1U9bG8RcAedEeYkQLZjVFKA { TGenericSeq Sup; tyTuple__3i6hlQmqrn6m7tuVN8FHjQ data[SEQ_DECL_SIZE]; }; struct tySequence__fIB1rTQ55aFonoft9a9bmljQ { TGenericSeq Sup; tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE]; }; struct tySequence__23SMqauuRsbDANhthj9bWlA { TGenericSeq Sup; tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw data[SEQ_DECL_SIZE]; }; struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA { TGenericSeq Sup; tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE]; }; struct tySequence__pHNq3oXj9av2sEUdqaqeZjw { TGenericSeq Sup; tyTuple__wcNatyuf8WOqAhGLhSvgiw data[SEQ_DECL_SIZE]; }; struct tySequence__MAQKEADohlpnXTModtugbQ { TGenericSeq Sup; tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ data[SEQ_DECL_SIZE]; }; struct tySequence__eiMlYcU7NrAOGD2H36QOOQ { TGenericSeq Sup; tyObject_ImportedModule__kyodd8HBOgfP30dipCL3JQ data[SEQ_DECL_SIZE]; }; struct tySequence__oYkV9aFZe0MXcEAprJaOUsA { TGenericSeq Sup; tyObject_TOptionEntry__H9ac5KbrDJVwT1zH5O83r7w* data[SEQ_DECL_SIZE]; }; struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA { TGenericSeq Sup; tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg data[SEQ_DECL_SIZE]; }; struct tySequence__arD7Tw6eD6lvOczWZl9buNg { TGenericSeq Sup; tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* data[SEQ_DECL_SIZE]; }; struct tySequence__jWKvSdankQPoT5bw9cBU9aiw { TGenericSeq Sup; tyObject_TInstantiationPair__HkXM4cJmOpk8zFcmq9c9c3gQ data[SEQ_DECL_SIZE]; }; struct tySequence__xSqu3cxq5WeFlOO3YgE6yA { TGenericSeq Sup; tyTuple__KNXySARiHvEh2wA9asnyYmw data[SEQ_DECL_SIZE]; }; struct tySequence__Bis5AbpONWcIRrPyPJS8Yw { TGenericSeq Sup; tyTuple__NAaJgGVgNmlGoqmiWxdOHQ data[SEQ_DECL_SIZE]; }; struct tySequence__E8pi9b5QNahsURYzXMjh3qw { TGenericSeq Sup; tyTuple__47w2DboNEPf69aPgubZdd7Q data[SEQ_DECL_SIZE]; }; struct tySequence__tNFrR3kRuS1FSwuiLGoSSA { TGenericSeq Sup; tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE]; }; struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ { TGenericSeq Sup; tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE]; }; struct tySequence__4eRCaZmrYLLw2k30GPTiMw { TGenericSeq Sup; tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE]; }; struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ { TGenericSeq Sup; NimStringDesc* data[SEQ_DECL_SIZE]; }; struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw { TGenericSeq Sup; tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE]; }; struct tySequence__7PsCyIDXDb8nGSU5UlS9cAA { TGenericSeq Sup; tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA data[SEQ_DECL_SIZE]; }; struct tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA { TGenericSeq Sup; tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug data[SEQ_DECL_SIZE]; }; struct tySequence__vv5mGmK03BCr5e3LTZA5Hw { TGenericSeq Sup; tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA data[SEQ_DECL_SIZE]; }; struct tySequence__PXIzfWocnrafGz5p3CP5LA { TGenericSeq Sup; tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE]; }; struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA { TGenericSeq Sup; NU32 data[SEQ_DECL_SIZE]; }; struct tySequence__29bS0n2QNyO1R7e0qMMOvLA { TGenericSeq Sup; tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow data[SEQ_DECL_SIZE]; }; struct tySequence__b89aLriiJnVTD186H6zNIgg { TGenericSeq Sup; tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE]; }; struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg { TGenericSeq Sup; tyTuple__Q7r9caOmeWqQGZCIBHhGRUA data[SEQ_DECL_SIZE]; }; struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA { TGenericSeq Sup; tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg data[SEQ_DECL_SIZE]; }; struct tySequence__NyaOkf8ZwxP6rkRF5TOkew { TGenericSeq Sup; tyTuple__XyJ8LOAZzVVXSsmt09b8uWw data[SEQ_DECL_SIZE]; }; struct tySequence__L9bOt8CaTEmIjgtuZvp6syg { TGenericSeq Sup; tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA data[SEQ_DECL_SIZE]; }; struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ { TGenericSeq Sup; tyTuple__9aoobCDZB4x41HJSOmh0mwA data[SEQ_DECL_SIZE]; }; struct tySequence__xxnXDLpoqBo8zJzP9b1073g { TGenericSeq Sup; tyTuple__g0Q6Qx15nK53ce9aLo7YyrA data[SEQ_DECL_SIZE]; }; struct tySequence__DfmUmNgVGnYaiV1I6227tw { TGenericSeq Sup; tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw data[SEQ_DECL_SIZE]; }; struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA { TGenericSeq Sup; tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA data[SEQ_DECL_SIZE]; }; struct tySequence__IHUFRsFxZNv7YydiUO2esQ { TGenericSeq Sup; NI64 data[SEQ_DECL_SIZE]; }; struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw { TGenericSeq Sup; tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ data[SEQ_DECL_SIZE]; }; struct tySequence__9bT7o0CflHuiE4VhmtqBPCw { TGenericSeq Sup; tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ data[SEQ_DECL_SIZE]; }; struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ { TGenericSeq Sup; tyTuple__UvldbCB6B9ayi9bGYW7vJNLA data[SEQ_DECL_SIZE]; }; struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA { TGenericSeq Sup; tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ data[SEQ_DECL_SIZE]; }; static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, effectSpec__trees_284)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw effectType); N_LIB_PRIVATE N_NIMCALL(void, checkRaisesSpec__sempass50_4403)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NIM_BOOL emitWarnings, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* spec, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* real, NimStringDesc* msg, NIM_BOOL hints, tyProc__3AyzgbaZVZwTUW9bffBh5Vw effectPredicate, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* hintsArg); 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(void, initIntSet__pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result); N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_16)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result); static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_55)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key); N_LIB_PRIVATE N_NIMCALL(void, pushInfoContext__msgs_490)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* detail); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1118)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderTree__renderer_46)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw renderFlags); static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src); static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size); static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, typeToString__types_50)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw prefer); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space); N_LIB_PRIVATE N_NIMCALL(void, popInfoContext__msgs_507)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_3496)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, subtypeRelation__sempass50_4390)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* spec, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* real); N_LIB_PRIVATE N_NIMCALL(NI, safeInheritanceDiff__types_3392)(tyObject_TType__facALICuu8zUj0hjvbTLFg* a, tyObject_TType__facALICuu8zUj0hjvbTLFg* b); N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, excType__sempass50_2211)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, getEbase__sempass50_2207)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info); N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, sysTypeFromName__magicsys_55)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* name); N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipTypes__ast_3735)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kinds); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___ast_3858)(NI16 x); static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen); static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x); N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x); N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2); static N_INLINE(void, nimGCunrefRC1)(void* p); static N_INLINE(void, decRef__system_5324)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c); static N_INLINE(NI, minuspercent___system_716)(NI x, NI y); static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y); static N_INLINE(void, rtlAddZCT__system_5322)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c); N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5273)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c); static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5279)(void* usr); N_LIB_PRIVATE N_NIMCALL(void*, newSeqRC1)(TNimType* typ, NI len); static N_INLINE(void, asgnRef)(void** dest, void* src); static N_INLINE(void, incRef__system_5317)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c); static N_INLINE(NI, pluspercent___system_696)(NI x, NI y); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI__ast_3356)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, propSpec__trees_316)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw effectType); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasRealBody__sempass50_4681)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(void, initEffects__sempass50_4653)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effects, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* t, tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c); N_LIB_PRIVATE N_NIMCALL(void, rawInitEffects__sempass50_4641)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effects); N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src); N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getModule__astalgo_216)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(void, track__sempass50_2338)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, useVar__sempass50_2113)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isLocalVar__sempass50_162)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ); static N_INLINE(NIM_BOOL, contains__sigmatch_4299)(NI* a, NI aLen_0, NI item); static N_INLINE(NI, find__sigmatch_4304)(NI* a, NI aLen_0, NI item); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, requiresInit__typeallowed_578)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t); N_LIB_PRIVATE N_NIMCALL(void, useVarNoInitCheck__sempass50_959)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(void, guardGlobal__sempass50_221)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard); static N_INLINE(NIM_BOOL, isGCedMem__ast_4203)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t); N_LIB_PRIVATE N_NIMCALL(void, markGcUnsafe__sempass50_361)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* reason); N_LIB_PRIVATE N_NIMCALL(void, markSideEffect__sempass50_995)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* reason, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q useLoc); N_LIB_PRIVATE N_NIMCALL(tySequence__vGU8AyGT6KxtLJwEg0BpNw**, mgetOrPut__sempass50_1047)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ* t, NI key, tySequence__vGU8AyGT6KxtLJwEg0BpNw* val); static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count); N_LIB_PRIVATE N_NIMCALL(NI, nextPowerOfTwo__pureZmath_177)(NI x); N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len); static N_INLINE(NI, rawGet__sempass50_491)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ t, NI key, NI* hc); static N_INLINE(NI, hash__pureZhashes_128)(NI x); static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x); static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b); static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode); static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash); static N_INLINE(NIM_BOOL, mustRehash__sempass50_1168)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ t); N_LIB_PRIVATE N_NIMCALL(void, enlarge__sempass50_1321)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ* t); N_LIB_PRIVATE N_NIMCALL(void, rawInsert__sempass50_1625)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ* t, tySequence__Hkw5zrAn53wlKDHdJF1GFA** data, NI key, tySequence__vGU8AyGT6KxtLJwEg0BpNw* val, NI hc, NI h); N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt); static N_INLINE(NI, rawGetKnownHC__sempass50_1794)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ t, NI key, NI hc); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameType__types_1824)(tyObject_TType__facALICuu8zUj0hjvbTLFg* a, tyObject_TType__facALICuu8zUj0hjvbTLFg* b, tySet_tyEnum_TTypeCmpFlag__72pgRXSg7774cr9aCWVPORw flags); N_LIB_PRIVATE N_NIMCALL(void, addRaiseEffect__sempass50_2237)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* comesFrom); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefectException__types_4029)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t); N_LIB_PRIVATE N_NIMCALL(void, throws__sempass50_2182)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* orig); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyTree__ast_4431)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src); N_LIB_PRIVATE N_NIMCALL(void, add__ast_4797)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son); N_LIB_PRIVATE N_NIMCALL(void, createTypeBoundOps__sempass50_142)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info); N_LIB_PRIVATE N_NIMCALL(void, createTypeBoundOps__liftdestructors_47)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TType__facALICuu8zUj0hjvbTLFg* orig, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, createRaise__sempass50_2223)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNode__ast_3332)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind); N_LIB_PRIVATE N_NIMCALL(void, trackCall__sempass50_3367)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getConstExpr__semfold_81)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g); N_LIB_PRIVATE N_NIMCALL(void, mergeLockLevels__sempass50_2606)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI16 lockLevel); N_LIB_PRIVATE N_NIMCALL(NI16, getLockLevel__sempass50_2591)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(void, markSideEffect__sempass50_2877)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* reason, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q useLoc); N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, newSym__ast_3445)(tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw symKind, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options); static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x); N_LIB_PRIVATE N_NIMCALL(void, propagateEffects__sempass50_2610)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(void, mergeRaises__sempass50_2273)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* comesFrom); N_LIB_PRIVATE N_NIMCALL(void, mergeTags__sempass50_2281)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* comesFrom); N_LIB_PRIVATE N_NIMCALL(void, addTag__sempass50_2259)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* comesFrom); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, createTag__sempass50_2230)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); static N_INLINE(NIM_BOOL, hasWarn__options_557)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug note); N_LIB_PRIVATE N_NIMCALL(void, warnAboutGcUnsafe__sempass50_358)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf); static N_INLINE(NIM_BOOL, isNoEffectList__sempass50_2756)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isForwardedProc__sempass50_2549)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isIndirectCall__sempass50_2513)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, assumeTheWorst__sempass50_2727)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* op); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, importedFromC__sempass50_2580)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, markGcUnsafe__sempass50_368)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* reason); N_LIB_PRIVATE N_NIMCALL(void, trackOperandForIndirectCall__sempass50_2790)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* formals, NI argIndex, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* caller); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipConvCastAndClosure__astalgo_114)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipConv__types_3597)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); static N_INLINE(NIM_BOOL, isTrival__sempass50_2779)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* caller); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOwnedProcVar__sempass50_2732)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, invalidateFacts__guards_760)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); static N_INLINE(void, makeVolatile__sempass50_301)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___renderer_2106)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, notNilCheck__sempass50_2659)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* paramType); N_LIB_PRIVATE N_NIMCALL(void, procVarCheck__sempass50_2639)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf); N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipTypesOrNil__ast_4185)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kinds); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isAddrNode__astalgo_4297)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsNode__ast_4545)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySet_tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kinds); N_LIB_PRIVATE N_NIMCALL(tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA, impliesNotNil__guards_1044)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg); N_LIB_PRIVATE N_NIMCALL(void, initVarViaNew__sempass50_341)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, initVar__sempass50_312)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL volatileCheck); N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lastSon__ast_3743)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n); N_LIB_PRIVATE N_NIMCALL(void, checkBounds__sempass50_3346)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arr, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* idx); N_LIB_PRIVATE N_NIMCALL(void, checkLe__sempass50_3342)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b); N_LIB_PRIVATE N_NIMCALL(tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA, proveLe__guards_1619)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lowBound__guards_261)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, highBound__guards_265)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA* o); static N_INLINE(NI, find__sempass50_3619)(tyArray__JXkBzVsE9bvmcpuZvrueLVg a, NimStringDesc* item); static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b); static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size); static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuNormalize)(NimStringDesc* s); N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getAttachedOp__modulegraphs_4011)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg op); N_LIB_PRIVATE N_NIMCALL(void, checkForSink__sempass50_24)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg); N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, newType__ast_3896)(tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner); static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x); N_LIB_PRIVATE N_NIMCALL(void, add__concepts_23)(tyObject_TType__facALICuu8zUj0hjvbTLFg* father, tyObject_TType__facALICuu8zUj0hjvbTLFg* son); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src); static N_INLINE(NIM_BOOL, isEmptyType__ast_4779)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t); N_LIB_PRIVATE N_NIMCALL(void, guardDotAccess__sempass50_237)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupInRecord__astalgo_84)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* field); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI__ast_3360)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NI children); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3716)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameTree__guards_680)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b); N_LIB_PRIVATE N_NIMCALL(void, checkFieldAccess__guards_1800)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf); N_LIB_PRIVATE N_NIMCALL(void, trackTryStmt__sempass50_2341)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, addToIntersection__sempass50_2160)(tySequence__8Np6tlClE5az1CyqZdN19bQ** inter, NI s); N_LIB_PRIVATE N_NIMCALL(void, catchesAll__sempass50_2326)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked); N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInfixAs__ast_4935)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, catches__sempass50_2293)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TType__facALICuu8zUj0hjvbTLFg* e); N_LIB_PRIVATE N_NIMCALL(void, trackPragmaStmt__sempass50_2560)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw, whichPragma__trees_244)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, listEffects__sempass50_2289)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a); N_LIB_PRIVATE N_NIMCALL(void, addAsgnFact__guards_1730)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value); N_LIB_PRIVATE N_NIMCALL(void, trackCase__sempass50_3048)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, interestingCaseExpr__guards_114)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* m); N_LIB_PRIVATE N_NIMCALL(void, addCaseBranchFacts__guards_1755)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI i); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, breaksBlock__sempass50_3013)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, trackIf__sempass50_3149)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, addFact__guards_609)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nn); N_LIB_PRIVATE N_NIMCALL(void, addFactNeg__guards_632)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, trackBlock__sempass50_3265)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasSubnodeWith__ast_4570)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isTrue__trees_375)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); static N_INLINE(NIM_BOOL, fromSystem__astalgo_238)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op); N_LIB_PRIVATE N_NIMCALL(void, addFactLe__guards_1634)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b); N_LIB_PRIVATE N_NIMCALL(void, addFactLt__guards_1642)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b); N_LIB_PRIVATE N_NIMCALL(void, addDiscriminantFact__guards_1717)(tyObject_TModel__yUzvq5GhzqHyDCdSXqIv1Q* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, createBlockContext__sempass50_3741)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA* Result); N_LIB_PRIVATE N_NIMCALL(void, lockLocations__sempass50_206)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pragma); N_LIB_PRIVATE N_NIMCALL(NI16, getLockLevel__sempass50_182)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t); N_LIB_PRIVATE N_NIMCALL(void, castBlock__sempass50_3790)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pragma, tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA* bc); N_LIB_PRIVATE N_NIMCALL(void, applyBlockContext__sempass50_3762)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA* bc); N_LIB_PRIVATE N_NIMCALL(void, unapplyBlockContext__sempass50_3765)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA* bc); N_LIB_PRIVATE N_NIMCALL(void, trackInnerProc__sempass50_3814)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getBody__modulegraphs_11241)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, loadProcBody__icZic_8390)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tySequence__rQHmYk1HzcwNxKBymIFHpA** g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, allowCStringConv__sempass50_3856)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isCharArrayPtr__types_4087)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, NIM_BOOL allowPointerToChar); N_LIB_PRIVATE N_NIMCALL(void, checkRange__sempass50_3350)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, errorToString__errorhandling_107)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isSinkTypeForParam__types_4055)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t); static N_INLINE(NIM_BOOL, isClosure__ast_5019)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ); N_LIB_PRIVATE N_NIMCALL(void, patchResult__sempass50_3308)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n); N_LIB_PRIVATE N_NIMCALL(void, computeGraphPartitions__varpartitions_1607)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tySet_tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg goals, tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* Result); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasSideEffect__varpartitions_131)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* info); N_LIB_PRIVATE N_NIMCALL(void, checkBorrowedLocations__varpartitions_1719)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* par, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config); N_LIB_PRIVATE N_NIMCALL(void, listGcUnsafety__sempass50_411)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NIM_BOOL onlyWarning, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf); N_LIB_PRIVATE N_NIMCALL(void, listGcUnsafety__sempass50_386)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NIM_BOOL onlyWarning, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* cycleCheck, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__astalgo_402)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___varpartitions_108)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g); N_LIB_PRIVATE N_NIMCALL(void, listSideEffects__sempass50_953)(NimStringDesc** result, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* context); N_LIB_PRIVATE N_NIMCALL(void, nsuAddf)(NimStringDesc** s, NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0); N_LIB_PRIVATE N_NIMCALL(void, listSideEffects__sempass50_416)(NimStringDesc** result, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* cycleCheck, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* context, NI indentLevel); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__sempass50_484)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ t, NI key); N_LIB_PRIVATE N_NIMCALL(tySequence__vGU8AyGT6KxtLJwEg0BpNw**, X5BX5D___sempass50_821)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ* t, NI key); N_LIB_PRIVATE N_NOINLINE(void, raiseKeyError__ast_1357)(NI key) __attribute__((noreturn)); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuRepeatStr)(NimStringDesc* s, NI n); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___msgs_624)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info); N_LIB_PRIVATE N_NIMCALL(void, checkNil__nilcheck_9345)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_2, " ", 1); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_4, "/home/runner/work/nightlies/nightlies/nim/compiler/sempass2.nim", 63); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_3 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1288), ((NI) 13)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_5, "\'$1\' cannot raise \'$2\'", 22); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_6 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1295), ((NI) 15)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_7, "can raise an unlisted exception: ", 33); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_8, "Exception", 9); static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__wkTG4eaV3t1uo3x09apjcwA_9 = { 0x10, 0x09, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00, 0x00} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_10, "can have an unlisted effect: ", 29); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_11, "base method is GC-safe, but \'$1\' is not", 39); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_12 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1313), ((NI) 14)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_13, "base method has lock level $1, but dispatcher has $2", 52); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_14 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1322), ((NI) 13)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_15, "(", 1); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_16, ", ", 2); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_17, ")", 1); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_18 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1335), ((NI) 19)} ; extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280; extern TNimType NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_; extern TNimType NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_19 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 323), ((NI) 15)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_20 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 325), ((NI) 15)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_21, "unguarded access: ", 18); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_22 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 144), ((NI) 14)} ; extern NIM_CONST tySet_tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw routineKinds__ast_467; extern TNimType NTIkeyvaluepairseq__Hkw5zrAn53wlKDHdJF1GFA_; extern TNimType NTIseqLLtlineinfo_psymTT__vGU8AyGT6KxtLJwEg0BpNw_; static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__wkTG4eaV3t1uo3x09apjcwA_23 = { 0x10, 0xa9, 0x80, 0x00, 0x00, 0xe0, 0x80, 0x00, 0x00} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_24, "expected lock level < ", 22); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_25, " but got lock level ", 20); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_26 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 530), ((NI) 17)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_27, "RootEffect", 10); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_28 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 209), ((NI) 9)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_29 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 618), ((NI) 19)} ; static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__wkTG4eaV3t1uo3x09apjcwA_30 = { 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00, 0x00} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_31, " is not GC safe", 15); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_32 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 657), ((NI) 16)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_33, "\'$1\' cannot be passed to a procvar", 34); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_34 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 554), ((NI) 14)} ; static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__wkTG4eaV3t1uo3x09apjcwA_35 = { 0x00, 0x00, 0x80, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00} ; static NIM_CONST tySet_tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw TM__wkTG4eaV3t1uo3x09apjcwA_36 = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_37, "cannot prove \'$1\' is not nil", 28); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_38 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 577), ((NI) 15)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_39, "\'$1\' is provably nil", 20); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_40 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 580), ((NI) 15)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_41 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 875), ((NI) 17)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_42, "cannot prove: ", 14); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_43, " <= ", 4); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_44 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 769), ((NI) 11)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_45, "can prove: ", 11); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_46, " > ", 3); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_47 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 774), ((NI) 11)} ; extern NIM_CONST tyArray__JXkBzVsE9bvmcpuZvrueLVg AttachedOpToStr__ast_3848; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_48, "=", 1); static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__wkTG4eaV3t1uo3x09apjcwA_49 = { 0x10, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_50, "could not turn \'$1\' to a sink parameter", 39); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_52, "/home/runner/work/nightlies/nightlies/nim/compiler/sinkparameter_inference.nim", 78); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_51 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_52), ((NI) 50), ((NI) 15)} ; static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__wkTG4eaV3t1uo3x09apjcwA_53 = { 0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00, 0x00} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_54, "invalid guard field: ", 21); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_55 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 167), ((NI) 16)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_56 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 180), ((NI) 14)} ; extern TNimType NTIseqLtupleLa58int_b58intTT__8Np6tlClE5az1CyqZdN19bQ_; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_57 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 401), ((NI) 33)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_58 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 402), ((NI) 33)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_59, "_", 1); static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__wkTG4eaV3t1uo3x09apjcwA_60 = { 0x10, 0xa8, 0x90, 0x00, 0x00, 0x60, 0x80, 0x00, 0x00} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_61, "..", 2); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_62, "countup", 7); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_63, "countdown", 9); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_64, "..<", 3); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_65, "locks pragma without argument", 29); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_66 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 115), ((NI) 14)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_67, "invalid lock level: ", 20); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_68 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 122), ((NI) 18)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_69, "multi-lock requires the same static lock level for every operand", 64); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_70 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 125), ((NI) 18)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_71, "invalid nested locking", 22); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_72 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 131), ((NI) 16)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_73, "invalid pragma block: ", 22); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_74 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 976), ((NI) 14)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_75, "implicit conversion to \'cstring\' from a non-const location: $1; this will become a compile time error in the future", 115); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_76 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1216), ((NI) 13)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_77, "conversion to enum with holes is unsafe: $1", 43); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_78 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1223), ((NI) 15)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_79, "enum conversion: $1", 19); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_80 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1225), ((NI) 15)} ; static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__wkTG4eaV3t1uo3x09apjcwA_81 = { 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00, 0x00} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_82 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1260), ((NI) 14)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_83, "result", 6); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_84 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1428), ((NI) 13)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_85, "routine has no return type, but .requires contains \'result\'", 59); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_86 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 759), ((NI) 16)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_87, "\'$#\' is not GC-safe as it calls \'$#\'", 36); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_88 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 249), ((NI) 15)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_89, "\'$#\' is not GC-safe as it accesses \'$#\' which is a global using GC\'ed memory", 76); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_90 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 253), ((NI) 15)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_91 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 260), ((NI) 13)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_92, "\'$#\' is not GC-safe as it performs an indirect call via \'$#\'", 60); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_93 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 264), ((NI) 13)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_94, "\'$#\' is not GC-safe as it performs an indirect call here", 56); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_95 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 268), ((NI) 13)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_96, "\'$1\' can have side effects$2", 28); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_97 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1481), ((NI) 18)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_98, "\'$#\' can have side effects\012", 27); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_99, "$# $# Hint: \'$#\' $#\012", 20); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_100, ">", 1); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_101, "accesses global state \'$#\'", 26); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_102, "accessed by \'$#\'", 16); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_103, "calls `.sideEffect` \'$#\'", 24); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_104, "called by \'$#\'", 14); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_105, "calls routine via hidden pointer indirection", 44); STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_106, "calls routine via pointer indirection", 37); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_107 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1485), ((NI) 15)} ; static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_108 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1487), ((NI) 18)} ; STRING_LITERAL(TM__wkTG4eaV3t1uo3x09apjcwA_109, "declared lock level is $1, but real lock level is $2", 52); static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wkTG4eaV3t1uo3x09apjcwA_110 = {((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_4), ((NI) 1496), ((NI) 11)} ; static NIM_CONST tySet_tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw TM__wkTG4eaV3t1uo3x09apjcwA_111 = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1f, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00} ; extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5226; static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NI result; NI T1_; result = (NI)0; T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0); 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(void, nimZeroMem)(void* p, NI size) { nimSetMem__systemZmemory_7(p, ((int) 0), size); } static N_INLINE(void, initIntSet__pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) { initPackedSet__pureZcollectionsZintsets_16(Result); } static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NI result; result = (NI)0; { if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_; result = ((NI) 0); } goto LA1_; LA3_: ; { result = len__ast_3198(n); } LA1_: ; 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_1727)(void* dest, void* source, NI size) { nimCopyMem(dest, source, size); } static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) { { if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_; copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1))))); (*dest).Sup.len += (*src).Sup.len; } LA3_: ; } N_LIB_PRIVATE N_NIMCALL(void, checkRaisesSpec__sempass50_4403)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NIM_BOOL emitWarnings, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* spec, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* real, NimStringDesc* msg, NIM_BOOL hints, tyProc__3AyzgbaZVZwTUW9bffBh5Vw effectPredicate, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* hintsArg) { tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA used; nimZeroMem((void*)(&used), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA)); initIntSet__pureZcollectionsZintsets_238((&used)); { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r; r = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191(real); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA4; i = i_2; r = (*real)._kind_6.sons->data[i]; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* rr; tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w T24_; NimStringDesc* T30_; NimStringDesc* T31_; NimStringDesc* T32_; { NI s; NI colontmp__2; NI i_3; s = (NI)0; colontmp__2 = (NI)0; colontmp__2 = len__ast_3198(spec); i_3 = ((NI) 0); { while (1) { if (!(i_3 < colontmp__2)) goto LA8; s = i_3; { NIM_BOOL T11_; T11_ = (NIM_BOOL)0; T11_ = effectPredicate(g, (*spec)._kind_6.sons->data[s], r); if (!T11_) goto LA12_; incl__pureZcollectionsZintsets_55((&used), s); goto LA5; } LA12_: ; i_3 += ((NI) 1); } LA8: ; } } pushInfoContext__msgs_490((*g).config, (*spec).info, ((NimStringDesc*) NIM_NIL)); { if (!((*r).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108))) goto LA16_; rr = (*r)._kind_6.sons->data[((NI) 0)]; } goto LA14_; LA16_: ; { rr = r; } LA14_: ; { while (1) { NIM_BOOL T21_; NI T23_; T21_ = (NIM_BOOL)0; T21_ = ((*rr).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115) || (*rr).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126)); if (!(T21_)) goto LA22_; T23_ = (NI)0; T23_ = len__ast_3198(rr); T21_ = (((NI) 0) < T23_); LA22_: ; if (!T21_) goto LA20; rr = lastSon__ast_4832(rr); } LA20: ; } T24_ = (tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w)0; { if (!emitWarnings) goto LA27_; T24_ = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 66); } goto LA25_; LA27_: ; { T24_ = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14); } LA25_: ; T30_ = NIM_NIL; T31_ = NIM_NIL; T31_ = renderTree__renderer_46(rr, 0); T32_ = NIM_NIL; T32_ = typeToString__types_50((*r).typ, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0)); T30_ = rawNewString((T31_ ? T31_->Sup.len : 0) + (msg ? msg->Sup.len : 0) + (T32_ ? T32_->Sup.len : 0) + 1); appendString(T30_, T31_); appendString(T30_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_2)); appendString(T30_, msg); appendString(T30_, T32_); liMessage__msgs_1118((*g).config, (*r).info, T24_, T30_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_3, NIM_FALSE); popInfoContext__msgs_507((*g).config); } LA5: ; i_2 += ((NI) 1); } LA4: ; } } } { if (!hints) goto LA35_; { NI s_2; NI colontmp__3; NI i_4; s_2 = (NI)0; colontmp__3 = (NI)0; colontmp__3 = len__ast_3198(spec); i_4 = ((NI) 0); { while (1) { if (!(i_4 < colontmp__3)) goto LA39; s_2 = i_4; { NIM_BOOL T42_; tyArray__Re75IspeoxXy2oCZHwcRrA T45_; NimStringDesc* T46_; T42_ = (NIM_BOOL)0; T42_ = contains__astalgo_3496((&used), s_2); if (!!(T42_)) goto LA43_; nimZeroMem((void*)T45_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA)); T45_[0] = renderTree__renderer_46(hintsArg, 0); T45_[1] = renderTree__renderer_46((*spec)._kind_6.sons->data[s_2], 0); T46_ = NIM_NIL; T46_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_5), T45_, 2); liMessage__msgs_1118((*g).config, (*(*spec)._kind_6.sons->data[s_2]).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 74), T46_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_6, NIM_FALSE); } LA43_: ; i_4 += ((NI) 1); } LA39: ; } } } LA35_: ; } N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, getEbase__sempass50_2207)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) { tyObject_TType__facALICuu8zUj0hjvbTLFg* result; result = NIM_NIL; result = sysTypeFromName__magicsys_55(g, info, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_8)); return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, excType__sempass50_2211)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { tyObject_TType__facALICuu8zUj0hjvbTLFg* result; tyObject_TType__facALICuu8zUj0hjvbTLFg* t; result = NIM_NIL; { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)); if (T3_) goto LA4_; T3_ = ((*n).typ == 0); LA4_: ; if (!T3_) goto LA5_; t = getEbase__sempass50_2207(g, (*n).info); } goto LA1_; LA5_: ; { t = (*n).typ; } LA1_: ; result = skipTypes__ast_3735(t, TM__wkTG4eaV3t1uo3x09apjcwA_9); return result; } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, subtypeRelation__sempass50_4390)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* spec, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* real) { NIM_BOOL result; { result = (NIM_BOOL)0; { if (!((*(*spec).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 57))) goto LA3_; { tyObject_TType__facALICuu8zUj0hjvbTLFg** t; NI i; NI L; NI T6_; t = (tyObject_TType__facALICuu8zUj0hjvbTLFg**)0; i = ((NI) 0); T6_ = ((*(*spec).typ).sons ? (*(*spec).typ).sons->Sup.len : 0); L = T6_; { while (1) { if (!(i < L)) goto LA8; t = &(*(*spec).typ).sons->data[i]; { tyObject_TType__facALICuu8zUj0hjvbTLFg* T11_; NI T12_; T11_ = NIM_NIL; T11_ = excType__sempass50_2211(g, real); T12_ = (NI)0; T12_ = safeInheritanceDiff__types_3392(T11_, (*t)); if (!(T12_ <= ((NI) 0))) goto LA13_; result = NIM_TRUE; goto BeforeRet_; } LA13_: ; i += ((NI) 1); } LA8: ; } } } goto LA1_; LA3_: ; { tyObject_TType__facALICuu8zUj0hjvbTLFg* T16_; NI T17_; T16_ = NIM_NIL; T16_ = excType__sempass50_2211(g, real); T17_ = (NI)0; T17_ = safeInheritanceDiff__types_3392(T16_, (*spec).typ); result = (T17_ <= ((NI) 0)); goto BeforeRet_; } LA1_: ; }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, checkMethodEffects__sempass50_4507)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* disp, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* branch) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* actual; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* p; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* raisesSpec; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tagsSpec; { actual = (*(*(*branch).typ).n)._kind_6.sons->data[((NI) 0)]; { NI T3_; T3_ = (NI)0; T3_ = len__ast_3198(actual); if (!!((T3_ == ((NI) 5)))) goto LA4_; goto BeforeRet_; } LA4_: ; p = (*(*disp).ast)._kind_6.sons->data[((NI) 4)]; raisesSpec = effectSpec__trees_284(p, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 174)); { if (!!((raisesSpec == 0))) goto LA8_; checkRaisesSpec__sempass50_4403(g, NIM_FALSE, raisesSpec, (*actual)._kind_6.sons->data[((NI) 0)], ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_7), NIM_FALSE, subtypeRelation__sempass50_4390, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); } LA8_: ; tagsSpec = effectSpec__trees_284(p, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 179)); { if (!!((tagsSpec == 0))) goto LA12_; checkRaisesSpec__sempass50_4403(g, NIM_FALSE, tagsSpec, (*actual)._kind_6.sons->data[((NI) 3)], ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_10), NIM_FALSE, subtypeRelation__sempass50_4390, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); } LA12_: ; { NIM_BOOL T16_; NimStringDesc* T20_; T16_ = (NIM_BOOL)0; T16_ = (((*disp).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0); if (!(T16_)) goto LA17_; T16_ = ((130 & (*(*branch).typ).flags) == 0); LA17_: ; if (!T16_) goto LA18_; T20_ = NIM_NIL; T20_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_11), (*(*branch).name).s); liMessage__msgs_1118((*g).config, (*branch).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T20_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_12, NIM_FALSE); } LA18_: ; { tyArray__Re75IspeoxXy2oCZHwcRrA T25_; NimStringDesc* T26_; if (!((*(*disp).typ).lockLevel < (*(*branch).typ).lockLevel)) goto LA23_; nimZeroMem((void*)T25_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA)); T25_[0] = dollar___ast_3858((*(*branch).typ).lockLevel); T25_[1] = dollar___ast_3858((*(*disp).typ).lockLevel); T26_ = NIM_NIL; T26_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_13), T25_, 2); liMessage__msgs_1118((*g).config, (*branch).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 52), T26_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_14, NIM_FALSE); } LA23_: ; }BeforeRet_: ; } static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) { addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x))); } static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info) { NimStringDesc* result; result = NIM_NIL; result = resizeString(result, (info.Field0 ? info.Field0->Sup.len : 0) + 0); appendString(result, info.Field0); { if (!(((NI) 0) < info.Field1)) goto LA3_; result = resizeString(result, 1); appendString(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_15)); addInt__stdZprivateZdigitsutils_189((&result), info.Field1); { if (!(((NI) 0) < (NI)(info.Field2 + ((NI) 1)))) goto LA7_; result = resizeString(result, 2); appendString(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_16)); addInt__stdZprivateZdigitsutils_189((&result), (NI)(info.Field2 + ((NI) 1))); } LA7_: ; result = resizeString(result, 1); appendString(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_17)); } LA3_: ; return result; } static N_INLINE(NI, minuspercent___system_716)(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, ltpercent___system_1005)(NI x, NI y) { NIM_BOOL result; result = (NIM_BOOL)0; result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y)))); return result; } static N_INLINE(void, rtlAddZCT__system_5322)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) { addZCT__system_5273((&gch__system_5226.zct), c); } static N_INLINE(void, decRef__system_5324)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) { (*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8)); { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8)); if (!T3_) goto LA4_; rtlAddZCT__system_5322(c); } LA4_: ; } static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5279)(void* usr) { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result; NI T1_; result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T1_ = (NI)0; T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16)); result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_)); return result; } static N_INLINE(void, nimGCunrefRC1)(void* p) { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_; T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T1_ = usrToCell__system_5279(p); decRef__system_5324(T1_); } static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) { NI result; result = (NI)0; result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y)))))); return result; } static N_INLINE(void, incRef__system_5317)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) { (*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8)); } static N_INLINE(void, asgnRef)(void** dest, void* src) { { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_; if (!!((src == NIM_NIL))) goto LA3_; T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T5_ = usrToCell__system_5279(src); incRef__system_5317(T5_); } LA3_: ; { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_; if (!!(((*dest) == NIM_NIL))) goto LA8_; T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T10_ = usrToCell__system_5279((*dest)); decRef__system_5324(T10_); } LA8_: ; (*dest) = src; } N_LIB_PRIVATE N_NIMCALL(void, setEffectsForProcType__sempass50_4540)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effects; { effects = (*(*t).n)._kind_6.sons->data[((NI) 0)]; { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = !(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25))); if (T3_) goto LA4_; T3_ = !(((*effects).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152))); LA4_: ; if (!T3_) goto LA5_; goto BeforeRet_; } LA5_: ; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* raisesSpec; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tagsSpec; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* requiresSpec; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ensuresSpec; if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA9_; { NI T13_; NimStringDesc* argX60gensym540_; T13_ = (NI)0; T13_ = len__ast_3198(effects); if (!!((T13_ == ((NI) 0)))) goto LA14_; argX60gensym540_ = toFileLineCol__msgs_615(TM__wkTG4eaV3t1uo3x09apjcwA_18); internalErrorImpl__msgs_1431((*g).config, unknownLineInfo__lineinfos_280, argX60gensym540_, TM__wkTG4eaV3t1uo3x09apjcwA_18); } LA14_: ; if ((*effects)._kind_6.sons) { nimGCunrefRC1((*effects)._kind_6.sons); (*effects)._kind_6.sons = NIM_NIL; } (*effects)._kind_6.sons = (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeqRC1((&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) 5)); raisesSpec = effectSpec__trees_284(n, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 174)); { if (!!((raisesSpec == 0))) goto LA18_; asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 0)]), raisesSpec); } goto LA16_; LA18_: ; { NIM_BOOL T21_; NIM_BOOL T23_; T21_ = (NIM_BOOL)0; T21_ = !((s == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))); if (!(T21_)) goto LA22_; T23_ = (NIM_BOOL)0; T23_ = !(((*s).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0))); if (T23_) goto LA24_; T23_ = ((192 & (*s).flags) == 64); LA24_: ; T21_ = T23_; LA22_: ; if (!T21_) goto LA25_; asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 0)]), newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*effects).info)); } goto LA16_; LA25_: ; LA16_: ; tagsSpec = effectSpec__trees_284(n, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 179)); { if (!!((tagsSpec == 0))) goto LA29_; asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 3)]), tagsSpec); } goto LA27_; LA29_: ; { NIM_BOOL T32_; NIM_BOOL T34_; T32_ = (NIM_BOOL)0; T32_ = !((s == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))); if (!(T32_)) goto LA33_; T34_ = (NIM_BOOL)0; T34_ = !(((*s).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0))); if (T34_) goto LA35_; T34_ = ((192 & (*s).flags) == 64); LA35_: ; T32_ = T34_; LA33_: ; if (!T32_) goto LA36_; asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 3)]), newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*effects).info)); } goto LA27_; LA36_: ; LA27_: ; requiresSpec = propSpec__trees_316(n, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 180)); { if (!!((requiresSpec == 0))) goto LA40_; asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 1)]), requiresSpec); } LA40_: ; ensuresSpec = propSpec__trees_316(n, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 181)); { if (!!((ensuresSpec == 0))) goto LA44_; asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 2)]), ensuresSpec); } LA44_: ; asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 4)]), n); } LA9_: ; { NIM_BOOL T48_; T48_ = (NIM_BOOL)0; T48_ = !((s == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))); if (!(T48_)) goto LA49_; T48_ = !(((*s).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0))); LA49_: ; if (!T48_) goto LA50_; { if (!!(((*s).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 20)))) goto LA54_; (*t).flags |= ((NU64)1)<<((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1)) & 63); } LA54_: ; } LA50_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasRealBody__sempass50_4681)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) { NIM_BOOL result; result = (NIM_BOOL)0; result = ((80 & (*s).flags) == 0); return result; } N_LIB_PRIVATE N_NIMCALL(void, rawInitEffects__sempass50_4641)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effects) { if ((*effects)._kind_6.sons) { nimGCunrefRC1((*effects)._kind_6.sons); (*effects)._kind_6.sons = NIM_NIL; } (*effects)._kind_6.sons = (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) newSeqRC1((&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) 5)); asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 0)]), newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*effects).info)); asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 3)]), newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*effects).info)); asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 1)]), (*g).emptyNode); asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 2)]), (*g).emptyNode); asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 4)]), (*g).emptyNode); } N_LIB_PRIVATE N_NIMCALL(void, initEffects__sempass50_4653)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effects, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* t, tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c) { rawInitEffects__sempass50_4641(g, effects); unsureAsgnRef((void**) (&(*t).exc), (*effects)._kind_6.sons->data[((NI) 0)]); unsureAsgnRef((void**) (&(*t).tags), (*effects)._kind_6.sons->data[((NI) 3)]); unsureAsgnRef((void**) (&(*t).owner), s); unsureAsgnRef((void**) (&(*t).ownerModule), getModule__astalgo_216(s)); unsureAsgnRef((void**) (&(*t).init), NIM_NIL); unsureAsgnRef((void**) (&(*t).guards.s), NIM_NIL); unsureAsgnRef((void**) (&(*t).guards.g), g); (*t).currOptions = ((*(*g).config).options | (*s).options); (*t).guards.beSmart = (((*t).currOptions &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 9))&31U)))!=0); unsureAsgnRef((void**) (&(*t).locked), NIM_NIL); unsureAsgnRef((void**) (&(*t).graph), g); unsureAsgnRef((void**) (&(*t).config), (*g).config); unsureAsgnRef((void**) (&(*t).c), c); } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isLocalVar__sempass50_162)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) { NIM_BOOL result; NIM_BOOL T1_; NIM_BOOL T2_; NIM_BOOL T3_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T2_ = (NIM_BOOL)0; T3_ = (NIM_BOOL)0; T3_ = ((2304 &((NU32)1<<((NU)((*s).kind)&31U)))!=0); if (!(T3_)) goto LA4_; T3_ = !((((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 3))&63U)))!=0)); LA4_: ; T2_ = T3_; if (!(T2_)) goto LA5_; T2_ = ((*s).owner == (*a).owner); LA5_: ; T1_ = T2_; if (!(T1_)) goto LA6_; T1_ = !(((*s).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); LA6_: ; result = T1_; return result; } static N_INLINE(NI, find__sigmatch_4304)(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_4299)(NI* a, NI aLen_0, NI item) { NIM_BOOL result; NI T1_; { result = (NIM_BOOL)0; T1_ = (NI)0; T1_ = find__sigmatch_4304(a, aLen_0, item); result = (((NI) 0) <= T1_); goto BeforeRet_; }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, guardGlobal__sempass50_221)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard) { { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** L; NI i; NI L_2; NI T2_; L = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0; i = ((NI) 0); T2_ = ((*a).locked ? (*a).locked->Sup.len : 0); L_2 = T2_; { while (1) { if (!(i < L_2)) goto LA4; L = &(*a).locked->data[i]; { NIM_BOOL T7_; T7_ = (NIM_BOOL)0; T7_ = ((*(*L)).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T7_)) goto LA8_; T7_ = ((*(*L))._kind_4.sym == guard); LA8_: ; if (!T7_) goto LA9_; goto BeforeRet_; } LA9_: ; i += ((NI) 1); } LA4: ; } } { NimStringDesc* T15_; NimStringDesc* T16_; if (!!((*a).isTopLevel)) goto LA13_; T15_ = NIM_NIL; T16_ = NIM_NIL; T16_ = renderTree__renderer_46(n, 0); T15_ = rawNewString((T16_ ? T16_->Sup.len : 0) + 18); appendString(T15_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_21)); appendString(T15_, T16_); liMessage__msgs_1118((*a).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T15_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_22, NIM_FALSE); } LA13_: ; }BeforeRet_: ; } static N_INLINE(NIM_BOOL, isGCedMem__ast_4203)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) { NIM_BOOL result; NIM_BOOL T1_; NIM_BOOL T3_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24)); if (T1_) goto LA2_; T3_ = (NIM_BOOL)0; T3_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); if (!(T3_)) goto LA4_; T3_ = ((*t).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9)); LA4_: ; T1_ = T3_; LA2_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(void, markGcUnsafe__sempass50_361)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* reason) { { if (!!((*a).inEnforcedGcSafe)) goto LA3_; (*a).gcUnsafe = NIM_TRUE; { if (!((520192 &((NU32)1<<((NU)((*(*a).owner).kind)&31U)))!=0)) goto LA7_; asgnRef((void**) (&(*(*a).owner)._kind_1.gcUnsafetyReason), reason); } LA7_: ; } LA3_: ; } static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count) { NI result; result = (NI)0; result = nextPowerOfTwo__pureZmath_177((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4))); return result; } static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b) { NU64 result; result = (NU64)0; __uint128_t r = a; r *= b; result = (r >> 64) ^ r; return result; } static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x) { NI result; NU64 T1_; NU64 T2_; result = (NI)0; T1_ = (NU64)0; T1_ = hiXorLo__pureZhashes_79(11562461410679940143ULL, (NU64)(x ^ 16646288086500911323ULL)); T2_ = (NU64)0; T2_ = hiXorLo__pureZhashes_79(T1_, 16952864883938283885ULL); result = ((NI) (T2_)); return result; } static N_INLINE(NI, hash__pureZhashes_128)(NI x) { NI result; result = (NI)0; result = hashWangYi1__pureZhashes_136(((NU64) (x))); return result; } static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) { NIM_BOOL result; result = (NIM_BOOL)0; result = !((hcode == ((NI) 0))); return result; } static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) { NI result; result = (NI)0; result = (NI)((NI)(h + ((NI) 1)) & maxHash); return result; } static N_INLINE(NI, rawGet__sempass50_491)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ t, NI key, NI* hc) { NI result; NI h; NI T10_; { result = (NI)0; (*hc) = hash__pureZhashes_128(key); { if (!((*hc) == ((NI) 0))) goto LA3_; (*hc) = ((NI) 314159265); } LA3_: ; { NI T7_; T7_ = (t.data ? t.data->Sup.len : 0); if (!(T7_ == ((NI) 0))) goto LA8_; result = ((NI) -1); goto BeforeRet_; } LA8_: ; T10_ = ((t.data ? t.data->Sup.len : 0)-1); h = (NI)((*hc) & T10_); { while (1) { NIM_BOOL T13_; NI T20_; T13_ = (NIM_BOOL)0; T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0); if (!T13_) goto LA12; { NIM_BOOL T16_; T16_ = (NIM_BOOL)0; T16_ = (t.data->data[h].Field0 == (*hc)); if (!(T16_)) goto LA17_; T16_ = (t.data->data[h].Field1 == key); LA17_: ; if (!T16_) goto LA18_; result = h; goto BeforeRet_; } LA18_: ; T20_ = ((t.data ? t.data->Sup.len : 0)-1); h = nextTry__pureZcollectionsZtables_34(h, T20_); } LA12: ; } result = (NI)(((NI) -1) - h); }BeforeRet_: ; return result; } static N_INLINE(NIM_BOOL, mustRehash__sempass50_1168)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ t) { NIM_BOOL result; NIM_BOOL T1_; NI T2_; NI T4_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T2_ = (t.data ? t.data->Sup.len : 0); T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3))); if (T1_) goto LA3_; T4_ = (t.data ? t.data->Sup.len : 0); T1_ = ((NI)(T4_ - t.counter) < ((NI) 4)); LA3_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(void, rawInsert__sempass50_1625)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ* t, tySequence__Hkw5zrAn53wlKDHdJF1GFA** data, NI key, tySequence__vGU8AyGT6KxtLJwEg0BpNw* val, NI hc, NI h) { (*data)->data[h].Field1 = key; genericSeqAssign((&(*data)->data[h].Field2), val, (&NTIseqLLtlineinfo_psymTT__vGU8AyGT6KxtLJwEg0BpNw_)); (*data)->data[h].Field0 = hc; } N_LIB_PRIVATE N_NIMCALL(void, enlarge__sempass50_1321)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ* t) { tySequence__Hkw5zrAn53wlKDHdJF1GFA* n; NI T1_; tySequence__Hkw5zrAn53wlKDHdJF1GFA* T2_; n = NIM_NIL; T1_ = ((*t).data ? (*t).data->Sup.len : 0); n = (tySequence__Hkw5zrAn53wlKDHdJF1GFA*) newSeq((&NTIkeyvaluepairseq__Hkw5zrAn53wlKDHdJF1GFA_), ((NI) ((NI)(T1_ * ((NI) 2))))); T2_ = NIM_NIL; T2_ = (*t).data; unsureAsgnRef((void**) (&(*t).data), n); n = T2_; { NI i; NI colontmp_; NI T4_; NI res; i = (NI)0; colontmp_ = (NI)0; T4_ = ((n ? n->Sup.len : 0)-1); colontmp_ = T4_; res = ((NI) 0); { while (1) { NI eh; if (!(res <= colontmp_)) goto LA6; i = res; eh = n->data[i].Field0; { NIM_BOOL T9_; NI j; NI T12_; NI T17_; tySequence__vGU8AyGT6KxtLJwEg0BpNw* T18_; T9_ = (NIM_BOOL)0; T9_ = isFilled__pureZcollectionsZtables_31(eh); if (!T9_) goto LA10_; T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1); j = (NI)(eh & T12_); { while (1) { NIM_BOOL T15_; NI T16_; T15_ = (NIM_BOOL)0; T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0); if (!T15_) goto LA14; T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1); j = nextTry__pureZcollectionsZtables_34(j, T16_); } LA14: ; } T17_ = (NI)0; T17_ = n->data[i].Field1; n->data[i].Field1 = 0; T18_ = NIM_NIL; T18_ = n->data[i].Field2; asgnRef((void**) (&n->data[i].Field2), NIM_NIL); rawInsert__sempass50_1625(t, (&(*t).data), T17_, T18_, eh, j); } LA10_: ; res += ((NI) 1); } LA6: ; } } } static N_INLINE(NI, rawGetKnownHC__sempass50_1794)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ t, NI key, NI hc) { NI result; NI h; NI T6_; { result = (NI)0; { NI T3_; T3_ = (t.data ? t.data->Sup.len : 0); if (!(T3_ == ((NI) 0))) goto LA4_; result = ((NI) -1); goto BeforeRet_; } LA4_: ; T6_ = ((t.data ? t.data->Sup.len : 0)-1); h = (NI)(hc & T6_); { while (1) { NIM_BOOL T9_; NI T16_; T9_ = (NIM_BOOL)0; T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0); if (!T9_) goto LA8; { NIM_BOOL T12_; T12_ = (NIM_BOOL)0; T12_ = (t.data->data[h].Field0 == hc); if (!(T12_)) goto LA13_; T12_ = (t.data->data[h].Field1 == key); LA13_: ; if (!T12_) goto LA14_; result = h; goto BeforeRet_; } LA14_: ; T16_ = ((t.data ? t.data->Sup.len : 0)-1); h = nextTry__pureZcollectionsZtables_34(h, T16_); } LA8: ; } result = (NI)(((NI) -1) - h); }BeforeRet_: ; return result; } N_LIB_PRIVATE N_NIMCALL(tySequence__vGU8AyGT6KxtLJwEg0BpNw**, mgetOrPut__sempass50_1047)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ* t, NI key, tySequence__vGU8AyGT6KxtLJwEg0BpNw* val) { tySequence__vGU8AyGT6KxtLJwEg0BpNw** result; NI hc; NI index; result = (tySequence__vGU8AyGT6KxtLJwEg0BpNw**)0; { NI T3_; NI correctSizeX60gensym95_; T3_ = ((*t).data ? (*t).data->Sup.len : 0); if (!(T3_ == ((NI) 0))) goto LA4_; correctSizeX60gensym95_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32)); (*t).counter = ((NI) 0); unsureAsgnRef((void**) (&(*t).data), (tySequence__Hkw5zrAn53wlKDHdJF1GFA*) newSeq((&NTIkeyvaluepairseq__Hkw5zrAn53wlKDHdJF1GFA_), ((NI) (correctSizeX60gensym95_)))); } LA4_: ; hc = (NI)0; index = rawGet__sempass50_491((*t), key, (&hc)); { if (!(index < ((NI) 0))) goto LA8_; { NI T12_; NI correctSizeX60gensym98_; T12_ = ((*t).data ? (*t).data->Sup.len : 0); if (!(T12_ == ((NI) 0))) goto LA13_; correctSizeX60gensym98_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32)); (*t).counter = ((NI) 0); unsureAsgnRef((void**) (&(*t).data), (tySequence__Hkw5zrAn53wlKDHdJF1GFA*) newSeq((&NTIkeyvaluepairseq__Hkw5zrAn53wlKDHdJF1GFA_), ((NI) (correctSizeX60gensym98_)))); } LA13_: ; { NIM_BOOL T17_; T17_ = (NIM_BOOL)0; T17_ = mustRehash__sempass50_1168((*t)); if (!T17_) goto LA18_; enlarge__sempass50_1321(t); index = rawGetKnownHC__sempass50_1794((*t), key, hc); } LA18_: ; index = (NI)(((NI) -1) - index); rawInsert__sempass50_1625(t, (&(*t).data), key, val, hc, index); (*t).counter += ((NI) 1); } LA8_: ; result = (&(*t).data->data[index].Field2); return result; } N_LIB_PRIVATE N_NIMCALL(void, markSideEffect__sempass50_995)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* reason, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q useLoc) { { if (!!((*a).inEnforcedNoSideEffects)) goto LA3_; (*a).hasSideEffect = NIM_TRUE; { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym93_; tySequence__vGU8AyGT6KxtLJwEg0BpNw* T9_; tySequence__vGU8AyGT6KxtLJwEg0BpNw** T10_; tyTuple__KvKIqRIx9anKcDMu8DPSkHw T11_; NI T12_; if (!((routineKinds__ast_467 &((NU32)1<<((NU)((*(*a).owner).kind)&31U)))!=0)) goto LA7_; sym = NIM_NIL; sym = reason; xX60gensym93_ = (*a).owner; T9_ = NIM_NIL; T9_ = NIM_NIL; T10_ = (tySequence__vGU8AyGT6KxtLJwEg0BpNw**)0; T10_ = mgetOrPut__sempass50_1047((&(*(*a).c).sideEffects), (NI)((NI)((NU64)(((NI) ((*xX60gensym93_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym93_).Sup.itemId.item))), T9_); nimZeroMem((void*)(&T11_), sizeof(tyTuple__KvKIqRIx9anKcDMu8DPSkHw)); T11_.Field0 = useLoc; T11_.Field1 = sym; unsureAsgnRef((void**) (&(*T10_)), (tySequence__vGU8AyGT6KxtLJwEg0BpNw*) incrSeqV3((TGenericSeq*)((*T10_)), (&NTIseqLLtlineinfo_psymTT__vGU8AyGT6KxtLJwEg0BpNw_))); T12_ = (*T10_)->Sup.len++; (*T10_)->data[T12_].Field0 = T11_.Field0; asgnRef((void**) (&(*T10_)->data[T12_].Field1), T11_.Field1); } LA7_: ; } LA3_: ; } N_LIB_PRIVATE N_NIMCALL(void, useVarNoInitCheck__sempass50_959)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) { { NIM_BOOL T3_; NIM_BOOL T4_; T3_ = (NIM_BOOL)0; T4_ = (NIM_BOOL)0; T4_ = !(((67108872 & (*s).flags) == 0)); if (!(T4_)) goto LA5_; T4_ = ((768 &((NU32)1<<((NU)((*s).kind)&31U)))!=0); LA5_: ; T3_ = T4_; if (!(T3_)) goto LA6_; T3_ = !(((*s).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 263))); LA6_: ; if (!T3_) goto LA7_; { if (!!(((*s)._kind_2.guard == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA11_; guardGlobal__sempass50_221(a, n, (*s)._kind_2.guard); } LA11_: ; { NIM_BOOL T15_; NIM_BOOL T17_; T15_ = (NIM_BOOL)0; T15_ = ((67108872 & (*s).flags) == 8); if (!(T15_)) goto LA16_; T17_ = (NIM_BOOL)0; T17_ = (((*(*s).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 22))&63U)))!=0); if (T17_) goto LA18_; T17_ = isGCedMem__ast_4203((*s).typ); LA18_: ; T15_ = T17_; LA16_: ; if (!T15_) goto LA19_; markGcUnsafe__sempass50_361(a, s); } LA19_: ; markSideEffect__sempass50_995(a, s, (*n).info); } LA7_: ; { NIM_BOOL T23_; NIM_BOOL T24_; T23_ = (NIM_BOOL)0; T24_ = (NIM_BOOL)0; T24_ = !(((*s).owner == (*a).owner)); if (!(T24_)) goto LA25_; T24_ = ((2099976 &((NU32)1<<((NU)((*s).kind)&31U)))!=0); LA25_: ; T23_ = T24_; if (!(T23_)) goto LA26_; T23_ = ((67108872 & (*s).flags) == 0); LA26_: ; if (!T23_) goto LA27_; (*a).isInnerProc = NIM_TRUE; } LA27_: ; } N_LIB_PRIVATE N_NIMCALL(void, useVar__sempass50_2113)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s; s = (*n)._kind_4.sym; { if (!(((NI) 0) < (*a).inExceptOrFinallyStmt)) goto LA3_; (*s).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 44)) & 63); } LA3_: ; { NIM_BOOL T7_; T7_ = (NIM_BOOL)0; T7_ = isLocalVar__sempass50_162(a, s); if (!T7_) goto LA8_; { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym110_; NI T14_; if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA12_; xX60gensym110_ = s; unsureAsgnRef((void**) (&(*a).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*a).init), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_))); T14_ = (*a).init->Sup.len++; (*a).init->data[T14_] = (NI)((NI)((NU64)(((NI) ((*xX60gensym110_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym110_).Sup.itemId.item))); } goto LA10_; LA12_: ; { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym112_; NIM_BOOL T16_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym117_; NI T27_; xX60gensym112_ = s; T16_ = (NIM_BOOL)0; T16_ = contains__sigmatch_4299((*a).init->data, ((*a).init ? (*a).init->Sup.len : 0), (NI)((NI)((NU64)(((NI) ((*xX60gensym112_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym112_).Sup.itemId.item)))); if (!!(T16_)) goto LA17_; { NIM_BOOL T21_; T21_ = (NIM_BOOL)0; T21_ = requiresInit__typeallowed_578((*s).typ); if (!T21_) goto LA22_; liMessage__msgs_1118((*a).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 41), (*(*s).name).s, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_19, NIM_FALSE); } goto LA19_; LA22_: ; { if (!((*a).leftPartOfAsgn <= ((NI) 0))) goto LA25_; liMessage__msgs_1118((*a).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 49), (*(*s).name).s, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_20, NIM_FALSE); } goto LA19_; LA25_: ; LA19_: ; xX60gensym117_ = s; unsureAsgnRef((void**) (&(*a).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*a).init), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_))); T27_ = (*a).init->Sup.len++; (*a).init->data[T27_] = (NI)((NI)((NU64)(((NI) ((*xX60gensym117_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym117_).Sup.itemId.item))); } goto LA10_; LA17_: ; LA10_: ; } LA8_: ; useVarNoInitCheck__sempass50_959(a, n, s); } N_LIB_PRIVATE N_NIMCALL(void, throws__sempass50_2182)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* orig) { { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = ((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)); if (T3_) goto LA4_; T3_ = !(((*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 50))); LA4_: ; if (!T3_) goto LA5_; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x; if (!!((orig == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA9_; x = copyTree__ast_4431(orig); asgnRef((void**) (&(*x).typ), (*n).typ); add__ast_4797(tracked, x); } goto LA7_; LA9_: ; { add__ast_4797(tracked, n); } LA7_: ; } LA5_: ; } N_LIB_PRIVATE N_NIMCALL(void, addRaiseEffect__sempass50_2237)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* comesFrom) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* aa; { aa = (*a).exc; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = len__ast_3198(aa); i_2 = (*a).bottom; { while (1) { if (!(i_2 < colontmp_)) goto LA3; i = i_2; { tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T7_; NIM_BOOL T8_; T6_ = NIM_NIL; T6_ = excType__sempass50_2211((*a).graph, (*aa)._kind_6.sons->data[i]); T7_ = NIM_NIL; T7_ = excType__sempass50_2211((*a).graph, e); T8_ = (NIM_BOOL)0; T8_ = sameType__types_1824(T6_, T7_, 0); if (!T8_) goto LA9_; goto BeforeRet_; } LA9_: ; i_2 += ((NI) 1); } LA3: ; } } { if (!!(((*e).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA13_; { NIM_BOOL T17_; NIM_BOOL T19_; T17_ = (NIM_BOOL)0; T17_ = (((*(*a).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 47))&63U)))!=0); if (T17_) goto LA18_; T19_ = (NIM_BOOL)0; T19_ = isDefectException__types_4029((*e).typ); T17_ = !(T19_); LA18_: ; if (!T17_) goto LA20_; throws__sempass50_2182((*a).exc, e, comesFrom); } LA20_: ; } LA13_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, createTypeBoundOps__sempass50_142)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) { { { if (!(typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA3_; goto BeforeRet_; } LA3_: ; createTypeBoundOps__liftdestructors_47((*tracked).graph, (*tracked).c, typ, info, (*(*tracked).c).Sup.idgen); { NIM_BOOL T7_; T7_ = (NIM_BOOL)0; T7_ = (((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 31))&63U)))!=0); if (T7_) goto LA8_; T7_ = (((*(*tracked).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0); LA8_: ; if (!T7_) goto LA9_; (*(*tracked).owner).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 42)) & 63); } LA9_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, createRaise__sempass50_2223)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result; result = NIM_NIL; result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4)); asgnRef((void**) (&(*result).typ), getEbase__sempass50_2207(g, (*n).info)); { if (!!((n == 0))) goto LA3_; (*result).info = (*n).info; } LA3_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, mergeLockLevels__sempass50_2606)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI16 lockLevel) { { if (!((*tracked).currLockLevel <= lockLevel)) goto LA3_; { NimStringDesc* T9_; NimStringDesc* T10_; NimStringDesc* T11_; if (!(((NI16) 0) < (*tracked).currLockLevel)) goto LA7_; T9_ = NIM_NIL; T10_ = NIM_NIL; T10_ = dollar___ast_3858((*tracked).currLockLevel); T11_ = NIM_NIL; T11_ = dollar___ast_3858(lockLevel); T9_ = rawNewString((T10_ ? T10_->Sup.len : 0) + (T11_ ? T11_->Sup.len : 0) + 42); appendString(T9_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_24)); appendString(T9_, T10_); appendString(T9_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_25)); appendString(T9_, T11_); liMessage__msgs_1118((*tracked).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T9_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_26, NIM_FALSE); } LA7_: ; (*tracked).maxLockLevel = (((*tracked).maxLockLevel >= lockLevel) ? (*tracked).maxLockLevel : lockLevel); } LA3_: ; } N_LIB_PRIVATE N_NIMCALL(NI16, getLockLevel__sempass50_2591)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) { NI16 result; result = (NI16)0; result = (*(*s).typ).lockLevel; { if (!(result == ((NI16) -1))) goto LA3_; { NIM_BOOL T7_; T7_ = (NIM_BOOL)0; T7_ = !(((4160 & (*s).flags) == 0)); if (T7_) goto LA8_; T7_ = (((*(*s).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0); LA8_: ; if (!T7_) goto LA9_; result = ((NI16) 0); } goto LA5_; LA9_: ; { result = ((NI16) 1001); } LA5_: ; } LA3_: ; return result; } static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) { tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result; nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g)); (*x).symId += ((NI) 1); nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g)); result.module = (*x).module; result.item = (*x).symId; return result; } N_LIB_PRIVATE N_NIMCALL(void, markSideEffect__sempass50_2877)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* reason, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q useLoc) { { if (!!((*a).inEnforcedNoSideEffects)) goto LA3_; (*a).hasSideEffect = NIM_TRUE; { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym225_; tySequence__vGU8AyGT6KxtLJwEg0BpNw* T20_; tySequence__vGU8AyGT6KxtLJwEg0BpNw** T21_; tyTuple__KvKIqRIx9anKcDMu8DPSkHw T22_; NI T23_; if (!((routineKinds__ast_467 &((NU32)1<<((NU)((*(*a).owner).kind)&31U)))!=0)) goto LA7_; sym = NIM_NIL; { if (!((*reason).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA11_; sym = (*reason)._kind_4.sym; } goto LA9_; LA11_: ; { tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T19_; { if (!((*reason).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65))) goto LA16_; kind = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3); } goto LA14_; LA16_: ; { kind = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 0); } LA14_: ; T19_ = nextSymId__ast_3132((*(*a).c).Sup.idgen); sym = newSym__ast_3445(kind, (*(*a).owner).name, T19_, (*a).owner, (*reason).info, 0); } LA9_: ; xX60gensym225_ = (*a).owner; T20_ = NIM_NIL; T20_ = NIM_NIL; T21_ = (tySequence__vGU8AyGT6KxtLJwEg0BpNw**)0; T21_ = mgetOrPut__sempass50_1047((&(*(*a).c).sideEffects), (NI)((NI)((NU64)(((NI) ((*xX60gensym225_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym225_).Sup.itemId.item))), T20_); nimZeroMem((void*)(&T22_), sizeof(tyTuple__KvKIqRIx9anKcDMu8DPSkHw)); T22_.Field0 = useLoc; T22_.Field1 = sym; unsureAsgnRef((void**) (&(*T21_)), (tySequence__vGU8AyGT6KxtLJwEg0BpNw*) incrSeqV3((TGenericSeq*)((*T21_)), (&NTIseqLLtlineinfo_psymTT__vGU8AyGT6KxtLJwEg0BpNw_))); T23_ = (*T21_)->Sup.len++; (*T21_)->data[T23_].Field0 = T22_.Field0; asgnRef((void**) (&(*T21_)->data[T23_].Field1), T22_.Field1); } LA7_: ; } LA3_: ; } N_LIB_PRIVATE N_NIMCALL(void, mergeRaises__sempass50_2273)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* comesFrom) { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_; if (!(b == 0)) goto LA3_; T5_ = NIM_NIL; T5_ = createRaise__sempass50_2223((*a).graph, comesFrom); addRaiseEffect__sempass50_2237(a, T5_, comesFrom); } goto LA1_; LA3_: ; { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effect; effect = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191(b); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA10; i = i_2; effect = (*b)._kind_6.sons->data[i]; addRaiseEffect__sempass50_2237(a, effect, comesFrom); i_2 += ((NI) 1); } LA10: ; } } } } LA1_: ; } N_LIB_PRIVATE N_NIMCALL(void, addTag__sempass50_2259)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* comesFrom) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* aa; { aa = (*a).tags; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = len__ast_3198(aa); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA3; i = i_2; { tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T7_; NIM_BOOL T8_; T6_ = NIM_NIL; T6_ = skipTypes__ast_3735((*(*aa)._kind_6.sons->data[i]).typ, TM__wkTG4eaV3t1uo3x09apjcwA_9); T7_ = NIM_NIL; T7_ = skipTypes__ast_3735((*e).typ, TM__wkTG4eaV3t1uo3x09apjcwA_9); T8_ = (NIM_BOOL)0; T8_ = sameType__types_1824(T6_, T7_, 0); if (!T8_) goto LA9_; goto BeforeRet_; } LA9_: ; i_2 += ((NI) 1); } LA3: ; } } throws__sempass50_2182((*a).tags, e, comesFrom); }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, createTag__sempass50_2230)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result; result = NIM_NIL; result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4)); asgnRef((void**) (&(*result).typ), sysTypeFromName__magicsys_55(g, (*n).info, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_27))); { if (!!((n == 0))) goto LA3_; (*result).info = (*n).info; } LA3_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, mergeTags__sempass50_2281)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* comesFrom) { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T5_; if (!(b == 0)) goto LA3_; T5_ = NIM_NIL; T5_ = createTag__sempass50_2230((*a).graph, comesFrom); addTag__sempass50_2259(a, T5_, comesFrom); } goto LA1_; LA3_: ; { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effect; effect = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191(b); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA10; i = i_2; effect = (*b)._kind_6.sons->data[i]; addTag__sempass50_2259(a, effect, comesFrom); i_2 += ((NI) 1); } LA10: ; } } } } LA1_: ; } static N_INLINE(NIM_BOOL, hasWarn__options_557)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug note) { NIM_BOOL result; NIM_BOOL T1_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = (((*conf).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 13))&31U)))!=0); if (!(T1_)) goto LA2_; T1_ = (((*conf).notes[(NU)((note- 16))>>3] &(1U<<((NU)((note- 16))&7U)))!=0); LA2_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(void, warnAboutGcUnsafe__sempass50_358)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) { NimStringDesc* T1_; T1_ = NIM_NIL; T1_ = renderTree__renderer_46(n, 0); liMessage__msgs_1118(conf, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 47), T1_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_28, NIM_FALSE); } N_LIB_PRIVATE N_NIMCALL(void, propagateEffects__sempass50_2610)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pragma; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* spec; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tagSpec; NI16 T16_; pragma = (*(*s).ast)._kind_6.sons->data[((NI) 4)]; spec = effectSpec__trees_284(pragma, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 174)); mergeRaises__sempass50_2273(tracked, spec, n); tagSpec = effectSpec__trees_284(pragma, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 179)); mergeTags__sempass50_2281(tracked, tagSpec, n); { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = ((130 & (*(*s).typ).flags) == 0); if (!(T3_)) goto LA4_; T3_ = !((((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0)); LA4_: ; if (!T3_) goto LA5_; { NIM_BOOL T9_; T9_ = (NIM_BOOL)0; T9_ = hasWarn__options_557((*tracked).config, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 47)); if (!T9_) goto LA10_; warnAboutGcUnsafe__sempass50_358(n, (*tracked).config); } LA10_: ; markGcUnsafe__sempass50_361(tracked, s); } LA5_: ; { if (!!((((*(*s).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0))) goto LA14_; markSideEffect__sempass50_995(tracked, s, (*n).info); } LA14_: ; T16_ = (NI16)0; T16_ = getLockLevel__sempass50_2591(s); mergeLockLevels__sempass50_2606(tracked, n, T16_); } static N_INLINE(NIM_BOOL, isNoEffectList__sempass50_2756)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NIM_BOOL result; NIM_BOOL T1_; NI T2_; NIM_BOOL T4_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T2_ = (NI)0; T2_ = len__ast_3198(n); T1_ = (T2_ == ((NI) 0)); if (T1_) goto LA3_; T4_ = (NIM_BOOL)0; T4_ = ((*n)._kind_6.sons->data[((NI) 3)] == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); if (!(T4_)) goto LA5_; T4_ = ((*n)._kind_6.sons->data[((NI) 0)] == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); LA5_: ; T1_ = T4_; LA3_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isForwardedProc__sempass50_2549)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NIM_BOOL result; NIM_BOOL T1_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T1_)) goto LA2_; T1_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 4))&63U)))!=0); LA2_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isIndirectCall__sempass50_2513)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NIM_BOOL result; result = (NIM_BOOL)0; { if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3_; result = NIM_TRUE; } goto LA1_; LA3_: ; { if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3))) goto LA6_; { if (!(((*(*tracked).c).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 16))&31U)))!=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__K9ay6LWMat9bUiT9bIbMxpDHw) 47))&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__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)); LA21_: ; result = T20_; } LA8_: ; } goto LA1_; LA6_: ; { if (!!(((520192 &((NU32)1<<((NU)((*(*n)._kind_4.sym).kind)&31U)))!=0))) goto LA23_; result = NIM_TRUE; } goto LA1_; LA23_: ; LA1_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, assumeTheWorst__sempass50_2727)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* op) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T2_; NI16 lockLevel; T1_ = NIM_NIL; T1_ = createRaise__sempass50_2223((*tracked).graph, n); addRaiseEffect__sempass50_2237(tracked, T1_, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); T2_ = NIM_NIL; T2_ = createTag__sempass50_2230((*tracked).graph, n); addTag__sempass50_2259(tracked, T2_, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); { if (!((*op).lockLevel == ((NI16) -1))) goto LA5_; lockLevel = ((NI16) 1001); } goto LA3_; LA5_: ; { lockLevel = (*op).lockLevel; } LA3_: ; mergeLockLevels__sempass50_2606(tracked, n, lockLevel); } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, importedFromC__sempass50_2580)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NIM_BOOL result; NIM_BOOL T1_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T1_)) goto LA2_; T1_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0); LA2_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(void, markGcUnsafe__sempass50_368)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* reason) { { if (!!((*a).inEnforcedGcSafe)) goto LA3_; (*a).gcUnsafe = NIM_TRUE; { if (!((520192 &((NU32)1<<((NU)((*(*a).owner).kind)&31U)))!=0)) goto LA7_; { if (!((*reason).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA11_; asgnRef((void**) (&(*(*a).owner)._kind_1.gcUnsafetyReason), (*reason)._kind_4.sym); } goto LA9_; LA11_: ; { tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T14_; T14_ = nextSymId__ast_3132((*(*a).c).Sup.idgen); asgnRef((void**) (&(*(*a).owner)._kind_1.gcUnsafetyReason), newSym__ast_3445(((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 0), (*(*a).owner).name, T14_, (*a).owner, (*reason).info, 0)); } LA9_: ; } LA7_: ; } LA3_: ; } static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n) { NI result; NI T1_; result = (NI)0; T1_ = ((*n).sons ? (*n).sons->Sup.len : 0); result = T1_; return result; } static N_INLINE(NIM_BOOL, isTrival__sempass50_2779)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* caller) { NIM_BOOL result; NIM_BOOL T1_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = ((*caller).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T1_)) goto LA2_; T1_ = ((*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 92) || (*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 143) || (*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 148) || (*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 149) || (*(*caller)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 142)); LA2_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOwnedProcVar__sempass50_2732)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* 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__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T2_)) goto LA3_; T2_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 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).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 16))&31U)))!=0)) goto LA7_; T9_ = (NIM_BOOL)0; T9_ = result; if (!(T9_)) goto LA10_; T9_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 47))&63U)))!=0); LA10_: ; result = T9_; } LA7_: ; return result; } static N_INLINE(void, makeVolatile__sempass50_301)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) { { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = (((NI) 0) < (*a).inTryStmt); if (!(T3_)) goto LA4_; T3_ = ((*(*a).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 1)); LA4_: ; if (!T3_) goto LA5_; (*s).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 9)) & 63); } LA5_: ; } N_LIB_PRIVATE N_NIMCALL(void, procVarCheck__sempass50_2639)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) { { if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 56) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 57))) goto LA3_; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x; x = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191(n); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA8; i = i_2; x = (*n)._kind_6.sons->data[i]; procVarCheck__sempass50_2639(x, conf); i_2 += ((NI) 1); } LA8: ; } } } } goto LA1_; LA3_: ; { NIM_BOOL T10_; NIM_BOOL T11_; NimStringDesc* T16_; T10_ = (NIM_BOOL)0; T11_ = (NIM_BOOL)0; T11_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T11_)) goto LA12_; T11_ = !(((*(*n)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0))); LA12_: ; T10_ = T11_; if (!(T10_)) goto LA13_; T10_ = ((520192 &((NU32)1<<((NU)((*(*n)._kind_4.sym).kind)&31U)))!=0); LA13_: ; if (!T10_) goto LA14_; T16_ = NIM_NIL; T16_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_33), (*(*(*n)._kind_4.sym).name).s); liMessage__msgs_1118(conf, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T16_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_34, NIM_FALSE); } goto LA1_; LA14_: ; LA1_: ; } N_LIB_PRIVATE N_NIMCALL(void, notNilCheck__sempass50_2659)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* paramType) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2; tyObject_TType__facALICuu8zUj0hjvbTLFg* paramType_2; { n_2 = skipConv__types_3597(n); { NIM_BOOL T3_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T7_; T3_ = (NIM_BOOL)0; T3_ = (paramType == 0); if (T3_) goto LA4_; T3_ = !(((*paramType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8))); LA4_: ; if (!T3_) goto LA5_; T7_ = NIM_NIL; T7_ = skipConvCastAndClosure__astalgo_114(n_2); procVarCheck__sempass50_2639(T7_, (*tracked).config); } LA5_: ; paramType_2 = skipTypesOrNil__ast_4185(paramType, TM__wkTG4eaV3t1uo3x09apjcwA_30); { NIM_BOOL T10_; NIM_BOOL T11_; tyObject_TType__facALICuu8zUj0hjvbTLFg* ntyp; T10_ = (NIM_BOOL)0; T11_ = (NIM_BOOL)0; T11_ = !((paramType_2 == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T11_)) goto LA12_; T11_ = (((*paramType_2).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 17))&63U)))!=0); LA12_: ; T10_ = T11_; if (!(T10_)) goto LA13_; T10_ = !(((*n_2).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); LA13_: ; if (!T10_) goto LA14_; ntyp = skipTypesOrNil__ast_4185((*n_2).typ, TM__wkTG4eaV3t1uo3x09apjcwA_35); { NIM_BOOL T18_; tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA T47_; T18_ = (NIM_BOOL)0; T18_ = !((ntyp == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T18_)) goto LA19_; T18_ = !((((*ntyp).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 17))&63U)))!=0)); LA19_: ; if (!T18_) goto LA20_; { NIM_BOOL T24_; T24_ = (NIM_BOOL)0; T24_ = isAddrNode__astalgo_4297(n_2); if (!T24_) goto LA25_; { NIM_BOOL T29_; T29_ = (NIM_BOOL)0; T29_ = containsNode__ast_4545(n_2, TM__wkTG4eaV3t1uo3x09apjcwA_36); if (!!(T29_)) goto LA30_; goto BeforeRet_; } LA30_: ; } goto LA22_; LA25_: ; { NIM_BOOL T33_; NIM_BOOL T34_; NIM_BOOL T35_; NIM_BOOL T36_; NIM_BOOL T40_; NIM_BOOL T41_; T33_ = (NIM_BOOL)0; T34_ = (NIM_BOOL)0; T35_ = (NIM_BOOL)0; T36_ = (NIM_BOOL)0; T36_ = ((*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T36_)) goto LA37_; T36_ = ((520192 &((NU32)1<<((NU)((*(*n_2)._kind_4.sym).kind)&31U)))!=0); LA37_: ; T35_ = T36_; if (T35_) goto LA38_; T35_ = ((*n_2).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*n_2).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41) || (*n_2).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) && (*n_2).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52) || (*n_2).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) && (*n_2).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159)); LA38_: ; T34_ = T35_; if (T34_) goto LA39_; T40_ = (NIM_BOOL)0; T41_ = (NIM_BOOL)0; T41_ = ((*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32)); if (!(T41_)) goto LA42_; T41_ = ((*(*n_2)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); LA42_: ; T40_ = T41_; if (!(T40_)) goto LA43_; T40_ = ((*(*(*n_2)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 144)); LA43_: ; T34_ = T40_; LA39_: ; T33_ = T34_; if (T33_) goto LA44_; T33_ = ((*(*n_2).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8)); LA44_: ; if (!T33_) goto LA45_; goto BeforeRet_; } goto LA22_; LA45_: ; LA22_: ; T47_ = (tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA)0; T47_ = impliesNotNil__guards_1044((*tracked).guards, n_2); switch (T47_) { case ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 0): { NimStringDesc* T49_; NimStringDesc* T50_; T49_ = NIM_NIL; T49_ = renderTree__renderer_46(n_2, 0); T50_ = NIM_NIL; T50_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_37), T49_); liMessage__msgs_1118((*tracked).config, (*n_2).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T50_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_38, NIM_FALSE); } break; case ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 1): { NimStringDesc* T52_; NimStringDesc* T53_; T52_ = NIM_NIL; T52_ = renderTree__renderer_46(n_2, 0); T53_ = NIM_NIL; T53_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_39), T52_); liMessage__msgs_1118((*tracked).config, (*n_2).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T53_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_40, NIM_FALSE); } break; case ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 2): { } break; } } LA20_: ; } LA14_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, trackOperandForIndirectCall__sempass50_2790)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* formals, NI argIndex, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* caller) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a; tyObject_TType__facALICuu8zUj0hjvbTLFg* op; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param; tyObject_TType__facALICuu8zUj0hjvbTLFg* paramType; a = skipConvCastAndClosure__astalgo_114(n); op = (*a).typ; { NIM_BOOL T3_; NIM_BOOL T4_; NI T6_; T3_ = (NIM_BOOL)0; T4_ = (NIM_BOOL)0; T4_ = !((formals == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T4_)) goto LA5_; T6_ = (NI)0; T6_ = len__ast_4002(formals); T4_ = (argIndex < T6_); LA5_: ; T3_ = T4_; if (!(T3_)) goto LA7_; T3_ = !(((*formals).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))); LA7_: ; if (!T3_) goto LA8_; param = (*(*(*formals).n)._kind_6.sons->data[argIndex])._kind_4.sym; } goto LA1_; LA8_: ; { param = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL); } LA1_: ; { NIM_BOOL T13_; NIM_BOOL T14_; NIM_BOOL T15_; NIM_BOOL T16_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T19_; NIM_BOOL T21_; NIM_BOOL T23_; NIM_BOOL T24_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effectList; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s; T13_ = (NIM_BOOL)0; T14_ = (NIM_BOOL)0; T15_ = (NIM_BOOL)0; T16_ = (NIM_BOOL)0; T16_ = !((op == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T16_)) goto LA17_; T16_ = ((*op).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA17_: ; T15_ = T16_; if (!(T15_)) goto LA18_; T19_ = NIM_NIL; T19_ = skipConv__types_3597(n); T15_ = !(((*T19_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))); LA18_: ; T14_ = T15_; if (!(T14_)) goto LA20_; T21_ = (NIM_BOOL)0; T21_ = isTrival__sempass50_2779(caller); T14_ = !(T21_); LA20_: ; T13_ = T14_; if (!(T13_)) goto LA22_; T23_ = (NIM_BOOL)0; T24_ = (NIM_BOOL)0; T24_ = !((param == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))); if (!(T24_)) goto LA25_; T24_ = (((*param).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 47))&63U)))!=0); LA25_: ; T23_ = T24_; if (T23_) goto LA26_; T23_ = !((((*(*tracked).c).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 16))&31U)))!=0)); LA26_: ; T13_ = T23_; LA22_: ; if (!T13_) goto LA27_; { NimStringDesc* argX60gensym217_; if (!!(((*(*(*op).n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152)))) goto LA31_; argX60gensym217_ = toFileLineCol__msgs_615(TM__wkTG4eaV3t1uo3x09apjcwA_29); internalErrorImpl__msgs_1431((*tracked).config, unknownLineInfo__lineinfos_280, argX60gensym217_, TM__wkTG4eaV3t1uo3x09apjcwA_29); } LA31_: ; effectList = (*(*op).n)._kind_6.sons->data[((NI) 0)]; s = skipConv__types_3597(n); { NIM_BOOL T35_; T35_ = (NIM_BOOL)0; T35_ = ((*s).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61)); if (!(T35_)) goto LA36_; T35_ = ((*(*(*s)._kind_6.sons->data[((NI) 1)]).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA36_: ; if (!T35_) goto LA37_; s = (*s)._kind_6.sons->data[((NI) 1)]; } LA37_: ; { NIM_BOOL T41_; NIM_BOOL T42_; T41_ = (NIM_BOOL)0; T42_ = (NIM_BOOL)0; T42_ = ((*s).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T42_)) goto LA43_; T42_ = ((520192 &((NU32)1<<((NU)((*(*s)._kind_4.sym).kind)&31U)))!=0); LA43_: ; T41_ = T42_; if (!(T41_)) goto LA44_; T41_ = isNoEffectList__sempass50_2756(effectList); LA44_: ; if (!T41_) goto LA45_; propagateEffects__sempass50_2610(tracked, n, (*s)._kind_4.sym); } goto LA39_; LA45_: ; { NIM_BOOL T48_; T48_ = (NIM_BOOL)0; T48_ = isNoEffectList__sempass50_2756(effectList); if (!T48_) goto LA49_; { NIM_BOOL T53_; T53_ = (NIM_BOOL)0; T53_ = isForwardedProc__sempass50_2549(n); if (!T53_) goto LA54_; propagateEffects__sempass50_2610(tracked, n, (*n)._kind_4.sym); } goto LA51_; LA54_: ; { NIM_BOOL T57_; T57_ = (NIM_BOOL)0; T57_ = isOwnedProcVar__sempass50_2732(tracked, a); if (!!(T57_)) goto LA58_; assumeTheWorst__sempass50_2727(tracked, n, op); } goto LA51_; LA58_: ; LA51_: ; { NIM_BOOL T62_; NIM_BOOL T64_; T62_ = (NIM_BOOL)0; T62_ = ((130 & (*op).flags) == 0); if (!(T62_)) goto LA63_; T64_ = (NIM_BOOL)0; T64_ = isOwnedProcVar__sempass50_2732(tracked, a); T62_ = !(T64_); LA63_: ; if (!T62_) goto LA65_; { NIM_BOOL T69_; T69_ = (NIM_BOOL)0; T69_ = hasWarn__options_557((*tracked).config, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 47)); if (!T69_) goto LA70_; warnAboutGcUnsafe__sempass50_358(n, (*tracked).config); } LA70_: ; markGcUnsafe__sempass50_368(tracked, a); } goto LA60_; LA65_: ; { NIM_BOOL T73_; NIM_BOOL T75_; T73_ = (NIM_BOOL)0; T73_ = !((((*op).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0)); if (!(T73_)) goto LA74_; T75_ = (NIM_BOOL)0; T75_ = isOwnedProcVar__sempass50_2732(tracked, a); T73_ = !(T75_); LA74_: ; if (!T73_) goto LA76_; markSideEffect__sempass50_2877(tracked, a, (*n).info); } goto LA60_; LA76_: ; LA60_: ; } goto LA39_; LA49_: ; { mergeRaises__sempass50_2273(tracked, (*effectList)._kind_6.sons->data[((NI) 0)], n); mergeTags__sempass50_2281(tracked, (*effectList)._kind_6.sons->data[((NI) 3)], n); { if (!((130 & (*op).flags) == 0)) goto LA81_; { NIM_BOOL T85_; T85_ = (NIM_BOOL)0; T85_ = hasWarn__options_557((*tracked).config, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 47)); if (!T85_) goto LA86_; warnAboutGcUnsafe__sempass50_358(n, (*tracked).config); } LA86_: ; markGcUnsafe__sempass50_368(tracked, a); } goto LA79_; LA81_: ; { if (!!((((*op).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0))) goto LA89_; markSideEffect__sempass50_2877(tracked, a, (*n).info); } goto LA79_; LA89_: ; LA79_: ; } LA39_: ; } LA27_: ; { NIM_BOOL T93_; NI T95_; T93_ = (NIM_BOOL)0; T93_ = !((formals == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T93_)) goto LA94_; T95_ = (NI)0; T95_ = len__ast_4002(formals); T93_ = (argIndex < T95_); LA94_: ; if (!T93_) goto LA96_; paramType = (*formals).sons->data[argIndex]; } goto LA91_; LA96_: ; { paramType = ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL); } LA91_: ; { NIM_BOOL T101_; T101_ = (NIM_BOOL)0; T101_ = !((paramType == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T101_)) goto LA102_; T101_ = ((*paramType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23)); LA102_: ; if (!T101_) goto LA103_; invalidateFacts__guards_760((&(*tracked).guards), n); { NIM_BOOL T107_; T107_ = (NIM_BOOL)0; T107_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T107_)) goto LA108_; T107_ = isLocalVar__sempass50_162(tracked, (*n)._kind_4.sym); LA108_: ; if (!T107_) goto LA109_; makeVolatile__sempass50_301(tracked, (*n)._kind_4.sym); } LA109_: ; } LA103_: ; { NIM_BOOL T113_; NIM_BOOL T114_; tyObject_TType__facALICuu8zUj0hjvbTLFg* argtype; T113_ = (NIM_BOOL)0; T114_ = (NIM_BOOL)0; T114_ = !((paramType == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T114_)) goto LA115_; T114_ = ((*paramType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA115_: ; T113_ = T114_; if (!(T113_)) goto LA116_; T113_ = (((*paramType).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 7))&63U)))!=0); LA116_: ; if (!T113_) goto LA117_; argtype = skipTypes__ast_3735((*a).typ, TM__wkTG4eaV3t1uo3x09apjcwA_30); { NIM_BOOL T121_; NIM_BOOL T122_; NimStringDesc* T127_; NimStringDesc* T128_; T121_ = (NIM_BOOL)0; T122_ = (NIM_BOOL)0; T122_ = ((*argtype).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); if (!(T122_)) goto LA123_; T122_ = ((130 & (*argtype).flags) == 0); LA123_: ; T121_ = T122_; if (!(T121_)) goto LA124_; T121_ = !((*tracked).inEnforcedGcSafe); LA124_: ; if (!T121_) goto LA125_; T127_ = NIM_NIL; T128_ = NIM_NIL; T128_ = dollar___renderer_2106(n); T127_ = rawNewString((T128_ ? T128_->Sup.len : 0) + 15); appendString(T127_, T128_); appendString(T127_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_31)); liMessage__msgs_1118((*tracked).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T127_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_32, NIM_FALSE); } LA125_: ; } LA117_: ; notNilCheck__sempass50_2659(tracked, n, paramType); } N_LIB_PRIVATE N_NIMCALL(void, initVar__sempass50_312)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL volatileCheck) { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s; { { if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3_; goto BeforeRet_; } LA3_: ; s = (*n)._kind_4.sym; { NIM_BOOL T7_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym55_; NI T22_; T7_ = (NIM_BOOL)0; T7_ = isLocalVar__sempass50_162(a, s); if (!T7_) goto LA8_; { if (!volatileCheck) goto LA12_; makeVolatile__sempass50_301(a, s); } LA12_: ; { NI* x; NI i; NI L; NI T15_; x = (NI*)0; i = ((NI) 0); T15_ = ((*a).init ? (*a).init->Sup.len : 0); L = T15_; { while (1) { if (!(i < L)) goto LA17; x = (&(*a).init->data[i]); { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym54_; xX60gensym54_ = s; if (!((*x) == (NI)((NI)((NU64)(((NI) ((*xX60gensym54_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym54_).Sup.itemId.item))))) goto LA20_; goto BeforeRet_; } LA20_: ; i += ((NI) 1); } LA17: ; } } xX60gensym55_ = s; unsureAsgnRef((void**) (&(*a).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*a).init), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_))); T22_ = (*a).init->Sup.len++; (*a).init->data[T22_] = (NI)((NI)((NU64)(((NI) ((*xX60gensym55_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym55_).Sup.itemId.item))); } LA8_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, initVarViaNew__sempass50_341)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s; { { if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3_; goto BeforeRet_; } LA3_: ; s = (*n)._kind_4.sym; { if (!(((393216 & (*(*s).typ).flags) & ~ 131072)==0)) goto LA7_; initVar__sempass50_312(a, n, NIM_TRUE); } goto LA5_; LA7_: ; { NIM_BOOL T10_; T10_ = (NIM_BOOL)0; T10_ = isLocalVar__sempass50_162(a, s); if (!T10_) goto LA11_; makeVolatile__sempass50_301(a, s); } goto LA5_; LA11_: ; LA5_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, checkLe__sempass50_3342)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) { tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA T1_; T1_ = (tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA)0; T1_ = proveLe__guards_1619((*c).guards, a, b); switch (T1_) { case ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 0): { NimStringDesc* T3_; NimStringDesc* T4_; NimStringDesc* T5_; T3_ = NIM_NIL; T4_ = NIM_NIL; T4_ = dollar___renderer_2106(a); T5_ = NIM_NIL; T5_ = dollar___renderer_2106(b); T3_ = rawNewString((T4_ ? T4_->Sup.len : 0) + (T5_ ? T5_->Sup.len : 0) + 18); appendString(T3_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_42)); appendString(T3_, T4_); appendString(T3_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_43)); appendString(T3_, T5_); liMessage__msgs_1118((*c).config, (*a).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 46), T3_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_44, NIM_FALSE); } break; case ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 2): { } break; case ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 1): { NimStringDesc* T8_; NimStringDesc* T9_; NimStringDesc* T10_; T8_ = NIM_NIL; T9_ = NIM_NIL; T9_ = dollar___renderer_2106(a); T10_ = NIM_NIL; T10_ = dollar___renderer_2106(b); T8_ = rawNewString((T9_ ? T9_->Sup.len : 0) + (T10_ ? T10_->Sup.len : 0) + 14); appendString(T8_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_45)); appendString(T8_, T9_); appendString(T8_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_46)); appendString(T8_, T10_); liMessage__msgs_1118((*c).config, (*a).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 46), T8_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_47, NIM_FALSE); } break; } } N_LIB_PRIVATE N_NIMCALL(void, checkBounds__sempass50_3346)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arr, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* idx) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T2_; T1_ = NIM_NIL; T1_ = lowBound__guards_261((*c).config, arr); checkLe__sempass50_3342(c, T1_, idx); T2_ = NIM_NIL; T2_ = highBound__guards_265((*c).config, arr, (&(*(*c).guards.g).operators)); checkLe__sempass50_3342(c, idx, T2_); } 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_1735)(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)(NimStringDesc* a, NimStringDesc* b) { NIM_BOOL result; NI alen; NI blen; { result = (NIM_BOOL)0; alen = (a ? a->Sup.len : 0); blen = (b ? b->Sup.len : 0); { if (!(alen == blen)) goto LA3_; { if (!(alen == ((NI) 0))) goto LA7_; result = NIM_TRUE; goto BeforeRet_; } LA7_: ; result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen))); goto BeforeRet_; } LA3_: ; }BeforeRet_: ; return result; } static N_INLINE(NI, find__sempass50_3619)(tyArray__JXkBzVsE9bvmcpuZvrueLVg a, NimStringDesc* item) { NI result; { result = (NI)0; result = ((NI) 0); { NimStringDesc* i; tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg i_2; i = NIM_NIL; i_2 = ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 0); { while (1) { i = a[(i_2)- 0]; { if (!eqStrings(i, item)) goto LA6_; goto BeforeRet_; } LA6_: ; result += ((NI) 1); { if (!(((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 4) <= i_2)) goto LA10_; goto LA2; } LA10_: ; i_2 += ((NI) 1); } } LA2: ; } result = ((NI) -1); }BeforeRet_: ; return result; } static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) { tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result; nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g)); (*x).typeId_0 += ((NI) 1); nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g)); result.module = (*x).module; result.item = (*x).typeId_0; return result; } static N_INLINE(NIM_BOOL, isEmptyType__ast_4779)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) { NIM_BOOL result; NIM_BOOL T1_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = (t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)); if (T1_) goto LA2_; T1_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 7)); LA2_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(void, checkForSink__sempass50_24)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg) { { { if (!!((((*config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 25))&31U)))!=0))) goto LA3_; goto BeforeRet_; } LA3_: ; switch ((*arg).kind) { case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3): { { NIM_BOOL T8_; NIM_BOOL T9_; NIM_BOOL T10_; NIM_BOOL T11_; NIM_BOOL T12_; T8_ = (NIM_BOOL)0; T9_ = (NIM_BOOL)0; T10_ = (NIM_BOOL)0; T11_ = (NIM_BOOL)0; T12_ = (NIM_BOOL)0; T12_ = ((*(*arg)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3)); if (!(T12_)) goto LA13_; T12_ = ((*(*arg)._kind_4.sym).owner == owner); LA13_: ; T11_ = T12_; if (!(T11_)) goto LA14_; T11_ = !(((*owner).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); LA14_: ; T10_ = T11_; if (!(T10_)) goto LA15_; T10_ = ((*(*owner).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA15_: ; T9_ = T10_; if (!(T9_)) goto LA16_; T9_ = !(((IL64(2147483664) & (*(*(*arg)._kind_4.sym).typ).flags) == 0)); LA16_: ; T8_ = T9_; if (!(T8_)) goto LA17_; T8_ = !(((*(*(*arg)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*(*arg)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46) || (*(*(*arg)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45))); LA17_: ; if (!T8_) goto LA18_; { tyObject_TType__facALICuu8zUj0hjvbTLFg* argType; tyObject_TType__facALICuu8zUj0hjvbTLFg* sinkType; tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T24_; if (!!((((*owner).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 5))&63U)))!=0))) goto LA22_; argType = (*(*arg)._kind_4.sym).typ; T24_ = nextTypeId__ast_3151(idgen); sinkType = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46), T24_, owner); (*sinkType).size = (*argType).size; (*sinkType).align = (*argType).align; (*sinkType).paddingAtEnd = (*argType).paddingAtEnd; add__concepts_23(sinkType, argType); asgnRef((void**) (&(*(*arg)._kind_4.sym).typ), sinkType); asgnRef((void**) (&(*(*owner).typ).sons->data[(NI)((*(*arg)._kind_4.sym).position + ((NI) 1))]), sinkType); } goto LA20_; LA22_: ; { tyArray__nHXaesL0DJZHyVS07ARPRA T28_; NimStringDesc* T29_; if (!!((((*(*arg)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 5))&63U)))!=0))) goto LA26_; (*(*arg)._kind_4.sym).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 5)) & 63); nimZeroMem((void*)T28_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA)); T28_[0] = copyString((*(*(*arg)._kind_4.sym).name).s); T29_ = NIM_NIL; T29_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_50), T28_, 1); liMessage__msgs_1118(config, (*arg).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 93), T29_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_51, NIM_FALSE); } goto LA20_; LA26_: ; LA20_: ; } LA18_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 127): { { NIM_BOOL T33_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T36_; T33_ = (NIM_BOOL)0; T33_ = isEmptyType__ast_4779((*arg).typ); if (!!(T33_)) goto LA34_; T36_ = NIM_NIL; T36_ = lastSon__ast_4832(arg); checkForSink__sempass50_24(config, idgen, owner, T36_); } LA34_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 93): { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch; branch = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191(arg); i_2 = ((NI) 0); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value; if (!(i_2 < colontmp_)) goto LA41; i = i_2; branch = (*arg)._kind_6.sons->data[i]; value = lastSon__ast_4832(branch); { NIM_BOOL T44_; T44_ = (NIM_BOOL)0; T44_ = isEmptyType__ast_4779((*value).typ); if (!!(T44_)) goto LA45_; checkForSink__sempass50_24(config, idgen, owner, value); } LA45_: ; i_2 += ((NI) 1); } LA41: ; } } } } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97): { { NI i_3; NI colontmp__2; NI i_4; i_3 = (NI)0; colontmp__2 = (NI)0; colontmp__2 = len__ast_3198(arg); i_4 = ((NI) 1); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value_2; if (!(i_4 < colontmp__2)) goto LA50; i_3 = i_4; value_2 = lastSon__ast_4832((*arg)._kind_6.sons->data[i_3]); { NIM_BOOL T53_; T53_ = (NIM_BOOL)0; T53_ = isEmptyType__ast_4779((*value_2).typ); if (!!(T53_)) goto LA54_; checkForSink__sempass50_24(config, idgen, owner, value_2); } LA54_: ; i_4 += ((NI) 1); } LA50: ; } } } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106): { checkForSink__sempass50_24(config, idgen, owner, (*arg)._kind_6.sons->data[((NI) 0)]); } break; default: { } break; } }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, trackCall__sempass50_3367)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a; tyObject_TType__facALICuu8zUj0hjvbTLFg* op; a = (*n)._kind_6.sons->data[((NI) 0)]; op = (*a).typ; { if (!!(((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA3_; { NIM_BOOL T7_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T9_; T7_ = (NIM_BOOL)0; T7_ = !(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17))); if (!(T7_)) goto LA8_; T9_ = NIM_NIL; T9_ = skipTypes__ast_3735((*n).typ, TM__wkTG4eaV3t1uo3x09apjcwA_23); T7_ = !(((*T9_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27))); LA8_: ; if (!T7_) goto LA10_; createTypeBoundOps__sempass50_142(tracked, (*n).typ, (*n).info); } LA10_: ; } LA3_: ; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T14_; T14_ = NIM_NIL; T14_ = getConstExpr__semfold_81((*tracked).ownerModule, n, (*(*tracked).c).Sup.idgen, (*tracked).graph); if (!(T14_ == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA15_; { NIM_BOOL T19_; T19_ = (NIM_BOOL)0; T19_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61)); if (!(T19_)) goto LA20_; T19_ = ((*(*(*a)._kind_6.sons->data[((NI) 1)]).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA20_: ; if (!T19_) goto LA21_; a = (*a)._kind_6.sons->data[((NI) 1)]; } LA21_: ; { NIM_BOOL T25_; NIM_BOOL T26_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effectList; T25_ = (NIM_BOOL)0; T26_ = (NIM_BOOL)0; T26_ = !((op == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T26_)) goto LA27_; T26_ = ((*op).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA27_: ; T25_ = T26_; if (!(T25_)) goto LA28_; T25_ = ((*(*(*op).n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152)); LA28_: ; if (!T25_) goto LA29_; { NI16 T39_; if (!((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA33_; { if (!((*a)._kind_4.sym == (*tracked).owner)) goto LA37_; (*tracked).isRecursive = NIM_TRUE; } LA37_: ; T39_ = (NI16)0; T39_ = getLockLevel__sempass50_2591((*a)._kind_4.sym); mergeLockLevels__sempass50_2606(tracked, n, T39_); { if (!(((*(*a)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 13))&63U)))!=0)) goto LA42_; markSideEffect__sempass50_2877(tracked, a, (*n).info); } LA42_: ; } goto LA31_; LA33_: ; { mergeLockLevels__sempass50_2606(tracked, n, (*op).lockLevel); } LA31_: ; effectList = (*(*op).n)._kind_6.sons->data[((NI) 0)]; { NIM_BOOL T47_; T47_ = (NIM_BOOL)0; T47_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T47_)) goto LA48_; T47_ = ((*(*a)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 14)); LA48_: ; if (!T47_) goto LA49_; propagateEffects__sempass50_2610(tracked, n, (*a)._kind_4.sym); } goto LA45_; LA49_: ; { NIM_BOOL T52_; T52_ = (NIM_BOOL)0; T52_ = isNoEffectList__sempass50_2756(effectList); if (!T52_) goto LA53_; { NIM_BOOL T57_; T57_ = (NIM_BOOL)0; T57_ = isForwardedProc__sempass50_2549(a); if (!T57_) goto LA58_; propagateEffects__sempass50_2610(tracked, n, (*a)._kind_4.sym); } goto LA55_; LA58_: ; { NIM_BOOL T61_; T61_ = (NIM_BOOL)0; T61_ = isIndirectCall__sempass50_2513(tracked, a); if (!T61_) goto LA62_; assumeTheWorst__sempass50_2727(tracked, n, op); { NIM_BOOL T66_; NIM_BOOL T68_; T66_ = (NIM_BOOL)0; T66_ = ((130 & (*op).flags) == 0); if (!(T66_)) goto LA67_; T68_ = (NIM_BOOL)0; T68_ = importedFromC__sempass50_2580(a); T66_ = !(T68_); LA67_: ; if (!T66_) goto LA69_; { NIM_BOOL T73_; T73_ = (NIM_BOOL)0; T73_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T73_)) goto LA74_; T73_ = ((*a)._kind_4.sym == (*tracked).owner); LA74_: ; if (!!(T73_)) goto LA75_; { NIM_BOOL T79_; T79_ = (NIM_BOOL)0; T79_ = hasWarn__options_557((*tracked).config, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 47)); if (!T79_) goto LA80_; warnAboutGcUnsafe__sempass50_358(n, (*tracked).config); } LA80_: ; markGcUnsafe__sempass50_368(tracked, a); } LA75_: ; } LA69_: ; { NIM_BOOL T84_; NIM_BOOL T86_; T84_ = (NIM_BOOL)0; T84_ = !((((*op).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0)); if (!(T84_)) goto LA85_; T86_ = (NIM_BOOL)0; T86_ = importedFromC__sempass50_2580(a); T84_ = !(T86_); LA85_: ; if (!T84_) goto LA87_; { NIM_BOOL T91_; T91_ = (NIM_BOOL)0; T91_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T91_)) goto LA92_; T91_ = ((*a)._kind_4.sym == (*tracked).owner); LA92_: ; if (!!(T91_)) goto LA93_; markSideEffect__sempass50_2877(tracked, a, (*n).info); } LA93_: ; } LA87_: ; } goto LA55_; LA62_: ; { { NIM_BOOL T98_; NIM_BOOL T99_; T98_ = (NIM_BOOL)0; T99_ = (NIM_BOOL)0; T99_ = (((*(*tracked).c).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 16))&31U)))!=0); if (!(T99_)) goto LA100_; T99_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); LA100_: ; T98_ = T99_; if (!(T98_)) goto LA101_; T98_ = ((520192 &((NU32)1<<((NU)((*(*a)._kind_4.sym).kind)&31U)))!=0); LA101_: ; if (!T98_) goto LA102_; propagateEffects__sempass50_2610(tracked, n, (*a)._kind_4.sym); } LA102_: ; } LA55_: ; } goto LA45_; LA53_: ; { mergeRaises__sempass50_2273(tracked, (*effectList)._kind_6.sons->data[((NI) 0)], n); mergeTags__sempass50_2281(tracked, (*effectList)._kind_6.sons->data[((NI) 3)], n); { NIM_BOOL T107_; NIM_BOOL T109_; T107_ = (NIM_BOOL)0; T107_ = ((130 & (*op).flags) == 0); if (!(T107_)) goto LA108_; T109_ = (NIM_BOOL)0; T109_ = importedFromC__sempass50_2580(a); T107_ = !(T109_); LA108_: ; if (!T107_) goto LA110_; { NIM_BOOL T114_; T114_ = (NIM_BOOL)0; T114_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T114_)) goto LA115_; T114_ = ((*a)._kind_4.sym == (*tracked).owner); LA115_: ; if (!!(T114_)) goto LA116_; { NIM_BOOL T120_; T120_ = (NIM_BOOL)0; T120_ = hasWarn__options_557((*tracked).config, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 47)); if (!T120_) goto LA121_; warnAboutGcUnsafe__sempass50_358(n, (*tracked).config); } LA121_: ; markGcUnsafe__sempass50_368(tracked, a); } LA116_: ; } LA110_: ; { NIM_BOOL T125_; NIM_BOOL T127_; T125_ = (NIM_BOOL)0; T125_ = !((((*op).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0)); if (!(T125_)) goto LA126_; T127_ = (NIM_BOOL)0; T127_ = importedFromC__sempass50_2580(a); T125_ = !(T127_); LA126_: ; if (!T125_) goto LA128_; { NIM_BOOL T132_; T132_ = (NIM_BOOL)0; T132_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T132_)) goto LA133_; T132_ = ((*a)._kind_4.sym == (*tracked).owner); LA133_: ; if (!!(T132_)) goto LA134_; markSideEffect__sempass50_2877(tracked, a, (*n).info); } LA134_: ; } LA128_: ; } LA45_: ; } LA29_: ; { NIM_BOOL T138_; T138_ = (NIM_BOOL)0; T138_ = !(((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))); if (T138_) goto LA139_; T138_ = !(((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 250) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 154) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 27) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 28))); LA139_: ; if (!T138_) goto LA140_; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = len__ast_3198(n); i_2 = ((NI) 1); { while (1) { if (!(i_2 < colontmp_)) goto LA144; i = i_2; trackOperandForIndirectCall__sempass50_2790(tracked, (*n)._kind_6.sons->data[i], op, i, a); i_2 += ((NI) 1); } LA144: ; } } } LA140_: ; { NIM_BOOL T147_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg; T147_ = (NIM_BOOL)0; T147_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T147_)) goto LA148_; T147_ = ((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 32) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 33) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 34)); LA148_: ; if (!T147_) goto LA149_; arg = (*n)._kind_6.sons->data[((NI) 1)]; initVarViaNew__sempass50_341(tracked, arg); { NIM_BOOL T153_; NI T154_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T156_; T153_ = (NIM_BOOL)0; T154_ = (NI)0; T154_ = len__ast_4002((*arg).typ); T153_ = !((T154_ == ((NI) 0))); if (!(T153_)) goto LA155_; T156_ = NIM_NIL; T156_ = lastSon__ast_3743((*arg).typ); T153_ = !(((262144 & (*T156_).flags) == 0)); LA155_: ; if (!T153_) goto LA157_; { NIM_BOOL T161_; NIM_BOOL T162_; T161_ = (NIM_BOOL)0; T162_ = (NIM_BOOL)0; T162_ = ((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 34)); if (!(T162_)) goto LA163_; T162_ = ((*(*n)._kind_6.sons->data[((NI) 2)]).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*(*n)._kind_6.sons->data[((NI) 2)]).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15)); LA163_: ; T161_ = T162_; if (!(T161_)) goto LA164_; T161_ = ((*(*n)._kind_6.sons->data[((NI) 2)])._kind_1.intVal == IL64(0)); LA164_: ; if (!T161_) goto LA165_; } goto LA159_; LA165_: ; { NimStringDesc* T168_; T168_ = NIM_NIL; T168_ = dollar___renderer_2106(arg); liMessage__msgs_1118((*tracked).config, (*arg).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 41), T168_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_41, NIM_FALSE); } LA159_: ; } LA157_: ; { NI T171_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T174_; T171_ = (NI)0; T171_ = len__ast_4002((*(*n)._kind_6.sons->data[((NI) 1)]).typ); if (!(((NI) 0) < T171_)) goto LA172_; T174_ = NIM_NIL; T174_ = lastSon__ast_3743((*(*n)._kind_6.sons->data[((NI) 1)]).typ); createTypeBoundOps__sempass50_142(tracked, T174_, (*n).info); createTypeBoundOps__sempass50_142(tracked, (*(*n)._kind_6.sons->data[((NI) 1)]).typ, (*n).info); } LA172_: ; } goto LA145_; LA149_: ; { NIM_BOOL T176_; NIM_BOOL T177_; T176_ = (NIM_BOOL)0; T177_ = (NIM_BOOL)0; T177_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T177_)) goto LA178_; T177_ = ((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 5) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 6)); LA178_: ; T176_ = T177_; if (!(T176_)) goto LA179_; T176_ = (((*tracked).currOptions &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 9))&31U)))!=0); LA179_: ; if (!T176_) goto LA180_; checkBounds__sempass50_3346(tracked, (*n)._kind_6.sons->data[((NI) 1)], (*n)._kind_6.sons->data[((NI) 2)]); } goto LA145_; LA180_: ; LA145_: ; { NIM_BOOL T184_; T184_ = (NIM_BOOL)0; T184_ = !(((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))); if (T184_) goto LA185_; T184_ = !(((*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 267) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 250) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 27) || (*(*a)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 28))); LA185_: ; if (!T184_) goto LA186_; { NI i_3; NI colontmp__2; NI i_4; i_3 = (NI)0; colontmp__2 = (NI)0; colontmp__2 = safeLen__ast_3191(n); i_4 = ((NI) 0); { while (1) { if (!(i_4 < colontmp__2)) goto LA190; i_3 = i_4; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[i_3]); i_4 += ((NI) 1); } LA190: ; } } } LA186_: ; } LA15_: ; { NIM_BOOL T193_; NIM_BOOL T194_; NIM_BOOL T195_; NI opKind; NimStringDesc* T201_; T193_ = (NIM_BOOL)0; T194_ = (NIM_BOOL)0; T195_ = (NIM_BOOL)0; T195_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T195_)) goto LA196_; T195_ = (((NI) 0) < ((*(*(*a)._kind_4.sym).name).s ? (*(*(*a)._kind_4.sym).name).s->Sup.len : 0)); LA196_: ; T194_ = T195_; if (!(T194_)) goto LA197_; T194_ = ((NU8)((*(*(*a)._kind_4.sym).name).s->data[((NI) 0)]) == (NU8)(61)); LA197_: ; T193_ = T194_; if (!(T193_)) goto LA198_; T193_ = !(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17))); LA198_: ; if (!T193_) goto LA199_; T201_ = NIM_NIL; T201_ = nsuNormalize((*(*(*a)._kind_4.sym).name).s); opKind = find__sempass50_3619(AttachedOpToStr__ast_3848, T201_); { if (!eqStrings((*(*(*a)._kind_4.sym).name).s, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_48))) goto LA204_; opKind = ((NI) 1); } LA204_: ; { tyObject_TType__facALICuu8zUj0hjvbTLFg* t; if (!!((opKind == ((NI) -1)))) goto LA208_; t = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 1)]).typ, TM__wkTG4eaV3t1uo3x09apjcwA_49); { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T212_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op_2; T212_ = NIM_NIL; T212_ = getAttachedOp__modulegraphs_4011((*tracked).graph, t, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) (opKind))); if (!!(((*a)._kind_4.sym == T212_))) goto LA213_; createTypeBoundOps__sempass50_142(tracked, t, (*n).info); op_2 = getAttachedOp__modulegraphs_4011((*tracked).graph, t, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) (opKind))); { if (!!((op_2 == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA217_; asgnRef((void**) (&(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym), op_2); } LA217_: ; } LA213_: ; } LA208_: ; } LA199_: ; { NIM_BOOL T221_; T221_ = (NIM_BOOL)0; T221_ = !((op == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T221_)) goto LA222_; T221_ = ((*op).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); LA222_: ; if (!T221_) goto LA223_; { NI i_5; NI colontmp__3; NI T226_; NI T227_; NI i_6; i_5 = (NI)0; colontmp__3 = (NI)0; T226_ = (NI)0; T226_ = safeLen__ast_3191(n); T227_ = (NI)0; T227_ = len__ast_4002(op); colontmp__3 = ((T226_ <= T227_) ? T226_ : T227_); i_6 = ((NI) 1); { while (1) { if (!(i_6 < colontmp__3)) goto LA229; i_5 = i_6; switch ((*(*op).sons->data[i_5]).kind) { case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46): { createTypeBoundOps__sempass50_142(tracked, (*(*op).sons->data[i_5]).sons->data[((NI) 0)], (*n).info); checkForSink__sempass50_24((*tracked).config, (*(*tracked).c).Sup.idgen, (*tracked).owner, (*n)._kind_6.sons->data[i_5]); } break; case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23): { (*tracked).hasDangerousAssign = NIM_TRUE; } break; default: { } break; } i_6 += ((NI) 1); } LA229: ; } } } LA223_: ; } N_LIB_PRIVATE N_NIMCALL(void, guardDotAccess__sempass50_237)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* g; { ri = (*n)._kind_6.sons->data[((NI) 1)]; { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = !(((*ri).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))); if (T3_) goto LA4_; T3_ = !(((*(*ri)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19))); LA4_: ; if (!T3_) goto LA5_; goto BeforeRet_; } LA5_: ; g = (*(*ri)._kind_4.sym)._kind_2.guard; { NIM_BOOL T9_; T9_ = (NIM_BOOL)0; T9_ = (g == 0); if (T9_) goto LA10_; T9_ = (*a).isTopLevel; LA10_: ; if (!T9_) goto LA11_; goto BeforeRet_; } LA11_: ; { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field; tyObject_TType__facALICuu8zUj0hjvbTLFg* ty; if (!((*g).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 0))) goto LA15_; field = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL); ty = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 0)]).typ, TM__wkTG4eaV3t1uo3x09apjcwA_53); { NIM_BOOL T19_; T19_ = (NIM_BOOL)0; T19_ = ((*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18)); if (!(T19_)) goto LA20_; T19_ = !(((*ty).n == 0)); LA20_: ; if (!T19_) goto LA21_; field = lookupInRecord__astalgo_84((*ty).n, (*g).name); } goto LA17_; LA21_: ; { { while (1) { NIM_BOOL T26_; T26_ = (NIM_BOOL)0; T26_ = !((ty == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T26_)) goto LA27_; T26_ = ((*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17)); LA27_: ; if (!T26_) goto LA25; field = lookupInRecord__astalgo_84((*ty).n, (*g).name); { if (!!((field == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA30_; goto LA24; } LA30_: ; ty = (*ty).sons->data[((NI) 0)]; { if (!(ty == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA34_; goto LA24; } LA34_: ; ty = skipTypes__ast_3735(ty, TM__wkTG4eaV3t1uo3x09apjcwA_9); } LA25: ; } LA24: ; } LA17_: ; { NimStringDesc* T40_; if (!(field == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA38_; T40_ = NIM_NIL; T40_ = rawNewString(((*(*g).name).s ? (*(*g).name).s->Sup.len : 0) + 21); appendString(T40_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_54)); appendString(T40_, (*(*g).name).s); liMessage__msgs_1118((*a).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T40_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_55, NIM_FALSE); goto BeforeRet_; } LA38_: ; g = field; } LA15_: ; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dot; NimStringDesc* T54_; NimStringDesc* T55_; if (!((*g).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19))) goto LA43_; dot = newNodeI__ast_3360(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45), (*n).info, ((NI) 2)); asgnRef((void**) (&(*dot)._kind_6.sons->data[((NI) 0)]), (*n)._kind_6.sons->data[((NI) 0)]); asgnRef((void**) (&(*dot)._kind_6.sons->data[((NI) 1)]), newSymNode__ast_3716(g)); asgnRef((void**) (&(*dot).typ), (*g).typ); { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** L; NI i; NI L_2; NI T46_; L = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0; i = ((NI) 0); T46_ = ((*a).locked ? (*a).locked->Sup.len : 0); L_2 = T46_; { while (1) { if (!(i < L_2)) goto LA48; L = &(*a).locked->data[i]; { NIM_BOOL T51_; T51_ = (NIM_BOOL)0; T51_ = sameTree__guards_680(dot, (*L)); if (!T51_) goto LA52_; goto BeforeRet_; } LA52_: ; i += ((NI) 1); } LA48: ; } } T54_ = NIM_NIL; T55_ = NIM_NIL; T55_ = renderTree__renderer_46(n, 0); T54_ = rawNewString((T55_ ? T55_->Sup.len : 0) + 18); appendString(T54_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_21)); appendString(T54_, T55_); liMessage__msgs_1118((*a).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T54_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_56, NIM_FALSE); } goto LA41_; LA43_: ; { guardGlobal__sempass50_221(a, n, g); } LA41_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, addToIntersection__sempass50_2160)(tySequence__8Np6tlClE5az1CyqZdN19bQ** inter, NI s) { tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ T9_; NI T10_; { { NI j; NI colontmp_; NI T2_; NI i; j = (NI)0; colontmp_ = (NI)0; T2_ = ((*inter) ? (*inter)->Sup.len : 0); colontmp_ = T2_; i = ((NI) 0); { while (1) { if (!(i < colontmp_)) goto LA4; j = i; { if (!(s == (*inter)->data[j].Field0)) goto LA7_; (*inter)->data[j].Field1 += ((NI) 1); goto BeforeRet_; } LA7_: ; i += ((NI) 1); } LA4: ; } } T9_.Field0 = s; T9_.Field1 = ((NI) 1); unsureAsgnRef((void**) (&(*inter)), (tySequence__8Np6tlClE5az1CyqZdN19bQ*) incrSeqV3((TGenericSeq*)((*inter)), (&NTIseqLtupleLa58int_b58intTT__8Np6tlClE5az1CyqZdN19bQ_))); T10_ = (*inter)->Sup.len++; (*inter)->data[T10_] = T9_; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, catchesAll__sempass50_2326)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked) { { NI T3_; T3_ = (NI)0; T3_ = len__ast_3198((*tracked).exc); if (!(((NI) 0) < T3_)) goto LA4_; asgnRef((void**) (&(*(*tracked).exc)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*(*tracked).exc)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((*tracked).bottom)))); } LA4_: ; } N_LIB_PRIVATE N_NIMCALL(void, catches__sempass50_2293)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TType__facALICuu8zUj0hjvbTLFg* e) { tyObject_TType__facALICuu8zUj0hjvbTLFg* e_2; NI L; NI i; e_2 = skipTypes__ast_3735(e, TM__wkTG4eaV3t1uo3x09apjcwA_9); L = len__ast_3198((*tracked).exc); i = (*tracked).bottom; { while (1) { if (!(i < L)) goto LA2; { tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_; NI T6_; T5_ = NIM_NIL; T5_ = excType__sempass50_2211((*tracked).graph, (*(*tracked).exc)._kind_6.sons->data[i]); T6_ = (NI)0; T6_ = safeInheritanceDiff__types_3392(T5_, e_2); if (!(T6_ <= ((NI) 0))) goto LA7_; asgnRef((void**) (&(*(*tracked).exc)._kind_6.sons->data[i]), (*(*tracked).exc)._kind_6.sons->data[(NI)(L - ((NI) 1))]); L -= ((NI) 1); } goto LA3_; LA7_: ; { i += ((NI) 1); } LA3_: ; } LA2: ; } { NI T12_; T12_ = (NI)0; T12_ = len__ast_3198((*tracked).exc); if (!(((NI) 0) < T12_)) goto LA13_; asgnRef((void**) (&(*(*tracked).exc)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*(*tracked).exc)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (L)))); } goto LA10_; LA13_: ; { } LA10_: ; } N_LIB_PRIVATE N_NIMCALL(void, trackTryStmt__sempass50_2341)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NI oldBottom; NI oldState; NI T1_; tySequence__8Np6tlClE5az1CyqZdN19bQ* inter; NI branches; NIM_BOOL hasFinally; oldBottom = (*tracked).bottom; (*tracked).bottom = len__ast_3198((*tracked).exc); T1_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); oldState = T1_; inter = NIM_NIL; (*tracked).inTryStmt += ((NI) 1); track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 0)]); (*tracked).inTryStmt -= ((NI) 1); { NI i; NI colontmp_; NI T3_; NI i_2; i = (NI)0; colontmp_ = (NI)0; T3_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); colontmp_ = T3_; i_2 = oldState; { while (1) { if (!(i_2 < colontmp_)) goto LA5; i = i_2; addToIntersection__sempass50_2160((&inter), (*tracked).init->data[i]); i_2 += ((NI) 1); } LA5: ; } } 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_3198(n); i_4 = ((NI) 1); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b; if (!(i_4 < colontmp__2)) goto LA8; i_3 = i_4; b = (*n)._kind_6.sons->data[i_3]; { if (!((*b).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87))) goto LA11_; branches += ((NI) 1); { NI T15_; T15_ = (NI)0; T15_ = len__ast_3198(b); if (!(T15_ == ((NI) 1))) goto LA16_; catchesAll__sempass50_2326(tracked); } goto LA13_; LA16_: ; { { NI j; NI colontmp__3; NI T20_; NI i_5; j = (NI)0; colontmp__3 = (NI)0; T20_ = (NI)0; T20_ = len__ast_3198(b); colontmp__3 = (NI)(T20_ - ((NI) 1)); i_5 = ((NI) 0); { while (1) { if (!(i_5 < colontmp__3)) goto LA22; j = i_5; { NIM_BOOL T25_; T25_ = (NIM_BOOL)0; T25_ = isInfixAs__ast_4935((*b)._kind_6.sons->data[j]); if (!T25_) goto LA26_; catches__sempass50_2293(tracked, (*(*(*b)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 1)]).typ); createTypeBoundOps__sempass50_142(tracked, (*(*(*b)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 2)]).typ, (*(*(*b)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 2)]).info); } goto LA23_; LA26_: ; { catches__sempass50_2293(tracked, (*(*b)._kind_6.sons->data[j]).typ); } LA23_: ; i_5 += ((NI) 1); } LA22: ; } } } LA13_: ; } goto LA9_; LA11_: ; { } LA9_: ; i_4 += ((NI) 1); } LA8: ; } } { NI i_6; NI colontmp__4; NI i_7; i_6 = (NI)0; colontmp__4 = (NI)0; colontmp__4 = len__ast_3198(n); i_7 = ((NI) 1); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b_2; if (!(i_7 < colontmp__4)) goto LA32; i_6 = i_7; b_2 = (*n)._kind_6.sons->data[i_6]; { NI T37_; if (!((*b_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87))) goto LA35_; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); T37_ = (NI)0; T37_ = len__ast_3198(b_2); track__sempass50_2338(tracked, (*b_2)._kind_6.sons->data[(NI)(T37_ - ((NI) 1))]); { NI i_8; NI colontmp__5; NI T39_; NI i_9; i_8 = (NI)0; colontmp__5 = (NI)0; T39_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); colontmp__5 = T39_; i_9 = oldState; { while (1) { if (!(i_9 < colontmp__5)) goto LA41; i_8 = i_9; addToIntersection__sempass50_2160((&inter), (*tracked).init->data[i_8]); i_9 += ((NI) 1); } LA41: ; } } } goto LA33_; LA35_: ; { NI T43_; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); T43_ = (NI)0; T43_ = len__ast_3198(b_2); track__sempass50_2338(tracked, (*b_2)._kind_6.sons->data[(NI)(T43_ - ((NI) 1))]); hasFinally = NIM_TRUE; } LA33_: ; i_7 += ((NI) 1); } LA32: ; } } (*tracked).bottom = oldBottom; (*tracked).inExceptOrFinallyStmt -= ((NI) 1); { if (!!(hasFinally)) goto LA46_; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); } LA46_: ; { NI* id; NI* count; NI i_10; NI L; NI T49_; id = (NI*)0; count = (NI*)0; i_10 = ((NI) 0); T49_ = (inter ? inter->Sup.len : 0); L = T49_; { while (1) { if (!(i_10 < L)) goto LA51; id = (&inter->data[i_10].Field0); count = (&inter->data[i_10].Field1); { NI T56_; if (!((*count) == branches)) goto LA54_; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*tracked).init), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_))); T56_ = (*tracked).init->Sup.len++; (*tracked).init->data[T56_] = (*id); } LA54_: ; i_10 += ((NI) 1); } LA51: ; } } } N_LIB_PRIVATE N_NIMCALL(void, listEffects__sempass50_2289)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a) { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e; e = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191((*a).exc); i_2 = ((NI) 0); { while (1) { NimStringDesc* T5_; if (!(i_2 < colontmp_)) goto LA4; i = i_2; e = (*(*a).exc)._kind_6.sons->data[i]; T5_ = NIM_NIL; T5_ = typeToString__types_50((*e).typ, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0)); liMessage__msgs_1118((*a).config, (*e).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 98), T5_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_57, NIM_FALSE); i_2 += ((NI) 1); } LA4: ; } } } { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* 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_3191((*a).tags); i_4 = ((NI) 0); { while (1) { NimStringDesc* T10_; if (!(i_4 < colontmp__2)) goto LA9; i_3 = i_4; e_2 = (*(*a).tags)._kind_6.sons->data[i_3]; T10_ = NIM_NIL; T10_ = typeToString__types_50((*e_2).typ, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0)); liMessage__msgs_1118((*a).config, (*e_2).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 98), T10_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_58, NIM_FALSE); i_4 += ((NI) 1); } LA9: ; } } } } N_LIB_PRIVATE N_NIMCALL(void, trackPragmaStmt__sempass50_2560)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = len__ast_3198(n); i_2 = ((NI) 0); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it; tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw pragma; if (!(i_2 < colontmp_)) goto LA3; i = i_2; it = (*n)._kind_6.sons->data[i]; pragma = whichPragma__trees_244(it); { if (!(pragma == ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 178))) goto LA6_; listEffects__sempass50_2289(tracked); } LA6_: ; i_2 += ((NI) 1); } LA3: ; } } } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, breaksBlock__sempass50_3013)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NIM_BOOL result; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it; NIM_BOOL T6_; NIM_BOOL T8_; NIM_BOOL T9_; result = (NIM_BOOL)0; it = n; { while (1) { NIM_BOOL T3_; NI T5_; T3_ = (NIM_BOOL)0; T3_ = ((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126)); if (!(T3_)) goto LA4_; T5_ = (NI)0; T5_ = len__ast_3198(it); T3_ = (((NI) 0) < T5_); LA4_: ; if (!T3_) goto LA2; it = lastSon__ast_4832(it); } LA2: ; } T6_ = (NIM_BOOL)0; T6_ = ((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108)); if (T6_) goto LA7_; T8_ = (NIM_BOOL)0; T9_ = (NIM_BOOL)0; T9_ = ((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32)); if (!(T9_)) goto LA10_; T9_ = ((*(*it)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); LA10_: ; T8_ = T9_; if (!(T8_)) goto LA11_; T8_ = (((*(*(*it)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 16))&63U)))!=0); LA11_: ; T6_ = T8_; LA7_: ; result = T6_; return result; } N_LIB_PRIVATE N_NIMCALL(void, trackCase__sempass50_3048)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NI oldState; NI T1_; NI oldFacts; NI T2_; NIM_BOOL stringCase; NIM_BOOL T3_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_; NIM_BOOL interesting; NIM_BOOL T6_; NIM_BOOL T7_; tySequence__8Np6tlClE5az1CyqZdN19bQ* inter; NI toCover; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 0)]); T1_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); oldState = T1_; T2_ = ((*tracked).guards.s ? (*tracked).guards.s->Sup.len : 0); oldFacts = T2_; T3_ = (NIM_BOOL)0; T3_ = !(((*(*n)._kind_6.sons->data[((NI) 0)]).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T3_)) goto LA4_; T5_ = NIM_NIL; T5_ = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 0)]).typ, TM__wkTG4eaV3t1uo3x09apjcwA_60); T3_ = ((*T5_).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*T5_).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*T5_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28)); LA4_: ; stringCase = T3_; T6_ = (NIM_BOOL)0; T7_ = (NIM_BOOL)0; T7_ = !(stringCase); if (!(T7_)) goto LA8_; T7_ = interestingCaseExpr__guards_114((*n)._kind_6.sons->data[((NI) 0)]); LA8_: ; T6_ = T7_; if (!(T6_)) goto LA9_; T6_ = hasWarn__options_557((*tracked).config, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 42)); LA9_: ; interesting = T6_; inter = NIM_NIL; toCover = ((NI) 0); { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = len__ast_3198(n); i_2 = ((NI) 1); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch; if (!(i_2 < colontmp_)) goto LA12; i = i_2; branch = (*n)._kind_6.sons->data[i]; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); { if (!interesting) goto LA15_; unsureAsgnRef((void**) (&(*tracked).guards.s), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*tracked).guards.s)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (oldFacts)))); addCaseBranchFacts__guards_1755((&(*tracked).guards), n, i); } LA15_: ; { NI i_3; NI colontmp__2; NI i_4; i_3 = (NI)0; colontmp__2 = (NI)0; colontmp__2 = len__ast_3198(branch); i_4 = ((NI) 0); { while (1) { if (!(i_4 < colontmp__2)) goto LA19; i_3 = i_4; track__sempass50_2338(tracked, (*branch)._kind_6.sons->data[i_3]); i_4 += ((NI) 1); } LA19: ; } } { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T22_; NIM_BOOL T23_; T22_ = NIM_NIL; T22_ = lastSon__ast_4832(branch); T23_ = (NIM_BOOL)0; T23_ = breaksBlock__sempass50_3013(T22_); if (!!(T23_)) goto LA24_; toCover += ((NI) 1); } LA24_: ; { NI i_5; NI colontmp__3; NI T27_; NI i_6; i_5 = (NI)0; colontmp__3 = (NI)0; T27_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); colontmp__3 = T27_; i_6 = oldState; { while (1) { if (!(i_6 < colontmp__3)) goto LA29; i_5 = i_6; addToIntersection__sempass50_2160((&inter), (*tracked).init->data[i_5]); i_6 += ((NI) 1); } LA29: ; } } i_2 += ((NI) 1); } LA12: ; } } unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); { NIM_BOOL T32_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T34_; T32_ = (NIM_BOOL)0; T32_ = !(stringCase); if (T32_) goto LA33_; T34_ = NIM_NIL; T34_ = lastSon__ast_4832(n); T32_ = ((*T34_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88)); LA33_: ; if (!T32_) goto LA35_; { NI* id; NI* count; NI i_7; NI L; NI T38_; id = (NI*)0; count = (NI*)0; i_7 = ((NI) 0); T38_ = (inter ? inter->Sup.len : 0); L = T38_; { while (1) { if (!(i_7 < L)) goto LA40; id = (&inter->data[i_7].Field0); count = (&inter->data[i_7].Field1); { NI T45_; if (!(toCover <= (*count))) goto LA43_; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*tracked).init), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_))); T45_ = (*tracked).init->Sup.len++; (*tracked).init->data[T45_] = (*id); } LA43_: ; i_7 += ((NI) 1); } LA40: ; } } } LA35_: ; unsureAsgnRef((void**) (&(*tracked).guards.s), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*tracked).guards.s)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (oldFacts)))); } N_LIB_PRIVATE N_NIMCALL(void, trackIf__sempass50_3149)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NI oldFacts; NI T1_; NI oldState; NI T2_; tySequence__8Np6tlClE5az1CyqZdN19bQ* inter; NI toCover; track__sempass50_2338(tracked, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)]); T1_ = ((*tracked).guards.s ? (*tracked).guards.s->Sup.len : 0); oldFacts = T1_; addFact__guards_609((&(*tracked).guards), (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)]); T2_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); oldState = T2_; inter = NIM_NIL; toCover = ((NI) 0); track__sempass50_2338(tracked, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)]); { NIM_BOOL T5_; T5_ = (NIM_BOOL)0; T5_ = breaksBlock__sempass50_3013((*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)]); if (!!(T5_)) goto LA6_; toCover += ((NI) 1); } LA6_: ; { NI i; NI colontmp_; NI T9_; NI i_2; i = (NI)0; colontmp_ = (NI)0; T9_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); colontmp_ = T9_; i_2 = oldState; { while (1) { if (!(i_2 < colontmp_)) goto LA11; i = i_2; addToIntersection__sempass50_2160((&inter), (*tracked).init->data[i]); i_2 += ((NI) 1); } LA11: ; } } { NI i_3; NI colontmp__2; NI i_4; i_3 = (NI)0; colontmp__2 = (NI)0; colontmp__2 = len__ast_3198(n); i_4 = ((NI) 1); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch; if (!(i_4 < colontmp__2)) goto LA14; i_3 = i_4; branch = (*n)._kind_6.sons->data[i_3]; unsureAsgnRef((void**) (&(*tracked).guards.s), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*tracked).guards.s)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((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 LA17; j = res; addFactNeg__guards_632((&(*tracked).guards), (*(*n)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 0)]); res += ((NI) 1); } LA17: ; } } { NI T20_; T20_ = (NI)0; T20_ = len__ast_3198(branch); if (!(((NI) 1) < T20_)) goto LA21_; addFact__guards_609((&(*tracked).guards), (*branch)._kind_6.sons->data[((NI) 0)]); } LA21_: ; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); { NI i_5; NI colontmp__4; NI i_6; i_5 = (NI)0; colontmp__4 = (NI)0; colontmp__4 = len__ast_3198(branch); i_6 = ((NI) 0); { while (1) { if (!(i_6 < colontmp__4)) goto LA25; i_5 = i_6; track__sempass50_2338(tracked, (*branch)._kind_6.sons->data[i_5]); i_6 += ((NI) 1); } LA25: ; } } { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T28_; NIM_BOOL T29_; T28_ = NIM_NIL; T28_ = lastSon__ast_4832(branch); T29_ = (NIM_BOOL)0; T29_ = breaksBlock__sempass50_3013(T28_); if (!!(T29_)) goto LA30_; toCover += ((NI) 1); } LA30_: ; { NI i_7; NI colontmp__5; NI T33_; NI i_8; i_7 = (NI)0; colontmp__5 = (NI)0; T33_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); colontmp__5 = T33_; i_8 = oldState; { while (1) { if (!(i_8 < colontmp__5)) goto LA35; i_7 = i_8; addToIntersection__sempass50_2160((&inter), (*tracked).init->data[i_7]); i_8 += ((NI) 1); } LA35: ; } } i_4 += ((NI) 1); } LA14: ; } } unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T38_; NI T39_; T38_ = NIM_NIL; T38_ = lastSon__ast_4832(n); T39_ = (NI)0; T39_ = len__ast_3198(T38_); if (!(T39_ == ((NI) 1))) goto LA40_; { NI* id; NI* count; NI i_9; NI L; NI T43_; id = (NI*)0; count = (NI*)0; i_9 = ((NI) 0); T43_ = (inter ? inter->Sup.len : 0); L = T43_; { while (1) { if (!(i_9 < L)) goto LA45; id = (&inter->data[i_9].Field0); count = (&inter->data[i_9].Field1); { NI T50_; if (!(toCover <= (*count))) goto LA48_; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*tracked).init), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_))); T50_ = (*tracked).init->Sup.len++; (*tracked).init->data[T50_] = (*id); } LA48_: ; i_9 += ((NI) 1); } LA45: ; } } } LA40_: ; unsureAsgnRef((void**) (&(*tracked).guards.s), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*tracked).guards.s)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (oldFacts)))); } N_LIB_PRIVATE N_NIMCALL(void, trackBlock__sempass50_3265)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { { NI oldState; if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126))) goto LA3_; oldState = ((NI) -1); { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = len__ast_3198(n); 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_4570((*n)._kind_6.sons->data[i], ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110)); if (!T10_) goto LA11_; { NI T17_; if (!(oldState < ((NI) 0))) goto LA15_; T17_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); oldState = T17_; } LA15_: ; } LA11_: ; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[i]); i_2 += ((NI) 1); } LA7: ; } } { if (!(((NI) 0) < oldState)) goto LA20_; unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); } LA20_: ; } goto LA1_; LA3_: ; { track__sempass50_2338(tracked, n); } LA1_: ; } static N_INLINE(NIM_BOOL, fromSystem__astalgo_238)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op) { NIM_BOOL result; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T1_; result = (NIM_BOOL)0; T1_ = NIM_NIL; T1_ = getModule__astalgo_216(op); result = (((*T1_).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0); return result; } N_LIB_PRIVATE N_NIMCALL(void, createBlockContext__sempass50_3741)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA* Result) { NI T1_; (*Result).oldLocked = 0; (*Result).oldLockLevel = 0; (*Result).enforcedGcSafety = 0; (*Result).enforceNoSideEffects = 0; (*Result).oldExc = 0; (*Result).oldTags = 0; unsureAsgnRef((void**)&(*Result).exc, NIM_NIL); unsureAsgnRef((void**)&(*Result).tags, NIM_NIL); T1_ = ((*tracked).locked ? (*tracked).locked->Sup.len : 0); (*Result).oldLocked = T1_; (*Result).oldLockLevel = (*tracked).currLockLevel; (*Result).enforcedGcSafety = NIM_FALSE; (*Result).enforceNoSideEffects = NIM_FALSE; (*Result).oldExc = len__ast_3198((*tracked).exc); (*Result).oldTags = len__ast_3198((*tracked).tags); } N_LIB_PRIVATE N_NIMCALL(NI16, getLockLevel__sempass50_182)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) { NI16 result; tyObject_TType__facALICuu8zUj0hjvbTLFg* t_2; result = (NI16)0; t_2 = t; { NIM_BOOL T3_; NI T5_; T3_ = (NIM_BOOL)0; T3_ = ((*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11)); if (!(T3_)) goto LA4_; T5_ = (NI)0; T5_ = len__ast_4002(t_2); T3_ = (T5_ == ((NI) 3)); LA4_: ; if (!T3_) goto LA6_; t_2 = (*t_2).sons->data[((NI) 1)]; } LA6_: ; { NIM_BOOL T10_; NIM_BOOL T11_; T10_ = (NIM_BOOL)0; T11_ = (NIM_BOOL)0; T11_ = ((*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60)); if (!(T11_)) goto LA12_; T11_ = !(((*t_2).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))); LA12_: ; T10_ = T11_; if (!(T10_)) goto LA13_; T10_ = ((*(*t_2).n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*(*t_2).n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 10)); LA13_: ; if (!T10_) goto LA14_; result = ((NI16) ((*(*t_2).n)._kind_1.intVal)); } LA14_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, lockLocations__sempass50_206)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pragma) { NI16 firstLL; { { if (!!(((*pragma).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34)))) goto LA3_; liMessage__msgs_1118((*a).config, (*pragma).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_65), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_66, NIM_FALSE); goto BeforeRet_; } LA3_: ; firstLL = ((NI16) -1); { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* colontmp_; x = NIM_NIL; colontmp_ = NIM_NIL; colontmp_ = (*pragma)._kind_6.sons->data[((NI) 1)]; { NI i; NI colontmp__2; NI i_2; i = (NI)0; colontmp__2 = (NI)0; colontmp__2 = safeLen__ast_3191(colontmp_); i_2 = ((NI) 0); { while (1) { NI16 thisLL; NI T27_; if (!(i_2 < colontmp__2)) goto LA8; i = i_2; x = (*colontmp_)._kind_6.sons->data[i]; thisLL = getLockLevel__sempass50_182((*x).typ); { if (!!((thisLL == ((NI16) 0)))) goto LA11_; { NIM_BOOL T15_; NimStringDesc* T19_; NimStringDesc* T20_; T15_ = (NIM_BOOL)0; T15_ = (thisLL < ((NI16) 0)); if (T15_) goto LA16_; T15_ = (((NI16) 1000) < thisLL); LA16_: ; if (!T15_) goto LA17_; T19_ = NIM_NIL; T20_ = NIM_NIL; T20_ = dollar___ast_3858(thisLL); T19_ = rawNewString((T20_ ? T20_->Sup.len : 0) + 20); appendString(T19_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_67)); appendString(T19_, T20_); liMessage__msgs_1118((*a).config, (*x).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T19_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_68, NIM_FALSE); } goto LA13_; LA17_: ; { if (!(firstLL < ((NI16) 0))) goto LA22_; firstLL = thisLL; } goto LA13_; LA22_: ; { if (!!((firstLL == thisLL))) goto LA25_; liMessage__msgs_1118((*a).config, (*x).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_69), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_70, NIM_FALSE); } goto LA13_; LA25_: ; LA13_: ; (*a).maxLockLevel = (((*a).maxLockLevel >= firstLL) ? (*a).maxLockLevel : firstLL); } LA11_: ; unsureAsgnRef((void**) (&(*a).locked), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) incrSeqV3((TGenericSeq*)((*a).locked), (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_))); T27_ = (*a).locked->Sup.len++; asgnRef((void**) (&(*a).locked->data[T27_]), x); i_2 += ((NI) 1); } LA8: ; } } } { NIM_BOOL T30_; T30_ = (NIM_BOOL)0; T30_ = (((NI16) 0) <= firstLL); if (!(T30_)) goto LA31_; T30_ = !((firstLL == (*a).currLockLevel)); LA31_: ; if (!T30_) goto LA32_; { NIM_BOOL T36_; T36_ = (NIM_BOOL)0; T36_ = (((NI16) 0) < (*a).currLockLevel); if (!(T36_)) goto LA37_; T36_ = ((*a).currLockLevel <= firstLL); LA37_: ; if (!T36_) goto LA38_; liMessage__msgs_1118((*a).config, (*pragma).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_71), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_72, NIM_FALSE); } LA38_: ; (*a).currLockLevel = firstLL; } LA32_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, castBlock__sempass50_3790)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pragma, tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA* bc) { tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw T1_; T1_ = (tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw)0; T1_ = whichPragma__trees_244(pragma); switch (T1_) { case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 110): { (*bc).enforcedGcSafety = NIM_TRUE; } break; case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 109): { (*bc).enforceNoSideEffects = NIM_TRUE; } break; case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 179): { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n; n = (*pragma)._kind_6.sons->data[((NI) 1)]; { if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41))) goto LA7_; unsureAsgnRef((void**) (&(*bc).tags), n); } goto LA5_; LA7_: ; { unsureAsgnRef((void**) (&(*bc).tags), newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*pragma).info)); add__ast_4797((*bc).tags, n); } LA5_: ; } break; case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 174): { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2; n_2 = (*pragma)._kind_6.sons->data[((NI) 1)]; { if (!((*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39) || (*n_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41))) goto LA13_; unsureAsgnRef((void**) (&(*bc).exc), n_2); } goto LA11_; LA13_: ; { unsureAsgnRef((void**) (&(*bc).exc), newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*pragma).info)); add__ast_4797((*bc).exc, n_2); } LA11_: ; } break; case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 86): { } break; default: { NimStringDesc* T18_; NimStringDesc* T19_; T18_ = NIM_NIL; T19_ = NIM_NIL; T19_ = dollar___renderer_2106(pragma); T18_ = rawNewString((T19_ ? T19_->Sup.len : 0) + 22); appendString(T18_, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_73)); appendString(T18_, T19_); liMessage__msgs_1118((*tracked).config, (*pragma).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T18_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_74, NIM_FALSE); } break; } } N_LIB_PRIVATE N_NIMCALL(void, applyBlockContext__sempass50_3762)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA* 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, unapplyBlockContext__sempass50_3765)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA* bc) { { if (!(*bc).enforcedGcSafety) goto LA3_; (*tracked).inEnforcedGcSafe = NIM_FALSE; } LA3_: ; { if (!(*bc).enforceNoSideEffects) goto LA7_; (*tracked).inEnforcedNoSideEffects = NIM_FALSE; } LA7_: ; unsureAsgnRef((void**) (&(*tracked).locked), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*tracked).locked)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((*bc).oldLocked)))); (*tracked).currLockLevel = (*bc).oldLockLevel; { if (!!(((*bc).exc == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA11_; asgnRef((void**) (&(*(*tracked).exc)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*(*tracked).exc)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((*bc).oldExc)))); { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e; e = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191((*bc).exc); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA16; i = i_2; e = (*(*bc).exc)._kind_6.sons->data[i]; addRaiseEffect__sempass50_2237(tracked, e, e); i_2 += ((NI) 1); } LA16: ; } } } } LA11_: ; { if (!!(((*bc).tags == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA19_; asgnRef((void**) (&(*(*tracked).tags)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*(*tracked).tags)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) ((*bc).oldTags)))); { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* 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_3191((*bc).tags); i_4 = ((NI) 0); { while (1) { if (!(i_4 < colontmp__2)) goto LA24; i_3 = i_4; t = (*(*bc).tags)._kind_6.sons->data[i_3]; addTag__sempass50_2259(tracked, t, t); i_4 += ((NI) 1); } LA24: ; } } } } LA19_: ; } static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getBody__modulegraphs_11241)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result; result = NIM_NIL; result = (*(*s).ast)._kind_6.sons->data[((NI) 6)]; { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = (result == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); if (!(T3_)) goto LA4_; T3_ = ((28 &((NU8)1<<((NU)((*(*g).config).symbolFiles)&7U)))!=0); LA4_: ; if (!T3_) goto LA5_; result = loadProcBody__icZic_8390((*g).config, (*g).cache, (&(*g).packed_0), s); asgnRef((void**) (&(*(*s).ast)._kind_6.sons->data[((NI) 6)]), result); } LA5_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, trackInnerProc__sempass50_3814)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { switch ((*n).kind) { case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3): { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s; s = (*n)._kind_4.sym; { NIM_BOOL T4_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym355_; T4_ = (NIM_BOOL)0; T4_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3)); if (!(T4_)) goto LA5_; T4_ = ((*s).owner == (*tracked).owner); LA5_: ; if (!T4_) goto LA6_; xX60gensym355_ = s; incl__pureZcollectionsZintsets_55((&(*tracked).escapingParams), (NI)((NI)((NU64)(((NI) ((*xX60gensym355_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym355_).Sup.itemId.item)))); } LA6_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23): { } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 80): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52): { { NIM_BOOL T12_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T16_; T12_ = (NIM_BOOL)0; T12_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T12_)) goto LA13_; T12_ = !(((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).ast == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))); LA13_: ; if (!T12_) goto LA14_; T16_ = NIM_NIL; T16_ = getBody__modulegraphs_11241((*tracked).graph, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym); trackInnerProc__sempass50_3814(tracked, T16_); } LA14_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 82): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 161): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 102): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 121): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 116): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 118): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 90): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 158): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 132): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122): { } break; default: { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ch; ch = NIM_NIL; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191(n); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA22; i = i_2; ch = (*n)._kind_6.sons->data[i]; trackInnerProc__sempass50_3814(tracked, ch); i_2 += ((NI) 1); } LA22: ; } } } } break; } } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, allowCStringConv__sempass50_3856)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { NIM_BOOL result; result = (NIM_BOOL)0; switch ((*n).kind) { case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22): { result = NIM_TRUE; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3): { result = ((1032 &((NU32)1<<((NU)((*(*n)._kind_4.sym).kind)&31U)))!=0); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63): { result = isCharArrayPtr__types_4087((*n).typ, NIM_TRUE); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32): { NIM_BOOL T5_; T5_ = (NIM_BOOL)0; T5_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T5_)) goto LA6_; T5_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 16)); LA6_: ; result = isCharArrayPtr__types_4087((*n).typ, T5_); } break; default: { result = isCharArrayPtr__types_4087((*n).typ, NIM_FALSE); } break; } return result; } N_LIB_PRIVATE N_NIMCALL(void, checkRange__sempass50_3350)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) { tyObject_TType__facALICuu8zUj0hjvbTLFg* t; t = skipTypes__ast_3735(typ, TM__wkTG4eaV3t1uo3x09apjcwA_81); { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lowBound; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* highBound; if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20))) goto LA3_; lowBound = copyTree__ast_4431((*(*t).n)._kind_6.sons->data[((NI) 0)]); (*lowBound).info = (*value).info; highBound = copyTree__ast_4431((*(*t).n)._kind_6.sons->data[((NI) 1)]); (*highBound).info = (*value).info; checkLe__sempass50_3342(c, lowBound, value); checkLe__sempass50_3342(c, value, highBound); } LA3_: ; } N_LIB_PRIVATE N_NIMCALL(void, track__sempass50_2338)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* tracked, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { switch ((*n).kind) { case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3): { useVar__sempass50_2113(tracked, n); { NIM_BOOL T4_; T4_ = (NIM_BOOL)0; T4_ = !(((*(*n)._kind_4.sym).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T4_)) goto LA5_; T4_ = (((*(*(*n)._kind_4.sym).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 31))&63U)))!=0); LA5_: ; if (!T4_) goto LA6_; (*(*tracked).owner).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 42)) & 63); { NIM_BOOL T10_; T10_ = (NIM_BOOL)0; T10_ = !(!(((IL64(2147483664) & (*(*n).typ).flags) == 0))); if (!(T10_)) goto LA11_; T10_ = sameType__types_1824((*n).typ, (*(*n)._kind_4.sym).typ, 0); LA11_: ; if (!T10_) goto LA12_; asgnRef((void**) (&(*n).typ), (*(*n)._kind_4.sym).typ); } LA12_: ; } LA6_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63): { { NIM_BOOL T17_; T17_ = (NIM_BOOL)0; T17_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T17_)) goto LA18_; T17_ = isLocalVar__sempass50_162(tracked, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym); LA18_: ; if (!T17_) goto LA19_; useVarNoInitCheck__sempass50_959(tracked, (*n)._kind_6.sons->data[((NI) 0)], (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym); } goto LA15_; LA19_: ; { track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 0)]); } LA15_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108): { { if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA25_; (*(*n)._kind_6.sons->data[((NI) 0)]).info = (*n).info; addRaiseEffect__sempass50_2237(tracked, (*n)._kind_6.sons->data[((NI) 0)], n); { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191(n); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA29; i = i_2; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[i]); i_2 += ((NI) 1); } LA29: ; } } createTypeBoundOps__sempass50_142(tracked, (*(*n)._kind_6.sons->data[((NI) 0)]).typ, (*n).info); } goto LA23_; LA25_: ; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T31_; T31_ = NIM_NIL; T31_ = createRaise__sempass50_2223((*tracked).graph, n); addRaiseEffect__sempass50_2237(tracked, T31_, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); } LA23_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32): { trackCall__sempass50_3367(tracked, n); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45): { guardDotAccess__sempass50_237(tracked, n); { NI i_3; NI colontmp__2; NI i_4; i_3 = (NI)0; colontmp__2 = (NI)0; colontmp__2 = len__ast_3198(n); i_4 = ((NI) 0); { while (1) { if (!(i_4 < colontmp__2)) goto LA36; i_3 = i_4; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[i_3]); i_4 += ((NI) 1); } LA36: ; } } } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46): { track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 0)]); { NIM_BOOL T40_; T40_ = (NIM_BOOL)0; T40_ = hasWarn__options_557((*tracked).config, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 42)); if (!T40_) goto LA41_; checkFieldAccess__guards_1800((*tracked).guards, n, (*tracked).config); } LA41_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106): { trackTryStmt__sempass50_2341(tracked, n); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 90): { trackPragmaStmt__sempass50_2560(tracked, n); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74): { track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 1)]); initVar__sempass50_312(tracked, (*n)._kind_6.sons->data[((NI) 0)], NIM_TRUE); invalidateFacts__guards_760((&(*tracked).guards), (*n)._kind_6.sons->data[((NI) 0)]); (*tracked).leftPartOfAsgn += ((NI) 1); track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 0)]); (*tracked).leftPartOfAsgn -= ((NI) 1); addAsgnFact__guards_1730((&(*tracked).guards), (*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)]); notNilCheck__sempass50_2659(tracked, (*n)._kind_6.sons->data[((NI) 1)], (*(*n)._kind_6.sons->data[((NI) 0)]).typ); { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA48_; createTypeBoundOps__sempass50_142(tracked, (*(*n)._kind_6.sons->data[((NI) 0)]).typ, (*n).info); } LA48_: ; { NIM_BOOL T52_; NIM_BOOL T54_; T52_ = (NIM_BOOL)0; T52_ = !(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))); if (T52_) goto LA53_; T54_ = (NIM_BOOL)0; T54_ = isLocalVar__sempass50_162(tracked, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym); T52_ = !(T54_); LA53_: ; if (!T52_) goto LA55_; checkForSink__sempass50_24((*tracked).config, (*(*tracked).c).Sup.idgen, (*tracked).owner, (*n)._kind_6.sons->data[((NI) 1)]); { NIM_BOOL T59_; T59_ = (NIM_BOOL)0; T59_ = !((*tracked).hasDangerousAssign); if (!(T59_)) goto LA60_; T59_ = !(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))); LA60_: ; if (!T59_) goto LA61_; (*tracked).hasDangerousAssign = NIM_TRUE; } LA61_: ; } LA55_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100): { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* 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_3191(n); i_6 = ((NI) 0); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* last; if (!(i_6 < colontmp__3)) goto LA67; i_5 = i_6; child = (*n)._kind_6.sons->data[i_5]; last = lastSon__ast_4832(child); { if (!!(((*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA70_; track__sempass50_2338(tracked, last); } LA70_: ; { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA74_; { NI T80_; if (!((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 36))) goto LA78_; T80_ = (NI)0; T80_ = len__ast_3198(child); createTypeBoundOps__sempass50_142(tracked, (*(*child)._kind_6.sons->data[(NI)(T80_ - ((NI) 1))]).typ, (*child).info); { NI i_7; NI colontmp__4; NI T82_; NI i_8; i_7 = (NI)0; colontmp__4 = (NI)0; T82_ = (NI)0; T82_ = len__ast_3198(child); colontmp__4 = (NI)(T82_ - ((NI) 2)); i_8 = ((NI) 0); { while (1) { if (!(i_8 < colontmp__4)) goto LA84; i_7 = i_8; createTypeBoundOps__sempass50_142(tracked, (*(*child)._kind_6.sons->data[i_7]).typ, (*child).info); i_8 += ((NI) 1); } LA84: ; } } } goto LA76_; LA78_: ; { createTypeBoundOps__sempass50_142(tracked, (*(*child)._kind_6.sons->data[((NI) 0)]).typ, (*child).info); } LA76_: ; } LA74_: ; { NIM_BOOL T88_; T88_ = (NIM_BOOL)0; T88_ = ((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 35)); if (!(T88_)) goto LA89_; T88_ = !(((*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1))); LA89_: ; if (!T88_) goto LA90_; { NI i_9; NI colontmp__5; NI T93_; NI i_10; i_9 = (NI)0; colontmp__5 = (NI)0; T93_ = (NI)0; T93_ = len__ast_3198(child); colontmp__5 = (NI)(T93_ - ((NI) 2)); i_10 = ((NI) 0); { while (1) { if (!(i_10 < colontmp__5)) goto LA95; i_9 = i_10; initVar__sempass50_312(tracked, (*child)._kind_6.sons->data[i_9], NIM_FALSE); addAsgnFact__guards_1730((&(*tracked).guards), (*child)._kind_6.sons->data[i_9], last); notNilCheck__sempass50_2659(tracked, last, (*(*child)._kind_6.sons->data[i_9]).typ); i_10 += ((NI) 1); } LA95: ; } } } goto LA86_; LA90_: ; { NIM_BOOL T97_; T97_ = (NIM_BOOL)0; T97_ = ((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 36)); if (!(T97_)) goto LA98_; T97_ = !(((*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1))); LA98_: ; if (!T97_) goto LA99_; { NI i_11; NI colontmp__6; NI T102_; NI i_12; i_11 = (NI)0; colontmp__6 = (NI)0; T102_ = (NI)0; T102_ = len__ast_3198(child); colontmp__6 = (NI)(T102_ - ((NI) 1)); i_12 = ((NI) 0); { while (1) { if (!(i_12 < colontmp__6)) goto LA104; i_11 = i_12; { { NIM_BOOL T108_; NIM_BOOL T110_; T108_ = (NIM_BOOL)0; T108_ = ((*(*child)._kind_6.sons->data[i_11]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)); if (T108_) goto LA109_; T110_ = (NIM_BOOL)0; T110_ = ((*(*child)._kind_6.sons->data[i_11]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T110_)) goto LA111_; T110_ = eqStrings((*(*(*(*child)._kind_6.sons->data[i_11])._kind_4.sym).name).s, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_59)); LA111_: ; T108_ = T110_; LA109_: ; if (!T108_) goto LA112_; goto LA105; } LA112_: ; initVar__sempass50_312(tracked, (*child)._kind_6.sons->data[i_11], NIM_FALSE); { if (!((*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37) || (*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160))) goto LA116_; addAsgnFact__guards_1730((&(*tracked).guards), (*child)._kind_6.sons->data[i_11], (*last)._kind_6.sons->data[i_11]); notNilCheck__sempass50_2659(tracked, (*last)._kind_6.sons->data[i_11], (*(*child)._kind_6.sons->data[i_11]).typ); } LA116_: ; } LA105: ; i_12 += ((NI) 1); } LA104: ; } } } goto LA86_; LA99_: ; LA86_: ; i_6 += ((NI) 1); } LA67: ; } } } } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101): { { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* 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_3191(n); i_14 = ((NI) 0); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* last_2; if (!(i_14 < colontmp__7)) goto LA122; i_13 = i_14; child_2 = (*n)._kind_6.sons->data[i_13]; last_2 = lastSon__ast_4832(child_2); track__sempass50_2338(tracked, last_2); i_14 += ((NI) 1); } LA122: ; } } } } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97): { trackCase__sempass50_3048(tracked, n); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 93): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48): { trackIf__sempass50_3149(tracked, n); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 127): { trackBlock__sempass50_3265(tracked, (*n)._kind_6.sons->data[((NI) 1)]); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96): { { NIM_BOOL T129_; T129_ = (NIM_BOOL)0; T129_ = isTrue__trees_375((*n)._kind_6.sons->data[((NI) 0)]); if (!T129_) goto LA130_; trackBlock__sempass50_3265(tracked, (*n)._kind_6.sons->data[((NI) 1)]); } goto LA127_; LA130_: ; { NI oldState; NI T133_; NI oldFacts; NI T134_; T133_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); oldState = T133_; T134_ = ((*tracked).guards.s ? (*tracked).guards.s->Sup.len : 0); oldFacts = T134_; addFact__guards_609((&(*tracked).guards), (*n)._kind_6.sons->data[((NI) 0)]); track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 0)]); track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 1)]); unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState)))); unsureAsgnRef((void**) (&(*tracked).guards.s), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*tracked).guards.s)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (oldFacts)))); } LA127_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 94): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 95): { NI oldState_2; NI T136_; NI oldFacts_2; NI T137_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* iterCall; NI T138_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* loopBody; NI T175_; T136_ = ((*tracked).init ? (*tracked).init->Sup.len : 0); oldState_2 = T136_; T137_ = ((*tracked).guards.s ? (*tracked).guards.s->Sup.len : 0); oldFacts_2 = T137_; T138_ = (NI)0; T138_ = len__ast_3198(n); iterCall = (*n)._kind_6.sons->data[(NI)(T138_ - ((NI) 2))]; { NIM_BOOL T141_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* op; T141_ = (NIM_BOOL)0; T141_ = (((*tracked).currOptions &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 9))&31U)))!=0); if (!(T141_)) goto LA142_; T141_ = ((*iterCall).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*iterCall).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*iterCall).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*iterCall).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*iterCall).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*iterCall).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*iterCall).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32)); LA142_: ; if (!T141_) goto LA143_; op = (*iterCall)._kind_6.sons->data[((NI) 0)]; { NIM_BOOL T147_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* iterVar; T147_ = (NIM_BOOL)0; T147_ = ((*op).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T147_)) goto LA148_; T147_ = fromSystem__astalgo_238((*op)._kind_4.sym); LA148_: ; if (!T147_) goto LA149_; iterVar = (*n)._kind_6.sons->data[((NI) 0)]; if (eqStrings((*(*(*op)._kind_4.sym).name).s, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_61))) goto LA151_; if (eqStrings((*(*(*op)._kind_4.sym).name).s, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_62))) goto LA151_; if (eqStrings((*(*(*op)._kind_4.sym).name).s, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_63))) goto LA151_; if (eqStrings((*(*(*op)._kind_4.sym).name).s, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_64))) goto LA152_; goto LA153_; LA151_: ; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lower; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* upper; lower = (*iterCall)._kind_6.sons->data[((NI) 1)]; upper = (*iterCall)._kind_6.sons->data[((NI) 2)]; addFactLe__guards_1634((&(*tracked).guards), lower, iterVar); addFactLe__guards_1634((&(*tracked).guards), iterVar, upper); } goto LA154_; LA152_: ; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lower_2; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* upper_2; lower_2 = (*iterCall)._kind_6.sons->data[((NI) 1)]; upper_2 = (*iterCall)._kind_6.sons->data[((NI) 2)]; addFactLe__guards_1634((&(*tracked).guards), lower_2, iterVar); addFactLt__guards_1642((&(*tracked).guards), iterVar, upper_2); } goto LA154_; LA153_: ; { } LA154_: ; } LA149_: ; } LA143_: ; { NI i_15; NI colontmp__8; NI T159_; NI i_16; i_15 = (NI)0; colontmp__8 = (NI)0; T159_ = (NI)0; T159_ = len__ast_3198(n); colontmp__8 = (NI)(T159_ - ((NI) 2)); i_16 = ((NI) 0); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it; if (!(i_16 < colontmp__8)) goto LA161; i_15 = i_16; it = (*n)._kind_6.sons->data[i_15]; track__sempass50_2338(tracked, it); { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA164_; { if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 36))) goto LA168_; { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x; x = NIM_NIL; { NI i_17; NI colontmp__9; NI i_18; i_17 = (NI)0; colontmp__9 = (NI)0; colontmp__9 = safeLen__ast_3191(it); i_18 = ((NI) 0); { while (1) { if (!(i_18 < colontmp__9)) goto LA173; i_17 = i_18; x = (*it)._kind_6.sons->data[i_17]; createTypeBoundOps__sempass50_142(tracked, (*x).typ, (*x).info); i_18 += ((NI) 1); } LA173: ; } } } } goto LA166_; LA168_: ; { createTypeBoundOps__sempass50_142(tracked, (*it).typ, (*it).info); } LA166_: ; } LA164_: ; i_16 += ((NI) 1); } LA161: ; } } T175_ = (NI)0; T175_ = len__ast_3198(n); loopBody = (*n)._kind_6.sons->data[(NI)(T175_ - ((NI) 1))]; { NIM_BOOL T178_; NI T180_; T178_ = (NIM_BOOL)0; T178_ = !(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17))); if (!(T178_)) goto LA179_; T180_ = (NI)0; T180_ = safeLen__ast_3191(iterCall); T178_ = (((NI) 1) < T180_); LA179_: ; if (!T178_) goto LA181_; { NIM_BOOL T185_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T187_; T185_ = (NIM_BOOL)0; T185_ = !(((*(*iterCall)._kind_6.sons->data[((NI) 1)]).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T185_)) goto LA186_; T187_ = NIM_NIL; T187_ = skipTypes__ast_3735((*(*iterCall)._kind_6.sons->data[((NI) 1)]).typ, TM__wkTG4eaV3t1uo3x09apjcwA_23); T185_ = !(((*T187_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48) || (*T187_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27))); LA186_: ; if (!T185_) goto LA188_; createTypeBoundOps__sempass50_142(tracked, (*(*iterCall)._kind_6.sons->data[((NI) 1)]).typ, (*(*iterCall)._kind_6.sons->data[((NI) 1)]).info); } LA188_: ; } LA181_: ; track__sempass50_2338(tracked, iterCall); track__sempass50_2338(tracked, loopBody); unsureAsgnRef((void**) (&(*tracked).init), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*tracked).init)->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) (oldState_2)))); unsureAsgnRef((void**) (&(*tracked).guards.s), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*tracked).guards.s)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (oldFacts_2)))); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38): { NI oldFacts_3; NI T191_; T191_ = ((*tracked).guards.s ? (*tracked).guards.s->Sup.len : 0); oldFacts_3 = T191_; { NI i_19; NI colontmp__10; NI i_20; i_19 = (NI)0; colontmp__10 = (NI)0; colontmp__10 = len__ast_3198(n); i_20 = ((NI) 1); { while (1) { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x_2; if (!(i_20 < colontmp__10)) goto LA194; i_19 = i_20; x_2 = (*n)._kind_6.sons->data[i_19]; track__sempass50_2338(tracked, x_2); { NIM_BOOL T197_; T197_ = (NIM_BOOL)0; T197_ = ((*(*x_2)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T197_)) goto LA198_; T197_ = (((*(*(*x_2)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 20))&63U)))!=0); LA198_: ; if (!T197_) goto LA199_; addDiscriminantFact__guards_1717((&(*tracked).guards), x_2); } LA199_: ; { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA203_; createTypeBoundOps__sempass50_142(tracked, (*(*x_2)._kind_6.sons->data[((NI) 1)]).typ, (*n).info); } LA203_: ; { if (!((*x_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA207_; { if (!((*(*x_2)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA211_; notNilCheck__sempass50_2659(tracked, (*x_2)._kind_6.sons->data[((NI) 1)], (*(*(*x_2)._kind_6.sons->data[((NI) 0)])._kind_4.sym).typ); } LA211_: ; checkForSink__sempass50_24((*tracked).config, (*(*tracked).c).Sup.idgen, (*tracked).owner, (*x_2)._kind_6.sons->data[((NI) 1)]); } goto LA205_; LA207_: ; { checkForSink__sempass50_24((*tracked).config, (*(*tracked).c).Sup.idgen, (*tracked).owner, x_2); } LA205_: ; i_20 += ((NI) 1); } LA194: ; } } unsureAsgnRef((void**) (&(*tracked).guards.s), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*tracked).guards.s)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (oldFacts_3)))); { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA216_; { NIM_BOOL T220_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T222_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T225_; T220_ = (NIM_BOOL)0; T220_ = !(((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T220_)) goto LA221_; T222_ = NIM_NIL; T222_ = skipTypes__ast_3735((*n).typ, TM__wkTG4eaV3t1uo3x09apjcwA_30); T220_ = ((*T222_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22)); LA221_: ; if (!T220_) goto LA223_; T225_ = NIM_NIL; T225_ = lastSon__ast_3743((*n).typ); createTypeBoundOps__sempass50_142(tracked, T225_, (*n).info); } LA223_: ; createTypeBoundOps__sempass50_142(tracked, (*n).typ, (*n).info); } LA216_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160): { { NI i_21; NI colontmp__11; NI i_22; i_21 = (NI)0; colontmp__11 = (NI)0; colontmp__11 = len__ast_3198(n); i_22 = ((NI) 0); { while (1) { if (!(i_22 < colontmp__11)) goto LA229; i_21 = i_22; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[i_21]); { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA232_; { if (!((*(*n)._kind_6.sons->data[i_21]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA236_; createTypeBoundOps__sempass50_142(tracked, (*(*(*n)._kind_6.sons->data[i_21])._kind_6.sons->data[((NI) 0)]).typ, (*n).info); } goto LA234_; LA236_: ; { createTypeBoundOps__sempass50_142(tracked, (*(*n)._kind_6.sons->data[i_21]).typ, (*n).info); } LA234_: ; } LA232_: ; checkForSink__sempass50_24((*tracked).config, (*(*tracked).c).Sup.idgen, (*tracked).owner, (*n)._kind_6.sons->data[i_21]); i_22 += ((NI) 1); } LA229: ; } } } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 91): { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pragmaList; tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA bc; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T248_; pragmaList = (*n)._kind_6.sons->data[((NI) 0)]; nimZeroMem((void*)(&bc), sizeof(tyObject_PragmaBlockContext__DP9bc9bSMlNScWp9cz3kkmIBA)); createBlockContext__sempass50_3741(tracked, (&bc)); { NI i_23; NI colontmp__12; NI i_24; i_23 = (NI)0; colontmp__12 = (NI)0; colontmp__12 = len__ast_3198(pragmaList); i_24 = ((NI) 0); { while (1) { tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw pragma; if (!(i_24 < colontmp__12)) goto LA242; i_23 = i_24; pragma = whichPragma__trees_244((*pragmaList)._kind_6.sons->data[i_23]); switch (pragma) { case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 221): { lockLocations__sempass50_206(tracked, (*pragmaList)._kind_6.sons->data[i_23]); } break; case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 110): { bc.enforcedGcSafety = NIM_TRUE; } break; case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 109): { bc.enforceNoSideEffects = NIM_TRUE; } break; case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 9): { castBlock__sempass50_3790(tracked, (*(*pragmaList)._kind_6.sons->data[i_23])._kind_6.sons->data[((NI) 1)], (&bc)); } break; default: { } break; } i_24 += ((NI) 1); } LA242: ; } } applyBlockContext__sempass50_3762(tracked, (&bc)); T248_ = NIM_NIL; T248_ = lastSon__ast_4832(n); track__sempass50_2338(tracked, T248_); unapplyBlockContext__sempass50_3765(tracked, (&bc)); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 80): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52): { { NIM_BOOL T252_; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T256_; T252_ = (NIM_BOOL)0; T252_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T252_)) goto LA253_; T252_ = !(((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).ast == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))); LA253_: ; if (!T252_) goto LA254_; T256_ = NIM_NIL; T256_ = getBody__modulegraphs_11241((*tracked).graph, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym); trackInnerProc__sempass50_3814(tracked, T256_); } LA254_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 82): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83): { } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61): { { NI T261_; T261_ = (NI)0; T261_ = len__ast_3198(n); if (!(T261_ == ((NI) 2))) goto LA262_; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 1)]); { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA266_; createTypeBoundOps__sempass50_142(tracked, (*n).typ, (*n).info); } LA266_: ; } LA262_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60): { tyObject_TType__facALICuu8zUj0hjvbTLFg* t; { NIM_BOOL T271_; NIM_BOOL T272_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T274_; NIM_BOOL T276_; NimStringDesc* T279_; NimStringDesc* T280_; T271_ = (NIM_BOOL)0; T272_ = (NIM_BOOL)0; T272_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59)); if (!(T272_)) goto LA273_; T274_ = NIM_NIL; T274_ = skipTypes__ast_3735((*n).typ, TM__wkTG4eaV3t1uo3x09apjcwA_30); T272_ = ((*T274_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29)); LA273_: ; T271_ = T272_; if (!(T271_)) goto LA275_; T276_ = (NIM_BOOL)0; T276_ = allowCStringConv__sempass50_3856((*n)._kind_6.sons->data[((NI) 1)]); T271_ = !(T276_); LA275_: ; if (!T271_) goto LA277_; T279_ = NIM_NIL; T279_ = dollar___renderer_2106((*n)._kind_6.sons->data[((NI) 1)]); T280_ = NIM_NIL; T280_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_75), T279_); liMessage__msgs_1118((*tracked).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 65), T280_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_76, NIM_FALSE); } LA277_: ; t = skipTypes__ast_3735((*n).typ, TM__wkTG4eaV3t1uo3x09apjcwA_30); { if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14))) goto LA283_; { NimStringDesc* T289_; NimStringDesc* T290_; if (!(((*t).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 5))&63U)))!=0)) goto LA287_; T289_ = NIM_NIL; T289_ = dollar___renderer_2106(n); T290_ = NIM_NIL; T290_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_77), T289_); liMessage__msgs_1118((*tracked).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 64), T290_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_78, NIM_FALSE); } goto LA285_; LA287_: ; { NimStringDesc* T292_; NimStringDesc* T293_; T292_ = NIM_NIL; T292_ = dollar___renderer_2106(n); T293_ = NIM_NIL; T293_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_79), T292_); liMessage__msgs_1118((*tracked).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 63), T293_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_80, NIM_FALSE); } LA285_: ; } LA283_: ; { NI T296_; T296_ = (NI)0; T296_ = len__ast_3198(n); if (!(T296_ == ((NI) 2))) goto LA297_; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 1)]); { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA301_; createTypeBoundOps__sempass50_142(tracked, (*n).typ, (*n).info); { if (!!(((*(*(*n)._kind_6.sons->data[((NI) 1)]).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28)))) goto LA305_; createTypeBoundOps__sempass50_142(tracked, (*(*n)._kind_6.sons->data[((NI) 1)]).typ, (*(*n)._kind_6.sons->data[((NI) 1)]).info); } LA305_: ; } LA301_: ; { if (!(((*tracked).currOptions &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 9))&31U)))!=0)) goto LA309_; checkRange__sempass50_3350(tracked, (*n)._kind_6.sons->data[((NI) 1)], (*n).typ); } LA309_: ; } LA297_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 70): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 68): case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 69): { { NI T314_; T314_ = (NI)0; T314_ = len__ast_3198(n); if (!(T314_ == ((NI) 1))) goto LA315_; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 0)]); { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA319_; createTypeBoundOps__sempass50_142(tracked, (*n).typ, (*n).info); createTypeBoundOps__sempass50_142(tracked, (*(*n)._kind_6.sons->data[((NI) 0)]).typ, (*(*n)._kind_6.sons->data[((NI) 0)]).info); } LA319_: ; { if (!(((*tracked).currOptions &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 9))&31U)))!=0)) goto LA323_; checkRange__sempass50_3350(tracked, (*n)._kind_6.sons->data[((NI) 0)], (*n).typ); } LA323_: ; } LA315_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41): { { NI i_25; NI colontmp__13; NI i_26; i_25 = (NI)0; colontmp__13 = (NI)0; colontmp__13 = safeLen__ast_3191(n); i_26 = ((NI) 0); { while (1) { if (!(i_26 < colontmp__13)) goto LA328; i_25 = i_26; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[i_25]); checkForSink__sempass50_24((*tracked).config, (*(*tracked).c).Sup.idgen, (*tracked).owner, (*n)._kind_6.sons->data[i_25]); i_26 += ((NI) 1); } LA328: ; } } { if (!!(((*(*tracked).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA331_; createTypeBoundOps__sempass50_142(tracked, (*n).typ, (*n).info); } LA331_: ; } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42): { { NIM_BOOL T336_; NI T338_; T336_ = (NIM_BOOL)0; T336_ = (((*tracked).currOptions &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 9))&31U)))!=0); if (!(T336_)) goto LA337_; T338_ = (NI)0; T338_ = len__ast_3198(n); T336_ = (T338_ == ((NI) 2)); LA337_: ; if (!T336_) goto LA339_; { NIM_BOOL T343_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T345_; T343_ = (NIM_BOOL)0; T343_ = !(((*(*n)._kind_6.sons->data[((NI) 0)]).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))); if (!(T343_)) goto LA344_; T345_ = NIM_NIL; T345_ = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 0)]).typ, TM__wkTG4eaV3t1uo3x09apjcwA_23); T343_ = !(((*T345_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18))); LA344_: ; if (!T343_) goto LA346_; checkBounds__sempass50_3346(tracked, (*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)]); } LA346_: ; } LA339_: ; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[((NI) 0)]); (*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_3198(n); i_28 = ((NI) 1); { while (1) { if (!(i_28 < colontmp__14)) goto LA350; i_27 = i_28; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[i_27]); i_28 += ((NI) 1); } LA350: ; } } (*tracked).leftPartOfAsgn += ((NI) 1); } break; case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 161): { NimStringDesc* T352_; T352_ = NIM_NIL; T352_ = errorToString__errorhandling_107((*tracked).config, n); liMessage__msgs_1118((*tracked).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T352_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_82, NIM_FALSE); } break; default: { { NI i_29; NI colontmp__15; NI i_30; i_29 = (NI)0; colontmp__15 = (NI)0; colontmp__15 = safeLen__ast_3191(n); i_30 = ((NI) 0); { while (1) { if (!(i_30 < colontmp__15)) goto LA356; i_29 = i_30; track__sempass50_2338(tracked, (*n)._kind_6.sons->data[i_29]); i_30 += ((NI) 1); } LA356: ; } } } break; } } static N_INLINE(NIM_BOOL, isClosure__ast_5019)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) { NIM_BOOL result; NIM_BOOL T1_; result = (NIM_BOOL)0; T1_ = (NIM_BOOL)0; T1_ = ((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)); if (!(T1_)) goto LA2_; T1_ = ((*typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9)); LA2_: ; result = T1_; return result; } N_LIB_PRIVATE N_NIMCALL(void, patchResult__sempass50_3308)(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) { { NIM_BOOL T3_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* fn; T3_ = (NIM_BOOL)0; T3_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)); if (!(T3_)) goto LA4_; T3_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11)); LA4_: ; if (!T3_) goto LA5_; fn = (*c).owner; { NIM_BOOL T9_; NIM_BOOL T10_; NIM_BOOL T11_; NI T15_; T9_ = (NIM_BOOL)0; T10_ = (NIM_BOOL)0; T11_ = (NIM_BOOL)0; T11_ = !((fn == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))); if (!(T11_)) goto LA12_; T11_ = ((520192 &((NU32)1<<((NU)((*fn).kind)&31U)))!=0); LA12_: ; T10_ = T11_; if (!(T10_)) goto LA13_; T10_ = !(((*fn).ast == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))); LA13_: ; T9_ = T10_; if (!(T9_)) goto LA14_; T15_ = (NI)0; T15_ = len__ast_3198((*fn).ast); T9_ = (((NI) 7) < T15_); LA14_: ; if (!T9_) goto LA16_; asgnRef((void**) (&(*n)._kind_4.sym), (*(*(*fn).ast)._kind_6.sons->data[((NI) 7)])._kind_4.sym); } goto LA7_; LA16_: ; { liMessage__msgs_1118((*c).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_85), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_86, NIM_FALSE); } LA7_: ; } goto LA1_; LA5_: ; { { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = safeLen__ast_3191(n); i_2 = ((NI) 0); { while (1) { if (!(i_2 < colontmp_)) goto LA22; i = i_2; patchResult__sempass50_3308(c, (*n)._kind_6.sons->data[i]); i_2 += ((NI) 1); } LA22: ; } } } LA1_: ; } N_LIB_PRIVATE N_NIMCALL(void, listGcUnsafety__sempass50_386)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NIM_BOOL onlyWarning, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* cycleCheck, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* u; u = (*s)._kind_1.gcUnsafetyReason; { NIM_BOOL T3_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym63_; NIM_BOOL T5_; tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msgKind; T3_ = (NIM_BOOL)0; T3_ = !((u == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))); if (!(T3_)) goto LA4_; xX60gensym63_ = u; T5_ = (NIM_BOOL)0; T5_ = containsOrIncl__astalgo_402(cycleCheck, (NI)((NI)((NU64)(((NI) ((*xX60gensym63_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym63_).Sup.itemId.item)))); T3_ = !(T5_); LA4_: ; if (!T3_) goto LA6_; { if (!onlyWarning) goto LA10_; msgKind = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 48); } goto LA8_; LA10_: ; { msgKind = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14); } LA8_: ; switch ((*u).kind) { case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 9): case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8): { { tyObject_TType__facALICuu8zUj0hjvbTLFg* T16_; tyArray__Re75IspeoxXy2oCZHwcRrA T19_; NimStringDesc* T20_; T16_ = NIM_NIL; T16_ = skipTypes__ast_3735((*u).typ, TM__wkTG4eaV3t1uo3x09apjcwA_30); if (!((*T16_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25))) goto LA17_; nimZeroMem((void*)T19_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA)); T19_[0] = copyString((*(*s).name).s); T19_[1] = copyString((*(*u).name).s); T20_ = NIM_NIL; T20_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_87), T19_, 2); liMessage__msgs_1118(conf, (*s).info, msgKind, T20_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_88, NIM_FALSE); } goto LA14_; LA17_: ; { tyArray__Re75IspeoxXy2oCZHwcRrA T22_; NimStringDesc* T23_; nimZeroMem((void*)T22_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA)); T22_[0] = copyString((*(*s).name).s); T22_[1] = copyString((*(*u).name).s); T23_ = NIM_NIL; T23_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_89), T22_, 2); liMessage__msgs_1118(conf, (*s).info, msgKind, T23_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_90, NIM_FALSE); } LA14_: ; } break; case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 12) ... ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 18): { tyArray__Re75IspeoxXy2oCZHwcRrA T25_; NimStringDesc* T26_; listGcUnsafety__sempass50_386(u, NIM_TRUE, cycleCheck, conf); nimZeroMem((void*)T25_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA)); T25_[0] = copyString((*(*s).name).s); T25_[1] = copyString((*(*u).name).s); T26_ = NIM_NIL; T26_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_87), T25_, 2); liMessage__msgs_1118(conf, (*s).info, msgKind, T26_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_91, NIM_FALSE); } break; case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3): case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 21): { tyArray__Re75IspeoxXy2oCZHwcRrA T28_; NimStringDesc* T29_; nimZeroMem((void*)T28_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA)); T28_[0] = copyString((*(*s).name).s); T28_[1] = copyString((*(*u).name).s); T29_ = NIM_NIL; T29_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_92), T28_, 2); liMessage__msgs_1118(conf, (*s).info, msgKind, T29_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_93, NIM_FALSE); } break; default: { NimStringDesc* T31_; T31_ = NIM_NIL; T31_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_94), (*(*s).name).s); liMessage__msgs_1118(conf, (*u).info, msgKind, T31_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_95, NIM_FALSE); } break; } } LA6_: ; } N_LIB_PRIVATE N_NIMCALL(void, listGcUnsafety__sempass50_411)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NIM_BOOL onlyWarning, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) { tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA cycleCheck; nimZeroMem((void*)(&cycleCheck), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA)); initIntSet__pureZcollectionsZintsets_238((&cycleCheck)); listGcUnsafety__sempass50_386(s, onlyWarning, (&cycleCheck), conf); } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__sempass50_484)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ t, NI key) { NIM_BOOL result; NI hc; NI T1_; result = (NIM_BOOL)0; hc = (NI)0; T1_ = (NI)0; T1_ = rawGet__sempass50_491(t, key, (&hc)); result = (((NI) 0) <= T1_); return result; } N_LIB_PRIVATE N_NIMCALL(tySequence__vGU8AyGT6KxtLJwEg0BpNw**, X5BX5D___sempass50_821)(tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ* t, NI key) { tySequence__vGU8AyGT6KxtLJwEg0BpNw** result; NI hcX60gensym22_; NI indexX60gensym22_; result = (tySequence__vGU8AyGT6KxtLJwEg0BpNw**)0; hcX60gensym22_ = (NI)0; indexX60gensym22_ = rawGet__sempass50_491((*t), key, (&hcX60gensym22_)); { if (!(((NI) 0) <= indexX60gensym22_)) goto LA3_; result = (&(*t).data->data[indexX60gensym22_].Field2); } goto LA1_; LA3_: ; { raiseKeyError__ast_1357(key); } LA1_: ; return result; } N_LIB_PRIVATE N_NIMCALL(void, listSideEffects__sempass50_416)(NimStringDesc** result, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* cycleCheck, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* context, NI indentLevel) { { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym74_; NIM_BOOL T3_; xX60gensym74_ = s; T3_ = (NIM_BOOL)0; T3_ = hasKey__sempass50_484((*context).sideEffects, (NI)((NI)((NU64)(((NI) ((*xX60gensym74_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym74_).Sup.itemId.item)))); if (!T3_) goto LA4_; { tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q* useLineInfo; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ** u; tySequence__vGU8AyGT6KxtLJwEg0BpNw* colontmp_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym77_; tySequence__vGU8AyGT6KxtLJwEg0BpNw** T7_; NI i; NI L; NI T8_; useLineInfo = (tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q*)0; u = (tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ**)0; colontmp_ = NIM_NIL; xX60gensym77_ = s; T7_ = (tySequence__vGU8AyGT6KxtLJwEg0BpNw**)0; T7_ = X5BX5D___sempass50_821((&(*context).sideEffects), (NI)((NI)((NU64)(((NI) ((*xX60gensym77_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym77_).Sup.itemId.item)))); colontmp_ = (*T7_); i = ((NI) 0); T8_ = (colontmp_ ? colontmp_->Sup.len : 0); L = T8_; { while (1) { if (!(i < L)) goto LA10; useLineInfo = (&colontmp_->data[i].Field0); u = &colontmp_->data[i].Field1; { NIM_BOOL T13_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym81_; NIM_BOOL T15_; T13_ = (NIM_BOOL)0; T13_ = !(((*u) == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))); if (!(T13_)) goto LA14_; xX60gensym81_ = (*u); T15_ = (NIM_BOOL)0; T15_ = containsOrIncl__astalgo_402(cycleCheck, (NI)((NI)((NU64)(((NI) ((*xX60gensym81_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym81_).Sup.itemId.item)))); T13_ = !(T15_); LA14_: ; if (!T13_) goto LA16_; switch ((*(*u)).kind) { case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 9): case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8): { tyArray__sMpvt1sOxOJ3LFGulnbeMQ T19_; tyArray__sMpvt1sOxOJ3LFGulnbeMQ T20_; nimZeroMem((void*)T19_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ)); T19_[0] = nsuRepeatStr(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_100), ((NI) (indentLevel))); T19_[1] = dollar___msgs_624(conf, (*useLineInfo)); T19_[2] = copyString((*(*s).name).s); T19_[3] = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_101), (*(*(*u)).name).s); nsuAddf(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_99), T19_, 4); nimZeroMem((void*)T20_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ)); T20_[0] = nsuRepeatStr(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_100), ((NI) ((NI)(indentLevel + ((NI) 1))))); T20_[1] = dollar___msgs_624(conf, (*(*u)).info); T20_[2] = copyString((*(*(*u)).name).s); T20_[3] = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_102), (*(*s).name).s); nsuAddf(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_99), T20_, 4); } break; case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 12) ... ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 18): { tyArray__sMpvt1sOxOJ3LFGulnbeMQ T22_; tyArray__sMpvt1sOxOJ3LFGulnbeMQ T23_; nimZeroMem((void*)T22_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ)); T22_[0] = nsuRepeatStr(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_100), ((NI) (indentLevel))); T22_[1] = dollar___msgs_624(conf, (*useLineInfo)); T22_[2] = copyString((*(*s).name).s); T22_[3] = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_103), (*(*(*u)).name).s); nsuAddf(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_99), T22_, 4); nimZeroMem((void*)T23_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ)); T23_[0] = nsuRepeatStr(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_100), ((NI) ((NI)(indentLevel + ((NI) 1))))); T23_[1] = dollar___msgs_624(conf, (*(*u)).info); T23_[2] = copyString((*(*(*u)).name).s); T23_[3] = nsuFormatSingleElem(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_104), (*(*s).name).s); nsuAddf(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_99), T23_, 4); listSideEffects__sempass50_416(result, (*u), cycleCheck, conf, context, (NI)(indentLevel + ((NI) 2))); } break; case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3): case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 21): { tyArray__sMpvt1sOxOJ3LFGulnbeMQ T25_; nimZeroMem((void*)T25_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ)); T25_[0] = nsuRepeatStr(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_100), ((NI) (indentLevel))); T25_[1] = dollar___msgs_624(conf, (*useLineInfo)); T25_[2] = copyString((*(*s).name).s); T25_[3] = copyString(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_105)); nsuAddf(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_99), T25_, 4); } break; default: { tyArray__sMpvt1sOxOJ3LFGulnbeMQ T27_; nimZeroMem((void*)T27_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ)); T27_[0] = nsuRepeatStr(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_100), ((NI) (indentLevel))); T27_[1] = dollar___msgs_624(conf, (*useLineInfo)); T27_[2] = copyString((*(*s).name).s); T27_[3] = copyString(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_106)); nsuAddf(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_99), T27_, 4); } break; } } LA16_: ; i += ((NI) 1); } LA10: ; } } } LA4_: ; } N_LIB_PRIVATE N_NIMCALL(void, listSideEffects__sempass50_953)(NimStringDesc** result, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* context) { tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA cycleCheck; tyArray__nHXaesL0DJZHyVS07ARPRA T1_; nimZeroMem((void*)(&cycleCheck), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA)); initIntSet__pureZcollectionsZintsets_238((&cycleCheck)); nimZeroMem((void*)T1_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA)); T1_[0] = copyString((*(*s).name).s); nsuAddf(result, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_98), T1_, 1); listSideEffects__sempass50_416(result, s, (&cycleCheck), conf, context, ((NI) 1)); } N_LIB_PRIVATE N_NIMCALL(void, trackProc__sempass50_4692)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body) { tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effects; NIM_BOOL emitWarnings; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* inferredEffects; tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA t; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* p; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* raisesSpec; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tagsSpec; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* requiresSpec; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ensuresSpec; tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug mutationInfo; NIM_BOOL hasMutationSideEffect; { g = (*c).graph; effects = (*(*(*s).typ).n)._kind_6.sons->data[((NI) 0)]; { if (!!(((*effects).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152)))) goto LA3_; goto BeforeRet_; } LA3_: ; { NIM_BOOL T7_; T7_ = (NIM_BOOL)0; T7_ = hasRealBody__sempass50_4681(s); if (!!(T7_)) goto LA8_; goto BeforeRet_; } LA8_: ; emitWarnings = (((*(*s).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 44))&63U)))!=0); { NIM_BOOL T12_; NI T13_; T12_ = (NIM_BOOL)0; T13_ = (NI)0; T13_ = len__ast_3198(effects); T12_ = (T13_ == ((NI) 5)); if (!(T12_)) goto LA14_; T12_ = !(emitWarnings); LA14_: ; if (!T12_) goto LA15_; goto BeforeRet_; } LA15_: ; inferredEffects = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*s).info); nimZeroMem((void*)(&t), sizeof(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA)); initEffects__sempass50_4653(g, inferredEffects, s, (&t), c); rawInitEffects__sempass50_4641(g, effects); track__sempass50_2338((&t), body); { tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* params; if (!!(((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 17)))) goto LA19_; params = (*(*s).typ).n; { NI i; NI colontmp_; NI i_2; i = (NI)0; colontmp_ = (NI)0; colontmp_ = len__ast_3198(params); i_2 = ((NI) 1); { while (1) { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param; tyObject_TType__facALICuu8zUj0hjvbTLFg* typ; if (!(i_2 < colontmp_)) goto LA23; i = i_2; param = (*(*params)._kind_6.sons->data[i])._kind_4.sym; typ = (*param).typ; { NIM_BOOL T26_; NIM_BOOL T28_; NIM_BOOL T30_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T31_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym571_; T26_ = (NIM_BOOL)0; T26_ = isSinkTypeForParam__types_4055(typ); if (T26_) goto LA27_; T28_ = (NIM_BOOL)0; T28_ = ((48 &((NU16)1<<((NU)((*t.config).selectedGC)&15U)))!=0); if (!(T28_)) goto LA29_; T30_ = (NIM_BOOL)0; T31_ = NIM_NIL; T31_ = skipTypes__ast_3735(typ, TM__wkTG4eaV3t1uo3x09apjcwA_30); T30_ = isClosure__ast_5019(T31_); if (T30_) goto LA32_; xX60gensym571_ = param; T30_ = contains__astalgo_3496((&t.escapingParams), (NI)((NI)((NU64)(((NI) ((*xX60gensym571_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym571_).Sup.itemId.item)))); LA32_: ; T28_ = T30_; LA29_: ; T26_ = T28_; LA27_: ; if (!T26_) goto LA33_; createTypeBoundOps__sempass50_142((&t), typ, (*param).info); } LA33_: ; i_2 += ((NI) 1); } LA23: ; } } } LA19_: ; { NIM_BOOL T37_; NIM_BOOL T38_; NIM_BOOL T39_; NIM_BOOL T41_; tyObject_TType__facALICuu8zUj0hjvbTLFg* T43_; tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* res; T37_ = (NIM_BOOL)0; T38_ = (NIM_BOOL)0; T39_ = (NIM_BOOL)0; T39_ = isEmptyType__ast_4779((*(*s).typ).sons->data[((NI) 0)]); T38_ = !(T39_); if (!(T38_)) goto LA40_; T41_ = (NIM_BOOL)0; T41_ = requiresInit__typeallowed_578((*(*s).typ).sons->data[((NI) 0)]); if (T41_) goto LA42_; T43_ = NIM_NIL; T43_ = skipTypes__ast_3735((*(*s).typ).sons->data[((NI) 0)], TM__wkTG4eaV3t1uo3x09apjcwA_30); T41_ = ((*T43_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23)); LA42_: ; T38_ = T41_; LA40_: ; T37_ = T38_; if (!(T37_)) goto LA44_; T37_ = ((94208 &((NU32)1<<((NU)((*s).kind)&31U)))!=0); LA44_: ; if (!T37_) goto LA45_; res = (*(*(*s).ast)._kind_6.sons->data[((NI) 7)])._kind_4.sym; { tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym578_; NIM_BOOL T49_; xX60gensym578_ = res; T49_ = (NIM_BOOL)0; T49_ = contains__sigmatch_4299(t.init->data, (t.init ? t.init->Sup.len : 0), (NI)((NI)((NU64)(((NI) ((*xX60gensym578_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym578_).Sup.itemId.item)))); if (!!(T49_)) goto LA50_; liMessage__msgs_1118((*g).config, (*body).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 41), ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_83), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_84, NIM_FALSE); } LA50_: ; } LA45_: ; p = (*(*s).ast)._kind_6.sons->data[((NI) 4)]; raisesSpec = effectSpec__trees_284(p, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 174)); { if (!!((raisesSpec == 0))) goto LA54_; checkRaisesSpec__sempass50_4403(g, NIM_FALSE, raisesSpec, t.exc, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_7), NIM_TRUE, subtypeRelation__sempass50_4390, (*(*s).ast)._kind_6.sons->data[((NI) 0)]); asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 0)]), raisesSpec); } goto LA52_; LA54_: ; { asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 0)]), t.exc); } LA52_: ; tagsSpec = effectSpec__trees_284(p, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 179)); { if (!!((tagsSpec == 0))) goto LA59_; checkRaisesSpec__sempass50_4403(g, NIM_FALSE, tagsSpec, t.tags, ((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_10), NIM_FALSE, subtypeRelation__sempass50_4390, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)); asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 3)]), tagsSpec); } goto LA57_; LA59_: ; { asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 3)]), t.tags); } LA57_: ; requiresSpec = propSpec__trees_316(p, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 180)); { if (!!((requiresSpec == 0))) goto LA64_; asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 1)]), requiresSpec); } LA64_: ; ensuresSpec = propSpec__trees_316(p, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 181)); { if (!!((ensuresSpec == 0))) goto LA68_; patchResult__sempass50_3308((&t), ensuresSpec); asgnRef((void**) (&(*effects)._kind_6.sons->data[((NI) 2)]), ensuresSpec); } LA68_: ; nimZeroMem((void*)(&mutationInfo), sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug)); nimZeroMem((void*)(&mutationInfo), sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug)); hasMutationSideEffect = NIM_FALSE; { tySet_tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg goals; tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag partitions; if (!!(((12288 & (*c).features) == 0))) goto LA72_; goals = 0; { if (!(((*c).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 12))&31U)))!=0)) goto LA76_; goals |= ((NU8)1)<<((((tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg) 0)) & 7); } LA76_: ; { if (!(((*c).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 13))&31U)))!=0)) goto LA80_; goals |= ((NU8)1)<<((((tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg) 1)) & 7); } LA80_: ; nimZeroMem((void*)(&partitions), sizeof(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag)); computeGraphPartitions__varpartitions_1607(s, body, g, goals, (&partitions)); { NIM_BOOL T84_; T84_ = (NIM_BOOL)0; T84_ = !(t.hasSideEffect); if (!(T84_)) goto LA85_; T84_ = t.hasDangerousAssign; LA85_: ; if (!T84_) goto LA86_; t.hasSideEffect = hasSideEffect__varpartitions_131((&partitions), (&mutationInfo)); hasMutationSideEffect = t.hasSideEffect; } LA86_: ; { if (!(((*c).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 13))&31U)))!=0)) goto LA90_; checkBorrowedLocations__varpartitions_1719((&partitions), body, (*g).config); } LA90_: ; } LA72_: ; { NIM_BOOL T94_; T94_ = (NIM_BOOL)0; T94_ = (((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0); if (!(T94_)) goto LA95_; T94_ = t.gcUnsafe; LA95_: ; if (!T94_) goto LA96_; { NIM_BOOL T100_; T100_ = (NIM_BOOL)0; T100_ = (((*(*g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 23))&63U)))!=0); if (!(T100_)) goto LA101_; T100_ = (((*(*g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 25))&63U)))!=0); LA101_: ; if (!T100_) goto LA102_; listGcUnsafety__sempass50_411(s, NIM_FALSE, (*g).config); } goto LA98_; LA102_: ; { listGcUnsafety__sempass50_411(s, NIM_TRUE, (*g).config); } LA98_: ; } LA96_: ; { NIM_BOOL T107_; T107_ = (NIM_BOOL)0; T107_ = (((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 12))&63U)))!=0); if (!(T107_)) goto LA108_; T107_ = t.hasSideEffect; LA108_: ; if (!T107_) goto LA109_; { tyArray__Re75IspeoxXy2oCZHwcRrA T115_; NimStringDesc* T116_; if (!hasMutationSideEffect) goto LA113_; nimZeroMem((void*)T115_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA)); T115_[0] = copyString((*(*s).name).s); T115_[1] = dollar___varpartitions_108((*g).config, (&mutationInfo)); T116_ = NIM_NIL; T116_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_96), T115_, 2); liMessage__msgs_1118((*g).config, (*s).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T116_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_97, NIM_FALSE); } goto LA111_; LA113_: ; { NimStringDesc* msg; if (!((*c).compilesContextId == ((NI) 0))) goto LA118_; msg = ((NimStringDesc*) NIM_NIL); listSideEffects__sempass50_953((&msg), s, (*g).config, t.c); liMessage__msgs_1118((*g).config, (*s).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), msg, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_107, NIM_FALSE); } goto LA111_; LA118_: ; { liMessage__msgs_1118((*g).config, (*s).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) NIM_NIL), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_108, NIM_FALSE); } LA111_: ; } LA109_: ; { if (!!(t.gcUnsafe)) goto LA123_; (*(*s).typ).flags |= ((NU64)1)<<((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 7)) & 63); } LA123_: ; { NIM_BOOL T127_; T127_ = (NIM_BOOL)0; T127_ = !(t.hasSideEffect); if (!(T127_)) goto LA128_; T127_ = !((((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 13))&63U)))!=0)); LA128_: ; if (!T127_) goto LA129_; (*(*s).typ).flags |= ((NU64)1)<<((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1)) & 63); } LA129_: ; { if (!((*(*s).typ).lockLevel == ((NI16) -1))) goto LA133_; (*(*s).typ).lockLevel = t.maxLockLevel; } goto LA131_; LA133_: ; { tyArray__Re75IspeoxXy2oCZHwcRrA T138_; NimStringDesc* T139_; if (!((*(*s).typ).lockLevel < t.maxLockLevel)) goto LA136_; nimZeroMem((void*)T138_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA)); T138_[0] = dollar___ast_3858((*(*s).typ).lockLevel); T138_[1] = dollar___ast_3858(t.maxLockLevel); T139_ = NIM_NIL; T139_ = nsuFormatOpenArray(((NimStringDesc*) &TM__wkTG4eaV3t1uo3x09apjcwA_109), T138_, 2); liMessage__msgs_1118((*g).config, (*s).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 52), T139_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wkTG4eaV3t1uo3x09apjcwA_110, NIM_FALSE); } goto LA131_; LA136_: ; LA131_: ; { NIM_BOOL T142_; T142_ = (NIM_BOOL)0; T142_ = (((*c).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 14))&31U)))!=0); if (!(T142_)) goto LA143_; T142_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 12)); LA143_: ; if (!T142_) goto LA144_; checkNil__nilcheck_9345(s, body, (*g).config, (*c).Sup.idgen); } LA144_: ; }BeforeRet_: ; } N_LIB_PRIVATE N_NIMCALL(void, trackStmt__sempass50_4915)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isTopLevel) { tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g; tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* effects; tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA t; { { if (!((TM__wkTG4eaV3t1uo3x09apjcwA_111[(NU)((*n).kind)>>3] &(1U<<((NU)((*n).kind)&7U)))!=0)) goto LA3_; goto BeforeRet_; } LA3_: ; g = (*c).graph; effects = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 152), (*n).info); nimZeroMem((void*)(&t), sizeof(tyObject_TEffects__vxIpB3oPhn77OqeaB81hCA)); initEffects__sempass50_4653(g, effects, module, (&t), c); t.isTopLevel = isTopLevel; track__sempass50_2338((&t), n); }BeforeRet_: ; }