1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3
4 #include "nimbase.h"
5 #include <string.h>
6 #undef LANGUAGE_C
7 #undef MIPSEB
8 #undef MIPSEL
9 #undef PPC
10 #undef R3000
11 #undef R4000
12 #undef i386
13 #undef linux
14 #undef mips
15 #undef near
16 #undef far
17 #undef powerpc
18 #undef unix
19 #define nimfr_(x, y)
20 #define nimln_(x, y)
21 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
22 typedef struct tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug;
23 typedef struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q;
24 typedef struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA tySequence__Mh9agqM29bm9aP5AUL1x7dZGA;
25 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
26 typedef struct tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ;
27 typedef struct TNimType TNimType;
28 typedef struct TNimNode TNimNode;
29 typedef struct tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg;
30 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
31 typedef struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w;
32 typedef struct RootObj RootObj;
33 typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
34 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
35 typedef struct tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw;
36 typedef struct tySequence__eiMlYcU7NrAOGD2H36QOOQ tySequence__eiMlYcU7NrAOGD2H36QOOQ;
37 typedef struct tyObject_TProcCon__s5jyYR8yL1QmFqiHICzU9aQ tyObject_TProcCon__s5jyYR8yL1QmFqiHICzU9aQ;
38 typedef struct tyObject_TMatchedConcept__9blNHn9cqK8EfxnwsfjDnKvg tyObject_TMatchedConcept__9blNHn9cqK8EfxnwsfjDnKvg;
39 typedef struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ tySequence__eHqUwlHGGaPw0TDPDeL79cQ;
40 typedef struct tySequence__oYkV9aFZe0MXcEAprJaOUsA tySequence__oYkV9aFZe0MXcEAprJaOUsA;
41 typedef struct tySequence__arD7Tw6eD6lvOczWZl9buNg tySequence__arD7Tw6eD6lvOczWZl9buNg;
42 typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
43 typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
44 typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
45 typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA;
46 typedef struct tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw;
47 typedef struct tySequence__jWKvSdankQPoT5bw9cBU9aiw tySequence__jWKvSdankQPoT5bw9cBU9aiw;
48 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
49 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
50 typedef struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ;
51 typedef struct NimStringDesc NimStringDesc;
52 typedef struct TGenericSeq TGenericSeq;
53 typedef struct tySequence__xSqu3cxq5WeFlOO3YgE6yA tySequence__xSqu3cxq5WeFlOO3YgE6yA;
54 typedef struct tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w;
55 typedef struct tySequence__Bis5AbpONWcIRrPyPJS8Yw tySequence__Bis5AbpONWcIRrPyPJS8Yw;
56 typedef struct tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w;
57 typedef struct tySequence__E8pi9b5QNahsURYzXMjh3qw tySequence__E8pi9b5QNahsURYzXMjh3qw;
58 typedef struct tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ;
59 typedef struct tySequence__Hkw5zrAn53wlKDHdJF1GFA tySequence__Hkw5zrAn53wlKDHdJF1GFA;
60 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
61 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
62 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
63 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
64 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
65 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
66 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
67 typedef struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ tySequence__4mZLwkxT8rbt9bf3wXrXYNQ;
68 typedef struct tySequence__rQHmYk1HzcwNxKBymIFHpA tySequence__rQHmYk1HzcwNxKBymIFHpA;
69 typedef struct tySequence__XMM60DtBsc6xYsIpNANkrA tySequence__XMM60DtBsc6xYsIpNANkrA;
70 typedef struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw;
71 typedef struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg;
72 typedef struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg;
73 typedef struct tySequence__mWRMiYLthG9coLjkbElCxkw tySequence__mWRMiYLthG9coLjkbElCxkw;
74 typedef struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyObject_Table__iowAVDkco3qpbEH0z8OmkQ;
75 typedef struct tySequence__bTDCDwD2P7TodzbAefLcSw tySequence__bTDCDwD2P7TodzbAefLcSw;
76 typedef struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w;
77 typedef struct tySequence__3MPVXAHA08SszBrU4ffqEg tySequence__3MPVXAHA08SszBrU4ffqEg;
78 typedef struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw tyObject_Table__KcymdZjUsmGSK8BxmvoJgw;
79 typedef struct tySequence__YCf5zJHm4JI06qpmKwPUWg tySequence__YCf5zJHm4JI06qpmKwPUWg;
80 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
81 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
82 typedef struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ;
83 typedef struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA;
84 typedef struct tySequence__61s9cbAniKuBrdHwBhMDfQg tySequence__61s9cbAniKuBrdHwBhMDfQg;
85 typedef struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA tyObject_Table__fdKWDDO1P17zvuQPReVgRA;
86 typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
87 typedef struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ;
88 typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
89 typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
90 typedef struct tySequence__s9byh6WFJ16lPMcmqdaMTHA tySequence__s9byh6WFJ16lPMcmqdaMTHA;
91 typedef struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw tyObject_Table__Ue6w4c82v7gc7t2qntTbAw;
92 typedef struct tySequence__1U9bG8RcAedEeYkQLZjVFKA tySequence__1U9bG8RcAedEeYkQLZjVFKA;
93 typedef struct tyObject_Table__G1v8c16HePOldLeucwe05Q tyObject_Table__G1v8c16HePOldLeucwe05Q;
94 typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
95 typedef struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA;
96 typedef struct tySequence__23SMqauuRsbDANhthj9bWlA tySequence__23SMqauuRsbDANhthj9bWlA;
97 typedef struct tyObject_Table__NttoEzoiq5CiphZe81oadg tyObject_Table__NttoEzoiq5CiphZe81oadg;
98 typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
99 typedef struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg tyObject_Table__nagDFX4QHx0s6Fvma9blmSg;
100 typedef struct tySequence__pHNq3oXj9av2sEUdqaqeZjw tySequence__pHNq3oXj9av2sEUdqaqeZjw;
101 typedef struct tySequence__MAQKEADohlpnXTModtugbQ tySequence__MAQKEADohlpnXTModtugbQ;
102 typedef struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA;
103 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
104 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
105 typedef struct tySequence__O5RcspOP32YJ4YtU5ppxxA tySequence__O5RcspOP32YJ4YtU5ppxxA;
106 typedef struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg;
107 typedef struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ;
108 typedef struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ;
109 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
110 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
111 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
112 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
113 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
114 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
115 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
116 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
117 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
118 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
119 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
120 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
121 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
122 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
123 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
124 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
125 typedef struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ tyTuple__VrD6plbUKJjYKM0lCr3hGQ;
126 typedef struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g tySequence__159bHWBGAOOs6U7OZ9cQlO0g;
127 typedef struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA;
128 typedef struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg;
129 typedef struct tyObject_ImportedModule__kyodd8HBOgfP30dipCL3JQ tyObject_ImportedModule__kyodd8HBOgfP30dipCL3JQ;
130 typedef struct tyObject_TOptionEntry__H9ac5KbrDJVwT1zH5O83r7w tyObject_TOptionEntry__H9ac5KbrDJVwT1zH5O83r7w;
131 typedef struct tyObject_TInstantiationPair__HkXM4cJmOpk8zFcmq9c9c3gQ tyObject_TInstantiationPair__HkXM4cJmOpk8zFcmq9c9c3gQ;
132 typedef struct tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA;
133 typedef struct tyTuple__KNXySARiHvEh2wA9asnyYmw tyTuple__KNXySARiHvEh2wA9asnyYmw;
134 typedef struct tyTuple__NAaJgGVgNmlGoqmiWxdOHQ tyTuple__NAaJgGVgNmlGoqmiWxdOHQ;
135 typedef struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ;
136 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
137 typedef struct tyTuple__Y6Ewh3MCxsjd1bsriN6Gag tyTuple__Y6Ewh3MCxsjd1bsriN6Gag;
138 typedef struct tySequence__vGU8AyGT6KxtLJwEg0BpNw tySequence__vGU8AyGT6KxtLJwEg0BpNw;
139 typedef struct tyTuple__KvKIqRIx9anKcDMu8DPSkHw tyTuple__KvKIqRIx9anKcDMu8DPSkHw;
140 typedef struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA;
141 typedef struct tySequence__vv5mGmK03BCr5e3LTZA5Hw tySequence__vv5mGmK03BCr5e3LTZA5Hw;
142 typedef struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w;
143 typedef struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ;
144 typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA;
145 typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA;
146 typedef struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw;
147 typedef struct tySequence__29bS0n2QNyO1R7e0qMMOvLA tySequence__29bS0n2QNyO1R7e0qMMOvLA;
148 typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg;
149 typedef struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg tySequence__REuPuHuSlOkZ0Q5oqzDrQg;
150 typedef struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA tySequence__I9aQmO9asXXWJ58UI9c8BCSzA;
151 typedef struct tySequence__NyaOkf8ZwxP6rkRF5TOkew tySequence__NyaOkf8ZwxP6rkRF5TOkew;
152 typedef struct tySequence__L9bOt8CaTEmIjgtuZvp6syg tySequence__L9bOt8CaTEmIjgtuZvp6syg;
153 typedef struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ tySequence__im8UB2GsZvUaQ4a1wKGWhQ;
154 typedef struct tySequence__xxnXDLpoqBo8zJzP9b1073g tySequence__xxnXDLpoqBo8zJzP9b1073g;
155 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
156 typedef struct tySequence__DfmUmNgVGnYaiV1I6227tw tySequence__DfmUmNgVGnYaiV1I6227tw;
157 typedef struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA tySequence__t8Uv4lEJ4lkuECvP9c6JMhA;
158 typedef struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg;
159 typedef struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ;
160 typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
161 typedef struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g tyObject_Table__CE4eiu6FavV1vmUiTXQ70g;
162 typedef struct tySequence__9bT7o0CflHuiE4VhmtqBPCw tySequence__9bT7o0CflHuiE4VhmtqBPCw;
163 typedef struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw;
164 typedef struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q tyObject_Table__TRm6MPqklA8EYBmBMY117Q;
165 typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
166 typedef struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ;
167 typedef struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg tyTuple__o67sDX0wYbEuhI9cJYAbDtg;
168 typedef struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA;
169 typedef struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg;
170 typedef struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA tySequence__ipEvhpHAmm8ZCn9bZAOdNYA;
171 typedef struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q tyTuple__9aNnDWBFMF44sfFinBpMT4Q;
172 typedef struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg;
173 typedef struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA tyTuple__1ZbjBgxAbnye0IFMZ6w4OA;
174 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
175 typedef struct tyTuple__rplX06U9bjhu9asm5pWdgqsA tyTuple__rplX06U9bjhu9asm5pWdgqsA;
176 typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
177 typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
178 typedef struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A;
179 typedef struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ tyTuple__3i6hlQmqrn6m7tuVN8FHjQ;
180 typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
181 typedef struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw;
182 typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
183 typedef struct tyTuple__wcNatyuf8WOqAhGLhSvgiw tyTuple__wcNatyuf8WOqAhGLhSvgiw;
184 typedef struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg;
185 typedef struct tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g;
186 typedef struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ;
187 typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
188 typedef struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow;
189 typedef struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg;
190 typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
191 typedef struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA tyTuple__Q7r9caOmeWqQGZCIBHhGRUA;
192 typedef struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg;
193 typedef struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw tyTuple__XyJ8LOAZzVVXSsmt09b8uWw;
194 typedef struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA;
195 typedef struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw tySequence__vC9cvg0R8tfBaOXXi3sfMzw;
196 typedef struct tyTuple__9aoobCDZB4x41HJSOmh0mwA tyTuple__9aoobCDZB4x41HJSOmh0mwA;
197 typedef struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA tyTuple__g0Q6Qx15nK53ce9aLo7YyrA;
198 typedef struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw;
199 typedef struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw;
200 typedef struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA;
201 typedef struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ;
202 typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
203 struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q {
204 NI counter;
205 tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* data;
206 };
207 struct tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ {
208 tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q topLayer;
209 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* nextLayer;
210 };
211 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
212 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
213 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
214 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
215 struct TNimType {
216 NI size;
217 NI align;
218 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
219 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
220 TNimType* base;
221 TNimNode* node;
222 void* finalizer;
223 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
224 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
225 };
226 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
227 struct TNimNode {
228 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
229 NI offset;
230 TNimType* typ;
231 NCSTRING name;
232 NI len;
233 TNimNode** sons;
234 };
235 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
236 NU16 line;
237 NI16 col;
238 NI32 fileIndex;
239 };
240 struct tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg {
241 tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c;
242 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* typeMap;
243 tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q symMap;
244 tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q localCache;
245 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
246 NIM_BOOL allowMetaTypes;
247 NIM_BOOL skipTypedesc;
248 NIM_BOOL isReturnType;
249 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
250 NI recursionLimit;
251 };
252 struct RootObj {
253 TNimType* m_type;
254 };
255 struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w {
256 RootObj Sup;
257 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
258 };
259 typedef tyObject_TType__facALICuu8zUj0hjvbTLFg* tyArray__d88NmFOoQ1OEoX9af4f9aptg[38];
260 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__RcJNn9bSvWdJgUmA1O6sbHA) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
261 typedef NU32 tySet_tyEnum_TExprFlag__0WWd9a4ssQWuY7Q6ZKepq9cQ;
262 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__39auogS0nN05zO6JrT7za9cQ) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySet_tyEnum_TExprFlag__0WWd9a4ssQWuY7Q6ZKepq9cQ flags);
263 typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__DZXD9cPwIfL76eNszoUR9aVA) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
264 typedef struct {
265 N_NIMCALL_PTR(NIM_BOOL, ClP_0) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, void* ClE_0);
266 void* ClE_0;
267 } tyProc__7JwrY3AhkVNlleAJXClX9cw;
268 typedef NU32 tySet_tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
269 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);
270 typedef N_NIMCALL_PTR(tyObject_TType__facALICuu8zUj0hjvbTLFg*, tyProc__IDzB9bjws1yntQXPpMRrBvA) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* prev);
271 typedef struct {
272 N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, ClP_0) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q pt, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, void* ClE_0);
273 void* ClE_0;
274 } tyProc__3cacbJ4la9bDJNibHybQSnA;
275 typedef struct {
276 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);
277 void* ClE_0;
278 } tyProc__fMj9boIZZOt9cLWRnD3rtKhA;
279 typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
280 struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
281 NI elems;
282 NI counter;
283 NI max;
284 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
285 tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
286 tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
287 };
288 struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA {
289 NI counter;
290 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* data;
291 };
292 typedef NU8 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg;
293 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);
294 struct TGenericSeq {
295 NI len;
296 NI reserved;
297 };
298 struct NimStringDesc {
299 TGenericSeq Sup;
300 NIM_CHAR data[SEQ_DECL_SIZE];
301 };
302 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
303 struct tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w {
304 tySequence__Bis5AbpONWcIRrPyPJS8Yw* data;
305 NI counter;
306 };
307 struct tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w {
308 tySequence__E8pi9b5QNahsURYzXMjh3qw* data;
309 NI counter;
310 };
311 struct tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ {
312 tySequence__Hkw5zrAn53wlKDHdJF1GFA* data;
313 NI counter;
314 };
315 struct tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug {
316 tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w Sup;
317 tyObject_TType__facALICuu8zUj0hjvbTLFg* enforceVoidContext;
318 tyObject_TType__facALICuu8zUj0hjvbTLFg* voidType;
319 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
320 tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw* currentScope;
321 tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw* moduleScope;
322 tySequence__eiMlYcU7NrAOGD2H36QOOQ* imports;
323 tyObject_TScope__1cQRXW6aAknk7ywAwjH3nw* topLevelScope;
324 tyObject_TProcCon__s5jyYR8yL1QmFqiHICzU9aQ* p;
325 tyArray__d88NmFOoQ1OEoX9af4f9aptg intTypeCache;
326 tyObject_TType__facALICuu8zUj0hjvbTLFg* nilTypeCache;
327 tyObject_TMatchedConcept__9blNHn9cqK8EfxnwsfjDnKvg* matchedConcept;
328 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* friendModules;
329 NI instCounter;
330 NI* templInstCounter;
331 NI inGenericContext;
332 NI inStaticContext;
333 NI inUnrolledContext;
334 NI compilesContextId;
335 NI compilesContextIdGenerator;
336 NI inGenericInst;
337 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* converters;
338 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* patterns;
339 tySequence__oYkV9aFZe0MXcEAprJaOUsA* optionStack;
340 tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q symMapping;
341 tySequence__arD7Tw6eD6lvOczWZl9buNg* libs;
342 tyProc__RcJNn9bSvWdJgUmA1O6sbHA semConstExpr;
343 tyProc__39auogS0nN05zO6JrT7za9cQ semExpr;
344 tyProc__39auogS0nN05zO6JrT7za9cQ semTryExpr;
345 tyProc__RcJNn9bSvWdJgUmA1O6sbHA semTryConstExpr;
346 tyProc__DZXD9cPwIfL76eNszoUR9aVA computeRequiresInit;
347 tyProc__7JwrY3AhkVNlleAJXClX9cw hasUnresolvedArgs;
348 tyProc__39auogS0nN05zO6JrT7za9cQ semOperand;
349 tyProc__RcJNn9bSvWdJgUmA1O6sbHA semConstBoolExpr;
350 tyProc__qlV9aWvA5wrWVg9bI5PqwJyA semOverloadedCall;
351 tyProc__IDzB9bjws1yntQXPpMRrBvA semTypeNode;
352 tyProc__3cacbJ4la9bDJNibHybQSnA semInferredLambda;
353 tyProc__fMj9boIZZOt9cLWRnD3rtKhA semGenerateInstance;
354 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA includedFiles;
355 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA pureEnumFields;
356 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA userPragmas;
357 tyObject_TCtx__S3Av1Ng7MBWGEZZBhfDYCw* evalContext;
358 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA unknownIdents;
359 tySequence__jWKvSdankQPoT5bw9cBU9aiw* generics;
360 NI topStmts;
361 NI lastGenericIdx;
362 NI hloLoopDetector;
363 NI inParallelStmt;
364 tyProc__zh0Qj9bYHDZFnJnPjcxz6NQ instTypeBoundOp;
365 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* selfName;
366 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
367 tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph;
368 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA signatures;
369 NimStringDesc* recursiveDep;
370 NIM_BOOL suggestionsMade;
371 NIM_BOOL isAmbiguous;
372 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
373 NI inTypeContext;
374 NI inConceptDecl;
375 tySequence__xSqu3cxq5WeFlOO3YgE6yA* unusedImports;
376 tyObject_HashSet__Gy4haGrophX9bC5RxnPAc6w exportIndirections;
377 tyObject_Table__Ea0e9azliYta9cYyn0d49ah0w importModuleMap;
378 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastTLineInfo;
379 tyObject_Table__svXG3o7j9bfi6HJT79cNF29cQ sideEffects;
380 NI inUncheckedAssignSection;
381 };
382 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
383 NI32 module;
384 NI32 item;
385 };
386 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
387 RootObj Sup;
388 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
389 };
390 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
391 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
392 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
393 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
394 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
395 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
396 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
397 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
398 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
399 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
400 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
401 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
402 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
403 };
404 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
405 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
406 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
407 union{
408 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
409 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
410 } _kind_1;
411 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
412 NI bitsize;
413 NI alignment;
414 } _kind_2;
415 };
416 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
417 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
418 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
419 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
420 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
421 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
422 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
423 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
424 NI position;
425 NI offset;
426 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
427 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
428 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
429 };
430 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
431 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
432 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
433 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
434 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
435 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
436 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
437 union{
438 struct {NI64 intVal;
439 } _kind_1;
440 struct {NF floatVal;
441 } _kind_2;
442 struct {NimStringDesc* strVal;
443 } _kind_3;
444 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
445 } _kind_4;
446 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
447 } _kind_5;
448 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
449 } _kind_6;
450 };
451 };
452 struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw {
453 tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg* data;
454 NI counter;
455 };
456 struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg {
457 tySequence__mWRMiYLthG9coLjkbElCxkw* data;
458 NI counter;
459 };
460 struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ {
461 tySequence__bTDCDwD2P7TodzbAefLcSw* data;
462 NI counter;
463 };
464 typedef tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ[5];
465 struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w {
466 tySequence__3MPVXAHA08SszBrU4ffqEg* data;
467 NI counter;
468 };
469 struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw {
470 tySequence__YCf5zJHm4JI06qpmKwPUWg* data;
471 NI counter;
472 };
473 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
474 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
475 NI counter;
476 };
477 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
478 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
479 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
480 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
481 struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ {
482 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
483 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
484 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
485 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
486 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
487 };
488 struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA {
489 tySequence__61s9cbAniKuBrdHwBhMDfQg* data;
490 NI counter;
491 };
492 struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA {
493 tySequence__fdmz6VkIf1ewwrssKYqRFg* data;
494 NI counter;
495 };
496 struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ {
497 tySequence__kxu4GK0onha2t9bo86mdVAg* data;
498 NI counter;
499 };
500 typedef struct {
501 N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
502 void* ClE_0;
503 } tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
504 typedef tyObject_TType__facALICuu8zUj0hjvbTLFg* tyArray__9bjuenwQUcqO3lbmS2wX7uA[65];
505 struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw {
506 tySequence__1U9bG8RcAedEeYkQLZjVFKA* data;
507 NI counter;
508 };
509 struct tyObject_Table__G1v8c16HePOldLeucwe05Q {
510 tySequence__fIB1rTQ55aFonoft9a9bmljQ* data;
511 NI counter;
512 };
513 typedef N_NIMCALL_PTR(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, tyProc__VHDwJFdIqpwtpUGuxiXUwg) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
514 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__mjUN9alLJ31lnSKkUsuyWMw) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
515 struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA {
516 tySequence__23SMqauuRsbDANhthj9bWlA* data;
517 NI counter;
518 };
519 struct tyObject_Table__NttoEzoiq5CiphZe81oadg {
520 tySequence__squ9b9bUH4OLHf6cEMrt6hVA* data;
521 NI counter;
522 };
523 struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg {
524 tySequence__pHNq3oXj9av2sEUdqaqeZjw* data;
525 NI counter;
526 };
527 typedef N_NIMCALL_PTR(void, tyProc__TjycsqkDBjsxd4da6KYTng) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
528 typedef N_NIMCALL_PTR(void, tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body);
529 typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__J7Jq15ZScfKLqcLx8sEz9cA) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TType__facALICuu8zUj0hjvbTLFg* formal, tyObject_TType__facALICuu8zUj0hjvbTLFg* actual);
530 struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA {
531 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opNot;
532 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opContains;
533 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLe;
534 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLt;
535 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAnd;
536 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opOr;
537 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opIsNil;
538 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opEq;
539 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAdd;
540 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opSub;
541 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opMul;
542 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opDiv;
543 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLen;
544 };
545 struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ {
546 tySequence__4mZLwkxT8rbt9bf3wXrXYNQ* ifaces;
547 tySequence__rQHmYk1HzcwNxKBymIFHpA* packed_0;
548 tySequence__XMM60DtBsc6xYsIpNANkrA* encoders;
549 tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw typeInstCache;
550 tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg procInstCache;
551 tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ attachedOps;
552 tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w methodsPerType;
553 tyObject_Table__KcymdZjUsmGSK8BxmvoJgw enumToStringProcs;
554 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA emittedTypeInfo;
555 tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ startupPackedConfig;
556 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageSyms;
557 tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA modulesPerPackage;
558 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA deps;
559 tyObject_Table__fdKWDDO1P17zvuQPReVgRA importDeps;
560 NIM_BOOL suggestMode;
561 NIM_BOOL invalidTransitiveClosure;
562 tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ inclToMod;
563 tySequence__48JTohSgTy339bRxHzUD8KA* importStack;
564 RootObj* backend;
565 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
566 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
567 RootObj* vm;
568 tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
569 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* usageSym;
570 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* owners;
571 tySequence__s9byh6WFJ16lPMcmqdaMTHA* methods;
572 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* systemModule;
573 tyArray__9bjuenwQUcqO3lbmS2wX7uA sysTypes;
574 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA compilerprocs;
575 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA exposed;
576 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageTypes;
577 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* emptyNode;
578 tyObject_Table__Ue6w4c82v7gc7t2qntTbAw canonTypes;
579 tyObject_Table__G1v8c16HePOldLeucwe05Q symBodyHashes;
580 tyProc__VHDwJFdIqpwtpUGuxiXUwg importModuleCallback;
581 tyProc__mjUN9alLJ31lnSKkUsuyWMw includeFileCallback;
582 tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA cacheSeqs;
583 tyObject_Table__NttoEzoiq5CiphZe81oadg cacheCounters;
584 tyObject_Table__nagDFX4QHx0s6Fvma9blmSg cacheTables;
585 tySequence__MAQKEADohlpnXTModtugbQ* passes;
586 tyProc__TjycsqkDBjsxd4da6KYTng onDefinition;
587 tyProc__TjycsqkDBjsxd4da6KYTng onDefinitionResolveForward;
588 tyProc__TjycsqkDBjsxd4da6KYTng onUsage;
589 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* globalDestructors;
590 tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ strongSemCheck;
591 tyProc__J7Jq15ZScfKLqcLx8sEz9cA compatibleProps;
592 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
593 tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA operators;
594 };
595 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
596 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
597 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
598 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
599 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
600 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
601 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
602 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
603 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
604 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
605 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
606 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
607 NI64 size;
608 NI16 align;
609 NI16 paddingAtEnd;
610 NI16 lockLevel;
611 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
612 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
613 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
614 };
615 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
616 NimStringDesc* Field0;
617 NI Field1;
618 NI Field2;
619 };
620 struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ {
621 NU32 module;
622 NI32 item;
623 };
624 struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ {
625 NI module;
626 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ packed_0;
627 };
628 struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg {
629 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
630 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
631 };
632 typedef NU8 tyEnum_TDistinctCompare__9bNKHGs63atuMFXnAleTveg;
633 typedef NU8 tySet_tyEnum_TTypeCmpFlag__72pgRXSg7774cr9aCWVPORw;
634 typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
635 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
636 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
637 typedef NU8 tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw;
638 struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q {
639 NI32 module;
640 NI32 symId;
641 NI32 typeId_0;
642 NIM_BOOL sealed;
643 };
644 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
645 NI refcount;
646 TNimType* typ;
647 };
648 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
649 void* bottom;
650 };
651 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
652 NI len;
653 NI cap;
654 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
655 };
656 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
657 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
658 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
659 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
660 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
661 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
662 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
663 };
664 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
665 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
666 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
667 NI key;
668 NI upperBound;
669 NI level;
670 };
671 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
672 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
673 NI Field1;
674 };
675 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
676 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
677 NI len;
678 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
679 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
680 };
681 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
682 NI minLargeObj;
683 NI maxLargeObj;
684 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
685 NU32 flBitmap;
686 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
687 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
688 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
689 NI currMem;
690 NI maxMem;
691 NI freeMem;
692 NI occ;
693 NI lastSize;
694 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
695 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
696 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
697 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
698 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
699 NIM_BOOL locked;
700 NIM_BOOL blockChunkSizeIncrease;
701 NI nextChunkSize;
702 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
703 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
704 };
705 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
706 NI stackScans;
707 NI cycleCollections;
708 NI maxThreshold;
709 NI maxStackSize;
710 NI maxStackCells;
711 NI cycleTableSize;
712 NI64 maxPause;
713 };
714 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
715 NI counter;
716 NI max;
717 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
718 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
719 };
720 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
721 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
722 NI cycleThreshold;
723 NI zctThreshold;
724 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
725 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
726 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
727 NI recGcLock;
728 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
729 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
730 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
731 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
732 NI gcThreadId;
733 };
734 typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
735 typedef NU8 tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag[9];
736 struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA {
737 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
738 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
739 };
740 struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ {
741 NI Field0;
742 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field1;
743 };
744 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
745 NI id;
746 NimStringDesc* s;
747 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
748 NI h;
749 };
750 struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg {
751 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key;
752 RootObj* val;
753 };
754 typedef NU8 tyEnum_ImportMode__OHfXXgrGOSWpZv16VYg4yQ;
755 struct tyObject_ImportedModule__kyodd8HBOgfP30dipCL3JQ {
756 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m;
757 tyEnum_ImportMode__OHfXXgrGOSWpZv16VYg4yQ mode;
758 union{
759 struct {tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA imported;
760 } _mode_2;
761 struct {tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA exceptSet;
762 } _mode_3;
763 };
764 };
765 struct tyObject_TInstantiationPair__HkXM4cJmOpk8zFcmq9c9c3gQ {
766 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* genericSym;
767 tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* inst;
768 };
769 struct tyTuple__KNXySARiHvEh2wA9asnyYmw {
770 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field0;
771 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field1;
772 };
773 struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ {
774 NI Field0;
775 NI Field1;
776 };
777 struct tyTuple__NAaJgGVgNmlGoqmiWxdOHQ {
778 NI Field0;
779 tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ Field1;
780 };
781 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
782 NI Field0;
783 NI Field1;
784 NI Field2;
785 };
786 struct tyTuple__KvKIqRIx9anKcDMu8DPSkHw {
787 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
788 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field1;
789 };
790 struct tyTuple__Y6Ewh3MCxsjd1bsriN6Gag {
791 NI Field0;
792 NI Field1;
793 tySequence__vGU8AyGT6KxtLJwEg0BpNw* Field2;
794 };
795 struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA {
796 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
797 tySequence__vv5mGmK03BCr5e3LTZA5Hw* converters;
798 tySequence__vv5mGmK03BCr5e3LTZA5Hw* patterns;
799 tySequence__vv5mGmK03BCr5e3LTZA5Hw* pureEnums;
800 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interf;
801 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interfHidden;
802 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* uniqueName;
803 };
804 typedef NU8 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q;
805 struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw {
806 tySequence__29bS0n2QNyO1R7e0qMMOvLA* nodes;
807 };
808 typedef NU8 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g;
809 struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg {
810 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* vals;
811 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
812 };
813 struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ {
814 tySequence__IHUFRsFxZNv7YydiUO2esQ* vals;
815 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
816 };
817 struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ {
818 NimStringDesc* definedSymbols;
819 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw moduleFlags;
820 tySequence__PXIzfWocnrafGz5p3CP5LA* includes;
821 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* imports;
822 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw toReplay;
823 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw topLevel;
824 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw bodies;
825 tySequence__b89aLriiJnVTD186H6zNIgg* exports;
826 tySequence__b89aLriiJnVTD186H6zNIgg* hidden;
827 tySequence__REuPuHuSlOkZ0Q5oqzDrQg* reexports;
828 tySequence__b89aLriiJnVTD186H6zNIgg* compilerProcs;
829 tySequence__48JTohSgTy339bRxHzUD8KA* converters;
830 tySequence__48JTohSgTy339bRxHzUD8KA* methods;
831 tySequence__48JTohSgTy339bRxHzUD8KA* trmacros;
832 tySequence__48JTohSgTy339bRxHzUD8KA* pureEnums;
833 tySequence__I9aQmO9asXXWJ58UI9c8BCSzA* macroUsages;
834 tySequence__NyaOkf8ZwxP6rkRF5TOkew* typeInstCache;
835 tySequence__L9bOt8CaTEmIjgtuZvp6syg* procInstCache;
836 tySequence__im8UB2GsZvUaQ4a1wKGWhQ* attachedOps;
837 tySequence__xxnXDLpoqBo8zJzP9b1073g* methodsPerType;
838 tySequence__NyaOkf8ZwxP6rkRF5TOkew* enumToStringProcs;
839 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* emittedTypeInfo;
840 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g backendFlags;
841 tySequence__DfmUmNgVGnYaiV1I6227tw* syms;
842 tySequence__t8Uv4lEJ4lkuECvP9c6JMhA* types;
843 tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg strings;
844 tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ numbers;
845 tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ cfg;
846 };
847 struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g {
848 tySequence__9bT7o0CflHuiE4VhmtqBPCw* data;
849 NI counter;
850 };
851 struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w {
852 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q status;
853 NIM_BOOL symsInit;
854 NIM_BOOL typesInit;
855 NIM_BOOL loadedButAliveSetChanged;
856 tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ fromDisk;
857 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* syms;
858 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* types;
859 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
860 tyObject_Table__CE4eiu6FavV1vmUiTXQ70g iface;
861 tyObject_Table__CE4eiu6FavV1vmUiTXQ70g ifaceHidden;
862 };
863 struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q {
864 tySequence__9cnx3zXnWzeclW8Ko4oUgAQ* data;
865 NI counter;
866 };
867 struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw {
868 NI32 thisModule;
869 NI32 lastFile;
870 NU32 lastLit;
871 tyObject_Table__TRm6MPqklA8EYBmBMY117Q filenames;
872 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* pendingTypes;
873 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* pendingSyms;
874 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA typeMarker;
875 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA symMarker;
876 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
877 };
878 struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ {
879 NI Field0;
880 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
881 tySequence__O5RcspOP32YJ4YtU5ppxxA* Field2;
882 };
883 struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg {
884 NI module;
885 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ sym;
886 tySequence__ipEvhpHAmm8ZCn9bZAOdNYA* concreteTypes;
887 tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* inst;
888 };
889 struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg {
890 NI Field0;
891 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
892 tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA* Field2;
893 };
894 struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q {
895 NI Field0;
896 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
897 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field2;
898 };
899 struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg {
900 NI Field0;
901 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
902 tySequence__159bHWBGAOOs6U7OZ9cQlO0g* Field2;
903 };
904 struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA {
905 NI Field0;
906 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
907 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field2;
908 };
909 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
910 NI Field0;
911 NimStringDesc* Field1;
912 NI32 Field2;
913 };
914 struct tyTuple__rplX06U9bjhu9asm5pWdgqsA {
915 NI Field0;
916 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
917 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA Field2;
918 };
919 struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
920 NI Field0;
921 NI32 Field1;
922 tySequence__48JTohSgTy339bRxHzUD8KA* Field2;
923 };
924 struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
925 NI Field0;
926 NI32 Field1;
927 NI32 Field2;
928 };
929 struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A {
930 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* Field0;
931 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field1;
932 };
933 typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16];
934 struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ {
935 NI Field0;
936 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
937 tyObject_TType__facALICuu8zUj0hjvbTLFg* Field2;
938 };
939 struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
940 NI Field0;
941 NI Field1;
942 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
943 };
944 struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw {
945 NI Field0;
946 NimStringDesc* Field1;
947 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field2;
948 };
949 struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
950 NI Field0;
951 NimStringDesc* Field1;
952 NI64 Field2;
953 };
954 struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg {
955 tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g* root;
956 NI entries;
957 };
958 struct tyTuple__wcNatyuf8WOqAhGLhSvgiw {
959 NI Field0;
960 NimStringDesc* Field1;
961 tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg Field2;
962 };
963 typedef N_NIMCALL_PTR(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, tyProc__jkSFMhvPZ1AdGcvT2dK9a2w) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
964 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__A7Sdoem70tRxSEmKrf9cmyg) (tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* topLevelStmt);
965 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__EAEKmBUgKFg29agoUGtzDEQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
966 struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ {
967 tyProc__jkSFMhvPZ1AdGcvT2dK9a2w Field0;
968 tyProc__A7Sdoem70tRxSEmKrf9cmyg Field1;
969 tyProc__EAEKmBUgKFg29agoUGtzDEQ Field2;
970 NIM_BOOL Field3;
971 };
972 struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q {
973 NU32 Field0;
974 NimStringDesc* Field1;
975 };
976 struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg {
977 NU16 line;
978 NI16 col;
979 NU32 file;
980 };
981 struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow {
982 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
983 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
984 NI32 operand;
985 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeId_0;
986 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
987 };
988 struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ {
989 NU32 Field0;
990 NI32 Field1;
991 };
992 struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA {
993 NU32 Field0;
994 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
995 };
996 struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg {
997 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
998 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg Field1;
999 };
1000 struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw {
1001 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
1002 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
1003 };
1004 struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA {
1005 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ key;
1006 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
1007 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* concreteTypes;
1008 };
1009 struct tyTuple__9aoobCDZB4x41HJSOmh0mwA {
1010 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg Field0;
1011 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
1012 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
1013 };
1014 struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA {
1015 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
1016 NI Field1;
1017 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
1018 };
1019 typedef NU8 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ;
1020 struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw {
1021 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ kind;
1022 NIM_BOOL generated;
1023 NIM_BOOL isOverriden;
1024 NU32 name;
1025 NI32 path;
1026 };
1027 struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw {
1028 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
1029 NU32 name;
1030 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typ;
1031 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
1032 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
1033 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
1034 NI32 ast;
1035 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
1036 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ guard;
1037 NI bitsize;
1038 NI alignment;
1039 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
1040 NI position;
1041 NI offset;
1042 NU32 externalName;
1043 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA locFlags;
1044 tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw annex;
1045 NI32 constraint;
1046 };
1047 struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA {
1048 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
1049 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
1050 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
1051 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* types;
1052 NI32 n;
1053 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
1054 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
1055 NI64 size;
1056 NI16 align;
1057 NI16 paddingAtEnd;
1058 NI16 lockLevel;
1059 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeInst;
1060 NI32 nonUniqueId;
1061 };
1062 struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ {
1063 NI Field0;
1064 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* Field1;
1065 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* Field2;
1066 };
1067 struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA {
1068 NI Field0;
1069 NI32 Field1;
1070 NU32 Field2;
1071 };
1072 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
1073 TGenericSeq Sup;
1074 tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
1075 };
1076 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
1077 TGenericSeq Sup;
1078 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
1079 };
1080 struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA {
1081 TGenericSeq Sup;
1082 tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg data[SEQ_DECL_SIZE];
1083 };
1084 struct tySequence__eiMlYcU7NrAOGD2H36QOOQ {
1085 TGenericSeq Sup;
1086 tyObject_ImportedModule__kyodd8HBOgfP30dipCL3JQ data[SEQ_DECL_SIZE];
1087 };
1088 struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ {
1089 TGenericSeq Sup;
1090 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* data[SEQ_DECL_SIZE];
1091 };
1092 struct tySequence__oYkV9aFZe0MXcEAprJaOUsA {
1093 TGenericSeq Sup;
1094 tyObject_TOptionEntry__H9ac5KbrDJVwT1zH5O83r7w* data[SEQ_DECL_SIZE];
1095 };
1096 struct tySequence__arD7Tw6eD6lvOczWZl9buNg {
1097 TGenericSeq Sup;
1098 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* data[SEQ_DECL_SIZE];
1099 };
1100 struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
1101 TGenericSeq Sup;
1102 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
1103 };
1104 struct tySequence__jWKvSdankQPoT5bw9cBU9aiw {
1105 TGenericSeq Sup;
1106 tyObject_TInstantiationPair__HkXM4cJmOpk8zFcmq9c9c3gQ data[SEQ_DECL_SIZE];
1107 };
1108 struct tySequence__xSqu3cxq5WeFlOO3YgE6yA {
1109 TGenericSeq Sup;
1110 tyTuple__KNXySARiHvEh2wA9asnyYmw data[SEQ_DECL_SIZE];
1111 };
1112 struct tySequence__Bis5AbpONWcIRrPyPJS8Yw {
1113 TGenericSeq Sup;
1114 tyTuple__NAaJgGVgNmlGoqmiWxdOHQ data[SEQ_DECL_SIZE];
1115 };
1116 struct tySequence__E8pi9b5QNahsURYzXMjh3qw {
1117 TGenericSeq Sup;
1118 tyTuple__47w2DboNEPf69aPgubZdd7Q data[SEQ_DECL_SIZE];
1119 };
1120 struct tySequence__vGU8AyGT6KxtLJwEg0BpNw {
1121 TGenericSeq Sup;
1122 tyTuple__KvKIqRIx9anKcDMu8DPSkHw data[SEQ_DECL_SIZE];
1123 };
1124 struct tySequence__Hkw5zrAn53wlKDHdJF1GFA {
1125 TGenericSeq Sup;
1126 tyTuple__Y6Ewh3MCxsjd1bsriN6Gag data[SEQ_DECL_SIZE];
1127 };
1128 struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ {
1129 TGenericSeq Sup;
1130 tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA data[SEQ_DECL_SIZE];
1131 };
1132 struct tySequence__rQHmYk1HzcwNxKBymIFHpA {
1133 TGenericSeq Sup;
1134 tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w data[SEQ_DECL_SIZE];
1135 };
1136 struct tySequence__XMM60DtBsc6xYsIpNANkrA {
1137 TGenericSeq Sup;
1138 tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw data[SEQ_DECL_SIZE];
1139 };
1140 struct tySequence__O5RcspOP32YJ4YtU5ppxxA {
1141 TGenericSeq Sup;
1142 tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg data[SEQ_DECL_SIZE];
1143 };
1144 struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg {
1145 TGenericSeq Sup;
1146 tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ data[SEQ_DECL_SIZE];
1147 };
1148 struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA {
1149 TGenericSeq Sup;
1150 tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg data[SEQ_DECL_SIZE];
1151 };
1152 struct tySequence__mWRMiYLthG9coLjkbElCxkw {
1153 TGenericSeq Sup;
1154 tyTuple__o67sDX0wYbEuhI9cJYAbDtg data[SEQ_DECL_SIZE];
1155 };
1156 struct tySequence__bTDCDwD2P7TodzbAefLcSw {
1157 TGenericSeq Sup;
1158 tyTuple__9aNnDWBFMF44sfFinBpMT4Q data[SEQ_DECL_SIZE];
1159 };
1160 struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g {
1161 TGenericSeq Sup;
1162 tyTuple__VrD6plbUKJjYKM0lCr3hGQ data[SEQ_DECL_SIZE];
1163 };
1164 struct tySequence__3MPVXAHA08SszBrU4ffqEg {
1165 TGenericSeq Sup;
1166 tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg data[SEQ_DECL_SIZE];
1167 };
1168 struct tySequence__YCf5zJHm4JI06qpmKwPUWg {
1169 TGenericSeq Sup;
1170 tyTuple__1ZbjBgxAbnye0IFMZ6w4OA data[SEQ_DECL_SIZE];
1171 };
1172 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
1173 TGenericSeq Sup;
1174 tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
1175 };
1176 struct tySequence__61s9cbAniKuBrdHwBhMDfQg {
1177 TGenericSeq Sup;
1178 tyTuple__rplX06U9bjhu9asm5pWdgqsA data[SEQ_DECL_SIZE];
1179 };
1180 struct tySequence__48JTohSgTy339bRxHzUD8KA {
1181 TGenericSeq Sup;
1182 NI32 data[SEQ_DECL_SIZE];
1183 };
1184 struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
1185 TGenericSeq Sup;
1186 tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE];
1187 };
1188 struct tySequence__kxu4GK0onha2t9bo86mdVAg {
1189 TGenericSeq Sup;
1190 tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE];
1191 };
1192 struct tySequence__s9byh6WFJ16lPMcmqdaMTHA {
1193 TGenericSeq Sup;
1194 tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A data[SEQ_DECL_SIZE];
1195 };
1196 struct tySequence__1U9bG8RcAedEeYkQLZjVFKA {
1197 TGenericSeq Sup;
1198 tyTuple__3i6hlQmqrn6m7tuVN8FHjQ data[SEQ_DECL_SIZE];
1199 };
1200 struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
1201 TGenericSeq Sup;
1202 tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE];
1203 };
1204 struct tySequence__23SMqauuRsbDANhthj9bWlA {
1205 TGenericSeq Sup;
1206 tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw data[SEQ_DECL_SIZE];
1207 };
1208 struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
1209 TGenericSeq Sup;
1210 tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE];
1211 };
1212 struct tySequence__pHNq3oXj9av2sEUdqaqeZjw {
1213 TGenericSeq Sup;
1214 tyTuple__wcNatyuf8WOqAhGLhSvgiw data[SEQ_DECL_SIZE];
1215 };
1216 struct tySequence__MAQKEADohlpnXTModtugbQ {
1217 TGenericSeq Sup;
1218 tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ data[SEQ_DECL_SIZE];
1219 };
1220 struct tySequence__vv5mGmK03BCr5e3LTZA5Hw {
1221 TGenericSeq Sup;
1222 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA data[SEQ_DECL_SIZE];
1223 };
1224 struct tySequence__PXIzfWocnrafGz5p3CP5LA {
1225 TGenericSeq Sup;
1226 tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE];
1227 };
1228 struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA {
1229 TGenericSeq Sup;
1230 NU32 data[SEQ_DECL_SIZE];
1231 };
1232 struct tySequence__29bS0n2QNyO1R7e0qMMOvLA {
1233 TGenericSeq Sup;
1234 tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow data[SEQ_DECL_SIZE];
1235 };
1236 struct tySequence__b89aLriiJnVTD186H6zNIgg {
1237 TGenericSeq Sup;
1238 tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];
1239 };
1240 struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg {
1241 TGenericSeq Sup;
1242 tyTuple__Q7r9caOmeWqQGZCIBHhGRUA data[SEQ_DECL_SIZE];
1243 };
1244 struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA {
1245 TGenericSeq Sup;
1246 tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg data[SEQ_DECL_SIZE];
1247 };
1248 struct tySequence__NyaOkf8ZwxP6rkRF5TOkew {
1249 TGenericSeq Sup;
1250 tyTuple__XyJ8LOAZzVVXSsmt09b8uWw data[SEQ_DECL_SIZE];
1251 };
1252 struct tySequence__L9bOt8CaTEmIjgtuZvp6syg {
1253 TGenericSeq Sup;
1254 tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA data[SEQ_DECL_SIZE];
1255 };
1256 struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ {
1257 TGenericSeq Sup;
1258 tyTuple__9aoobCDZB4x41HJSOmh0mwA data[SEQ_DECL_SIZE];
1259 };
1260 struct tySequence__xxnXDLpoqBo8zJzP9b1073g {
1261 TGenericSeq Sup;
1262 tyTuple__g0Q6Qx15nK53ce9aLo7YyrA data[SEQ_DECL_SIZE];
1263 };
1264 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
1265 TGenericSeq Sup;
1266 NimStringDesc* data[SEQ_DECL_SIZE];
1267 };
1268 struct tySequence__DfmUmNgVGnYaiV1I6227tw {
1269 TGenericSeq Sup;
1270 tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw data[SEQ_DECL_SIZE];
1271 };
1272 struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA {
1273 TGenericSeq Sup;
1274 tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA data[SEQ_DECL_SIZE];
1275 };
1276 struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
1277 TGenericSeq Sup;
1278 NI64 data[SEQ_DECL_SIZE];
1279 };
1280 struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw {
1281 TGenericSeq Sup;
1282 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ data[SEQ_DECL_SIZE];
1283 };
1284 struct tySequence__9bT7o0CflHuiE4VhmtqBPCw {
1285 TGenericSeq Sup;
1286 tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ data[SEQ_DECL_SIZE];
1287 };
1288 struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
1289 TGenericSeq Sup;
1290 tyTuple__UvldbCB6B9ayi9bGYW7vJNLA data[SEQ_DECL_SIZE];
1291 };
1292 struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA {
1293 TGenericSeq Sup;
1294 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ data[SEQ_DECL_SIZE];
1295 };
1296 N_LIB_PRIVATE N_NIMCALL(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*, initLayeredTypeMap__semtypinst_134)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q pt);
1297 N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
1298 static N_NIMCALL(void, Marker_tyRef__zSq8dodcWpSdfE0WaiBU9cw)(void* p, NI op);
1299 N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
1300 N_LIB_PRIVATE N_NIMCALL(void, copyIdTable__ast_3610)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q* dest, tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q src);
1301 static N_INLINE(void, nimZeroMem)(void* p, NI size);
1302 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
1303 N_LIB_PRIVATE N_NIMCALL(void, initTypeVars__semtypinst_982)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* p, tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* typeMap, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* Result);
1304 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
1305 N_LIB_PRIVATE N_NIMCALL(void, initIdTable__ast_4096)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q* x);
1306 N_LIB_PRIVATE N_NIMCALL(void, pushInfoContext__msgs_490)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* detail);
1307 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, replaceTypeVarsN__semtypinst_130)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI start);
1308 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyNode__ast_4336)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
1309 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, replaceTypeVarsT__semtypinst_178)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1310 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, replaceTypeVarsTAux__semtypinst_124)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1311 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lookup__semtypinst_158)(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* typeMap, tyObject_TType__facALICuu8zUj0hjvbTLFg* key);
1312 N_LIB_PRIVATE N_NIMCALL(RootObj*, idTableGet__astalgo_64)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key);
1313 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, handleGenericInvocation__semtypinst_509)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1314 N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
1315 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, searchInstTypes__semtypinst_44)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TType__facALICuu8zUj0hjvbTLFg* key);
1316 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__modulegraphs_2995)(tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw t, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g key);
1317 N_LIB_PRIVATE N_NIMCALL(tySequence__O5RcspOP32YJ4YtU5ppxxA**, X5BX5D___modulegraphs_3311)(tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw* t, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g key);
1318 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, resolveType__modulegraphs_2851)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg* t);
1319 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
1320 static N_INLINE(NIM_BOOL, sameFlags__types_2225)(tyObject_TType__facALICuu8zUj0hjvbTLFg* a, tyObject_TType__facALICuu8zUj0hjvbTLFg* b);
1321 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, compareTypes__types_2668)(tyObject_TType__facALICuu8zUj0hjvbTLFg* x, tyObject_TType__facALICuu8zUj0hjvbTLFg* y, tyEnum_TDistinctCompare__9bNKHGs63atuMFXnAleTveg cmp, tySet_tyEnum_TTypeCmpFlag__72pgRXSg7774cr9aCWVPORw flags);
1322 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lookupTypeVar__semtypinst_464)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1323 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);
1324 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
1325 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
1326 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
1327 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, typeToString__types_50)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw prefer);
1328 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
1329 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, errorType__semdata_1002)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c);
1330 N_LIB_PRIVATE N_NIMCALL(void, idTablePut__astalgo_70)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q* t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, RootObj* val);
1331 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, instCopyType__semtypinst_480)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1332 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, exactReplica__ast_4051)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1333 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, copyType__ast_4046)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
1334 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
1335 N_LIB_PRIVATE N_NIMCALL(void, copyTypeProps__modulegraphs_8872)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI module, tyObject_TType__facALICuu8zUj0hjvbTLFg* dest, tyObject_TType__facALICuu8zUj0hjvbTLFg* src);
1336 static N_INLINE(void, asgnRef)(void** dest, void* src);
1337 static N_INLINE(void, incRef__system_5309)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1338 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
1339 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5271)(void* usr);
1340 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
1341 static N_INLINE(void, decRef__system_5316)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1342 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
1343 static N_INLINE(void, rtlAddZCT__system_5314)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1344 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5265)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1345 N_LIB_PRIVATE N_NIMCALL(void, propagateToOwner__ast_4219)(tyObject_TType__facALICuu8zUj0hjvbTLFg* owner, tyObject_TType__facALICuu8zUj0hjvbTLFg* elem, NIM_BOOL propagateHasAsgn);
1346 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, newType__ast_3896)(tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
1347 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
1348 N_LIB_PRIVATE N_NIMCALL(void, cacheTypeInst__semtypinst_88)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TType__facALICuu8zUj0hjvbTLFg* inst);
1349 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lastSon__ast_3743)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
1350 N_LIB_PRIVATE N_NIMCALL(void, addToGenericCache__semdata_2394)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TType__facALICuu8zUj0hjvbTLFg* inst);
1351 N_LIB_PRIVATE N_NIMCALL(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*, newTypeMapLayer__semtypinst_155)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl);
1352 N_LIB_PRIVATE N_NIMCALL(void, rawAddSon__ast_4288)(tyObject_TType__facALICuu8zUj0hjvbTLFg* father, tyObject_TType__facALICuu8zUj0hjvbTLFg* son, NIM_BOOL propagateHasAsgn);
1353 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isGenericAlias__types_2205)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1354 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipGenericAlias__types_2219)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1355 N_LIB_PRIVATE N_NIMCALL(void, checkPartialConstructedType__semtypinst_13)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1356 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getAttachedOp__modulegraphs_4011)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg op);
1357 N_LIB_PRIVATE N_NIMCALL(void, setAttachedOp__modulegraphs_4407)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI module, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg op, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* value);
1358 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipTypes__ast_3735)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kinds);
1359 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__modulegraphs_7256)(tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w t, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g key);
1360 N_LIB_PRIVATE N_NIMCALL(tySequence__159bHWBGAOOs6U7OZ9cQlO0g**, X5BX5D___modulegraphs_7572)(tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w* t, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g key);
1361 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, resolveSym__modulegraphs_2866)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA* t);
1362 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, prepareNode__semtypinst_182)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1363 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, replaceTypeVarsS__semtypinst_127)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1364 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, copySym__ast_4054)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id);
1365 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
1366 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1367 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1368 N_LIB_PRIVATE N_NIMCALL(void, add__ast_4797)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
1369 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, newTypeS__semdata_733)(tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind, tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c);
1370 static N_INLINE(void, nimGCunrefRC1)(void* p);
1371 N_LIB_PRIVATE N_NIMCALL(void*, newSeqRC1)(TNimType* typ, NI len);
1372 static N_INLINE(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipIntLit__magicsys_124)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* id);
1373 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, makeTypeDesc__concepts_49)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1374 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, base__types_63)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1375 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsGenericType__types_3360)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1376 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info);
1377 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
1378 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
1379 N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
1380 N_LIB_PRIVATE N_NIMCALL(void, propagateFieldFlags__semtypinst_774)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1381 N_LIB_PRIVATE N_NIMCALL(void, eraseVoidParams__semtypinst_682)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1382 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
1383 N_LIB_PRIVATE N_NIMCALL(void, skipIntLiteralParams__semtypinst_738)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
1384 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, replaceObjBranches__semtypinst_277)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1385 N_LIB_PRIVATE N_NIMCALL(void, illFormedAst__semdata_1071)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
1386 N_LIB_PRIVATE N_NIMCALL(void, checkSonsLen__semdata_1077)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI length, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
1387 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI__ast_3356)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1388 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, reResolveCallsWithTypedescParams__semtypinst_246)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1389 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isTypeParam__semtypinst_227)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1390 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3716)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
1391 N_LIB_PRIVATE N_NIMCALL(void, newSons__semtypinst_404)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, NI length);
1392 N_LIB_PRIVATE N_NIMCALL(void, popInfoContext__msgs_507)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
1393 N_LIB_PRIVATE N_NIMCALL(void, recomputeFieldPositions__semtypinst_1006)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, NI* currPosition);
1394 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1395 N_LIB_PRIVATE N_NIMCALL(NI64, computeSize__types_3317)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1396 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isTupleRecursive__types_3996)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1397 N_LIB_PRIVATE TNimType NTIlayeredidtable58objecttype__VAXPousy5FCnCEYMcHN9bDQ_;
1398 extern TNimType NTItidtable__9aiv9bp2t5icFNINcg9c4xi1Q_;
1399 N_LIB_PRIVATE TNimType NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_;
1400 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_3, "no generic body", 15);
1401 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_5, "/home/runner/work/nightlies/nightlies/nim/compiler/semtypinst.nim", 65);
1402 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_4 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1403 ((NI) 329),
1404 ((NI) 17)}
1405 ;
1406 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_6, "cannot instantiate: \'", 21);
1407 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_7, "\'", 1);
1408 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_8 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1409 ((NI) 293),
1410 ((NI) 14)}
1411 ;
1412 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_9, "substitution with generic parameter", 35);
1413 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_10 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1414 ((NI) 300),
1415 ((NI) 17)}
1416 ;
1417 extern TNimType NTIttypeseq__9aZVGG5Gtti9cC9bqRpXCtA3A_;
1418 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_11, "type \'var var\' is not allowed", 29);
1419 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_12 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1420 ((NI) 21),
1421 ((NI) 14)}
1422 ;
1423 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__mrkrD9c2e31kE4GdQtpMdaQ_13 = {
1424 0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
1425 0x00}
1426 ;
1427 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_14, "\'; Maybe generic arguments are missing\?", 39);
1428 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_15 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1429 ((NI) 525),
1430 ((NI) 14)}
1431 ;
1432 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__mrkrD9c2e31kE4GdQtpMdaQ_16 = {
1433 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1434 0x00}
1435 ;
1436 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_17, "cannot instantiate \'", 20);
1437 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_18, "\' inside of type definition: \'", 30);
1438 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_19 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1439 ((NI) 599),
1440 ((NI) 22)}
1441 ;
1442 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__mrkrD9c2e31kE4GdQtpMdaQ_20 = {
1443 0x10, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00,
1444 0x00}
1445 ;
1446 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__mrkrD9c2e31kE4GdQtpMdaQ_21 = {
1447 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
1448 0x00}
1449 ;
1450 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_22, "(", 1);
1451 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_23, ", ", 2);
1452 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_24, ")", 1);
1453 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_25 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1454 ((NI) 618),
1455 ((NI) 23)}
1456 ;
1457 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
1458 extern TNimType NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_;
1459 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__mrkrD9c2e31kE4GdQtpMdaQ_26 = {
1460 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
1461 0x00}
1462 ;
1463 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_27, "ReplaceTypeVarsN: when condition not a bool", 43);
1464 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_28 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1465 ((NI) 179),
1466 ((NI) 23)}
1467 ;
1468 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_29 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1469 ((NI) 219),
1470 ((NI) 23)}
1471 ;
1472 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__mrkrD9c2e31kE4GdQtpMdaQ_30 = {
1473 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
1474 0x00}
1475 ;
1476 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__mrkrD9c2e31kE4GdQtpMdaQ_31 = {
1477 0x10, 0x09, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
1478 0x00}
1479 ;
1480 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__mrkrD9c2e31kE4GdQtpMdaQ_32 = {
1481 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1482 0x00}
1483 ;
1484 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_33 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1485 ((NI) 27),
1486 ((NI) 14)}
1487 ;
1488 STRING_LITERAL(TM__mrkrD9c2e31kE4GdQtpMdaQ_34, "illegal recursion in type \'", 27);
1489 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__mrkrD9c2e31kE4GdQtpMdaQ_35 = {((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_5),
1490 ((NI) 29),
1491 ((NI) 14)}
1492 ;
1493 extern tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw eqTypeFlags__ast_479;
1494 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5218;
N_NIMCALL(void,Marker_tyRef__zSq8dodcWpSdfE0WaiBU9cw)1495 static N_NIMCALL(void, Marker_tyRef__zSq8dodcWpSdfE0WaiBU9cw)(void* p, NI op) {
1496 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* a;
1497 a = (tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*)p;
1498 nimGCvisit((void*)(*a).topLayer.data, op);
1499 nimGCvisit((void*)(*a).nextLayer, op);
1500 }
N_NIMCALL(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ *,initLayeredTypeMap__semtypinst_134)1501 N_LIB_PRIVATE N_NIMCALL(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*, initLayeredTypeMap__semtypinst_134)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q pt) {
1502 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* result;
1503 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* T1_;
1504 result = NIM_NIL;
1505 T1_ = NIM_NIL;
1506 T1_ = (tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*) newObj((&NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_), sizeof(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ));
1507 result = T1_;
1508 copyIdTable__ast_3610((&(*result).topLayer), pt);
1509 return result;
1510 }
N_INLINE(void,nimSetMem__systemZmemory_7)1511 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
1512 void* T1_;
1513 T1_ = (void*)0;
1514 T1_ = memset(a, v, ((size_t) (size)));
1515 }
N_INLINE(void,nimZeroMem)1516 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
1517 nimSetMem__systemZmemory_7(p, ((int) 0), size);
1518 }
N_NIMCALL(void,initTypeVars__semtypinst_982)1519 N_LIB_PRIVATE N_NIMCALL(void, initTypeVars__semtypinst_982)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* p, tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* typeMap, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* Result) {
1520 unsureAsgnRef((void**)&(*Result).c, NIM_NIL);
1521 unsureAsgnRef((void**)&(*Result).typeMap, NIM_NIL);
1522 (*Result).symMap.counter = 0;
1523 unsureAsgnRef((void**)&(*Result).symMap.data, NIM_NIL);
1524 (*Result).localCache.counter = 0;
1525 unsureAsgnRef((void**)&(*Result).localCache.data, NIM_NIL);
1526 (*Result).info.line = 0;
1527 (*Result).info.col = 0;
1528 (*Result).info.fileIndex = 0;
1529 (*Result).allowMetaTypes = 0;
1530 (*Result).skipTypedesc = 0;
1531 (*Result).isReturnType = 0;
1532 unsureAsgnRef((void**)&(*Result).owner, NIM_NIL);
1533 (*Result).recursionLimit = 0;
1534 initIdTable__ast_4096((&(*Result).symMap));
1535 initIdTable__ast_4096((&(*Result).localCache));
1536 unsureAsgnRef((void**) (&(*Result).typeMap), typeMap);
1537 (*Result).info = info;
1538 unsureAsgnRef((void**) (&(*Result).c), p);
1539 unsureAsgnRef((void**) (&(*Result).owner), owner);
1540 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,lookup__semtypinst_158)1541 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lookup__semtypinst_158)(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* typeMap, tyObject_TType__facALICuu8zUj0hjvbTLFg* key) {
1542 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
1543 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* tm;
1544 { result = NIM_NIL;
1545 tm = typeMap;
1546 {
1547 while (1) {
1548 RootObj* T3_;
1549 if (!!((tm == ((tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*) NIM_NIL)))) goto LA2;
1550 T3_ = NIM_NIL;
1551 T3_ = idTableGet__astalgo_64((*tm).topLayer, &key->Sup);
1552 result = ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) (T3_));
1553 {
1554 if (!!((result == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA6_;
1555 goto BeforeRet_;
1556 }
1557 LA6_: ;
1558 tm = (*tm).nextLayer;
1559 } LA2: ;
1560 }
1561 }BeforeRet_: ;
1562 return result;
1563 }
N_INLINE(NI,len__ast_4002)1564 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n) {
1565 NI result;
1566 NI T1_;
1567 result = (NI)0;
1568 T1_ = ((*n).sons ? (*n).sons->Sup.len : 0);
1569 result = T1_;
1570 return result;
1571 }
N_INLINE(NIM_BOOL,sameFlags__types_2225)1572 static N_INLINE(NIM_BOOL, sameFlags__types_2225)(tyObject_TType__facALICuu8zUj0hjvbTLFg* a, tyObject_TType__facALICuu8zUj0hjvbTLFg* b) {
1573 NIM_BOOL result;
1574 result = (NIM_BOOL)0;
1575 result = ((eqTypeFlags__ast_479 & (*a).flags) == (eqTypeFlags__ast_479 & (*b).flags));
1576 return result;
1577 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,searchInstTypes__semtypinst_44)1578 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, searchInstTypes__semtypinst_44)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TType__facALICuu8zUj0hjvbTLFg* key) {
1579 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
1580 tyObject_TType__facALICuu8zUj0hjvbTLFg* genericTyp;
1581 { result = NIM_NIL;
1582 genericTyp = (*key).sons->data[((NI) 0)];
1583 {
1584 NIM_BOOL T3_;
1585 T3_ = (NIM_BOOL)0;
1586 T3_ = ((*genericTyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 10));
1587 if (!(T3_)) goto LA4_;
1588 T3_ = !(((*genericTyp).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
1589 LA4_: ;
1590 if (!!(T3_)) goto LA5_;
1591 goto BeforeRet_;
1592 }
1593 LA5_: ;
1594 {
1595 tyObject_TType__facALICuu8zUj0hjvbTLFg* inst;
1596 inst = NIM_NIL;
1597 {
1598 NIM_BOOL T10_;
1599 tySequence__O5RcspOP32YJ4YtU5ppxxA** x;
1600 T10_ = (NIM_BOOL)0;
1601 T10_ = contains__modulegraphs_2995((*g).typeInstCache, (*(*genericTyp).sym).Sup.itemId);
1602 if (!T10_) goto LA11_;
1603 x = X5BX5D___modulegraphs_3311((&(*g).typeInstCache), (*(*genericTyp).sym).Sup.itemId);
1604 {
1605 tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg* t;
1606 NI i;
1607 NI L;
1608 NI T14_;
1609 t = (tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg*)0;
1610 i = ((NI) 0);
1611 T14_ = ((*x) ? (*x)->Sup.len : 0);
1612 L = T14_;
1613 {
1614 while (1) {
1615 if (!(i < L)) goto LA16;
1616 t = (&(*x)->data[i]);
1617 inst = resolveType__modulegraphs_2851(g, t);
1618 {
1619 {
1620 tyObject_TType__facALICuu8zUj0hjvbTLFg* xX60gensym15_;
1621 tyObject_TType__facALICuu8zUj0hjvbTLFg* xX60gensym16_;
1622 xX60gensym15_ = inst;
1623 xX60gensym16_ = key;
1624 if (!((NI)((NI)((NU64)(((NI) ((*xX60gensym15_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym15_).Sup.itemId.item))) == (NI)((NI)((NU64)(((NI) ((*xX60gensym16_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym16_).Sup.itemId.item))))) goto LA20_;
1625 result = inst;
1626 goto BeforeRet_;
1627 }
1628 LA20_: ;
1629 {
1630 NI T24_;
1631 NI T25_;
1632 T24_ = (NI)0;
1633 T24_ = len__ast_4002(inst);
1634 T25_ = (NI)0;
1635 T25_ = len__ast_4002(key);
1636 if (!(T24_ < T25_)) goto LA26_;
1637 goto BeforeRet_;
1638 }
1639 LA26_: ;
1640 {
1641 NIM_BOOL T30_;
1642 T30_ = (NIM_BOOL)0;
1643 T30_ = sameFlags__types_2225(inst, key);
1644 if (!!(T30_)) goto LA31_;
1645 goto LA17;
1646 }
1647 LA31_: ;
1648 {
1649 {
1650 NI j;
1651 NI colontmp_;
1652 NI T35_;
1653 NI res;
1654 j = (NI)0;
1655 colontmp_ = (NI)0;
1656 T35_ = (((*key).sons ? (*key).sons->Sup.len : 0)-1);
1657 colontmp_ = T35_;
1658 res = ((NI) 1);
1659 {
1660 while (1) {
1661 if (!(res <= colontmp_)) goto LA37;
1662 j = res;
1663 {
1664 NIM_BOOL T40_;
1665 T40_ = (NIM_BOOL)0;
1666 T40_ = compareTypes__types_2668((*inst).sons->data[j], (*key).sons->data[j], ((tyEnum_TDistinctCompare__9bNKHGs63atuMFXnAleTveg) 0), 136);
1667 if (!!(T40_)) goto LA41_;
1668 goto LA33;
1669 }
1670 LA41_: ;
1671 res += ((NI) 1);
1672 } LA37: ;
1673 }
1674 }
1675 result = inst;
1676 goto BeforeRet_;
1677 } LA33: ;
1678 } LA17: ;
1679 i += ((NI) 1);
1680 } LA16: ;
1681 }
1682 }
1683 }
1684 LA11_: ;
1685 }
1686 }BeforeRet_: ;
1687 return result;
1688 }
N_INLINE(void,nimCopyMem)1689 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
1690 void* T1_;
1691 T1_ = (void*)0;
1692 T1_ = memcpy(dest, source, ((size_t) (size)));
1693 }
N_INLINE(void,copyMem__system_1727)1694 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
1695 nimCopyMem(dest, source, size);
1696 }
N_INLINE(void,appendString)1697 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
1698 {
1699 if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
1700 copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
1701 (*dest).Sup.len += (*src).Sup.len;
1702 }
1703 LA3_: ;
1704 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,lookupTypeVar__semtypinst_464)1705 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lookupTypeVar__semtypinst_464)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
1706 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
1707 { result = NIM_NIL;
1708 result = lookup__semtypinst_158((*cl).typeMap, t);
1709 {
1710 NimStringDesc* T11_;
1711 NimStringDesc* T12_;
1712 if (!(result == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA3_;
1713 {
1714 NIM_BOOL T7_;
1715 T7_ = (NIM_BOOL)0;
1716 T7_ = (*cl).allowMetaTypes;
1717 if (T7_) goto LA8_;
1718 T7_ = (((*t).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 11))&63U)))!=0);
1719 LA8_: ;
1720 if (!T7_) goto LA9_;
1721 goto BeforeRet_;
1722 }
1723 LA9_: ;
1724 T11_ = NIM_NIL;
1725 T12_ = NIM_NIL;
1726 T12_ = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
1727 T11_ = rawNewString((T12_ ? T12_->Sup.len : 0) + 22);
1728 appendString(T11_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_6));
1729 appendString(T11_, T12_);
1730 appendString(T11_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_7));
1731 liMessage__msgs_1118((*(*(*cl).c).graph).config, (*(*t).sym).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T11_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__mrkrD9c2e31kE4GdQtpMdaQ_8, NIM_FALSE);
1732 result = errorType__semdata_1002((*cl).c);
1733 idTablePut__astalgo_70((&(*(*cl).typeMap).topLayer), &t->Sup, (*((RootObj**) (&(result)))));
1734 }
1735 goto LA1_;
1736 LA3_: ;
1737 {
1738 NIM_BOOL T14_;
1739 T14_ = (NIM_BOOL)0;
1740 T14_ = ((*result).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 12));
1741 if (!(T14_)) goto LA15_;
1742 T14_ = !((*cl).allowMetaTypes);
1743 LA15_: ;
1744 if (!T14_) goto LA16_;
1745 internalErrorImpl__msgs_1431((*(*(*cl).c).graph).config, (*cl).info, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_9), TM__mrkrD9c2e31kE4GdQtpMdaQ_10);
1746 }
1747 goto LA1_;
1748 LA16_: ;
1749 LA1_: ;
1750 }BeforeRet_: ;
1751 return result;
1752 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextTypeId__ast_3151)1753 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
1754 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
1755 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
1756 (*x).typeId_0 += ((NI) 1);
1757 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
1758 result.module = (*x).module;
1759 result.item = (*x).typeId_0;
1760 return result;
1761 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,instCopyType__semtypinst_480)1762 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, instCopyType__semtypinst_480)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
1763 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
1764 { result = NIM_NIL;
1765 {
1766 if (!(*cl).allowMetaTypes) goto LA3_;
1767 result = exactReplica__ast_4051(t);
1768 }
1769 goto LA1_;
1770 LA3_: ;
1771 {
1772 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T6_;
1773 T6_ = nextTypeId__ast_3151((*(*cl).c).Sup.idgen);
1774 result = copyType__ast_4046(t, T6_, (*t).owner);
1775 copyTypeProps__modulegraphs_8872((*(*cl).c).graph, ((NI) ((*(*(*cl).c).Sup.idgen).module)), result, t);
1776 }
1777 LA1_: ;
1778 {
1779 if (!(*cl).allowMetaTypes) goto LA9_;
1780 goto BeforeRet_;
1781 }
1782 LA9_: ;
1783 (*result).flags |= ((NU64)1)<<((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 8)) & 63);
1784 {
1785 NIM_BOOL T13_;
1786 NIM_BOOL T15_;
1787 T13_ = (NIM_BOOL)0;
1788 T13_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 6) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 12) || (*t).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 51) && (*t).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 54) || (*t).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 56) && (*t).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 59));
1789 if (T13_) goto LA14_;
1790 T15_ = (NIM_BOOL)0;
1791 T15_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60));
1792 if (!(T15_)) goto LA16_;
1793 T15_ = ((*t).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
1794 LA16_: ;
1795 T13_ = T15_;
1796 LA14_: ;
1797 if (!!(T13_)) goto LA17_;
1798 (*result).flags = ((*result).flags & ~ 2097664);
1799 }
1800 goto LA11_;
1801 LA17_: ;
1802 {
1803 (*result).flags &= ~(((NU64)1) << ((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 31)) & 63));
1804 }
1805 LA11_: ;
1806 }BeforeRet_: ;
1807 return result;
1808 }
N_INLINE(NI,pluspercent___system_696)1809 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
1810 NI result;
1811 result = (NI)0;
1812 result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
1813 return result;
1814 }
N_INLINE(void,incRef__system_5309)1815 static N_INLINE(void, incRef__system_5309)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1816 (*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
1817 }
N_INLINE(NI,minuspercent___system_716)1818 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
1819 NI result;
1820 result = (NI)0;
1821 result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
1822 return result;
1823 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5271)1824 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5271)(void* usr) {
1825 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
1826 NI T1_;
1827 result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1828 T1_ = (NI)0;
1829 T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
1830 result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
1831 return result;
1832 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)1833 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
1834 NIM_BOOL result;
1835 result = (NIM_BOOL)0;
1836 result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
1837 return result;
1838 }
N_INLINE(void,rtlAddZCT__system_5314)1839 static N_INLINE(void, rtlAddZCT__system_5314)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1840 addZCT__system_5265((&gch__system_5218.zct), c);
1841 }
N_INLINE(void,decRef__system_5316)1842 static N_INLINE(void, decRef__system_5316)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
1843 (*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
1844 {
1845 NIM_BOOL T3_;
1846 T3_ = (NIM_BOOL)0;
1847 T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
1848 if (!T3_) goto LA4_;
1849 rtlAddZCT__system_5314(c);
1850 }
1851 LA4_: ;
1852 }
N_INLINE(void,asgnRef)1853 static N_INLINE(void, asgnRef)(void** dest, void* src) {
1854 {
1855 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
1856 if (!!((src == NIM_NIL))) goto LA3_;
1857 T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1858 T5_ = usrToCell__system_5271(src);
1859 incRef__system_5309(T5_);
1860 }
1861 LA3_: ;
1862 {
1863 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
1864 if (!!(((*dest) == NIM_NIL))) goto LA8_;
1865 T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
1866 T10_ = usrToCell__system_5271((*dest));
1867 decRef__system_5316(T10_);
1868 }
1869 LA8_: ;
1870 (*dest) = src;
1871 }
N_NIMCALL(void,cacheTypeInst__semtypinst_88)1872 N_LIB_PRIVATE N_NIMCALL(void, cacheTypeInst__semtypinst_88)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TType__facALICuu8zUj0hjvbTLFg* inst) {
1873 tyObject_TType__facALICuu8zUj0hjvbTLFg* gt;
1874 tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
1875 { gt = (*inst).sons->data[((NI) 0)];
1876 {
1877 if (!((*gt).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 10))) goto LA3_;
1878 t = lastSon__ast_3743(gt);
1879 }
1880 goto LA1_;
1881 LA3_: ;
1882 {
1883 t = gt;
1884 }
1885 LA1_: ;
1886 {
1887 if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 12) || (*t).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 50) && (*t).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 54) || (*t).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 56) && (*t).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60))) goto LA8_;
1888 goto BeforeRet_;
1889 }
1890 LA8_: ;
1891 addToGenericCache__semdata_2394(c, (*gt).sym, inst);
1892 }BeforeRet_: ;
1893 }
N_NIMCALL(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ *,newTypeMapLayer__semtypinst_155)1894 N_LIB_PRIVATE N_NIMCALL(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*, newTypeMapLayer__semtypinst_155)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl) {
1895 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* result;
1896 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* T1_;
1897 result = NIM_NIL;
1898 T1_ = NIM_NIL;
1899 T1_ = (tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*) newObj((&NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_), sizeof(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ));
1900 result = T1_;
1901 asgnRef((void**) (&(*result).nextLayer), (*cl).typeMap);
1902 initIdTable__ast_4096((&(*result).topLayer));
1903 return result;
1904 }
N_NIMCALL(void,checkPartialConstructedType__semtypinst_13)1905 N_LIB_PRIVATE N_NIMCALL(void, checkPartialConstructedType__semtypinst_13)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
1906 {
1907 NIM_BOOL T3_;
1908 T3_ = (NIM_BOOL)0;
1909 T3_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47));
1910 if (!(T3_)) goto LA4_;
1911 T3_ = ((*(*t).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*t).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47));
1912 LA4_: ;
1913 if (!T3_) goto LA5_;
1914 liMessage__msgs_1118(conf, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_11), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__mrkrD9c2e31kE4GdQtpMdaQ_12, NIM_FALSE);
1915 }
1916 LA5_: ;
1917 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,handleGenericInvocation__semtypinst_509)1918 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, handleGenericInvocation__semtypinst_509)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
1919 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
1920 tyObject_TType__facALICuu8zUj0hjvbTLFg* body;
1921 tyObject_TType__facALICuu8zUj0hjvbTLFg* header;
1922 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T44_;
1923 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* T45_;
1924 NIM_BOOL oldSkipTypedesc;
1925 tyObject_TType__facALICuu8zUj0hjvbTLFg* bbody;
1926 tyObject_TType__facALICuu8zUj0hjvbTLFg* newbody;
1927 { result = NIM_NIL;
1928 body = (*t).sons->data[((NI) 0)];
1929 {
1930 if (!!(((*body).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 10)))) goto LA3_;
1931 internalErrorImpl__msgs_1431((*(*(*cl).c).graph).config, (*cl).info, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_3), TM__mrkrD9c2e31kE4GdQtpMdaQ_4);
1932 }
1933 LA3_: ;
1934 header = t;
1935 {
1936 RootObj* T9_;
1937 if (!(*cl).allowMetaTypes) goto LA7_;
1938 T9_ = NIM_NIL;
1939 T9_ = idTableGet__astalgo_64((*cl).localCache, &t->Sup);
1940 result = ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) (T9_));
1941 }
1942 goto LA5_;
1943 LA7_: ;
1944 {
1945 result = searchInstTypes__semtypinst_44((*(*cl).c).graph, t);
1946 }
1947 LA5_: ;
1948 {
1949 NIM_BOOL T13_;
1950 T13_ = (NIM_BOOL)0;
1951 T13_ = !((result == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
1952 if (!(T13_)) goto LA14_;
1953 T13_ = sameFlags__types_2225(result, t);
1954 LA14_: ;
1955 if (!T13_) goto LA15_;
1956 goto BeforeRet_;
1957 }
1958 LA15_: ;
1959 {
1960 NI i;
1961 NI colontmp_;
1962 NI i_2;
1963 i = (NI)0;
1964 colontmp_ = (NI)0;
1965 colontmp_ = len__ast_4002(t);
1966 i_2 = ((NI) 1);
1967 {
1968 while (1) {
1969 tyObject_TType__facALICuu8zUj0hjvbTLFg* x;
1970 if (!(i_2 < colontmp_)) goto LA19;
1971 i = i_2;
1972 x = (*t).sons->data[i];
1973 {
1974 if (!((*x).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 12))) goto LA22_;
1975 x = lookupTypeVar__semtypinst_464(cl, x);
1976 {
1977 if (!!((x == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA26_;
1978 {
1979 if (!(header == t)) goto LA30_;
1980 header = instCopyType__semtypinst_480(cl, t);
1981 }
1982 LA30_: ;
1983 asgnRef((void**) (&(*header).sons->data[i]), x);
1984 propagateToOwner__ast_4219(header, x, NIM_TRUE);
1985 }
1986 LA26_: ;
1987 }
1988 goto LA20_;
1989 LA22_: ;
1990 {
1991 propagateToOwner__ast_4219(header, x, NIM_TRUE);
1992 }
1993 LA20_: ;
1994 i_2 += ((NI) 1);
1995 } LA19: ;
1996 }
1997 }
1998 {
1999 if (!!((header == t))) goto LA35_;
2000 result = searchInstTypes__semtypinst_44((*(*cl).c).graph, header);
2001 {
2002 NIM_BOOL T39_;
2003 T39_ = (NIM_BOOL)0;
2004 T39_ = !((result == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2005 if (!(T39_)) goto LA40_;
2006 T39_ = sameFlags__types_2225(result, t);
2007 LA40_: ;
2008 if (!T39_) goto LA41_;
2009 goto BeforeRet_;
2010 }
2011 LA41_: ;
2012 }
2013 goto LA33_;
2014 LA35_: ;
2015 {
2016 header = instCopyType__semtypinst_480(cl, t);
2017 }
2018 LA33_: ;
2019 T44_ = nextTypeId__ast_3151((*(*cl).c).Sup.idgen);
2020 result = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11), T44_, (*(*t).sons->data[((NI) 0)]).owner);
2021 (*result).flags = (*header).flags;
2022 T45_ = NIM_NIL;
2023 T45_ = (tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A*) newSeq((&NTIttypeseq__9aZVGG5Gtti9cC9bqRpXCtA3A_), 1);
2024 asgnRef((void**) (&T45_->data[0]), (*header).sons->data[((NI) 0)]);
2025 asgnRef((void**) (&(*result).sons), T45_);
2026 {
2027 if (!!((*cl).allowMetaTypes)) goto LA48_;
2028 cacheTypeInst__semtypinst_88((*cl).c, result);
2029 }
2030 goto LA46_;
2031 LA48_: ;
2032 {
2033 idTablePut__astalgo_70((&(*cl).localCache), &t->Sup, (*((RootObj**) (&(result)))));
2034 }
2035 LA46_: ;
2036 oldSkipTypedesc = (*cl).skipTypedesc;
2037 (*cl).skipTypedesc = NIM_TRUE;
2038 unsureAsgnRef((void**) (&(*cl).typeMap), newTypeMapLayer__semtypinst_155(cl));
2039 {
2040 NI i_3;
2041 NI colontmp__2;
2042 NI i_4;
2043 i_3 = (NI)0;
2044 colontmp__2 = (NI)0;
2045 colontmp__2 = len__ast_4002(t);
2046 i_4 = ((NI) 1);
2047 {
2048 while (1) {
2049 tyObject_TType__facALICuu8zUj0hjvbTLFg* x_2;
2050 tyObject_TType__facALICuu8zUj0hjvbTLFg* T54_;
2051 if (!(i_4 < colontmp__2)) goto LA53;
2052 i_3 = i_4;
2053 T54_ = NIM_NIL;
2054 {
2055 if (!((*(*header).sons->data[i_3]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11))) goto LA57_;
2056 T54_ = (*t).sons->data[i_3];
2057 }
2058 goto LA55_;
2059 LA57_: ;
2060 {
2061 T54_ = (*header).sons->data[i_3];
2062 }
2063 LA55_: ;
2064 x_2 = replaceTypeVarsT__semtypinst_178(cl, T54_);
2065 asgnRef((void**) (&(*header).sons->data[i_3]), x_2);
2066 propagateToOwner__ast_4219(header, x_2, NIM_TRUE);
2067 idTablePut__astalgo_70((&(*(*cl).typeMap).topLayer), (*((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w**) (&((*body).sons->data[(NI)(i_3 - ((NI) 1))])))), (*((RootObj**) (&(x_2)))));
2068 i_4 += ((NI) 1);
2069 } LA53: ;
2070 }
2071 }
2072 {
2073 NI i_5;
2074 NI colontmp__3;
2075 NI i_6;
2076 i_5 = (NI)0;
2077 colontmp__3 = (NI)0;
2078 colontmp__3 = len__ast_4002(t);
2079 i_6 = ((NI) 1);
2080 {
2081 while (1) {
2082 if (!(i_6 < colontmp__3)) goto LA62;
2083 i_5 = i_6;
2084 rawAddSon__ast_4288(result, (*header).sons->data[i_5], NIM_FALSE);
2085 i_6 += ((NI) 1);
2086 } LA62: ;
2087 }
2088 }
2089 {
2090 if (!((*body).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 50))) goto LA65_;
2091 goto BeforeRet_;
2092 }
2093 LA65_: ;
2094 bbody = lastSon__ast_3743(body);
2095 newbody = replaceTypeVarsT__semtypinst_178(cl, bbody);
2096 (*cl).skipTypedesc = oldSkipTypedesc;
2097 (*newbody).flags = ((*newbody).flags | (((*t).flags | (*body).flags) & ~ 2097664));
2098 (*result).flags = (((*result).flags | (*newbody).flags) & ~ 2097664);
2099 unsureAsgnRef((void**) (&(*cl).typeMap), (*(*cl).typeMap).nextLayer);
2100 {
2101 NIM_BOOL T69_;
2102 T69_ = (NIM_BOOL)0;
2103 T69_ = isGenericAlias__types_2205(newbody);
2104 if (!T69_) goto LA70_;
2105 newbody = skipGenericAlias__types_2219(newbody);
2106 }
2107 LA70_: ;
2108 rawAddSon__ast_4288(result, newbody, NIM_TRUE);
2109 checkPartialConstructedType__semtypinst_13((*(*(*cl).c).graph).config, (*cl).info, newbody);
2110 {
2111 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* dc;
2112 tyObject_TType__facALICuu8zUj0hjvbTLFg* mm;
2113 if (!!((*cl).allowMetaTypes)) goto LA74_;
2114 dc = getAttachedOp__modulegraphs_4011((*(*cl).c).graph, newbody, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 4));
2115 {
2116 NIM_BOOL T78_;
2117 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T82_;
2118 T78_ = (NIM_BOOL)0;
2119 T78_ = !((dc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
2120 if (!(T78_)) goto LA79_;
2121 T78_ = !((((*dc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 2))&63U)))!=0));
2122 LA79_: ;
2123 if (!T78_) goto LA80_;
2124 T82_ = NIM_NIL;
2125 T82_ = (*(*cl).c).instTypeBoundOp((*cl).c, dc, result, (*cl).info, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 4), ((NI) 1));
2126 setAttachedOp__modulegraphs_4407((*(*cl).c).graph, (*(*(*cl).c).module).position, newbody, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 4), T82_);
2127 }
2128 LA80_: ;
2129 {
2130 if (!((*newbody).typeInst == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA85_;
2131 asgnRef((void**) (&(*newbody).typeInst), result);
2132 {
2133 NIM_BOOL T89_;
2134 T89_ = (NIM_BOOL)0;
2135 T89_ = (((*newbody).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 34))&63U)))!=0);
2136 if (!(T89_)) goto LA90_;
2137 T89_ = !(((*newbody).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11)));
2138 LA90_: ;
2139 if (!T89_) goto LA91_;
2140 {
2141 tyObject_TType__facALICuu8zUj0hjvbTLFg* T95_;
2142 T95_ = NIM_NIL;
2143 T95_ = lastSon__ast_3743(newbody);
2144 if (!!(((*T95_).typeInst == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA96_;
2145 }
2146 goto LA93_;
2147 LA96_: ;
2148 {
2149 tyObject_TType__facALICuu8zUj0hjvbTLFg* T99_;
2150 T99_ = NIM_NIL;
2151 T99_ = lastSon__ast_3743(newbody);
2152 asgnRef((void**) (&(*T99_).typeInst), result);
2153 }
2154 LA93_: ;
2155 }
2156 LA91_: ;
2157 }
2158 LA85_: ;
2159 mm = skipTypes__ast_3735(bbody, TM__mrkrD9c2e31kE4GdQtpMdaQ_13);
2160 {
2161 if (!!((((*mm).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 8))&63U)))!=0))) goto LA102_;
2162 (*mm).flags |= ((NU64)1)<<((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 8)) & 63);
2163 {
2164 NI col;
2165 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* meth;
2166 col = (NI)0;
2167 meth = NIM_NIL;
2168 {
2169 NIM_BOOL T107_;
2170 T107_ = (NIM_BOOL)0;
2171 T107_ = contains__modulegraphs_7256((*(*(*cl).c).graph).methodsPerType, (*mm).Sup.itemId);
2172 if (!T107_) goto LA108_;
2173 {
2174 tyTuple__VrD6plbUKJjYKM0lCr3hGQ* it;
2175 NI i_7;
2176 NI L;
2177 tySequence__159bHWBGAOOs6U7OZ9cQlO0g** T111_;
2178 NI T112_;
2179 it = (tyTuple__VrD6plbUKJjYKM0lCr3hGQ*)0;
2180 i_7 = ((NI) 0);
2181 T111_ = (tySequence__159bHWBGAOOs6U7OZ9cQlO0g**)0;
2182 T111_ = X5BX5D___modulegraphs_7572((&(*(*(*cl).c).graph).methodsPerType), (*mm).Sup.itemId);
2183 T112_ = ((*T111_) ? (*T111_)->Sup.len : 0);
2184 L = T112_;
2185 {
2186 while (1) {
2187 tySequence__159bHWBGAOOs6U7OZ9cQlO0g** T115_;
2188 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T116_;
2189 if (!(i_7 < L)) goto LA114;
2190 T115_ = (tySequence__159bHWBGAOOs6U7OZ9cQlO0g**)0;
2191 T115_ = X5BX5D___modulegraphs_7572((&(*(*(*cl).c).graph).methodsPerType), (*mm).Sup.itemId);
2192 it = (&(*T115_)->data[i_7]);
2193 col = (*it).Field0;
2194 meth = resolveSym__modulegraphs_2866((*(*cl).c).graph, (&(*it).Field1));
2195 T116_ = NIM_NIL;
2196 T116_ = (*(*cl).c).instTypeBoundOp((*cl).c, meth, result, (*cl).info, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 1), col);
2197 (void)(T116_);
2198 i_7 += ((NI) 1);
2199 } LA114: ;
2200 }
2201 }
2202 }
2203 LA108_: ;
2204 }
2205 (*mm).flags &= ~(((NU64)1) << ((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 8)) & 63));
2206 }
2207 LA102_: ;
2208 }
2209 LA74_: ;
2210 }BeforeRet_: ;
2211 return result;
2212 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextSymId__ast_3132)2213 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextSymId__ast_3132)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
2214 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
2215 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
2216 (*x).symId += ((NI) 1);
2217 nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
2218 result.module = (*x).module;
2219 result.item = (*x).symId;
2220 return result;
2221 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,replaceTypeVarsS__semtypinst_127)2222 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, replaceTypeVarsS__semtypinst_127)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
2223 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2224 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T17_;
2225 { result = NIM_NIL;
2226 {
2227 if (!(s == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA3_;
2228 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2229 goto BeforeRet_;
2230 }
2231 LA3_: ;
2232 {
2233 NIM_BOOL T7_;
2234 T7_ = (NIM_BOOL)0;
2235 T7_ = !(((*cl).owner == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
2236 if (!(T7_)) goto LA8_;
2237 T7_ = !(((*s).owner == (*cl).owner));
2238 LA8_: ;
2239 if (!T7_) goto LA9_;
2240 result = s;
2241 goto BeforeRet_;
2242 }
2243 LA9_: ;
2244 {
2245 NIM_BOOL T13_;
2246 T13_ = (NIM_BOOL)0;
2247 T13_ = ((521984 &((NU32)1<<((NU)((*s).kind)&31U)))!=0);
2248 if (T13_) goto LA14_;
2249 T13_ = !(((*s).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0)));
2250 LA14_: ;
2251 if (!T13_) goto LA15_;
2252 result = s;
2253 goto BeforeRet_;
2254 }
2255 LA15_: ;
2256 T17_ = nextSymId__ast_3132((*(*cl).c).Sup.idgen);
2257 result = copySym__ast_4054(s, T17_);
2258 (*result).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 2)) & 63);
2259 asgnRef((void**) (&(*result).owner), (*s).owner);
2260 asgnRef((void**) (&(*result).typ), replaceTypeVarsT__semtypinst_178(cl, (*s).typ));
2261 {
2262 if (!!(((*result).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 7)))) goto LA20_;
2263 asgnRef((void**) (&(*result).ast), replaceTypeVarsN__semtypinst_130(cl, (*s).ast, ((NI) 0)));
2264 }
2265 LA20_: ;
2266 }BeforeRet_: ;
2267 return result;
2268 }
N_INLINE(NI,len__ast_3198)2269 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
2270 NI result;
2271 NI T1_;
2272 result = (NI)0;
2273 T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
2274 result = T1_;
2275 return result;
2276 }
N_INLINE(NI,safeLen__ast_3191)2277 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
2278 NI result;
2279 result = (NI)0;
2280 {
2281 if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
2282 result = ((NI) 0);
2283 }
2284 goto LA1_;
2285 LA3_: ;
2286 {
2287 result = len__ast_3198(n);
2288 }
2289 LA1_: ;
2290 return result;
2291 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,prepareNode__semtypinst_182)2292 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, prepareNode__semtypinst_182)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
2293 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2294 tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
2295 NIM_BOOL isCall;
2296 { result = NIM_NIL;
2297 t = replaceTypeVarsT__semtypinst_178(cl, (*n).typ);
2298 {
2299 NIM_BOOL T3_;
2300 NIM_BOOL T4_;
2301 T3_ = (NIM_BOOL)0;
2302 T4_ = (NIM_BOOL)0;
2303 T4_ = !((t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2304 if (!(T4_)) goto LA5_;
2305 T4_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60));
2306 LA5_: ;
2307 T3_ = T4_;
2308 if (!(T3_)) goto LA6_;
2309 T3_ = !(((*t).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
2310 LA6_: ;
2311 if (!T3_) goto LA7_;
2312 {
2313 if (!(((*t).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 9))&63U)))!=0)) goto LA11_;
2314 result = prepareNode__semtypinst_182(cl, (*t).n);
2315 }
2316 goto LA9_;
2317 LA11_: ;
2318 {
2319 result = (*t).n;
2320 }
2321 LA9_: ;
2322 goto BeforeRet_;
2323 }
2324 LA7_: ;
2325 result = copyNode__ast_4336(n);
2326 asgnRef((void**) (&(*result).typ), t);
2327 {
2328 if (!((*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA16_;
2329 asgnRef((void**) (&(*result)._kind_4.sym), replaceTypeVarsS__semtypinst_127(cl, (*n)._kind_4.sym));
2330 }
2331 LA16_: ;
2332 isCall = ((*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*result).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
2333 {
2334 NI i;
2335 NI colontmp_;
2336 NI i_2;
2337 i = (NI)0;
2338 colontmp_ = (NI)0;
2339 colontmp_ = safeLen__ast_3191(n);
2340 i_2 = ((NI) 0);
2341 {
2342 while (1) {
2343 if (!(i_2 < colontmp_)) goto LA20;
2344 i = i_2;
2345 {
2346 NIM_BOOL T23_;
2347 T23_ = (NIM_BOOL)0;
2348 T23_ = isCall;
2349 if (!(T23_)) goto LA24_;
2350 T23_ = (i == ((NI) 0));
2351 LA24_: ;
2352 if (!T23_) goto LA25_;
2353 add__ast_4797(result, (*n)._kind_6.sons->data[i]);
2354 }
2355 goto LA21_;
2356 LA25_: ;
2357 {
2358 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T28_;
2359 T28_ = NIM_NIL;
2360 T28_ = prepareNode__semtypinst_182(cl, (*n)._kind_6.sons->data[i]);
2361 add__ast_4797(result, T28_);
2362 }
2363 LA21_: ;
2364 i_2 += ((NI) 1);
2365 } LA20: ;
2366 }
2367 }
2368 }BeforeRet_: ;
2369 return result;
2370 }
N_INLINE(void,nimGCunrefRC1)2371 static N_INLINE(void, nimGCunrefRC1)(void* p) {
2372 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
2373 T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2374 T1_ = usrToCell__system_5271(p);
2375 decRef__system_5316(T1_);
2376 }
N_INLINE(tyObject_TType__facALICuu8zUj0hjvbTLFg *,skipIntLit__magicsys_124)2377 static N_INLINE(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipIntLit__magicsys_124)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* id) {
2378 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
2379 result = NIM_NIL;
2380 {
2381 NIM_BOOL T3_;
2382 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T7_;
2383 T3_ = (NIM_BOOL)0;
2384 T3_ = !(((*t).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
2385 if (!(T3_)) goto LA4_;
2386 T3_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36));
2387 LA4_: ;
2388 if (!T3_) goto LA5_;
2389 T7_ = nextTypeId__ast_3151(id);
2390 result = copyType__ast_4046(t, T7_, (*t).owner);
2391 asgnRef((void**) (&(*result).n), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
2392 }
2393 goto LA1_;
2394 LA5_: ;
2395 {
2396 result = t;
2397 }
2398 LA1_: ;
2399 return result;
2400 }
N_INLINE(void,addInt__stdZprivateZdigitsutils_189)2401 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
2402 addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
2403 }
N_INLINE(NimStringDesc *,toFileLineCol__msgs_615)2404 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info) {
2405 NimStringDesc* result;
2406 result = NIM_NIL;
2407 result = resizeString(result, (info.Field0 ? info.Field0->Sup.len : 0) + 0);
2408 appendString(result, info.Field0);
2409 {
2410 if (!(((NI) 0) < info.Field1)) goto LA3_;
2411 result = resizeString(result, 1);
2412 appendString(result, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_22));
2413 addInt__stdZprivateZdigitsutils_189((&result), info.Field1);
2414 {
2415 if (!(((NI) 0) < (NI)(info.Field2 + ((NI) 1)))) goto LA7_;
2416 result = resizeString(result, 2);
2417 appendString(result, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_23));
2418 addInt__stdZprivateZdigitsutils_189((&result), (NI)(info.Field2 + ((NI) 1)));
2419 }
2420 LA7_: ;
2421 result = resizeString(result, 1);
2422 appendString(result, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_24));
2423 }
2424 LA3_: ;
2425 return result;
2426 }
N_NIMCALL(void,propagateFieldFlags__semtypinst_774)2427 N_LIB_PRIVATE N_NIMCALL(void, propagateFieldFlags__semtypinst_774)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
2428 { {
2429 if (!(n == 0)) goto LA3_;
2430 goto BeforeRet_;
2431 }
2432 LA3_: ;
2433 switch ((*n).kind) {
2434 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
2435 {
2436 propagateToOwner__ast_4219(t, (*(*n)._kind_4.sym).typ, NIM_TRUE);
2437 }
2438 break;
2439 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
2440 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
2441 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
2442 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
2443 {
2444 {
2445 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son;
2446 son = NIM_NIL;
2447 {
2448 NI i;
2449 NI colontmp_;
2450 NI i_2;
2451 i = (NI)0;
2452 colontmp_ = (NI)0;
2453 colontmp_ = safeLen__ast_3191(n);
2454 i_2 = ((NI) 0);
2455 {
2456 while (1) {
2457 if (!(i_2 < colontmp_)) goto LA10;
2458 i = i_2;
2459 son = (*n)._kind_6.sons->data[i];
2460 propagateFieldFlags__semtypinst_774(t, son);
2461 i_2 += ((NI) 1);
2462 } LA10: ;
2463 }
2464 }
2465 }
2466 }
2467 break;
2468 default:
2469 {
2470 }
2471 break;
2472 }
2473 }BeforeRet_: ;
2474 }
N_NIMCALL(void,eraseVoidParams__semtypinst_682)2475 N_LIB_PRIVATE N_NIMCALL(void, eraseVoidParams__semtypinst_682)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
2476 {
2477 NIM_BOOL T3_;
2478 T3_ = (NIM_BOOL)0;
2479 T3_ = !(((*t).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2480 if (!(T3_)) goto LA4_;
2481 T3_ = ((*(*t).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63));
2482 LA4_: ;
2483 if (!T3_) goto LA5_;
2484 asgnRef((void**) (&(*t).sons->data[((NI) 0)]), ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
2485 }
2486 LA5_: ;
2487 {
2488 NI i;
2489 NI colontmp_;
2490 NI i_2;
2491 i = (NI)0;
2492 colontmp_ = (NI)0;
2493 colontmp_ = len__ast_4002(t);
2494 i_2 = ((NI) 1);
2495 {
2496 while (1) {
2497 if (!(i_2 < colontmp_)) goto LA9;
2498 i = i_2;
2499 {
2500 NI pos;
2501 if (!((*(*t).sons->data[i]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63))) goto LA12_;
2502 pos = i;
2503 {
2504 NI j;
2505 NI colontmp__2;
2506 NI colontmp__3;
2507 NI i_3;
2508 j = (NI)0;
2509 colontmp__2 = (NI)0;
2510 colontmp__3 = (NI)0;
2511 colontmp__2 = (NI)(i + ((NI) 1));
2512 colontmp__3 = len__ast_4002(t);
2513 i_3 = colontmp__2;
2514 {
2515 while (1) {
2516 if (!(i_3 < colontmp__3)) goto LA16;
2517 j = i_3;
2518 {
2519 if (!!(((*(*t).sons->data[j]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63)))) goto LA19_;
2520 asgnRef((void**) (&(*t).sons->data[pos]), (*t).sons->data[j]);
2521 asgnRef((void**) (&(*(*t).n)._kind_6.sons->data[pos]), (*(*t).n)._kind_6.sons->data[j]);
2522 pos += ((NI) 1);
2523 }
2524 LA19_: ;
2525 i_3 += ((NI) 1);
2526 } LA16: ;
2527 }
2528 }
2529 asgnRef((void**) (&(*t).sons), (tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A*) setLengthSeqV2(&((*t).sons)->Sup, (&NTIttypeseq__9aZVGG5Gtti9cC9bqRpXCtA3A_), ((NI) (pos))));
2530 asgnRef((void**) (&(*(*t).n)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*(*t).n)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (pos))));
2531 goto LA7;
2532 }
2533 LA12_: ;
2534 i_2 += ((NI) 1);
2535 } LA9: ;
2536 }
2537 } LA7: ;
2538 }
N_NIMCALL(void,skipIntLiteralParams__semtypinst_738)2539 N_LIB_PRIVATE N_NIMCALL(void, skipIntLiteralParams__semtypinst_738)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen) {
2540 {
2541 NI i;
2542 NI colontmp_;
2543 NI i_2;
2544 i = (NI)0;
2545 colontmp_ = (NI)0;
2546 colontmp_ = len__ast_4002(t);
2547 i_2 = ((NI) 0);
2548 {
2549 while (1) {
2550 if (!(i_2 < colontmp_)) goto LA3;
2551 i = i_2;
2552 {
2553 tyObject_TType__facALICuu8zUj0hjvbTLFg* p;
2554 tyObject_TType__facALICuu8zUj0hjvbTLFg* skipped;
2555 p = (*t).sons->data[i];
2556 {
2557 if (!(p == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA7_;
2558 goto LA4;
2559 }
2560 LA7_: ;
2561 skipped = skipIntLit__magicsys_124(p, idgen);
2562 {
2563 if (!!((skipped == p))) goto LA11_;
2564 asgnRef((void**) (&(*t).sons->data[i]), skipped);
2565 {
2566 if (!(((NI) 0) < i)) goto LA15_;
2567 asgnRef((void**) (&(*(*(*(*t).n)._kind_6.sons->data[i])._kind_4.sym).typ), skipped);
2568 }
2569 LA15_: ;
2570 }
2571 LA11_: ;
2572 } LA4: ;
2573 i_2 += ((NI) 1);
2574 } LA3: ;
2575 }
2576 }
2577 {
2578 NIM_BOOL T19_;
2579 T19_ = (NIM_BOOL)0;
2580 T19_ = !(((*t).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2581 if (!(T19_)) goto LA20_;
2582 T19_ = ((*(*t).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60));
2583 LA20_: ;
2584 if (!T19_) goto LA21_;
2585 asgnRef((void**) (&(*t).sons->data[((NI) 0)]), base__types_63((*t).sons->data[((NI) 0)]));
2586 }
2587 LA21_: ;
2588 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,replaceObjBranches__semtypinst_277)2589 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, replaceObjBranches__semtypinst_277)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
2590 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2591 result = NIM_NIL;
2592 result = n;
2593 switch ((*n).kind) {
2594 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
2595 {
2596 }
2597 break;
2598 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 140):
2599 {
2600 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
2601 branch = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
2602 {
2603 NI i;
2604 NI colontmp_;
2605 NI i_2;
2606 i = (NI)0;
2607 colontmp_ = (NI)0;
2608 colontmp_ = len__ast_3198(n);
2609 i_2 = ((NI) 0);
2610 {
2611 while (1) {
2612 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
2613 if (!(i_2 < colontmp_)) goto LA5;
2614 i = i_2;
2615 it = (*n)._kind_6.sons->data[i];
2616 {
2617 if (!(it == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA8_;
2618 illFormedAst__semdata_1071(n, (*(*(*cl).c).graph).config);
2619 }
2620 LA8_: ;
2621 switch ((*it).kind) {
2622 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
2623 {
2624 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cond;
2625 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e;
2626 checkSonsLen__semdata_1077(it, ((NI) 2), (*(*(*cl).c).graph).config);
2627 cond = (*it)._kind_6.sons->data[((NI) 0)];
2628 e = (*(*cl).c).semConstExpr((*cl).c, cond);
2629 {
2630 if (!!(((*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6)))) goto LA13_;
2631 internalErrorImpl__msgs_1431((*(*(*cl).c).graph).config, (*e).info, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_27), TM__mrkrD9c2e31kE4GdQtpMdaQ_28);
2632 }
2633 LA13_: ;
2634 {
2635 NIM_BOOL T17_;
2636 T17_ = (NIM_BOOL)0;
2637 T17_ = !(((*e)._kind_1.intVal == IL64(0)));
2638 if (!(T17_)) goto LA18_;
2639 T17_ = (branch == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
2640 LA18_: ;
2641 if (!T17_) goto LA19_;
2642 branch = (*it)._kind_6.sons->data[((NI) 1)];
2643 }
2644 LA19_: ;
2645 }
2646 break;
2647 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
2648 {
2649 checkSonsLen__semdata_1077(it, ((NI) 1), (*(*(*cl).c).graph).config);
2650 {
2651 if (!(branch == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA24_;
2652 branch = (*it)._kind_6.sons->data[((NI) 0)];
2653 }
2654 LA24_: ;
2655 }
2656 break;
2657 default:
2658 {
2659 illFormedAst__semdata_1071(n, (*(*(*cl).c).graph).config);
2660 }
2661 break;
2662 }
2663 i_2 += ((NI) 1);
2664 } LA5: ;
2665 }
2666 }
2667 {
2668 if (!!((branch == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA29_;
2669 result = replaceObjBranches__semtypinst_277(cl, branch);
2670 }
2671 goto LA27_;
2672 LA29_: ;
2673 {
2674 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138), (*n).info);
2675 }
2676 LA27_: ;
2677 }
2678 break;
2679 default:
2680 {
2681 {
2682 NI i_3;
2683 NI colontmp__2;
2684 NI i_4;
2685 i_3 = (NI)0;
2686 colontmp__2 = (NI)0;
2687 colontmp__2 = len__ast_3198(n);
2688 i_4 = ((NI) 0);
2689 {
2690 while (1) {
2691 if (!(i_4 < colontmp__2)) goto LA35;
2692 i_3 = i_4;
2693 asgnRef((void**) (&(*n)._kind_6.sons->data[i_3]), replaceObjBranches__semtypinst_277(cl, (*n)._kind_6.sons->data[i_3]));
2694 i_4 += ((NI) 1);
2695 } LA35: ;
2696 }
2697 }
2698 }
2699 break;
2700 }
2701 return result;
2702 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,replaceTypeVarsTAux__semtypinst_124)2703 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, replaceTypeVarsTAux__semtypinst_124)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
2704 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
2705 { result = NIM_NIL;
2706 result = t;
2707 {
2708 if (!(t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA3_;
2709 goto BeforeRet_;
2710 }
2711 LA3_: ;
2712 {
2713 tyObject_TType__facALICuu8zUj0hjvbTLFg* lookup;
2714 if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 12) || (*t).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 51) && (*t).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 54) || (*t).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 56) && (*t).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 62))) goto LA7_;
2715 lookup = lookup__semtypinst_158((*cl).typeMap, t);
2716 {
2717 if (!!((lookup == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA11_;
2718 result = lookup;
2719 goto BeforeRet_;
2720 }
2721 LA11_: ;
2722 }
2723 LA7_: ;
2724 switch ((*t).kind) {
2725 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 9):
2726 {
2727 result = handleGenericInvocation__semtypinst_509(cl, t);
2728 {
2729 tyObject_TType__facALICuu8zUj0hjvbTLFg* T16_;
2730 T16_ = NIM_NIL;
2731 T16_ = lastSon__ast_3743(result);
2732 if (!((*T16_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 52))) goto LA17_;
2733 (*result).kind = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 53);
2734 }
2735 LA17_: ;
2736 }
2737 break;
2738 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 10):
2739 {
2740 NimStringDesc* T20_;
2741 NimStringDesc* T21_;
2742 T20_ = NIM_NIL;
2743 T21_ = NIM_NIL;
2744 T21_ = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 1));
2745 T20_ = rawNewString((T21_ ? T21_->Sup.len : 0) + 60);
2746 appendString(T20_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_6));
2747 appendString(T20_, T21_);
2748 appendString(T20_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_14));
2749 liMessage__msgs_1118((*(*(*cl).c).graph).config, (*cl).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T20_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__mrkrD9c2e31kE4GdQtpMdaQ_15, NIM_FALSE);
2750 result = errorType__semdata_1002((*cl).c);
2751 }
2752 break;
2753 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 61):
2754 {
2755 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
2756 {
2757 if (!(*cl).allowMetaTypes) goto LA25_;
2758 goto BeforeRet_;
2759 }
2760 LA25_: ;
2761 n = prepareNode__semtypinst_182(cl, (*t).n);
2762 {
2763 if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA29_;
2764 n = (*(*cl).c).semConstExpr((*cl).c, n);
2765 }
2766 LA29_: ;
2767 {
2768 if (!((*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8))) goto LA33_;
2769 result = skipTypes__ast_3735((*n).typ, TM__mrkrD9c2e31kE4GdQtpMdaQ_16);
2770 }
2771 goto LA31_;
2772 LA33_: ;
2773 {
2774 {
2775 NIM_BOOL T38_;
2776 T38_ = (NIM_BOOL)0;
2777 T38_ = !(((*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60)));
2778 if (!(T38_)) goto LA39_;
2779 T38_ = !(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4)));
2780 LA39_: ;
2781 if (!T38_) goto LA40_;
2782 result = newTypeS__semdata_733(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60), (*cl).c);
2783 if ((*result).sons) { nimGCunrefRC1((*result).sons); (*result).sons = NIM_NIL; }
2784 (*result).sons = (tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A*) newSeqRC1((&NTIttypeseq__9aZVGG5Gtti9cC9bqRpXCtA3A_), 1);
2785 asgnRef((void**) (&(*result).sons->data[0]), (*n).typ);
2786 asgnRef((void**) (&(*result).n), n);
2787 }
2788 goto LA36_;
2789 LA40_: ;
2790 {
2791 result = (*n).typ;
2792 }
2793 LA36_: ;
2794 }
2795 LA31_: ;
2796 }
2797 break;
2798 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31):
2799 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36):
2800 {
2801 result = skipIntLit__magicsys_124(t, (*(*cl).c).Sup.idgen);
2802 }
2803 break;
2804 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8):
2805 {
2806 tyObject_TType__facALICuu8zUj0hjvbTLFg* lookup_2;
2807 lookup_2 = lookup__semtypinst_158((*cl).typeMap, t);
2808 {
2809 if (!!((lookup_2 == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA47_;
2810 result = lookup_2;
2811 {
2812 if (!!(((*result).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8)))) goto LA51_;
2813 result = makeTypeDesc__concepts_49((*cl).c, result);
2814 }
2815 goto LA49_;
2816 LA51_: ;
2817 {
2818 NIM_BOOL T54_;
2819 T54_ = (NIM_BOOL)0;
2820 T54_ = (((*t).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 9))&63U)))!=0);
2821 if (T54_) goto LA55_;
2822 T54_ = (*cl).skipTypedesc;
2823 LA55_: ;
2824 if (!T54_) goto LA56_;
2825 result = base__types_63(result);
2826 }
2827 goto LA49_;
2828 LA56_: ;
2829 LA49_: ;
2830 }
2831 goto LA45_;
2832 LA47_: ;
2833 {
2834 tyObject_TType__facALICuu8zUj0hjvbTLFg* T61_;
2835 if (!!(((*(*t).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 0)))) goto LA59_;
2836 T61_ = NIM_NIL;
2837 T61_ = replaceTypeVarsT__semtypinst_178(cl, (*t).sons->data[((NI) 0)]);
2838 result = makeTypeDesc__concepts_49((*cl).c, T61_);
2839 }
2840 goto LA45_;
2841 LA59_: ;
2842 LA45_: ;
2843 }
2844 break;
2845 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 52):
2846 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60):
2847 {
2848 result = t;
2849 }
2850 break;
2851 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11):
2852 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 53):
2853 {
2854 tyObject_TType__facALICuu8zUj0hjvbTLFg* T76_;
2855 {
2856 RootObj* T68_;
2857 if (!(((NI) 100) < (*cl).recursionLimit)) goto LA66_;
2858 T68_ = NIM_NIL;
2859 T68_ = idTableGet__astalgo_64((*cl).localCache, &t->Sup);
2860 result = ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) (T68_));
2861 {
2862 if (!!((result == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA71_;
2863 goto BeforeRet_;
2864 }
2865 LA71_: ;
2866 }
2867 LA66_: ;
2868 (*cl).recursionLimit += ((NI) 1);
2869 result = instCopyType__semtypinst_480(cl, t);
2870 idTablePut__astalgo_70((&(*cl).localCache), &t->Sup, (*((RootObj**) (&(result)))));
2871 {
2872 NI i;
2873 NI colontmp_;
2874 NI i_2;
2875 i = (NI)0;
2876 colontmp_ = (NI)0;
2877 colontmp_ = len__ast_4002(result);
2878 i_2 = ((NI) 1);
2879 {
2880 while (1) {
2881 if (!(i_2 < colontmp_)) goto LA75;
2882 i = i_2;
2883 asgnRef((void**) (&(*result).sons->data[i]), replaceTypeVarsT__semtypinst_178(cl, (*result).sons->data[i]));
2884 i_2 += ((NI) 1);
2885 } LA75: ;
2886 }
2887 }
2888 T76_ = NIM_NIL;
2889 T76_ = lastSon__ast_3743(result);
2890 propagateToOwner__ast_4219(result, T76_, NIM_TRUE);
2891 }
2892 break;
2893 default:
2894 {
2895 {
2896 NIM_BOOL T80_;
2897 T80_ = (NIM_BOOL)0;
2898 T80_ = containsGenericType__types_3360(t);
2899 if (!T80_) goto LA81_;
2900 {
2901 RootObj* T87_;
2902 if (!(((NI) 100) < (*cl).recursionLimit)) goto LA85_;
2903 T87_ = NIM_NIL;
2904 T87_ = idTableGet__astalgo_64((*cl).localCache, &t->Sup);
2905 result = ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) (T87_));
2906 {
2907 if (!!((result == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA90_;
2908 goto BeforeRet_;
2909 }
2910 LA90_: ;
2911 }
2912 LA85_: ;
2913 (*cl).recursionLimit += ((NI) 1);
2914 result = instCopyType__semtypinst_480(cl, t);
2915 (*result).size = IL64(-1);
2916 idTablePut__astalgo_70((&(*cl).localCache), &t->Sup, (*((RootObj**) (&(result)))));
2917 {
2918 NI i_3;
2919 NI colontmp__2;
2920 NI i_4;
2921 i_3 = (NI)0;
2922 colontmp__2 = (NI)0;
2923 colontmp__2 = len__ast_4002(result);
2924 i_4 = ((NI) 0);
2925 {
2926 while (1) {
2927 if (!(i_4 < colontmp__2)) goto LA94;
2928 i_3 = i_4;
2929 {
2930 tyObject_TType__facALICuu8zUj0hjvbTLFg* r;
2931 if (!!(((*result).sons->data[i_3] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA97_;
2932 {
2933 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T103_;
2934 NimStringDesc* T109_;
2935 NimStringDesc* T110_;
2936 if (!((*(*result).sons->data[i_3]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 10))) goto LA101_;
2937 {
2938 if (!!(((*t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA106_;
2939 T103_ = (*(*t).sym).info;
2940 }
2941 goto LA104_;
2942 LA106_: ;
2943 {
2944 T103_ = (*cl).info;
2945 }
2946 LA104_: ;
2947 T109_ = NIM_NIL;
2948 T110_ = NIM_NIL;
2949 T110_ = typeToString__types_50((*result).sons->data[i_3], ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 1));
2950 T109_ = rawNewString((T110_ ? T110_->Sup.len : 0) + ((*(*(*t).owner).name).s ? (*(*(*t).owner).name).s->Sup.len : 0) + 89);
2951 appendString(T109_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_17));
2952 appendString(T109_, T110_);
2953 appendString(T109_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_18));
2954 appendString(T109_, (*(*(*t).owner).name).s);
2955 appendString(T109_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_14));
2956 liMessage__msgs_1118((*(*(*cl).c).graph).config, T103_, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T109_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__mrkrD9c2e31kE4GdQtpMdaQ_19, NIM_FALSE);
2957 }
2958 LA101_: ;
2959 r = replaceTypeVarsT__semtypinst_178(cl, (*result).sons->data[i_3]);
2960 {
2961 tyObject_TType__facALICuu8zUj0hjvbTLFg* r2;
2962 if (!((*result).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17))) goto LA113_;
2963 r2 = skipTypes__ast_3735(r, TM__mrkrD9c2e31kE4GdQtpMdaQ_20);
2964 {
2965 if (!((*r2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21) || (*r2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22))) goto LA117_;
2966 r = skipTypes__ast_3735(r2, TM__mrkrD9c2e31kE4GdQtpMdaQ_21);
2967 }
2968 LA117_: ;
2969 }
2970 LA113_: ;
2971 asgnRef((void**) (&(*result).sons->data[i_3]), r);
2972 {
2973 NIM_BOOL T121_;
2974 T121_ = (NIM_BOOL)0;
2975 T121_ = !(((*result).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16)));
2976 if (T121_) goto LA122_;
2977 T121_ = !((i_3 == ((NI) 0)));
2978 LA122_: ;
2979 if (!T121_) goto LA123_;
2980 propagateToOwner__ast_4219(result, r, NIM_TRUE);
2981 }
2982 LA123_: ;
2983 }
2984 LA97_: ;
2985 i_4 += ((NI) 1);
2986 } LA94: ;
2987 }
2988 }
2989 asgnRef((void**) (&(*result).n), replaceTypeVarsN__semtypinst_130(cl, (*result).n, ((*result).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25))));
2990 switch ((*result).kind) {
2991 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
2992 {
2993 tyObject_TType__facALICuu8zUj0hjvbTLFg* idx;
2994 idx = (*result).sons->data[((NI) 0)];
2995 {
2996 NimStringDesc* argX60gensym191_;
2997 if (!!(!(((*idx).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60))))) goto LA128_;
2998 argX60gensym191_ = toFileLineCol__msgs_615(TM__mrkrD9c2e31kE4GdQtpMdaQ_25);
2999 internalErrorImpl__msgs_1431((*(*(*cl).c).graph).config, unknownLineInfo__lineinfos_280, argX60gensym191_, TM__mrkrD9c2e31kE4GdQtpMdaQ_25);
3000 }
3001 LA128_: ;
3002 }
3003 break;
3004 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
3005 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
3006 {
3007 propagateFieldFlags__semtypinst_774(result, (*result).n);
3008 {
3009 NIM_BOOL T133_;
3010 T133_ = (NIM_BOOL)0;
3011 T133_ = ((*result).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
3012 if (!(T133_)) goto LA134_;
3013 T133_ = (*(*cl).c).computeRequiresInit((*cl).c, result);
3014 LA134_: ;
3015 if (!T133_) goto LA135_;
3016 (*result).flags |= ((NU64)1)<<((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 18)) & 63);
3017 }
3018 LA135_: ;
3019 }
3020 break;
3021 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
3022 {
3023 eraseVoidParams__semtypinst_682(result);
3024 skipIntLiteralParams__semtypinst_738(result, (*(*cl).c).Sup.idgen);
3025 }
3026 break;
3027 case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20):
3028 {
3029 asgnRef((void**) (&(*result).sons->data[((NI) 0)]), skipTypes__ast_3735((*result).sons->data[((NI) 0)], TM__mrkrD9c2e31kE4GdQtpMdaQ_26));
3030 }
3031 break;
3032 default:
3033 {
3034 }
3035 break;
3036 }
3037 }
3038 goto LA78_;
3039 LA81_: ;
3040 {
3041 result = t;
3042 {
3043 NIM_BOOL T143_;
3044 NIM_BOOL T144_;
3045 NIM_BOOL T145_;
3046 NI T147_;
3047 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T152_;
3048 T143_ = (NIM_BOOL)0;
3049 T144_ = (NIM_BOOL)0;
3050 T145_ = (NIM_BOOL)0;
3051 T145_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22));
3052 if (!(T145_)) goto LA146_;
3053 T147_ = (NI)0;
3054 T147_ = len__ast_4002(t);
3055 T145_ = (((NI) 0) < T147_);
3056 LA146_: ;
3057 T144_ = T145_;
3058 if (!(T144_)) goto LA148_;
3059 T144_ = ((*(*t).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
3060 LA148_: ;
3061 T143_ = T144_;
3062 if (!(T143_)) goto LA149_;
3063 T143_ = !(((*(*t).sons->data[((NI) 0)]).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
3064 LA149_: ;
3065 if (!T143_) goto LA150_;
3066 T152_ = NIM_NIL;
3067 T152_ = replaceObjBranches__semtypinst_277((&(*cl)), (*(*t).sons->data[((NI) 0)]).n);
3068 (void)(T152_);
3069 }
3070 goto LA141_;
3071 LA150_: ;
3072 {
3073 NIM_BOOL T154_;
3074 T154_ = (NIM_BOOL)0;
3075 T154_ = !(((*result).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
3076 if (!(T154_)) goto LA155_;
3077 T154_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
3078 LA155_: ;
3079 if (!T154_) goto LA156_;
3080 (*result).size = IL64(-1);
3081 asgnRef((void**) (&(*result).n), replaceObjBranches__semtypinst_277((&(*cl)), (*result).n));
3082 }
3083 goto LA141_;
3084 LA156_: ;
3085 LA141_: ;
3086 }
3087 LA78_: ;
3088 }
3089 break;
3090 }
3091 }BeforeRet_: ;
3092 return result;
3093 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,replaceTypeVarsT__semtypinst_178)3094 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, replaceTypeVarsT__semtypinst_178)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
3095 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
3096 result = NIM_NIL;
3097 result = replaceTypeVarsTAux__semtypinst_124(cl, t);
3098 return result;
3099 }
N_NIMCALL(NIM_BOOL,isTypeParam__semtypinst_227)3100 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isTypeParam__semtypinst_227)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3101 NIM_BOOL result;
3102 NIM_BOOL T1_;
3103 NIM_BOOL T3_;
3104 NIM_BOOL T5_;
3105 { result = (NIM_BOOL)0;
3106 T1_ = (NIM_BOOL)0;
3107 T1_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
3108 if (!(T1_)) goto LA2_;
3109 T3_ = (NIM_BOOL)0;
3110 T3_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 4));
3111 if (T3_) goto LA4_;
3112 T5_ = (NIM_BOOL)0;
3113 T5_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 7));
3114 if (!(T5_)) goto LA6_;
3115 T5_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 2))&63U)))!=0);
3116 LA6_: ;
3117 T3_ = T5_;
3118 LA4_: ;
3119 T1_ = T3_;
3120 LA2_: ;
3121 result = T1_;
3122 goto BeforeRet_;
3123 }BeforeRet_: ;
3124 return result;
3125 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,reResolveCallsWithTypedescParams__semtypinst_246)3126 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, reResolveCallsWithTypedescParams__semtypinst_246)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3127 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3128 { result = NIM_NIL;
3129 {
3130 NIM_BOOL T3_;
3131 NIM_BOOL needsFixing;
3132 T3_ = (NIM_BOOL)0;
3133 T3_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
3134 if (!(T3_)) goto LA4_;
3135 T3_ = (((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 2))&63U)))!=0);
3136 LA4_: ;
3137 if (!T3_) goto LA5_;
3138 needsFixing = NIM_FALSE;
3139 {
3140 NI i;
3141 NI colontmp_;
3142 NI i_2;
3143 i = (NI)0;
3144 colontmp_ = (NI)0;
3145 colontmp_ = safeLen__ast_3191(n);
3146 i_2 = ((NI) 1);
3147 {
3148 while (1) {
3149 if (!(i_2 < colontmp_)) goto LA9;
3150 i = i_2;
3151 {
3152 NIM_BOOL T12_;
3153 T12_ = (NIM_BOOL)0;
3154 T12_ = isTypeParam__semtypinst_227((*n)._kind_6.sons->data[i]);
3155 if (!T12_) goto LA13_;
3156 needsFixing = NIM_TRUE;
3157 }
3158 LA13_: ;
3159 i_2 += ((NI) 1);
3160 } LA9: ;
3161 }
3162 }
3163 {
3164 if (!needsFixing) goto LA17_;
3165 asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), newSymNode__ast_3716((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).owner));
3166 result = (*(*cl).c).semOverloadedCall((*cl).c, n, n, 12288, 0);
3167 goto BeforeRet_;
3168 }
3169 LA17_: ;
3170 }
3171 LA5_: ;
3172 {
3173 NI i_3;
3174 NI colontmp__2;
3175 NI i_4;
3176 i_3 = (NI)0;
3177 colontmp__2 = (NI)0;
3178 colontmp__2 = safeLen__ast_3191(n);
3179 i_4 = ((NI) 0);
3180 {
3181 while (1) {
3182 if (!(i_4 < colontmp__2)) goto LA21;
3183 i_3 = i_4;
3184 asgnRef((void**) (&(*n)._kind_6.sons->data[i_3]), reResolveCallsWithTypedescParams__semtypinst_246(cl, (*n)._kind_6.sons->data[i_3]));
3185 i_4 += ((NI) 1);
3186 } LA21: ;
3187 }
3188 }
3189 result = n;
3190 goto BeforeRet_;
3191 }BeforeRet_: ;
3192 return result;
3193 }
N_NIMCALL(void,newSons__semtypinst_404)3194 N_LIB_PRIVATE N_NIMCALL(void, newSons__semtypinst_404)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, NI length) {
3195 asgnRef((void**) (&(*father)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*father)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) (length))));
3196 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,replaceTypeVarsN__semtypinst_130)3197 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, replaceTypeVarsN__semtypinst_130)(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg* cl, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI start) {
3198 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3199 { result = NIM_NIL;
3200 {
3201 if (!(n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
3202 goto BeforeRet_;
3203 }
3204 LA3_: ;
3205 result = copyNode__ast_4336(n);
3206 {
3207 if (!!(((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA7_;
3208 asgnRef((void**) (&(*result).typ), replaceTypeVarsT__semtypinst_178(cl, (*n).typ));
3209 }
3210 LA7_: ;
3211 switch ((*n).kind) {
3212 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
3213 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
3214 {
3215 }
3216 break;
3217 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 57):
3218 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 56):
3219 {
3220 result = n;
3221 }
3222 break;
3223 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
3224 {
3225 asgnRef((void**) (&(*result)._kind_4.sym), replaceTypeVarsS__semtypinst_127(cl, (*n)._kind_4.sym));
3226 {
3227 if (!((*(*(*result)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63))) goto LA14_;
3228 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138), (*n).info);
3229 }
3230 LA14_: ;
3231 }
3232 break;
3233 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 140):
3234 {
3235 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
3236 branch = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
3237 {
3238 NI i;
3239 NI colontmp_;
3240 NI i_2;
3241 i = (NI)0;
3242 colontmp_ = (NI)0;
3243 colontmp_ = len__ast_3198(n);
3244 i_2 = ((NI) 0);
3245 {
3246 while (1) {
3247 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
3248 if (!(i_2 < colontmp_)) goto LA19;
3249 i = i_2;
3250 it = (*n)._kind_6.sons->data[i];
3251 {
3252 if (!(it == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA22_;
3253 illFormedAst__semdata_1071(n, (*(*(*cl).c).graph).config);
3254 }
3255 LA22_: ;
3256 switch ((*it).kind) {
3257 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
3258 {
3259 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* cond;
3260 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e;
3261 checkSonsLen__semdata_1077(it, ((NI) 2), (*(*(*cl).c).graph).config);
3262 cond = prepareNode__semtypinst_182(cl, (*it)._kind_6.sons->data[((NI) 0)]);
3263 e = (*(*cl).c).semConstExpr((*cl).c, cond);
3264 {
3265 if (!!(((*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6)))) goto LA27_;
3266 internalErrorImpl__msgs_1431((*(*(*cl).c).graph).config, (*e).info, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_27), TM__mrkrD9c2e31kE4GdQtpMdaQ_29);
3267 }
3268 LA27_: ;
3269 {
3270 NIM_BOOL T31_;
3271 T31_ = (NIM_BOOL)0;
3272 T31_ = !(((*e)._kind_1.intVal == IL64(0)));
3273 if (!(T31_)) goto LA32_;
3274 T31_ = (branch == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
3275 LA32_: ;
3276 if (!T31_) goto LA33_;
3277 branch = (*it)._kind_6.sons->data[((NI) 1)];
3278 }
3279 LA33_: ;
3280 }
3281 break;
3282 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
3283 {
3284 checkSonsLen__semdata_1077(it, ((NI) 1), (*(*(*cl).c).graph).config);
3285 {
3286 if (!(branch == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA38_;
3287 branch = (*it)._kind_6.sons->data[((NI) 0)];
3288 }
3289 LA38_: ;
3290 }
3291 break;
3292 default:
3293 {
3294 illFormedAst__semdata_1071(n, (*(*(*cl).c).graph).config);
3295 }
3296 break;
3297 }
3298 i_2 += ((NI) 1);
3299 } LA19: ;
3300 }
3301 }
3302 {
3303 if (!!((branch == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA43_;
3304 result = replaceTypeVarsN__semtypinst_130(cl, branch, ((NI) 0));
3305 }
3306 goto LA41_;
3307 LA43_: ;
3308 {
3309 result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138), (*n).info);
3310 }
3311 LA41_: ;
3312 }
3313 break;
3314 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 62):
3315 {
3316 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
3317 n_2 = prepareNode__semtypinst_182(cl, n);
3318 n_2 = reResolveCallsWithTypedescParams__semtypinst_246(cl, n_2);
3319 {
3320 if (!(*cl).allowMetaTypes) goto LA49_;
3321 result = n_2;
3322 }
3323 goto LA47_;
3324 LA49_: ;
3325 {
3326 result = (*(*cl).c).semExpr((*cl).c, n_2, 0);
3327 }
3328 LA47_: ;
3329 {
3330 if (!!((*cl).allowMetaTypes)) goto LA54_;
3331 }
3332 LA54_: ;
3333 }
3334 break;
3335 default:
3336 {
3337 {
3338 NI T59_;
3339 NI T62_;
3340 T59_ = (NI)0;
3341 T59_ = len__ast_3198(n);
3342 if (!(((NI) 0) < T59_)) goto LA60_;
3343 T62_ = (NI)0;
3344 T62_ = len__ast_3198(n);
3345 newSons__semtypinst_404(result, T62_);
3346 {
3347 if (!(((NI) 0) < start)) goto LA65_;
3348 asgnRef((void**) (&(*result)._kind_6.sons->data[((NI) 0)]), (*n)._kind_6.sons->data[((NI) 0)]);
3349 }
3350 LA65_: ;
3351 {
3352 NI i_3;
3353 NI colontmp__2;
3354 NI i_4;
3355 i_3 = (NI)0;
3356 colontmp__2 = (NI)0;
3357 colontmp__2 = len__ast_3198(n);
3358 i_4 = start;
3359 {
3360 while (1) {
3361 if (!(i_4 < colontmp__2)) goto LA69;
3362 i_3 = i_4;
3363 asgnRef((void**) (&(*result)._kind_6.sons->data[i_3]), replaceTypeVarsN__semtypinst_130(cl, (*n)._kind_6.sons->data[i_3], ((NI) 0)));
3364 i_4 += ((NI) 1);
3365 } LA69: ;
3366 }
3367 }
3368 }
3369 LA60_: ;
3370 }
3371 break;
3372 }
3373 }BeforeRet_: ;
3374 return result;
3375 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,replaceTypesInBody__semtypinst_988)3376 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, replaceTypesInBody__semtypinst_988)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* p, tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q pt, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, NIM_BOOL allowMetaTypes) {
3377 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3378 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* typeMap;
3379 tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg cl;
3380 result = NIM_NIL;
3381 typeMap = initLayeredTypeMap__semtypinst_134(pt);
3382 nimZeroMem((void*)(&cl), sizeof(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg));
3383 initTypeVars__semtypinst_982(p, typeMap, (*n).info, owner, (&cl));
3384 cl.allowMetaTypes = allowMetaTypes;
3385 pushInfoContext__msgs_490((*(*p).graph).config, (*n).info, ((NimStringDesc*) NIM_NIL));
3386 result = replaceTypeVarsN__semtypinst_130((&cl), n, ((NI) 0));
3387 popInfoContext__msgs_507((*(*p).graph).config);
3388 return result;
3389 }
N_NIMCALL(void,recomputeFieldPositions__semtypinst_1006)3390 N_LIB_PRIVATE N_NIMCALL(void, recomputeFieldPositions__semtypinst_1006)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, NI* currPosition) {
3391 {
3392 NIM_BOOL T3_;
3393 NIM_BOOL T4_;
3394 NI T6_;
3395 tyObject_TType__facALICuu8zUj0hjvbTLFg* b;
3396 T3_ = (NIM_BOOL)0;
3397 T4_ = (NIM_BOOL)0;
3398 T4_ = !((t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
3399 if (!(T4_)) goto LA5_;
3400 T6_ = (NI)0;
3401 T6_ = len__ast_4002(t);
3402 T4_ = (((NI) 0) < T6_);
3403 LA5_: ;
3404 T3_ = T4_;
3405 if (!(T3_)) goto LA7_;
3406 T3_ = !(((*t).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
3407 LA7_: ;
3408 if (!T3_) goto LA8_;
3409 b = skipTypes__ast_3735((*t).sons->data[((NI) 0)], TM__mrkrD9c2e31kE4GdQtpMdaQ_31);
3410 recomputeFieldPositions__semtypinst_1006(b, (*b).n, currPosition);
3411 }
3412 LA8_: ;
3413 switch ((*obj).kind) {
3414 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
3415 {
3416 {
3417 NI i;
3418 NI colontmp_;
3419 NI i_2;
3420 i = (NI)0;
3421 colontmp_ = (NI)0;
3422 colontmp_ = len__ast_3198(obj);
3423 i_2 = ((NI) 0);
3424 {
3425 while (1) {
3426 if (!(i_2 < colontmp_)) goto LA13;
3427 i = i_2;
3428 recomputeFieldPositions__semtypinst_1006(((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL), (*obj)._kind_6.sons->data[i], currPosition);
3429 i_2 += ((NI) 1);
3430 } LA13: ;
3431 }
3432 }
3433 }
3434 break;
3435 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
3436 {
3437 recomputeFieldPositions__semtypinst_1006(((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL), (*obj)._kind_6.sons->data[((NI) 0)], currPosition);
3438 {
3439 NI i_3;
3440 NI colontmp__2;
3441 NI i_4;
3442 i_3 = (NI)0;
3443 colontmp__2 = (NI)0;
3444 colontmp__2 = len__ast_3198(obj);
3445 i_4 = ((NI) 1);
3446 {
3447 while (1) {
3448 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T18_;
3449 if (!(i_4 < colontmp__2)) goto LA17;
3450 i_3 = i_4;
3451 T18_ = NIM_NIL;
3452 T18_ = lastSon__ast_4832((*obj)._kind_6.sons->data[i_3]);
3453 recomputeFieldPositions__semtypinst_1006(((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL), T18_, currPosition);
3454 i_4 += ((NI) 1);
3455 } LA17: ;
3456 }
3457 }
3458 }
3459 break;
3460 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
3461 {
3462 (*(*obj)._kind_4.sym).position = (*currPosition);
3463 (*currPosition) += ((NI) 1);
3464 }
3465 break;
3466 default:
3467 {
3468 }
3469 break;
3470 }
3471 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,generateTypeInstance__semtypinst_1050)3472 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, generateTypeInstance__semtypinst_1050)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* p, tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q pt, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
3473 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
3474 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* typeMap;
3475 tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg cl;
3476 tyObject_TType__facALICuu8zUj0hjvbTLFg* objType;
3477 result = NIM_NIL;
3478 typeMap = initLayeredTypeMap__semtypinst_134(pt);
3479 nimZeroMem((void*)(&cl), sizeof(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg));
3480 initTypeVars__semtypinst_982(p, typeMap, info, ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), (&cl));
3481 pushInfoContext__msgs_490((*(*p).graph).config, info, ((NimStringDesc*) NIM_NIL));
3482 result = replaceTypeVarsT__semtypinst_178((&cl), t);
3483 popInfoContext__msgs_507((*(*p).graph).config);
3484 objType = skipTypes__ast_3735(result, TM__mrkrD9c2e31kE4GdQtpMdaQ_30);
3485 {
3486 NI position;
3487 if (!((*objType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17))) goto LA3_;
3488 position = ((NI) 0);
3489 recomputeFieldPositions__semtypinst_1006(objType, (*objType).n, (&position));
3490 }
3491 LA3_: ;
3492 return result;
3493 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,prepareMetatypeForSigmatch__semtypinst_1064)3494 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, prepareMetatypeForSigmatch__semtypinst_1064)(tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* p, tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q pt, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
3495 tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
3496 tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ* typeMap;
3497 tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg cl;
3498 result = NIM_NIL;
3499 typeMap = initLayeredTypeMap__semtypinst_134(pt);
3500 nimZeroMem((void*)(&cl), sizeof(tyObject_TReplTypeVars__gMP9b9b8d4Uze3mE5G9aP9afmg));
3501 initTypeVars__semtypinst_982(p, typeMap, info, ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), (&cl));
3502 cl.allowMetaTypes = NIM_TRUE;
3503 pushInfoContext__msgs_490((*(*p).graph).config, info, ((NimStringDesc*) NIM_NIL));
3504 result = replaceTypeVarsT__semtypinst_178((&cl), t);
3505 popInfoContext__msgs_507((*(*p).graph).config);
3506 return result;
3507 }
N_NIMCALL(void,checkConstructedType__semtypinst_26)3508 N_LIB_PRIVATE N_NIMCALL(void, checkConstructedType__semtypinst_26)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
3509 tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
3510 t = skipTypes__ast_3735(typ, TM__mrkrD9c2e31kE4GdQtpMdaQ_32);
3511 {
3512 if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 51) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 54) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 52) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 53) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 56) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 57) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 58) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 59))) goto LA3_;
3513 }
3514 goto LA1_;
3515 LA3_: ;
3516 {
3517 NIM_BOOL T6_;
3518 T6_ = (NIM_BOOL)0;
3519 T6_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47));
3520 if (!(T6_)) goto LA7_;
3521 T6_ = ((*(*t).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*t).sons->data[((NI) 0)]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47));
3522 LA7_: ;
3523 if (!T6_) goto LA8_;
3524 liMessage__msgs_1118(conf, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_11), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__mrkrD9c2e31kE4GdQtpMdaQ_33, NIM_FALSE);
3525 }
3526 goto LA1_;
3527 LA8_: ;
3528 {
3529 NIM_BOOL T11_;
3530 NI64 T12_;
3531 NimStringDesc* T16_;
3532 NimStringDesc* T17_;
3533 T11_ = (NIM_BOOL)0;
3534 T12_ = (NI64)0;
3535 T12_ = computeSize__types_3317(conf, t);
3536 T11_ = (T12_ == IL64(-2));
3537 if (T11_) goto LA13_;
3538 T11_ = isTupleRecursive__types_3996(t);
3539 LA13_: ;
3540 if (!T11_) goto LA14_;
3541 T16_ = NIM_NIL;
3542 T17_ = NIM_NIL;
3543 T17_ = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
3544 T16_ = rawNewString((T17_ ? T17_->Sup.len : 0) + 28);
3545 appendString(T16_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_34));
3546 appendString(T16_, T17_);
3547 appendString(T16_, ((NimStringDesc*) &TM__mrkrD9c2e31kE4GdQtpMdaQ_7));
3548 liMessage__msgs_1118(conf, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T16_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__mrkrD9c2e31kE4GdQtpMdaQ_35, NIM_FALSE);
3549 }
3550 goto LA1_;
3551 LA14_: ;
3552 LA1_: ;
3553 }
N_NIMCALL(void,compiler_semtypinstDatInit000)3554 N_LIB_PRIVATE N_NIMCALL(void, compiler_semtypinstDatInit000)(void) {
3555 static TNimNode* TM__mrkrD9c2e31kE4GdQtpMdaQ_2_2[2];
3556 static TNimNode TM__mrkrD9c2e31kE4GdQtpMdaQ_0[3];
3557 NTIlayeredidtable58objecttype__VAXPousy5FCnCEYMcHN9bDQ_.size = sizeof(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ);
3558 NTIlayeredidtable58objecttype__VAXPousy5FCnCEYMcHN9bDQ_.align = NIM_ALIGNOF(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ);
3559 NTIlayeredidtable58objecttype__VAXPousy5FCnCEYMcHN9bDQ_.kind = 18;
3560 NTIlayeredidtable58objecttype__VAXPousy5FCnCEYMcHN9bDQ_.base = 0;
3561 NTIlayeredidtable58objecttype__VAXPousy5FCnCEYMcHN9bDQ_.flags = 2;
3562 TM__mrkrD9c2e31kE4GdQtpMdaQ_2_2[0] = &TM__mrkrD9c2e31kE4GdQtpMdaQ_0[1];
3563 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[1].kind = 1;
3564 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[1].offset = offsetof(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ, topLayer);
3565 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[1].typ = (&NTItidtable__9aiv9bp2t5icFNINcg9c4xi1Q_);
3566 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[1].name = "topLayer";
3567 TM__mrkrD9c2e31kE4GdQtpMdaQ_2_2[1] = &TM__mrkrD9c2e31kE4GdQtpMdaQ_0[2];
3568 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[2].kind = 1;
3569 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[2].offset = offsetof(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ, nextLayer);
3570 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[2].typ = (&NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_);
3571 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[2].name = "nextLayer";
3572 TM__mrkrD9c2e31kE4GdQtpMdaQ_0[0].len = 2; TM__mrkrD9c2e31kE4GdQtpMdaQ_0[0].kind = 2; TM__mrkrD9c2e31kE4GdQtpMdaQ_0[0].sons = &TM__mrkrD9c2e31kE4GdQtpMdaQ_2_2[0];
3573 NTIlayeredidtable58objecttype__VAXPousy5FCnCEYMcHN9bDQ_.node = &TM__mrkrD9c2e31kE4GdQtpMdaQ_0[0];
3574 NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_.size = sizeof(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*);
3575 NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_.align = NIM_ALIGNOF(tyObject_LayeredIdTablecolonObjectType___VAXPousy5FCnCEYMcHN9bDQ*);
3576 NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_.kind = 22;
3577 NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_.base = (&NTIlayeredidtable58objecttype__VAXPousy5FCnCEYMcHN9bDQ_);
3578 NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_.flags = 2;
3579 NTIlayeredidtable__zSq8dodcWpSdfE0WaiBU9cw_.marker = Marker_tyRef__zSq8dodcWpSdfE0WaiBU9cw;
3580 }
3581
3582