1 #include "core__native.sep.0.h"
2 /* method native$UInt32$code_point for (self: UInt32): Char */
3 uint32_t core__native___UInt32___code_point(uint32_t self
) {
4 uint32_t var
/* : Char */;
5 uint32_t var1
/* : Char */;
6 var1
= core__native___UInt32_code_point___impl(self
);
12 /* method native$CString$new for (self: CString, Int): CString */
13 char* core___core__CString___new(char* self
, long p0
) {
14 char* var
/* : CString */;
15 char* var1
/* : CString */;
16 var1
= (char*)nit_alloc(p0
);
22 /* method native$CString$[] for (self: CString, Int): Byte */
23 unsigned char core___core__CString____91d_93d(char* self
, long p0
) {
24 unsigned char var
/* : Byte */;
25 unsigned char var1
/* : Byte */;
26 var1
= (unsigned char)((int)self
[p0
]);
32 /* method native$CString$[]= for (self: CString, Int, Byte) */
33 void core___core__CString____91d_93d_61d(char* self
, long p0
, unsigned char p1
) {
34 self
[p0
]=(unsigned char)p1
;
37 /* method native$CString$copy_to for (self: CString, CString, Int, Int, Int) */
38 void core___core__CString___copy_to(char* self
, char* p0
, long p1
, long p2
, long p3
) {
39 memmove(p0
+p3
,self
+p2
,p1
);
42 /* method native$CString$== for (self: CString, nullable Object): Bool */
43 short int core___core__CString___core__kernel__Object___61d_61d(char* self
, val
* p0
) {
44 short int var
/* : Bool */;
45 short int var1
/* : Bool */;
46 char* var2
/* : CString */;
47 if ((p0
!= NULL
) && ((((long)p0
&3)?class_info
[((long)p0
&3)]:p0
->class) == &class_core__CString
)) {
48 var2
= ((struct instance_core__CString
*)p0
)->value
; /* autounbox from nullable Object to CString */;
56 /* method native$CString$== for (self: Object, nullable Object): Bool */
57 short int VIRTUAL_core___core__CString___core__kernel__Object___61d_61d(val
* self
, val
* p0
) {
58 short int var
/* : Bool */;
59 short int var1
/* : Bool */;
60 short int var3
/* : Bool */;
61 { /* Inline native$CString$== (self,p0) on <self:Object(CString)> */
62 var3
= self
== p0
|| (p0
!= NULL
&& (!((long)p0
&3)) && self
->class == p0
->class && ((struct instance_core__CString
*)self
)->value
== ((struct instance_core__CString
*)p0
)->value
);
71 /* method native$CString$!= for (self: CString, nullable Object): Bool */
72 short int core___core__CString___core__kernel__Object___33d_61d(char* self
, val
* p0
) {
73 short int var
/* : Bool */;
74 short int var1
/* : Bool */;
75 char* var2
/* : CString */;
76 short int var3
/* : Bool */;
77 if ((p0
!= NULL
) && ((((long)p0
&3)?class_info
[((long)p0
&3)]:p0
->class) == &class_core__CString
)) {
78 var2
= ((struct instance_core__CString
*)p0
)->value
; /* autounbox from nullable Object to CString */;
87 /* method native$CString$!= for (self: Object, nullable Object): Bool */
88 short int VIRTUAL_core___core__CString___core__kernel__Object___33d_61d(val
* self
, val
* p0
) {
89 short int var
/* : Bool */;
90 short int var1
/* : Bool */;
91 short int var3
/* : Bool */;
92 short int var4
/* : Bool */;
93 { /* Inline native$CString$!= (self,p0) on <self:Object(CString)> */
94 var3
= self
== p0
|| (p0
!= NULL
&& (!((long)p0
&3)) && self
->class == p0
->class && ((struct instance_core__CString
*)self
)->value
== ((struct instance_core__CString
*)p0
)->value
);
104 /* method native$CString$cstring_length for (self: CString): Int */
105 long core___core__CString___cstring_length(char* self
) {
106 long var
/* : Int */;
107 long var_l
/* var l: Int */;
108 unsigned char var1
/* : Byte */;
109 unsigned char var3
/* : Byte */;
110 short int var4
/* : Bool */;
111 short int var6
/* : Bool */;
112 short int var7
/* : Bool */;
113 long var8
/* : Int */;
114 short int var10
/* : Bool */;
117 const char* var_class_name
;
118 long var11
/* : Int */;
122 { /* Inline native$CString$[] (self,var_l) on <self:CString> */
123 var3
= (unsigned char)((int)self
[var_l
]);
130 { /* Inline kernel$Byte$!= (var1,((unsigned char)0x00)) on <var1:Byte> */
131 var6
= var1
== ((unsigned char)0x00);
140 { /* Inline kernel$Int$+ (var_l,1l) on <var_l:Int> */
141 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
142 /* <1l:Int> isa OTHER */
143 var10
= 1; /* easy <1l:Int> isa OTHER*/
144 if (unlikely(!var10
)) {
145 var_class_name
= type_core__Int
.name
;
146 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
147 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
161 BREAK_label
: (void)0;
167 /* method native$CString$atof for (self: CString): Float */
168 double core___core__CString___atof(char* self
) {
169 double var
/* : Float */;
170 double var1
/* : Float */;
171 var1
= core__native___CString_atof___impl(self
);
177 /* method native$CString$char_at for (self: CString, Int): Char */
178 uint32_t core___core__CString___char_at(char* self
, long p0
) {
179 uint32_t var
/* : Char */;
180 long var_pos
/* var pos: Int */;
181 unsigned char var1
/* : Byte */;
182 unsigned char var3
/* : Byte */;
183 unsigned char var_c
/* var c: Byte */;
184 unsigned char var4
/* : Byte */;
185 unsigned char var6
/* : Byte */;
186 short int var7
/* : Bool */;
187 short int var9
/* : Bool */;
188 uint32_t var10
/* : Char */;
189 uint32_t var12
/* : Char */;
190 uint32_t var13
/* : UInt32 */;
191 uint32_t var15
/* : UInt32 */;
192 uint32_t var_b
/* var b: UInt32 */;
193 uint32_t var_ret
/* var ret: UInt32 */;
194 uint32_t var16
/* : UInt32 */;
195 uint32_t var18
/* : UInt32 */;
196 short int var19
/* : Bool */;
197 short int var21
/* : Bool */;
198 short int var22
/* : Bool */;
199 uint32_t var23
/* : Char */;
200 uint32_t var25
/* : Char */;
201 uint32_t var26
/* : UInt32 */;
202 uint32_t var28
/* : UInt32 */;
203 short int var29
/* : Bool */;
204 short int var31
/* : Bool */;
205 uint32_t var32
/* : UInt32 */;
206 uint32_t var34
/* : UInt32 */;
207 uint32_t var35
/* : UInt32 */;
208 uint32_t var37
/* : UInt32 */;
209 uint32_t var38
/* : UInt32 */;
210 uint32_t var40
/* : UInt32 */;
211 uint32_t var41
/* : UInt32 */;
212 uint32_t var43
/* : UInt32 */;
213 uint32_t var44
/* : UInt32 */;
214 uint32_t var46
/* : UInt32 */;
215 uint32_t var47
/* : UInt32 */;
216 uint32_t var49
/* : UInt32 */;
217 uint32_t var50
/* : Char */;
218 uint32_t var52
/* : Char */;
219 uint32_t var53
/* : UInt32 */;
220 uint32_t var55
/* : UInt32 */;
221 short int var56
/* : Bool */;
222 short int var58
/* : Bool */;
223 short int var59
/* : Bool */;
224 uint32_t var60
/* : Char */;
225 uint32_t var62
/* : Char */;
226 uint32_t var63
/* : UInt32 */;
227 uint32_t var65
/* : UInt32 */;
228 short int var66
/* : Bool */;
229 short int var68
/* : Bool */;
230 uint32_t var69
/* : UInt32 */;
231 uint32_t var71
/* : UInt32 */;
232 uint32_t var72
/* : UInt32 */;
233 uint32_t var74
/* : UInt32 */;
234 uint32_t var75
/* : UInt32 */;
235 uint32_t var77
/* : UInt32 */;
236 uint32_t var78
/* : UInt32 */;
237 uint32_t var80
/* : UInt32 */;
238 uint32_t var81
/* : UInt32 */;
239 uint32_t var83
/* : UInt32 */;
240 uint32_t var84
/* : UInt32 */;
241 uint32_t var86
/* : UInt32 */;
242 uint32_t var87
/* : UInt32 */;
243 uint32_t var89
/* : UInt32 */;
244 uint32_t var90
/* : UInt32 */;
245 uint32_t var92
/* : UInt32 */;
246 uint32_t var93
/* : UInt32 */;
247 uint32_t var95
/* : UInt32 */;
248 uint32_t var96
/* : Char */;
249 uint32_t var98
/* : Char */;
250 uint32_t var99
/* : UInt32 */;
251 uint32_t var101
/* : UInt32 */;
252 short int var102
/* : Bool */;
253 short int var104
/* : Bool */;
254 short int var105
/* : Bool */;
255 uint32_t var106
/* : Char */;
256 uint32_t var108
/* : Char */;
257 uint32_t var109
/* : UInt32 */;
258 uint32_t var111
/* : UInt32 */;
259 short int var112
/* : Bool */;
260 short int var114
/* : Bool */;
261 uint32_t var115
/* : UInt32 */;
262 uint32_t var117
/* : UInt32 */;
263 uint32_t var118
/* : UInt32 */;
264 uint32_t var120
/* : UInt32 */;
265 uint32_t var121
/* : UInt32 */;
266 uint32_t var123
/* : UInt32 */;
267 uint32_t var124
/* : UInt32 */;
268 uint32_t var126
/* : UInt32 */;
269 uint32_t var127
/* : UInt32 */;
270 uint32_t var129
/* : UInt32 */;
271 uint32_t var130
/* : UInt32 */;
272 uint32_t var132
/* : UInt32 */;
273 uint32_t var133
/* : UInt32 */;
274 uint32_t var135
/* : UInt32 */;
275 uint32_t var136
/* : UInt32 */;
276 uint32_t var138
/* : UInt32 */;
277 uint32_t var139
/* : UInt32 */;
278 uint32_t var141
/* : UInt32 */;
279 uint32_t var142
/* : UInt32 */;
280 uint32_t var144
/* : UInt32 */;
281 uint32_t var145
/* : UInt32 */;
282 uint32_t var147
/* : UInt32 */;
283 uint32_t var148
/* : Char */;
284 uint32_t var150
/* : Char */;
285 uint32_t var151
/* : Char */;
286 uint32_t var153
/* : Char */;
289 { /* Inline native$CString$[] (self,var_pos) on <self:CString> */
290 var3
= (unsigned char)((int)self
[var_pos
]);
298 { /* Inline math$Byte$& (var_c,((unsigned char)0x80)) on <var_c:Byte> */
299 var6
= var_c
& ((unsigned char)0x80);
306 { /* Inline kernel$Byte$== (var4,((unsigned char)0x00)) on <var4:Byte> */
307 var9
= var4
== ((unsigned char)0x00);
315 { /* Inline kernel$Byte$ascii (var_c) on <var_c:Byte> */
316 var12
= (uint32_t)var_c
;
327 { /* Inline native$CString$fetch_4_hchars (self,var_pos) on <self:CString> */
328 var15
= (uint32_t)be32toh(*((uint32_t*)(self
+ var_pos
)));
335 var_ret
= UINT32_C(0);
337 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(12582912)) on <var_b:UInt32> */
338 var18
= var_b
& UINT32_C(12582912);
345 { /* Inline fixed_ints$UInt32$!= (var16,UINT32_C(8388608)) on <var16:UInt32> */
346 var21
= var16
== UINT32_C(8388608);
355 { /* Inline kernel$Int$code_point (65533l) on <65533l:Int> */
356 var25
= (uint32_t)65533l;
367 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(3758096384)) on <var_b:UInt32> */
368 var28
= var_b
& UINT32_C(3758096384);
375 { /* Inline fixed_ints$UInt32$== (var26,UINT32_C(3221225472)) on <var26:UInt32> */
376 var31
= var26
== UINT32_C(3221225472);
384 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(520093696)) on <var_b:UInt32> */
385 var34
= var_b
& UINT32_C(520093696);
392 { /* Inline fixed_ints$UInt32$>> (var32,18l) on <var32:UInt32> */
393 var37
= var32
>> 18l;
400 { /* Inline fixed_ints$UInt32$| (var_ret,var35) on <var_ret:UInt32> */
401 var40
= var_ret
| var35
;
409 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(4128768)) on <var_b:UInt32> */
410 var43
= var_b
& UINT32_C(4128768);
417 { /* Inline fixed_ints$UInt32$>> (var41,16l) on <var41:UInt32> */
418 var46
= var41
>> 16l;
425 { /* Inline fixed_ints$UInt32$| (var_ret,var44) on <var_ret:UInt32> */
426 var49
= var_ret
| var44
;
434 { /* Inline native$UInt32$code_point (var_ret) on <var_ret:UInt32> */
435 var52
= core__native___UInt32_code_point___impl(var_ret
);
446 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(49152)) on <var_b:UInt32> */
447 var55
= var_b
& UINT32_C(49152);
454 { /* Inline fixed_ints$UInt32$== (var53,UINT32_C(32768)) on <var53:UInt32> */
455 var58
= var53
== UINT32_C(32768);
464 { /* Inline kernel$Int$code_point (65533l) on <65533l:Int> */
465 var62
= (uint32_t)65533l;
476 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(4026531840)) on <var_b:UInt32> */
477 var65
= var_b
& UINT32_C(4026531840);
484 { /* Inline fixed_ints$UInt32$== (var63,UINT32_C(3758096384)) on <var63:UInt32> */
485 var68
= var63
== UINT32_C(3758096384);
493 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(251658240)) on <var_b:UInt32> */
494 var71
= var_b
& UINT32_C(251658240);
501 { /* Inline fixed_ints$UInt32$>> (var69,12l) on <var69:UInt32> */
502 var74
= var69
>> 12l;
509 { /* Inline fixed_ints$UInt32$| (var_ret,var72) on <var_ret:UInt32> */
510 var77
= var_ret
| var72
;
518 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(4128768)) on <var_b:UInt32> */
519 var80
= var_b
& UINT32_C(4128768);
526 { /* Inline fixed_ints$UInt32$>> (var78,10l) on <var78:UInt32> */
527 var83
= var78
>> 10l;
534 { /* Inline fixed_ints$UInt32$| (var_ret,var81) on <var_ret:UInt32> */
535 var86
= var_ret
| var81
;
543 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(16128)) on <var_b:UInt32> */
544 var89
= var_b
& UINT32_C(16128);
551 { /* Inline fixed_ints$UInt32$>> (var87,8l) on <var87:UInt32> */
559 { /* Inline fixed_ints$UInt32$| (var_ret,var90) on <var_ret:UInt32> */
560 var95
= var_ret
| var90
;
568 { /* Inline native$UInt32$code_point (var_ret) on <var_ret:UInt32> */
569 var98
= core__native___UInt32_code_point___impl(var_ret
);
580 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(192)) on <var_b:UInt32> */
581 var101
= var_b
& UINT32_C(192);
584 RET_LABEL100
:(void)0;
588 { /* Inline fixed_ints$UInt32$== (var99,UINT32_C(128)) on <var99:UInt32> */
589 var104
= var99
== UINT32_C(128);
592 RET_LABEL103
:(void)0;
598 { /* Inline kernel$Int$code_point (65533l) on <65533l:Int> */
599 var108
= (uint32_t)65533l;
602 RET_LABEL107
:(void)0;
610 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(4160749568)) on <var_b:UInt32> */
611 var111
= var_b
& UINT32_C(4160749568);
614 RET_LABEL110
:(void)0;
618 { /* Inline fixed_ints$UInt32$== (var109,UINT32_C(4026531840)) on <var109:UInt32> */
619 var114
= var109
== UINT32_C(4026531840);
622 RET_LABEL113
:(void)0;
627 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(117440512)) on <var_b:UInt32> */
628 var117
= var_b
& UINT32_C(117440512);
631 RET_LABEL116
:(void)0;
635 { /* Inline fixed_ints$UInt32$>> (var115,6l) on <var115:UInt32> */
636 var120
= var115
>> 6l;
639 RET_LABEL119
:(void)0;
643 { /* Inline fixed_ints$UInt32$| (var_ret,var118) on <var_ret:UInt32> */
644 var123
= var_ret
| var118
;
647 RET_LABEL122
:(void)0;
652 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(4128768)) on <var_b:UInt32> */
653 var126
= var_b
& UINT32_C(4128768);
656 RET_LABEL125
:(void)0;
660 { /* Inline fixed_ints$UInt32$>> (var124,4l) on <var124:UInt32> */
661 var129
= var124
>> 4l;
664 RET_LABEL128
:(void)0;
668 { /* Inline fixed_ints$UInt32$| (var_ret,var127) on <var_ret:UInt32> */
669 var132
= var_ret
| var127
;
672 RET_LABEL131
:(void)0;
677 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(16128)) on <var_b:UInt32> */
678 var135
= var_b
& UINT32_C(16128);
681 RET_LABEL134
:(void)0;
685 { /* Inline fixed_ints$UInt32$>> (var133,2l) on <var133:UInt32> */
686 var138
= var133
>> 2l;
689 RET_LABEL137
:(void)0;
693 { /* Inline fixed_ints$UInt32$| (var_ret,var136) on <var_ret:UInt32> */
694 var141
= var_ret
| var136
;
697 RET_LABEL140
:(void)0;
702 { /* Inline fixed_ints$UInt32$& (var_b,UINT32_C(63)) on <var_b:UInt32> */
703 var144
= var_b
& UINT32_C(63);
706 RET_LABEL143
:(void)0;
710 { /* Inline fixed_ints$UInt32$| (var_ret,var142) on <var_ret:UInt32> */
711 var147
= var_ret
| var142
;
714 RET_LABEL146
:(void)0;
719 { /* Inline native$UInt32$code_point (var_ret) on <var_ret:UInt32> */
720 var150
= core__native___UInt32_code_point___impl(var_ret
);
723 RET_LABEL149
:(void)0;
731 { /* Inline kernel$Int$code_point (65533l) on <65533l:Int> */
732 var153
= (uint32_t)65533l;
735 RET_LABEL152
:(void)0;
743 /* method native$CString$char_to_byte_index for (self: CString, Int): Int */
744 long core___core__CString___char_to_byte_index(char* self
, long p0
) {
745 long var
/* : Int */;
746 long var_n
/* var n: Int */;
747 long var1
/* : Int */;
750 var1
= core___core__CString___char_to_byte_index_cached(self
, var_n
, 0l, 0l);
757 /* method native$CString$length_of_char_at for (self: CString, Int): Int */
758 long core___core__CString___length_of_char_at(char* self
, long p0
) {
759 long var
/* : Int */;
760 long var_pos
/* var pos: Int */;
761 unsigned char var1
/* : Byte */;
762 unsigned char var3
/* : Byte */;
763 unsigned char var_c
/* var c: Byte */;
764 unsigned char var4
/* : Byte */;
765 unsigned char var6
/* : Byte */;
766 short int var7
/* : Bool */;
767 short int var9
/* : Bool */;
768 short int var10
/* : Bool */;
769 unsigned char var11
/* : Byte */;
770 unsigned char var13
/* : Byte */;
771 short int var14
/* : Bool */;
772 short int var16
/* : Bool */;
773 short int var_
/* var : Bool */;
774 long var17
/* : Int */;
775 short int var19
/* : Bool */;
778 const char* var_class_name
;
779 long var20
/* : Int */;
780 unsigned char var21
/* : Byte */;
781 unsigned char var23
/* : Byte */;
782 unsigned char var24
/* : Byte */;
783 unsigned char var26
/* : Byte */;
784 short int var27
/* : Bool */;
785 short int var29
/* : Bool */;
786 short int var30
/* : Bool */;
787 short int var31
/* : Bool */;
788 unsigned char var32
/* : Byte */;
789 unsigned char var34
/* : Byte */;
790 short int var35
/* : Bool */;
791 short int var37
/* : Bool */;
792 short int var_38
/* var : Bool */;
793 long var39
/* : Int */;
794 short int var41
/* : Bool */;
797 const char* var_class_name44
;
798 long var45
/* : Int */;
799 unsigned char var46
/* : Byte */;
800 unsigned char var48
/* : Byte */;
801 unsigned char var49
/* : Byte */;
802 unsigned char var51
/* : Byte */;
803 short int var52
/* : Bool */;
804 short int var54
/* : Bool */;
805 short int var_55
/* var : Bool */;
806 long var56
/* : Int */;
807 short int var58
/* : Bool */;
810 const char* var_class_name61
;
811 long var62
/* : Int */;
812 unsigned char var63
/* : Byte */;
813 unsigned char var65
/* : Byte */;
814 unsigned char var66
/* : Byte */;
815 unsigned char var68
/* : Byte */;
816 short int var69
/* : Bool */;
817 short int var71
/* : Bool */;
818 short int var72
/* : Bool */;
819 short int var73
/* : Bool */;
820 short int var74
/* : Bool */;
821 unsigned char var75
/* : Byte */;
822 unsigned char var77
/* : Byte */;
823 short int var78
/* : Bool */;
824 short int var80
/* : Bool */;
825 short int var_81
/* var : Bool */;
826 long var82
/* : Int */;
827 short int var84
/* : Bool */;
830 const char* var_class_name87
;
831 long var88
/* : Int */;
832 unsigned char var89
/* : Byte */;
833 unsigned char var91
/* : Byte */;
834 unsigned char var92
/* : Byte */;
835 unsigned char var94
/* : Byte */;
836 short int var95
/* : Bool */;
837 short int var97
/* : Bool */;
838 short int var_98
/* var : Bool */;
839 long var99
/* : Int */;
840 short int var101
/* : Bool */;
843 const char* var_class_name104
;
844 long var105
/* : Int */;
845 unsigned char var106
/* : Byte */;
846 unsigned char var108
/* : Byte */;
847 unsigned char var109
/* : Byte */;
848 unsigned char var111
/* : Byte */;
849 short int var112
/* : Bool */;
850 short int var114
/* : Bool */;
851 short int var_115
/* var : Bool */;
852 long var116
/* : Int */;
853 short int var118
/* : Bool */;
856 const char* var_class_name121
;
857 long var122
/* : Int */;
858 unsigned char var123
/* : Byte */;
859 unsigned char var125
/* : Byte */;
860 unsigned char var126
/* : Byte */;
861 unsigned char var128
/* : Byte */;
862 short int var129
/* : Bool */;
863 short int var131
/* : Bool */;
866 { /* Inline native$CString$[] (self,var_pos) on <self:CString> */
867 var3
= (unsigned char)((int)self
[var_pos
]);
875 { /* Inline math$Byte$& (var_c,((unsigned char)0x80)) on <var_c:Byte> */
876 var6
= var_c
& ((unsigned char)0x80);
883 { /* Inline kernel$Byte$== (var4,((unsigned char)0x00)) on <var4:Byte> */
884 var9
= var4
== ((unsigned char)0x00);
895 { /* Inline math$Byte$& (var_c,((unsigned char)0xe0)) on <var_c:Byte> */
896 var13
= var_c
& ((unsigned char)0xe0);
903 { /* Inline kernel$Byte$== (var11,((unsigned char)0xc0)) on <var11:Byte> */
904 var16
= var11
== ((unsigned char)0xc0);
913 { /* Inline kernel$Int$+ (var_pos,1l) on <var_pos:Int> */
914 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
915 /* <1l:Int> isa OTHER */
916 var19
= 1; /* easy <1l:Int> isa OTHER*/
917 if (unlikely(!var19
)) {
918 var_class_name
= type_core__Int
.name
;
919 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
920 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
923 var20
= var_pos
+ 1l;
930 { /* Inline native$CString$[] (self,var17) on <self:CString> */
931 var23
= (unsigned char)((int)self
[var17
]);
938 { /* Inline math$Byte$& (var21,((unsigned char)0xc0)) on <var21:Byte> */
939 var26
= var21
& ((unsigned char)0xc0);
946 { /* Inline kernel$Byte$== (var24,((unsigned char)0x80)) on <var24:Byte> */
947 var29
= var24
== ((unsigned char)0x80);
962 { /* Inline math$Byte$& (var_c,((unsigned char)0xf0)) on <var_c:Byte> */
963 var34
= var_c
& ((unsigned char)0xf0);
970 { /* Inline kernel$Byte$== (var32,((unsigned char)0xe0)) on <var32:Byte> */
971 var37
= var32
== ((unsigned char)0xe0);
980 { /* Inline kernel$Int$+ (var_pos,1l) on <var_pos:Int> */
981 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
982 /* <1l:Int> isa OTHER */
983 var41
= 1; /* easy <1l:Int> isa OTHER*/
984 if (unlikely(!var41
)) {
985 var_class_name44
= type_core__Int
.name
;
986 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name44
);
987 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
990 var45
= var_pos
+ 1l;
997 { /* Inline native$CString$[] (self,var39) on <self:CString> */
998 var48
= (unsigned char)((int)self
[var39
]);
1001 RET_LABEL47
:(void)0;
1005 { /* Inline math$Byte$& (var46,((unsigned char)0xc0)) on <var46:Byte> */
1006 var51
= var46
& ((unsigned char)0xc0);
1009 RET_LABEL50
:(void)0;
1013 { /* Inline kernel$Byte$== (var49,((unsigned char)0x80)) on <var49:Byte> */
1014 var54
= var49
== ((unsigned char)0x80);
1017 RET_LABEL53
:(void)0;
1027 { /* Inline kernel$Int$+ (var_pos,2l) on <var_pos:Int> */
1028 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
1029 /* <2l:Int> isa OTHER */
1030 var58
= 1; /* easy <2l:Int> isa OTHER*/
1031 if (unlikely(!var58
)) {
1032 var_class_name61
= type_core__Int
.name
;
1033 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name61
);
1034 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1037 var62
= var_pos
+ 2l;
1040 RET_LABEL57
:(void)0;
1044 { /* Inline native$CString$[] (self,var56) on <self:CString> */
1045 var65
= (unsigned char)((int)self
[var56
]);
1048 RET_LABEL64
:(void)0;
1052 { /* Inline math$Byte$& (var63,((unsigned char)0xc0)) on <var63:Byte> */
1053 var68
= var63
& ((unsigned char)0xc0);
1056 RET_LABEL67
:(void)0;
1060 { /* Inline kernel$Byte$== (var66,((unsigned char)0x80)) on <var66:Byte> */
1061 var71
= var66
== ((unsigned char)0x80);
1064 RET_LABEL70
:(void)0;
1076 { /* Inline math$Byte$& (var_c,((unsigned char)0xf8)) on <var_c:Byte> */
1077 var77
= var_c
& ((unsigned char)0xf8);
1080 RET_LABEL76
:(void)0;
1084 { /* Inline kernel$Byte$== (var75,((unsigned char)0xf0)) on <var75:Byte> */
1085 var80
= var75
== ((unsigned char)0xf0);
1088 RET_LABEL79
:(void)0;
1094 { /* Inline kernel$Int$+ (var_pos,1l) on <var_pos:Int> */
1095 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1096 /* <1l:Int> isa OTHER */
1097 var84
= 1; /* easy <1l:Int> isa OTHER*/
1098 if (unlikely(!var84
)) {
1099 var_class_name87
= type_core__Int
.name
;
1100 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name87
);
1101 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1104 var88
= var_pos
+ 1l;
1107 RET_LABEL83
:(void)0;
1111 { /* Inline native$CString$[] (self,var82) on <self:CString> */
1112 var91
= (unsigned char)((int)self
[var82
]);
1115 RET_LABEL90
:(void)0;
1119 { /* Inline math$Byte$& (var89,((unsigned char)0xc0)) on <var89:Byte> */
1120 var94
= var89
& ((unsigned char)0xc0);
1123 RET_LABEL93
:(void)0;
1127 { /* Inline kernel$Byte$== (var92,((unsigned char)0x80)) on <var92:Byte> */
1128 var97
= var92
== ((unsigned char)0x80);
1131 RET_LABEL96
:(void)0;
1141 { /* Inline kernel$Int$+ (var_pos,2l) on <var_pos:Int> */
1142 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
1143 /* <2l:Int> isa OTHER */
1144 var101
= 1; /* easy <2l:Int> isa OTHER*/
1145 if (unlikely(!var101
)) {
1146 var_class_name104
= type_core__Int
.name
;
1147 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name104
);
1148 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1151 var105
= var_pos
+ 2l;
1154 RET_LABEL100
:(void)0;
1158 { /* Inline native$CString$[] (self,var99) on <self:CString> */
1159 var108
= (unsigned char)((int)self
[var99
]);
1162 RET_LABEL107
:(void)0;
1166 { /* Inline math$Byte$& (var106,((unsigned char)0xc0)) on <var106:Byte> */
1167 var111
= var106
& ((unsigned char)0xc0);
1170 RET_LABEL110
:(void)0;
1174 { /* Inline kernel$Byte$== (var109,((unsigned char)0x80)) on <var109:Byte> */
1175 var114
= var109
== ((unsigned char)0x80);
1178 RET_LABEL113
:(void)0;
1188 { /* Inline kernel$Int$+ (var_pos,3l) on <var_pos:Int> */
1189 /* Covariant cast for argument 0 (i) <3l:Int> isa OTHER */
1190 /* <3l:Int> isa OTHER */
1191 var118
= 1; /* easy <3l:Int> isa OTHER*/
1192 if (unlikely(!var118
)) {
1193 var_class_name121
= type_core__Int
.name
;
1194 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name121
);
1195 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1198 var122
= var_pos
+ 3l;
1201 RET_LABEL117
:(void)0;
1205 { /* Inline native$CString$[] (self,var116) on <self:CString> */
1206 var125
= (unsigned char)((int)self
[var116
]);
1209 RET_LABEL124
:(void)0;
1213 { /* Inline math$Byte$& (var123,((unsigned char)0xc0)) on <var123:Byte> */
1214 var128
= var123
& ((unsigned char)0xc0);
1217 RET_LABEL127
:(void)0;
1221 { /* Inline kernel$Byte$== (var126,((unsigned char)0x80)) on <var126:Byte> */
1222 var131
= var126
== ((unsigned char)0x80);
1225 RET_LABEL130
:(void)0;
1245 /* method native$CString$char_to_byte_index_cached for (self: CString, Int, Int, Int): Int */
1246 long core___core__CString___char_to_byte_index_cached(char* self
, long p0
, long p1
, long p2
) {
1247 long var
/* : Int */;
1248 long var_n
/* var n: Int */;
1249 long var_char_from
/* var char_from: Int */;
1250 long var_byte_from
/* var byte_from: Int */;
1251 long var_ns_i
/* var ns_i: Int */;
1252 long var_my_i
/* var my_i: Int */;
1253 long var1
/* : Int */;
1254 short int var3
/* : Bool */;
1257 const char* var_class_name
;
1258 long var4
/* : Int */;
1259 long var_dist
/* var dist: Int */;
1260 short int var5
/* : Bool */;
1261 short int var7
/* : Bool */;
1264 const char* var_class_name10
;
1265 short int var11
/* : Bool */;
1266 short int var12
/* : Bool */;
1267 short int var14
/* : Bool */;
1270 const char* var_class_name17
;
1271 short int var18
/* : Bool */;
1272 uint32_t var19
/* : UInt32 */;
1273 uint32_t var21
/* : UInt32 */;
1274 uint32_t var_i
/* var i: UInt32 */;
1275 uint32_t var22
/* : UInt32 */;
1276 uint32_t var24
/* : UInt32 */;
1277 short int var25
/* : Bool */;
1278 short int var27
/* : Bool */;
1279 short int var28
/* : Bool */;
1280 long var29
/* : Int */;
1281 short int var31
/* : Bool */;
1284 const char* var_class_name34
;
1285 long var35
/* : Int */;
1286 long var36
/* : Int */;
1287 short int var38
/* : Bool */;
1290 const char* var_class_name41
;
1291 long var42
/* : Int */;
1292 long var43
/* : Int */;
1293 short int var45
/* : Bool */;
1296 const char* var_class_name48
;
1297 long var49
/* : Int */;
1298 short int var50
/* : Bool */;
1299 short int var52
/* : Bool */;
1300 long var54
/* : Int */;
1301 long var55
/* : Int */;
1302 short int var57
/* : Bool */;
1305 const char* var_class_name60
;
1306 long var61
/* : Int */;
1307 long var62
/* : Int */;
1308 short int var64
/* : Bool */;
1311 const char* var_class_name67
;
1312 long var68
/* : Int */;
1313 long var69
/* : Int */;
1314 short int var71
/* : Bool */;
1317 const char* var_class_name74
;
1318 long var75
/* : Int */;
1319 short int var76
/* : Bool */;
1320 short int var78
/* : Bool */;
1323 const char* var_class_name81
;
1324 short int var82
/* : Bool */;
1325 long var83
/* : Int */;
1326 long var85
/* : Int */;
1327 short int var86
/* : Bool */;
1328 short int var88
/* : Bool */;
1331 const char* var_class_name91
;
1332 short int var92
/* : Bool */;
1333 long var93
/* : Int */;
1334 short int var95
/* : Bool */;
1337 const char* var_class_name98
;
1338 long var99
/* : Int */;
1339 uint32_t var100
/* : UInt32 */;
1340 uint32_t var102
/* : UInt32 */;
1341 uint32_t var_i103
/* var i: UInt32 */;
1342 uint32_t var104
/* : UInt32 */;
1343 uint32_t var106
/* : UInt32 */;
1344 short int var107
/* : Bool */;
1345 short int var109
/* : Bool */;
1346 short int var110
/* : Bool */;
1347 long var112
/* : Int */;
1348 short int var114
/* : Bool */;
1351 const char* var_class_name117
;
1352 long var118
/* : Int */;
1353 long var119
/* : Int */;
1354 short int var121
/* : Bool */;
1357 const char* var_class_name124
;
1358 long var125
/* : Int */;
1359 long var126
/* : Int */;
1360 short int var128
/* : Bool */;
1363 const char* var_class_name131
;
1364 long var132
/* : Int */;
1365 short int var133
/* : Bool */;
1366 short int var135
/* : Bool */;
1367 long var137
/* : Int */;
1368 short int var139
/* : Bool */;
1371 const char* var_class_name142
;
1372 long var143
/* : Int */;
1373 long var144
/* : Int */;
1374 long var145
/* : Int */;
1375 short int var147
/* : Bool */;
1378 const char* var_class_name150
;
1379 long var151
/* : Int */;
1380 long var152
/* : Int */;
1381 short int var154
/* : Bool */;
1384 const char* var_class_name157
;
1385 long var158
/* : Int */;
1389 var_ns_i
= var_byte_from
;
1390 var_my_i
= var_char_from
;
1392 { /* Inline kernel$Int$- (var_n,var_my_i) on <var_n:Int> */
1393 /* Covariant cast for argument 0 (i) <var_my_i:Int> isa OTHER */
1394 /* <var_my_i:Int> isa OTHER */
1395 var3
= 1; /* easy <var_my_i:Int> isa OTHER*/
1396 if (unlikely(!var3
)) {
1397 var_class_name
= type_core__Int
.name
;
1398 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1399 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1402 var4
= var_n
- var_my_i
;
1411 { /* Inline kernel$Int$> (var_dist,0l) on <var_dist:Int> */
1412 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
1413 /* <0l:Int> isa OTHER */
1414 var7
= 1; /* easy <0l:Int> isa OTHER*/
1415 if (unlikely(!var7
)) {
1416 var_class_name10
= type_core__Int
.name
;
1417 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name10
);
1418 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 727);
1421 var11
= var_dist
> 0l;
1430 { /* Inline kernel$Int$>= (var_dist,4l) on <var_dist:Int> */
1431 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
1432 /* <4l:Int> isa OTHER */
1433 var14
= 1; /* easy <4l:Int> isa OTHER*/
1434 if (unlikely(!var14
)) {
1435 var_class_name17
= type_core__Int
.name
;
1436 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name17
);
1437 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 726);
1440 var18
= var_dist
>= 4l;
1443 RET_LABEL13
:(void)0;
1448 { /* Inline native$CString$fetch_4_chars (self,var_ns_i) on <self:CString> */
1449 var21
= *((uint32_t*)(self
+ var_ns_i
));
1452 RET_LABEL20
:(void)0;
1457 { /* Inline fixed_ints$UInt32$& (var_i,UINT32_C(2155905152)) on <var_i:UInt32> */
1458 var24
= var_i
& UINT32_C(2155905152);
1461 RET_LABEL23
:(void)0;
1465 { /* Inline fixed_ints$UInt32$!= (var22,UINT32_C(0)) on <var22:UInt32> */
1466 var27
= var22
== UINT32_C(0);
1470 RET_LABEL26
:(void)0;
1478 { /* Inline kernel$Int$+ (var_ns_i,4l) on <var_ns_i:Int> */
1479 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
1480 /* <4l:Int> isa OTHER */
1481 var31
= 1; /* easy <4l:Int> isa OTHER*/
1482 if (unlikely(!var31
)) {
1483 var_class_name34
= type_core__Int
.name
;
1484 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name34
);
1485 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1488 var35
= var_ns_i
+ 4l;
1491 RET_LABEL30
:(void)0;
1496 { /* Inline kernel$Int$+ (var_my_i,4l) on <var_my_i:Int> */
1497 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
1498 /* <4l:Int> isa OTHER */
1499 var38
= 1; /* easy <4l:Int> isa OTHER*/
1500 if (unlikely(!var38
)) {
1501 var_class_name41
= type_core__Int
.name
;
1502 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name41
);
1503 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1506 var42
= var_my_i
+ 4l;
1509 RET_LABEL37
:(void)0;
1514 { /* Inline kernel$Int$- (var_dist,4l) on <var_dist:Int> */
1515 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
1516 /* <4l:Int> isa OTHER */
1517 var45
= 1; /* easy <4l:Int> isa OTHER*/
1518 if (unlikely(!var45
)) {
1519 var_class_name48
= type_core__Int
.name
;
1520 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name48
);
1521 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1524 var49
= var_dist
- 4l;
1527 RET_LABEL44
:(void)0;
1535 BREAK_label
: (void)0;
1537 { /* Inline kernel$Int$== (var_dist,0l) on <var_dist:Int> */
1538 var52
= var_dist
== 0l;
1541 RET_LABEL51
:(void)0;
1549 var54
= core___core__CString___length_of_char_at(self
, var_ns_i
);
1552 { /* Inline kernel$Int$+ (var_ns_i,var54) on <var_ns_i:Int> */
1553 /* Covariant cast for argument 0 (i) <var54:Int> isa OTHER */
1554 /* <var54:Int> isa OTHER */
1555 var57
= 1; /* easy <var54:Int> isa OTHER*/
1556 if (unlikely(!var57
)) {
1557 var_class_name60
= type_core__Int
.name
;
1558 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name60
);
1559 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1562 var61
= var_ns_i
+ var54
;
1565 RET_LABEL56
:(void)0;
1570 { /* Inline kernel$Int$+ (var_my_i,1l) on <var_my_i:Int> */
1571 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1572 /* <1l:Int> isa OTHER */
1573 var64
= 1; /* easy <1l:Int> isa OTHER*/
1574 if (unlikely(!var64
)) {
1575 var_class_name67
= type_core__Int
.name
;
1576 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name67
);
1577 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1580 var68
= var_my_i
+ 1l;
1583 RET_LABEL63
:(void)0;
1588 { /* Inline kernel$Int$- (var_dist,1l) on <var_dist:Int> */
1589 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1590 /* <1l:Int> isa OTHER */
1591 var71
= 1; /* easy <1l:Int> isa OTHER*/
1592 if (unlikely(!var71
)) {
1593 var_class_name74
= type_core__Int
.name
;
1594 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name74
);
1595 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1598 var75
= var_dist
- 1l;
1601 RET_LABEL70
:(void)0;
1609 BREAK_label53
: (void)0;
1612 { /* Inline kernel$Int$< (var_dist,0l) on <var_dist:Int> */
1613 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
1614 /* <0l:Int> isa OTHER */
1615 var78
= 1; /* easy <0l:Int> isa OTHER*/
1616 if (unlikely(!var78
)) {
1617 var_class_name81
= type_core__Int
.name
;
1618 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name81
);
1619 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 725);
1622 var82
= var_dist
< 0l;
1625 RET_LABEL77
:(void)0;
1631 { /* Inline kernel$Int$unary - (4l) on <4l:Int> */
1635 RET_LABEL84
:(void)0;
1639 { /* Inline kernel$Int$<= (var_dist,var83) on <var_dist:Int> */
1640 /* Covariant cast for argument 0 (i) <var83:Int> isa OTHER */
1641 /* <var83:Int> isa OTHER */
1642 var88
= 1; /* easy <var83:Int> isa OTHER*/
1643 if (unlikely(!var88
)) {
1644 var_class_name91
= type_core__Int
.name
;
1645 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name91
);
1646 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 724);
1649 var92
= var_dist
<= var83
;
1652 RET_LABEL87
:(void)0;
1657 { /* Inline kernel$Int$- (var_ns_i,4l) on <var_ns_i:Int> */
1658 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
1659 /* <4l:Int> isa OTHER */
1660 var95
= 1; /* easy <4l:Int> isa OTHER*/
1661 if (unlikely(!var95
)) {
1662 var_class_name98
= type_core__Int
.name
;
1663 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name98
);
1664 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1667 var99
= var_ns_i
- 4l;
1670 RET_LABEL94
:(void)0;
1674 { /* Inline native$CString$fetch_4_chars (self,var93) on <self:CString> */
1675 var102
= *((uint32_t*)(self
+ var93
));
1678 RET_LABEL101
:(void)0;
1683 { /* Inline fixed_ints$UInt32$& (var_i103,UINT32_C(2155905152)) on <var_i103:UInt32> */
1684 var106
= var_i103
& UINT32_C(2155905152);
1687 RET_LABEL105
:(void)0;
1691 { /* Inline fixed_ints$UInt32$!= (var104,UINT32_C(0)) on <var104:UInt32> */
1692 var109
= var104
== UINT32_C(0);
1696 RET_LABEL108
:(void)0;
1700 goto BREAK_label111
;
1704 { /* Inline kernel$Int$- (var_ns_i,4l) on <var_ns_i:Int> */
1705 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
1706 /* <4l:Int> isa OTHER */
1707 var114
= 1; /* easy <4l:Int> isa OTHER*/
1708 if (unlikely(!var114
)) {
1709 var_class_name117
= type_core__Int
.name
;
1710 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name117
);
1711 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1714 var118
= var_ns_i
- 4l;
1717 RET_LABEL113
:(void)0;
1722 { /* Inline kernel$Int$- (var_my_i,4l) on <var_my_i:Int> */
1723 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
1724 /* <4l:Int> isa OTHER */
1725 var121
= 1; /* easy <4l:Int> isa OTHER*/
1726 if (unlikely(!var121
)) {
1727 var_class_name124
= type_core__Int
.name
;
1728 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name124
);
1729 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1732 var125
= var_my_i
- 4l;
1735 RET_LABEL120
:(void)0;
1740 { /* Inline kernel$Int$+ (var_dist,4l) on <var_dist:Int> */
1741 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
1742 /* <4l:Int> isa OTHER */
1743 var128
= 1; /* easy <4l:Int> isa OTHER*/
1744 if (unlikely(!var128
)) {
1745 var_class_name131
= type_core__Int
.name
;
1746 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name131
);
1747 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1750 var132
= var_dist
+ 4l;
1753 RET_LABEL127
:(void)0;
1758 goto BREAK_label111
;
1761 BREAK_label111
: (void)0;
1763 { /* Inline kernel$Int$== (var_dist,0l) on <var_dist:Int> */
1764 var135
= var_dist
== 0l;
1767 RET_LABEL134
:(void)0;
1771 goto BREAK_label136
;
1775 { /* Inline kernel$Int$- (var_ns_i,1l) on <var_ns_i:Int> */
1776 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1777 /* <1l:Int> isa OTHER */
1778 var139
= 1; /* easy <1l:Int> isa OTHER*/
1779 if (unlikely(!var139
)) {
1780 var_class_name142
= type_core__Int
.name
;
1781 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name142
);
1782 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1785 var143
= var_ns_i
- 1l;
1788 RET_LABEL138
:(void)0;
1792 var144
= core___core__CString___find_beginning_of_char_at(self
, var137
);
1796 { /* Inline kernel$Int$- (var_my_i,1l) on <var_my_i:Int> */
1797 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1798 /* <1l:Int> isa OTHER */
1799 var147
= 1; /* easy <1l:Int> isa OTHER*/
1800 if (unlikely(!var147
)) {
1801 var_class_name150
= type_core__Int
.name
;
1802 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name150
);
1803 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1806 var151
= var_my_i
- 1l;
1809 RET_LABEL146
:(void)0;
1814 { /* Inline kernel$Int$+ (var_dist,1l) on <var_dist:Int> */
1815 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1816 /* <1l:Int> isa OTHER */
1817 var154
= 1; /* easy <1l:Int> isa OTHER*/
1818 if (unlikely(!var154
)) {
1819 var_class_name157
= type_core__Int
.name
;
1820 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name157
);
1821 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1824 var158
= var_dist
+ 1l;
1827 RET_LABEL153
:(void)0;
1832 goto BREAK_label136
;
1835 BREAK_label136
: (void)0;
1841 /* method native$CString$find_beginning_of_char_at for (self: CString, Int): Int */
1842 long core___core__CString___find_beginning_of_char_at(char* self
, long p0
) {
1843 long var
/* : Int */;
1844 long var_pos
/* var pos: Int */;
1845 long var_endpos
/* var endpos: Int */;
1846 unsigned char var1
/* : Byte */;
1847 unsigned char var3
/* : Byte */;
1848 unsigned char var_c
/* var c: Byte */;
1849 unsigned char var4
/* : Byte */;
1850 unsigned char var6
/* : Byte */;
1851 short int var7
/* : Bool */;
1852 short int var9
/* : Bool */;
1853 unsigned char var10
/* : Byte */;
1854 unsigned char var12
/* : Byte */;
1855 short int var13
/* : Bool */;
1856 short int var15
/* : Bool */;
1857 long var16
/* : Int */;
1858 short int var18
/* : Bool */;
1861 const char* var_class_name
;
1862 long var19
/* : Int */;
1863 unsigned char var20
/* : Byte */;
1864 unsigned char var22
/* : Byte */;
1865 long var_stpos
/* var stpos: Int */;
1866 long var23
/* : Int */;
1867 long var24
/* : Int */;
1868 short int var26
/* : Bool */;
1871 const char* var_class_name29
;
1872 long var30
/* : Int */;
1873 long var31
/* : Int */;
1874 short int var33
/* : Bool */;
1877 const char* var_class_name36
;
1878 long var37
/* : Int */;
1879 short int var38
/* : Bool */;
1880 short int var40
/* : Bool */;
1883 const char* var_class_name43
;
1884 short int var44
/* : Bool */;
1886 var_endpos
= var_pos
;
1888 { /* Inline native$CString$[] (self,var_pos) on <self:CString> */
1889 var3
= (unsigned char)((int)self
[var_pos
]);
1897 { /* Inline math$Byte$& (var_c,((unsigned char)0x80)) on <var_c:Byte> */
1898 var6
= var_c
& ((unsigned char)0x80);
1905 { /* Inline kernel$Byte$== (var4,((unsigned char)0x00)) on <var4:Byte> */
1906 var9
= var4
== ((unsigned char)0x00);
1919 { /* Inline math$Byte$& (var_c,((unsigned char)0xc0)) on <var_c:Byte> */
1920 var12
= var_c
& ((unsigned char)0xc0);
1923 RET_LABEL11
:(void)0;
1927 { /* Inline kernel$Byte$== (var10,((unsigned char)0x80)) on <var10:Byte> */
1928 var15
= var10
== ((unsigned char)0x80);
1931 RET_LABEL14
:(void)0;
1936 { /* Inline kernel$Int$- (var_pos,1l) on <var_pos:Int> */
1937 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1938 /* <1l:Int> isa OTHER */
1939 var18
= 1; /* easy <1l:Int> isa OTHER*/
1940 if (unlikely(!var18
)) {
1941 var_class_name
= type_core__Int
.name
;
1942 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1943 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1946 var19
= var_pos
- 1l;
1949 RET_LABEL17
:(void)0;
1954 { /* Inline native$CString$[] (self,var_pos) on <self:CString> */
1955 var22
= (unsigned char)((int)self
[var_pos
]);
1958 RET_LABEL21
:(void)0;
1966 BREAK_label
: (void)0;
1967 var_stpos
= var_pos
;
1969 var23
= core___core__CString___length_of_char_at(self
, var_stpos
);
1972 { /* Inline kernel$Int$- (var_endpos,var_stpos) on <var_endpos:Int> */
1973 /* Covariant cast for argument 0 (i) <var_stpos:Int> isa OTHER */
1974 /* <var_stpos:Int> isa OTHER */
1975 var26
= 1; /* easy <var_stpos:Int> isa OTHER*/
1976 if (unlikely(!var26
)) {
1977 var_class_name29
= type_core__Int
.name
;
1978 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name29
);
1979 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1982 var30
= var_endpos
- var_stpos
;
1985 RET_LABEL25
:(void)0;
1989 { /* Inline kernel$Int$+ (var24,1l) on <var24:Int> */
1990 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1991 /* <1l:Int> isa OTHER */
1992 var33
= 1; /* easy <1l:Int> isa OTHER*/
1993 if (unlikely(!var33
)) {
1994 var_class_name36
= type_core__Int
.name
;
1995 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name36
);
1996 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
2002 RET_LABEL32
:(void)0;
2006 { /* Inline kernel$Int$>= (var23,var31) on <var23:Int> */
2007 /* Covariant cast for argument 0 (i) <var31:Int> isa OTHER */
2008 /* <var31:Int> isa OTHER */
2009 var40
= 1; /* easy <var31:Int> isa OTHER*/
2010 if (unlikely(!var40
)) {
2011 var_class_name43
= type_core__Int
.name
;
2012 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name43
);
2013 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 726);
2016 var44
= var23
>= var31
;
2019 RET_LABEL39
:(void)0;
2032 /* method native$CString$utf8_length for (self: CString, Int, Int): Int */
2033 long core___core__CString___utf8_length(char* self
, long p0
, long p1
) {
2034 long var
/* : Int */;
2035 long var_from
/* var from: Int */;
2036 long var_byte_length
/* var byte_length: Int */;
2037 long var_st
/* var st: Int */;
2038 long var_ln
/* var ln: Int */;
2039 short int var1
/* : Bool */;
2040 short int var3
/* : Bool */;
2043 const char* var_class_name
;
2044 short int var4
/* : Bool */;
2045 short int var5
/* : Bool */;
2046 short int var7
/* : Bool */;
2049 const char* var_class_name10
;
2050 short int var11
/* : Bool */;
2051 uint32_t var12
/* : UInt32 */;
2052 uint32_t var14
/* : UInt32 */;
2053 uint32_t var_i
/* var i: UInt32 */;
2054 uint32_t var15
/* : UInt32 */;
2055 uint32_t var17
/* : UInt32 */;
2056 short int var18
/* : Bool */;
2057 short int var20
/* : Bool */;
2058 short int var21
/* : Bool */;
2059 long var22
/* : Int */;
2060 short int var24
/* : Bool */;
2063 const char* var_class_name27
;
2064 long var28
/* : Int */;
2065 long var29
/* : Int */;
2066 short int var31
/* : Bool */;
2069 const char* var_class_name34
;
2070 long var35
/* : Int */;
2071 long var36
/* : Int */;
2072 short int var38
/* : Bool */;
2075 const char* var_class_name41
;
2076 long var42
/* : Int */;
2077 short int var43
/* : Bool */;
2078 short int var45
/* : Bool */;
2079 long var47
/* : Int */;
2080 long var_cln
/* var cln: Int */;
2081 long var48
/* : Int */;
2082 short int var50
/* : Bool */;
2085 const char* var_class_name53
;
2086 long var54
/* : Int */;
2087 long var55
/* : Int */;
2088 short int var57
/* : Bool */;
2091 const char* var_class_name60
;
2092 long var61
/* : Int */;
2093 long var62
/* : Int */;
2094 short int var64
/* : Bool */;
2097 const char* var_class_name67
;
2098 long var68
/* : Int */;
2100 var_byte_length
= p1
;
2105 { /* Inline kernel$Int$> (var_byte_length,0l) on <var_byte_length:Int> */
2106 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
2107 /* <0l:Int> isa OTHER */
2108 var3
= 1; /* easy <0l:Int> isa OTHER*/
2109 if (unlikely(!var3
)) {
2110 var_class_name
= type_core__Int
.name
;
2111 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2112 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 727);
2115 var4
= var_byte_length
> 0l;
2124 { /* Inline kernel$Int$>= (var_byte_length,4l) on <var_byte_length:Int> */
2125 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
2126 /* <4l:Int> isa OTHER */
2127 var7
= 1; /* easy <4l:Int> isa OTHER*/
2128 if (unlikely(!var7
)) {
2129 var_class_name10
= type_core__Int
.name
;
2130 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name10
);
2131 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 726);
2134 var11
= var_byte_length
>= 4l;
2142 { /* Inline native$CString$fetch_4_chars (self,var_st) on <self:CString> */
2143 var14
= *((uint32_t*)(self
+ var_st
));
2146 RET_LABEL13
:(void)0;
2151 { /* Inline fixed_ints$UInt32$& (var_i,UINT32_C(2155905152)) on <var_i:UInt32> */
2152 var17
= var_i
& UINT32_C(2155905152);
2155 RET_LABEL16
:(void)0;
2159 { /* Inline fixed_ints$UInt32$!= (var15,UINT32_C(0)) on <var15:UInt32> */
2160 var20
= var15
== UINT32_C(0);
2164 RET_LABEL19
:(void)0;
2172 { /* Inline kernel$Int$- (var_byte_length,4l) on <var_byte_length:Int> */
2173 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
2174 /* <4l:Int> isa OTHER */
2175 var24
= 1; /* easy <4l:Int> isa OTHER*/
2176 if (unlikely(!var24
)) {
2177 var_class_name27
= type_core__Int
.name
;
2178 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name27
);
2179 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
2182 var28
= var_byte_length
- 4l;
2185 RET_LABEL23
:(void)0;
2188 var_byte_length
= var22
;
2190 { /* Inline kernel$Int$+ (var_st,4l) on <var_st:Int> */
2191 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
2192 /* <4l:Int> isa OTHER */
2193 var31
= 1; /* easy <4l:Int> isa OTHER*/
2194 if (unlikely(!var31
)) {
2195 var_class_name34
= type_core__Int
.name
;
2196 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name34
);
2197 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
2200 var35
= var_st
+ 4l;
2203 RET_LABEL30
:(void)0;
2208 { /* Inline kernel$Int$+ (var_ln,4l) on <var_ln:Int> */
2209 /* Covariant cast for argument 0 (i) <4l:Int> isa OTHER */
2210 /* <4l:Int> isa OTHER */
2211 var38
= 1; /* easy <4l:Int> isa OTHER*/
2212 if (unlikely(!var38
)) {
2213 var_class_name41
= type_core__Int
.name
;
2214 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name41
);
2215 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
2218 var42
= var_ln
+ 4l;
2221 RET_LABEL37
:(void)0;
2229 BREAK_label
: (void)0;
2231 { /* Inline kernel$Int$== (var_byte_length,0l) on <var_byte_length:Int> */
2232 var45
= var_byte_length
== 0l;
2235 RET_LABEL44
:(void)0;
2243 var47
= core___core__CString___length_of_char_at(self
, var_st
);
2247 { /* Inline kernel$Int$+ (var_st,var_cln) on <var_st:Int> */
2248 /* Covariant cast for argument 0 (i) <var_cln:Int> isa OTHER */
2249 /* <var_cln:Int> isa OTHER */
2250 var50
= 1; /* easy <var_cln:Int> isa OTHER*/
2251 if (unlikely(!var50
)) {
2252 var_class_name53
= type_core__Int
.name
;
2253 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name53
);
2254 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
2257 var54
= var_st
+ var_cln
;
2260 RET_LABEL49
:(void)0;
2265 { /* Inline kernel$Int$+ (var_ln,1l) on <var_ln:Int> */
2266 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
2267 /* <1l:Int> isa OTHER */
2268 var57
= 1; /* easy <1l:Int> isa OTHER*/
2269 if (unlikely(!var57
)) {
2270 var_class_name60
= type_core__Int
.name
;
2271 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name60
);
2272 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
2275 var61
= var_ln
+ 1l;
2278 RET_LABEL56
:(void)0;
2283 { /* Inline kernel$Int$- (var_byte_length,var_cln) on <var_byte_length:Int> */
2284 /* Covariant cast for argument 0 (i) <var_cln:Int> isa OTHER */
2285 /* <var_cln:Int> isa OTHER */
2286 var64
= 1; /* easy <var_cln:Int> isa OTHER*/
2287 if (unlikely(!var64
)) {
2288 var_class_name67
= type_core__Int
.name
;
2289 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name67
);
2290 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
2293 var68
= var_byte_length
- var_cln
;
2296 RET_LABEL63
:(void)0;
2299 var_byte_length
= var62
;
2304 BREAK_label46
: (void)0;
2310 /* method native$CString$fetch_4_chars for (self: CString, Int): UInt32 */
2311 uint32_t core___core__CString___fetch_95d4_chars(char* self
, long p0
) {
2312 uint32_t var
/* : UInt32 */;
2313 uint32_t var1
/* : UInt32 */;
2314 var1
= *((uint32_t*)(self
+ p0
));
2320 /* method native$CString$fetch_4_hchars for (self: CString, Int): UInt32 */
2321 uint32_t core___core__CString___fetch_95d4_hchars(char* self
, long p0
) {
2322 uint32_t var
/* : UInt32 */;
2323 uint32_t var1
/* : UInt32 */;
2324 var1
= (uint32_t)be32toh(*((uint32_t*)(self
+ p0
)));