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