Merge: doc: fixed some typos and other misc. corrections
[nit.git] / c_src / counter.sep.1.c
1 #include "counter.sep.0.h"
2 /* method counter$Sys$div for (self: Sys, Int, Int): String */
3 val* counter___core__Sys___div(val* self, long p0, long p1) {
4 val* var /* : String */;
5 long var_n /* var n: Int */;
6 long var_d /* var d: Int */;
7 short int var1 /* : Bool */;
8 short int var3 /* : Bool */;
9 static val* varonce;
10 val* var4 /* : String */;
11 char* var5 /* : CString */;
12 val* var6 /* : String */;
13 val* var7 /* : nullable Int */;
14 val* var8 /* : nullable Int */;
15 val* var9 /* : nullable Bool */;
16 val* var10 /* : nullable Bool */;
17 long var11 /* : Int */;
18 short int var13 /* : Bool */;
19 int cltype;
20 int idtype;
21 const char* var_class_name;
22 long var14 /* : Int */;
23 long var15 /* : Int */;
24 short int var17 /* : Bool */;
25 int cltype18;
26 int idtype19;
27 const char* var_class_name20;
28 long var21 /* : Int */;
29 double var22 /* : Float */;
30 double var24 /* : Float */;
31 double var25 /* : Float */;
32 short int var27 /* : Bool */;
33 int cltype28;
34 int idtype29;
35 const char* var_class_name30;
36 double var31 /* : Float */;
37 val* var32 /* : String */;
38 var_n = p0;
39 var_d = p1;
40 {
41 { /* Inline kernel$Int$== (var_d,0l) on <var_d:Int> */
42 var3 = var_d == 0l;
43 var1 = var3;
44 goto RET_LABEL2;
45 RET_LABEL2:(void)0;
46 }
47 }
48 if (var1){
49 if (likely(varonce!=NULL)) {
50 var4 = varonce;
51 } else {
52 var5 = "na";
53 var7 = (val*)(2l<<2|1);
54 var8 = (val*)(2l<<2|1);
55 var9 = (val*)((long)(0)<<2|3);
56 var10 = (val*)((long)(0)<<2|3);
57 var6 = core__flat___CString___to_s_unsafe(var5, var7, var8, var9, var10);
58 var4 = var6;
59 varonce = var4;
60 }
61 var = var4;
62 goto RET_LABEL;
63 } else {
64 }
65 {
66 { /* Inline kernel$Int$* (100l,var_n) on <100l:Int> */
67 /* Covariant cast for argument 0 (i) <var_n:Int> isa OTHER */
68 /* <var_n:Int> isa OTHER */
69 var13 = 1; /* easy <var_n:Int> isa OTHER*/
70 if (unlikely(!var13)) {
71 var_class_name = type_core__Int.name;
72 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
73 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 732);
74 fatal_exit(1);
75 }
76 var14 = 100l * var_n;
77 var11 = var14;
78 goto RET_LABEL12;
79 RET_LABEL12:(void)0;
80 }
81 }
82 {
83 { /* Inline kernel$Int$/ (var11,var_d) on <var11:Int> */
84 /* Covariant cast for argument 0 (i) <var_d:Int> isa OTHER */
85 /* <var_d:Int> isa OTHER */
86 var17 = 1; /* easy <var_d:Int> isa OTHER*/
87 if (unlikely(!var17)) {
88 var_class_name20 = type_core__Int.name;
89 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name20);
90 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 733);
91 fatal_exit(1);
92 }
93 var21 = var11 / var_d;
94 var15 = var21;
95 goto RET_LABEL16;
96 RET_LABEL16:(void)0;
97 }
98 }
99 {
100 { /* Inline kernel$Int$to_f (var15) on <var15:Int> */
101 var24 = (double)var15;
102 var22 = var24;
103 goto RET_LABEL23;
104 RET_LABEL23:(void)0;
105 }
106 }
107 {
108 { /* Inline kernel$Float$/ (var22,100.0) on <var22:Float> */
109 /* Covariant cast for argument 0 (i) <100.0:Float> isa OTHER */
110 /* <100.0:Float> isa OTHER */
111 var27 = 1; /* easy <100.0:Float> isa OTHER*/
112 if (unlikely(!var27)) {
113 var_class_name30 = type_core__Float.name;
114 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name30);
115 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 538);
116 fatal_exit(1);
117 }
118 var31 = var22 / 100.0;
119 var25 = var31;
120 goto RET_LABEL26;
121 RET_LABEL26:(void)0;
122 }
123 }
124 {
125 var32 = core__abstract_text___Float___to_precision(var25, 2l);
126 }
127 var = var32;
128 goto RET_LABEL;
129 RET_LABEL:;
130 return var;
131 }