1 /* This C file is generated by NIT to compile module compiling. */
2 #include "compiling._sep.h"
3 val_t
compiling___Program___output_format(val_t p0
){
4 struct {struct stack_frame_t me
;} fra
;
7 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8 fra
.me
.file
= LOCATE_compiling
;
10 fra
.me
.meth
= LOCATE_compiling___Program___output_format
;
13 fra
.me
.nitni_local_ref_head
= NULL
;
14 fra
.me
.REG
[0] = NIT_NULL
;
16 /* compiling/compiling.nit:28 */
17 REGB0
= TAG_Bool(ATTR_compiling___Program____output_format(fra
.me
.REG
[0])!=NIT_NULL
);
18 if (UNTAG_Bool(REGB0
)) {
20 nit_abort("Uninitialized attribute %s", "_output_format", LOCATE_compiling
, 28);
22 fra
.me
.REG
[0] = ATTR_compiling___Program____output_format(fra
.me
.REG
[0]);
23 stack_frame_head
= fra
.me
.prev
;
26 void compiling___Program___output_format__eq(val_t p0
, val_t p1
){
27 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
29 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
30 fra
.me
.file
= LOCATE_compiling
;
32 fra
.me
.meth
= LOCATE_compiling___Program___output_format__eq
;
35 fra
.me
.nitni_local_ref_head
= NULL
;
36 fra
.me
.REG
[0] = NIT_NULL
;
37 fra
.me
.REG
[1] = NIT_NULL
;
40 /* compiling/compiling.nit:28 */
41 ATTR_compiling___Program____output_format(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
42 stack_frame_head
= fra
.me
.prev
;
45 void compiling___Program___compile_prog(val_t p0
){
46 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
50 static val_t once_value_1
; /* Once value */
51 static val_t once_value_3
; /* Once value */
52 static val_t once_value_4
; /* Once value */
53 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
54 fra
.me
.file
= LOCATE_compiling
;
56 fra
.me
.meth
= LOCATE_compiling___Program___compile_prog
;
59 fra
.me
.nitni_local_ref_head
= NULL
;
60 fra
.me
.REG
[0] = NIT_NULL
;
61 fra
.me
.REG
[1] = NIT_NULL
;
62 fra
.me
.REG
[2] = NIT_NULL
;
64 /* compiling/compiling.nit:34 */
65 fra
.me
.REG
[1] = CALL_compiling___Program___output_format(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
67 fra
.me
.REG
[2] = BOX_NativeString("none");
69 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
70 once_value_1
= fra
.me
.REG
[2];
71 register_static_object(&once_value_1
);
72 } else fra
.me
.REG
[2] = once_value_1
;
73 fra
.me
.REG
[2] = fra
.me
.REG
[2];
74 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[2]));
75 if (UNTAG_Bool(REGB0
)) {
77 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
80 if (UNTAG_Bool(REGB0
)) {
82 CALL_program___Program___with_each_iroutines(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_compiling___Program___compile_prog_2
));
83 /* compiling/compiling.nit:40 */
84 fra
.me
.REG
[2] = CALL_compiling___Program___output_format(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
86 fra
.me
.REG
[1] = BOX_NativeString("C");
88 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
89 once_value_3
= fra
.me
.REG
[1];
90 register_static_object(&once_value_3
);
91 } else fra
.me
.REG
[1] = once_value_3
;
92 fra
.me
.REG
[1] = fra
.me
.REG
[1];
93 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[2],fra
.me
.REG
[1]));
94 if (UNTAG_Bool(REGB0
)) {
96 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
99 if (UNTAG_Bool(REGB0
)) {
100 /* compiling/compiling.nit:41 */
101 CALL_compiling___Program___compile_prog_to_c(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
103 /* compiling/compiling.nit:42 */
104 fra
.me
.REG
[1] = CALL_compiling___Program___output_format(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
106 fra
.me
.REG
[2] = BOX_NativeString("icode");
108 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
109 once_value_4
= fra
.me
.REG
[2];
110 register_static_object(&once_value_4
);
111 } else fra
.me
.REG
[2] = once_value_4
;
112 fra
.me
.REG
[2] = fra
.me
.REG
[2];
113 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[2]));
114 if (UNTAG_Bool(REGB0
)) {
116 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
119 if (UNTAG_Bool(REGB0
)) {
120 /* compiling/compiling.nit:43 */
121 CALL_compiling___icode_generator___Program___generate_icode_files(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
125 stack_frame_head
= fra
.me
.prev
;
128 void OC_compiling___Program___compile_prog_2(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
129 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
131 /* compiling/compiling.nit:38 */
132 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
133 fra
.me
.file
= LOCATE_compiling
;
135 fra
.me
.meth
= LOCATE_compiling___Program___compile_prog
;
136 fra
.me
.has_broke
= 0;
138 fra
.me
.nitni_local_ref_head
= NULL
;
139 fra
.me
.REG
[0] = NIT_NULL
;
140 fra
.me
.REG
[1] = NIT_NULL
;
143 CALL_analysis___IRoutine___optimize(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
144 stack_frame_head
= fra
.me
.prev
;
147 void compiling___Program___compile_prog_to_c(val_t p0
){
148 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
151 static val_t once_value_1
; /* Once value */
152 static val_t once_value_2
; /* Once value */
153 static val_t once_value_3
; /* Once value */
154 static val_t once_value_4
; /* Once value */
155 static val_t once_value_6
; /* Once value */
156 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
157 fra
.me
.file
= LOCATE_compiling
;
159 fra
.me
.meth
= LOCATE_compiling___Program___compile_prog_to_c
;
160 fra
.me
.has_broke
= 0;
162 fra
.me
.nitni_local_ref_head
= NULL
;
163 fra
.me
.REG
[0] = NIT_NULL
;
164 fra
.me
.REG
[1] = NIT_NULL
;
165 fra
.me
.REG
[2] = NIT_NULL
;
166 fra
.me
.REG
[3] = NIT_NULL
;
168 /* compiling/compiling.nit:53 */
169 fra
.me
.REG
[1] = NEW_CProgram_compiling___compiling_base___CProgram___init(fra
.me
.REG
[0]);
170 /* compiling/compiling.nit:55 */
171 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
172 CALL_standard___file___String___mkdir(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
173 /* compiling/compiling.nit:57 */
174 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
176 fra
.me
.REG
[3] = BOX_NativeString("$CLIBDIR/nit_main.c");
178 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
179 once_value_1
= fra
.me
.REG
[3];
180 register_static_object(&once_value_1
);
181 } else fra
.me
.REG
[3] = once_value_1
;
182 fra
.me
.REG
[3] = fra
.me
.REG
[3];
183 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
184 /* compiling/compiling.nit:58 */
185 fra
.me
.REG
[3] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
187 fra
.me
.REG
[2] = BOX_NativeString("$CLIBDIR/gc.c");
189 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
190 once_value_2
= fra
.me
.REG
[2];
191 register_static_object(&once_value_2
);
192 } else fra
.me
.REG
[2] = once_value_2
;
193 fra
.me
.REG
[2] = fra
.me
.REG
[2];
194 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
195 /* compiling/compiling.nit:59 */
196 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
198 fra
.me
.REG
[3] = BOX_NativeString("$CLIBDIR/gc_static_objects_list.c");
200 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
201 once_value_3
= fra
.me
.REG
[3];
202 register_static_object(&once_value_3
);
203 } else fra
.me
.REG
[3] = once_value_3
;
204 fra
.me
.REG
[3] = fra
.me
.REG
[3];
205 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
206 /* compiling/compiling.nit:61 */
207 fra
.me
.REG
[3] = CALL_program___Program___tc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
209 fra
.me
.REG
[2] = BOX_NativeString("Generating C code");
211 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
212 once_value_4
= fra
.me
.REG
[2];
213 register_static_object(&once_value_4
);
214 } else fra
.me
.REG
[2] = once_value_4
;
215 fra
.me
.REG
[2] = fra
.me
.REG
[2];
217 CALL_toolcontext___ToolContext___info(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], REGB0
);
218 /* compiling/compiling.nit:62 */
219 fra
.me
.REG
[2] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
220 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___mhe(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
221 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
222 if (UNTAG_Bool(REGB0
)) {
223 nit_abort("Reciever is null", NULL
, LOCATE_compiling
, 62);
225 fra
.me
.REG
[2] = CALL_metamodel___partial_order___PartialOrderElement___greaters_and_self(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
226 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_compiling___Program___compile_prog_to_c_5
));
227 /* compiling/compiling.nit:64 */
228 fra
.me
.REG
[2] = CALL_program___Program___tc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
230 fra
.me
.REG
[3] = BOX_NativeString("Generating main, tables and makefile ...");
232 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
233 once_value_6
= fra
.me
.REG
[3];
234 register_static_object(&once_value_6
);
235 } else fra
.me
.REG
[3] = once_value_6
;
236 fra
.me
.REG
[3] = fra
.me
.REG
[3];
238 CALL_toolcontext___ToolContext___info(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], REGB0
);
239 /* compiling/compiling.nit:65 */
240 CALL_compiling___Program___compile_main(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
241 /* compiling/compiling.nit:67 */
242 CALL_compiling___compiling_base___CProgram___generate_build_file(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
243 /* compiling/compiling.nit:69 */
244 fra
.me
.REG
[0] = CALL_program___Program___tc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
245 REGB0
= CALL_compiling___compiling_base___ToolContext___no_cc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
246 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
247 if (UNTAG_Bool(REGB0
)) {
248 CALL_compiling___compiling_base___CProgram___run_c_compiler(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
250 stack_frame_head
= fra
.me
.prev
;
253 void OC_compiling___Program___compile_prog_to_c_5(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
254 struct {struct stack_frame_t me
;} fra
;
257 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
258 fra
.me
.file
= LOCATE_compiling
;
260 fra
.me
.meth
= LOCATE_compiling___Program___compile_prog_to_c
;
261 fra
.me
.has_broke
= 0;
263 fra
.me
.nitni_local_ref_head
= NULL
;
264 fra
.me
.REG
[0] = NIT_NULL
;
265 fra
.me
.closure_ctx
= closctx_param
;
266 fra
.me
.closure_funs
= CREG
;
269 CALL_compiling___MMModule___compile_separate_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
270 stack_frame_head
= fra
.me
.prev
;
273 void compiling___Program___compile_main(val_t p0
, val_t p1
){
274 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
277 static val_t once_value_1
; /* Once value */
278 static val_t once_value_2
; /* Once value */
279 static val_t once_value_3
; /* Once value */
280 static val_t once_value_4
; /* Once value */
281 static val_t once_value_5
; /* Once value */
282 static val_t once_value_6
; /* Once value */
283 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
284 fra
.me
.file
= LOCATE_compiling
;
286 fra
.me
.meth
= LOCATE_compiling___Program___compile_main
;
287 fra
.me
.has_broke
= 0;
289 fra
.me
.nitni_local_ref_head
= NULL
;
290 fra
.me
.REG
[0] = NIT_NULL
;
291 fra
.me
.REG
[1] = NIT_NULL
;
292 fra
.me
.REG
[2] = NIT_NULL
;
293 fra
.me
.REG
[3] = NIT_NULL
;
294 fra
.me
.REG
[4] = NIT_NULL
;
295 fra
.me
.REG
[5] = NIT_NULL
;
298 /* compiling/compiling.nit:75 */
299 fra
.me
.REG
[2] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
300 fra
.me
.REG
[2] = NEW_CompilerVisitor_compiling___compiling_base___CompilerVisitor___init(fra
.me
.REG
[2], fra
.me
.REG
[1]);
301 /* compiling/compiling.nit:76 */
303 fra
.me
.REG
[3] = BOX_NativeString("#include <nit_common.h>");
305 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
306 once_value_1
= fra
.me
.REG
[3];
307 register_static_object(&once_value_1
);
308 } else fra
.me
.REG
[3] = once_value_1
;
309 fra
.me
.REG
[3] = fra
.me
.REG
[3];
310 CALL_compiling___compiling_base___CompilerVisitor___add_decl(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
311 /* compiling/compiling.nit:77 */
312 CALL_compiling___compiling_global___Program___compile_tables_to_c(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
313 /* compiling/compiling.nit:78 */
314 CALL_compiling___compiling_global___Program___compile_main_part(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
315 /* compiling/compiling.nit:79 */
317 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
319 fra
.me
.REG
[4] = BOX_NativeString("");
321 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
322 once_value_2
= fra
.me
.REG
[4];
323 register_static_object(&once_value_2
);
324 } else fra
.me
.REG
[4] = once_value_2
;
325 fra
.me
.REG
[4] = fra
.me
.REG
[4];
326 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
327 fra
.me
.REG
[4] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
328 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
330 fra
.me
.REG
[4] = BOX_NativeString("/");
332 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
333 once_value_3
= fra
.me
.REG
[4];
334 register_static_object(&once_value_3
);
335 } else fra
.me
.REG
[4] = once_value_3
;
336 fra
.me
.REG
[4] = fra
.me
.REG
[4];
337 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
338 fra
.me
.REG
[4] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
339 fra
.me
.REG
[4] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
340 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
342 fra
.me
.REG
[4] = BOX_NativeString("._tables.c");
344 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
345 once_value_4
= fra
.me
.REG
[4];
346 register_static_object(&once_value_4
);
347 } else fra
.me
.REG
[4] = once_value_4
;
348 fra
.me
.REG
[4] = fra
.me
.REG
[4];
349 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
350 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
351 /* compiling/compiling.nit:80 */
352 fra
.me
.REG
[4] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
353 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
354 /* compiling/compiling.nit:81 */
355 fra
.me
.REG
[3] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[3]);
356 /* compiling/compiling.nit:82 */
358 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
360 fra
.me
.REG
[5] = BOX_NativeString("/* This C file is generated by NIT to compile program ");
362 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
363 once_value_5
= fra
.me
.REG
[5];
364 register_static_object(&once_value_5
);
365 } else fra
.me
.REG
[5] = once_value_5
;
366 fra
.me
.REG
[5] = fra
.me
.REG
[5];
367 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
368 fra
.me
.REG
[5] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
369 fra
.me
.REG
[5] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
370 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
372 fra
.me
.REG
[5] = BOX_NativeString(". */\n");
374 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
375 once_value_6
= fra
.me
.REG
[5];
376 register_static_object(&once_value_6
);
377 } else fra
.me
.REG
[5] = once_value_6
;
378 fra
.me
.REG
[5] = fra
.me
.REG
[5];
379 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
380 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
381 CALL_standard___stream___OStream___write(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
382 /* compiling/compiling.nit:83 */
383 fra
.me
.REG
[0] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
384 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMModule___mhe(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
385 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
386 if (UNTAG_Bool(REGB0
)) {
387 nit_abort("Reciever is null", NULL
, LOCATE_compiling
, 83);
389 fra
.me
.REG
[0] = CALL_metamodel___partial_order___PartialOrderElement___greaters_and_self(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
390 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_compiling___Program___compile_main_7
));
391 /* compiling/compiling.nit:86 */
392 fra
.me
.REG
[1] = CALL_compiling___compiling_base___CompilerVisitor___header_writer(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
393 CALL_compiling___compiling_writer___Writer___write_to_stream(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
394 /* compiling/compiling.nit:87 */
395 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CompilerVisitor___writer(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
396 CALL_compiling___compiling_writer___Writer___write_to_stream(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
397 /* compiling/compiling.nit:88 */
398 CALL_standard___stream___IOS___close(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
399 stack_frame_head
= fra
.me
.prev
;
402 void OC_compiling___Program___compile_main_7(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
403 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
407 static val_t once_value_8
; /* Once value */
408 static val_t once_value_9
; /* Once value */
409 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
410 fra
.me
.file
= LOCATE_compiling
;
412 fra
.me
.meth
= LOCATE_compiling___Program___compile_main
;
413 fra
.me
.has_broke
= 0;
415 fra
.me
.nitni_local_ref_head
= NULL
;
416 fra
.me
.REG
[0] = NIT_NULL
;
417 fra
.me
.REG
[1] = NIT_NULL
;
418 fra
.me
.REG
[2] = NIT_NULL
;
419 fra
.me
.closure_ctx
= closctx_param
;
420 fra
.me
.closure_funs
= CREG
;
423 /* compiling/compiling.nit:84 */
425 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
427 fra
.me
.REG
[2] = BOX_NativeString("#include \"");
429 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
430 once_value_8
= fra
.me
.REG
[2];
431 register_static_object(&once_value_8
);
432 } else fra
.me
.REG
[2] = once_value_8
;
433 fra
.me
.REG
[2] = fra
.me
.REG
[2];
434 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
435 fra
.me
.REG
[0] = CALL_compiling___compiling_base___CProgram___module_header_name(closctx
->REG
[1])(closctx
->REG
[1], fra
.me
.REG
[0]);
436 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
438 fra
.me
.REG
[0] = BOX_NativeString("\"\n");
440 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
441 once_value_9
= fra
.me
.REG
[0];
442 register_static_object(&once_value_9
);
443 } else fra
.me
.REG
[0] = once_value_9
;
444 fra
.me
.REG
[0] = fra
.me
.REG
[0];
445 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
446 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
447 CALL_standard___stream___OStream___write(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[1]);
448 stack_frame_head
= fra
.me
.prev
;
451 void compiling___MMModule___compile_separate_module(val_t p0
, val_t p1
){
452 struct {struct stack_frame_t me
; val_t MORE_REG
[9];} fra
;
457 static val_t once_value_1
; /* Once value */
458 static val_t once_value_2
; /* Once value */
459 static val_t once_value_3
; /* Once value */
460 static val_t once_value_4
; /* Once value */
461 static val_t once_value_5
; /* Once value */
462 static val_t once_value_6
; /* Once value */
463 static val_t once_value_7
; /* Once value */
464 static val_t once_value_8
; /* Once value */
465 static val_t once_value_9
; /* Once value */
466 static val_t once_value_10
; /* Once value */
467 static val_t once_value_11
; /* Once value */
468 static val_t once_value_12
; /* Once value */
469 static val_t once_value_13
; /* Once value */
470 static val_t once_value_14
; /* Once value */
471 static val_t once_value_15
; /* Once value */
472 static val_t once_value_16
; /* Once value */
473 static val_t once_value_17
; /* Once value */
474 static val_t once_value_18
; /* Once value */
475 static val_t once_value_19
; /* Once value */
476 static val_t once_value_20
; /* Once value */
477 static val_t once_value_21
; /* Once value */
478 static val_t once_value_22
; /* Once value */
479 static val_t once_value_23
; /* Once value */
480 static val_t once_value_24
; /* Once value */
481 static val_t once_value_25
; /* Once value */
482 static val_t once_value_26
; /* Once value */
483 static val_t once_value_27
; /* Once value */
484 static val_t once_value_28
; /* Once value */
485 static val_t once_value_30
; /* Once value */
486 static val_t once_value_31
; /* Once value */
487 static val_t once_value_32
; /* Once value */
488 static val_t once_value_33
; /* Once value */
489 static val_t once_value_34
; /* Once value */
490 static val_t once_value_35
; /* Once value */
491 static val_t once_value_36
; /* Once value */
492 static val_t once_value_37
; /* Once value */
493 static val_t once_value_38
; /* Once value */
494 static val_t once_value_39
; /* Once value */
495 static val_t once_value_40
; /* Once value */
496 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
497 fra
.me
.file
= LOCATE_compiling
;
499 fra
.me
.meth
= LOCATE_compiling___MMModule___compile_separate_module
;
500 fra
.me
.has_broke
= 0;
501 fra
.me
.REG_size
= 10;
502 fra
.me
.nitni_local_ref_head
= NULL
;
503 fra
.me
.REG
[0] = NIT_NULL
;
504 fra
.me
.REG
[1] = NIT_NULL
;
505 fra
.me
.REG
[2] = NIT_NULL
;
506 fra
.me
.REG
[3] = NIT_NULL
;
507 fra
.me
.REG
[4] = NIT_NULL
;
508 fra
.me
.REG
[5] = NIT_NULL
;
509 fra
.me
.REG
[6] = NIT_NULL
;
510 fra
.me
.REG
[7] = NIT_NULL
;
511 fra
.me
.REG
[8] = NIT_NULL
;
512 fra
.me
.REG
[9] = NIT_NULL
;
515 /* compiling/compiling.nit:96 */
516 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___program(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
517 fra
.me
.REG
[2] = CALL_program___Program___tc(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
518 /* compiling/compiling.nit:97 */
520 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
522 fra
.me
.REG
[4] = BOX_NativeString("Generating C code for module: ");
524 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
525 once_value_1
= fra
.me
.REG
[4];
526 register_static_object(&once_value_1
);
527 } else fra
.me
.REG
[4] = once_value_1
;
528 fra
.me
.REG
[4] = fra
.me
.REG
[4];
529 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
530 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMModule___full_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
531 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
532 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
534 fra
.me
.REG
[4] = BOX_NativeString("");
536 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
537 once_value_2
= fra
.me
.REG
[4];
538 register_static_object(&once_value_2
);
539 } else fra
.me
.REG
[4] = once_value_2
;
540 fra
.me
.REG
[4] = fra
.me
.REG
[4];
541 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
542 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
544 CALL_toolcontext___ToolContext___info(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], REGB0
);
545 /* compiling/compiling.nit:98 */
546 fra
.me
.REG
[3] = NEW_CompilerVisitor_compiling___compiling_base___CompilerVisitor___init(fra
.me
.REG
[0], fra
.me
.REG
[1]);
547 /* compiling/compiling.nit:99 */
549 fra
.me
.REG
[2] = BOX_NativeString("#include <nit_common.h>");
551 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
552 once_value_3
= fra
.me
.REG
[2];
553 register_static_object(&once_value_3
);
554 } else fra
.me
.REG
[2] = once_value_3
;
555 fra
.me
.REG
[2] = fra
.me
.REG
[2];
556 CALL_compiling___compiling_base___CompilerVisitor___add_decl(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
557 /* compiling/compiling.nit:101 */
558 REGB0
= CALL_metamodel___abstractmetamodel___MMModule___is_extern_hybrid(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
559 if (UNTAG_Bool(REGB0
)) {
560 /* compiling/compiling.nit:104 */
562 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
564 fra
.me
.REG
[4] = BOX_NativeString("");
566 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
567 once_value_4
= fra
.me
.REG
[4];
568 register_static_object(&once_value_4
);
569 } else fra
.me
.REG
[4] = once_value_4
;
570 fra
.me
.REG
[4] = fra
.me
.REG
[4];
571 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
572 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
573 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
574 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
576 fra
.me
.REG
[4] = BOX_NativeString("._nitni.h");
578 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
579 once_value_5
= fra
.me
.REG
[4];
580 register_static_object(&once_value_5
);
581 } else fra
.me
.REG
[4] = once_value_5
;
582 fra
.me
.REG
[4] = fra
.me
.REG
[4];
583 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
584 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
585 /* compiling/compiling.nit:105 */
587 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
589 fra
.me
.REG
[5] = BOX_NativeString("#include \"");
591 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
592 once_value_6
= fra
.me
.REG
[5];
593 register_static_object(&once_value_6
);
594 } else fra
.me
.REG
[5] = once_value_6
;
595 fra
.me
.REG
[5] = fra
.me
.REG
[5];
596 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
597 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
599 fra
.me
.REG
[2] = BOX_NativeString("\"");
601 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
602 once_value_7
= fra
.me
.REG
[2];
603 register_static_object(&once_value_7
);
604 } else fra
.me
.REG
[2] = once_value_7
;
605 fra
.me
.REG
[2] = fra
.me
.REG
[2];
606 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
607 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
608 CALL_compiling___compiling_base___CompilerVisitor___add_decl(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
609 /* compiling/compiling.nit:106 */
611 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
613 fra
.me
.REG
[2] = BOX_NativeString("");
615 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
616 once_value_8
= fra
.me
.REG
[2];
617 register_static_object(&once_value_8
);
618 } else fra
.me
.REG
[2] = once_value_8
;
619 fra
.me
.REG
[2] = fra
.me
.REG
[2];
620 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
621 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
622 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
623 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
625 fra
.me
.REG
[2] = BOX_NativeString("._nitni.c");
627 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
628 once_value_9
= fra
.me
.REG
[2];
629 register_static_object(&once_value_9
);
630 } else fra
.me
.REG
[2] = once_value_9
;
631 fra
.me
.REG
[2] = fra
.me
.REG
[2];
632 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
633 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
634 /* compiling/compiling.nit:107 */
635 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
637 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
638 if (!once_value_10
) {
639 fra
.me
.REG
[6] = BOX_NativeString("");
641 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
642 once_value_10
= fra
.me
.REG
[6];
643 register_static_object(&once_value_10
);
644 } else fra
.me
.REG
[6] = once_value_10
;
645 fra
.me
.REG
[6] = fra
.me
.REG
[6];
646 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
647 fra
.me
.REG
[6] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
648 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
649 if (!once_value_11
) {
650 fra
.me
.REG
[6] = BOX_NativeString("/");
652 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
653 once_value_11
= fra
.me
.REG
[6];
654 register_static_object(&once_value_11
);
655 } else fra
.me
.REG
[6] = once_value_11
;
656 fra
.me
.REG
[6] = fra
.me
.REG
[6];
657 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
658 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[4]);
659 if (!once_value_12
) {
660 fra
.me
.REG
[4] = BOX_NativeString("");
662 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
663 once_value_12
= fra
.me
.REG
[4];
664 register_static_object(&once_value_12
);
665 } else fra
.me
.REG
[4] = once_value_12
;
666 fra
.me
.REG
[4] = fra
.me
.REG
[4];
667 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[4]);
668 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
669 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[5]);
670 /* compiling/compiling.nit:110 */
671 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMModule___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
672 fra
.me
.REG
[5] = CALL_location___Location___file(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
673 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
674 if (UNTAG_Bool(REGB0
)) {
675 nit_abort("Reciever is null", NULL
, LOCATE_compiling
, 110);
677 fra
.me
.REG
[5] = CALL_location___SourceFile___filename(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
678 if (!once_value_13
) {
679 fra
.me
.REG
[2] = BOX_NativeString(".nit");
681 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
682 once_value_13
= fra
.me
.REG
[2];
683 register_static_object(&once_value_13
);
684 } else fra
.me
.REG
[2] = once_value_13
;
685 fra
.me
.REG
[2] = fra
.me
.REG
[2];
686 fra
.me
.REG
[2] = CALL_standard___file___String___strip_extension(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[2]);
687 /* compiling/compiling.nit:111 */
688 if (!once_value_14
) {
689 fra
.me
.REG
[5] = BOX_NativeString(".nit.c");
691 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
692 once_value_14
= fra
.me
.REG
[5];
693 register_static_object(&once_value_14
);
694 } else fra
.me
.REG
[5] = once_value_14
;
695 fra
.me
.REG
[5] = fra
.me
.REG
[5];
696 fra
.me
.REG
[5] = CALL_standard___string___String_____plus(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[5]);
697 /* compiling/compiling.nit:112 */
698 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
699 if (UNTAG_Bool(REGB0
)) {
700 /* compiling/compiling.nit:113 */
701 fra
.me
.REG
[4] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
702 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
704 /* compiling/compiling.nit:115 */
705 if (!once_value_15
) {
706 fra
.me
.REG
[4] = BOX_NativeString("_nit.c");
708 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
709 once_value_15
= fra
.me
.REG
[4];
710 register_static_object(&once_value_15
);
711 } else fra
.me
.REG
[4] = once_value_15
;
712 fra
.me
.REG
[4] = fra
.me
.REG
[4];
713 fra
.me
.REG
[4] = CALL_standard___string___String_____plus(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
714 fra
.me
.REG
[5] = fra
.me
.REG
[4];
715 /* compiling/compiling.nit:116 */
716 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
717 if (UNTAG_Bool(REGB0
)) {
718 fra
.me
.REG
[4] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
719 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
723 /* compiling/compiling.nit:120 */
724 CALL_compiling___compiling_global___MMModule___declare_class_tables_to_c(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
725 /* compiling/compiling.nit:121 */
726 CALL_compiling___compiling_global___MMModule___compile_mod_to_c(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
727 /* compiling/compiling.nit:123 */
728 fra
.me
.REG
[5] = CALL_compiling___compiling_base___CProgram___module_header_name(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
729 /* compiling/compiling.nit:124 */
731 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
732 if (!once_value_16
) {
733 fra
.me
.REG
[2] = BOX_NativeString("");
735 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
736 once_value_16
= fra
.me
.REG
[2];
737 register_static_object(&once_value_16
);
738 } else fra
.me
.REG
[2] = once_value_16
;
739 fra
.me
.REG
[2] = fra
.me
.REG
[2];
740 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
741 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
742 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
743 if (!once_value_17
) {
744 fra
.me
.REG
[2] = BOX_NativeString("/");
746 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
747 once_value_17
= fra
.me
.REG
[2];
748 register_static_object(&once_value_17
);
749 } else fra
.me
.REG
[2] = once_value_17
;
750 fra
.me
.REG
[2] = fra
.me
.REG
[2];
751 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
752 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
753 if (!once_value_18
) {
754 fra
.me
.REG
[2] = BOX_NativeString("");
756 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
757 once_value_18
= fra
.me
.REG
[2];
758 register_static_object(&once_value_18
);
759 } else fra
.me
.REG
[2] = once_value_18
;
760 fra
.me
.REG
[2] = fra
.me
.REG
[2];
761 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
762 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
763 fra
.me
.REG
[4] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[4]);
764 /* compiling/compiling.nit:125 */
766 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
767 if (!once_value_19
) {
768 fra
.me
.REG
[6] = BOX_NativeString("/* This C header file is generated by NIT to compile modules and programs that requires ");
770 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
771 once_value_19
= fra
.me
.REG
[6];
772 register_static_object(&once_value_19
);
773 } else fra
.me
.REG
[6] = once_value_19
;
774 fra
.me
.REG
[6] = fra
.me
.REG
[6];
775 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
776 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMModule___full_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
777 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
778 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
779 if (!once_value_20
) {
780 fra
.me
.REG
[6] = BOX_NativeString(". */\n");
782 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
783 once_value_20
= fra
.me
.REG
[6];
784 register_static_object(&once_value_20
);
785 } else fra
.me
.REG
[6] = once_value_20
;
786 fra
.me
.REG
[6] = fra
.me
.REG
[6];
787 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
788 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
789 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
790 /* compiling/compiling.nit:126 */
792 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
793 if (!once_value_21
) {
794 fra
.me
.REG
[6] = BOX_NativeString("#ifndef ");
796 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
797 once_value_21
= fra
.me
.REG
[6];
798 register_static_object(&once_value_21
);
799 } else fra
.me
.REG
[6] = once_value_21
;
800 fra
.me
.REG
[6] = fra
.me
.REG
[6];
801 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
802 fra
.me
.REG
[6] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
803 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
804 if (!once_value_22
) {
805 fra
.me
.REG
[6] = BOX_NativeString("");
807 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
808 once_value_22
= fra
.me
.REG
[6];
809 register_static_object(&once_value_22
);
810 } else fra
.me
.REG
[6] = once_value_22
;
811 fra
.me
.REG
[6] = fra
.me
.REG
[6];
812 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
813 fra
.me
.REG
[6] = CALL_compiling___compiling_base___CProgram___get_file_ending(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
814 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
815 if (!once_value_23
) {
816 fra
.me
.REG
[6] = BOX_NativeString("\n");
818 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
819 once_value_23
= fra
.me
.REG
[6];
820 register_static_object(&once_value_23
);
821 } else fra
.me
.REG
[6] = once_value_23
;
822 fra
.me
.REG
[6] = fra
.me
.REG
[6];
823 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
824 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
825 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
826 /* compiling/compiling.nit:127 */
828 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
829 if (!once_value_24
) {
830 fra
.me
.REG
[6] = BOX_NativeString("#define ");
832 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
833 once_value_24
= fra
.me
.REG
[6];
834 register_static_object(&once_value_24
);
835 } else fra
.me
.REG
[6] = once_value_24
;
836 fra
.me
.REG
[6] = fra
.me
.REG
[6];
837 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
838 fra
.me
.REG
[6] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
839 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
840 if (!once_value_25
) {
841 fra
.me
.REG
[6] = BOX_NativeString("");
843 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
844 once_value_25
= fra
.me
.REG
[6];
845 register_static_object(&once_value_25
);
846 } else fra
.me
.REG
[6] = once_value_25
;
847 fra
.me
.REG
[6] = fra
.me
.REG
[6];
848 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
849 fra
.me
.REG
[6] = CALL_compiling___compiling_base___CProgram___get_file_ending(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
850 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
851 if (!once_value_26
) {
852 fra
.me
.REG
[6] = BOX_NativeString("\n");
854 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
855 once_value_26
= fra
.me
.REG
[6];
856 register_static_object(&once_value_26
);
857 } else fra
.me
.REG
[6] = once_value_26
;
858 fra
.me
.REG
[6] = fra
.me
.REG
[6];
859 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
860 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
861 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
862 /* compiling/compiling.nit:128 */
863 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___mhe(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
864 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
865 if (UNTAG_Bool(REGB0
)) {
866 nit_abort("Reciever is null", NULL
, LOCATE_compiling
, 128);
868 fra
.me
.REG
[2] = CALL_metamodel___partial_order___PartialOrderElement___direct_greaters(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
869 /* ../lib/standard/collection/array.nit:269 */
871 /* ../lib/standard/collection/array.nit:270 */
872 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
873 if (UNTAG_Bool(REGB1
)) {
875 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
877 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
878 /* ../lib/standard/collection/array.nit:271 */
879 fra
.me
.REG
[6] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
880 /* ../lib/standard/collection/array.nit:272 */
882 /* ../lib/standard/collection/array.nit:24 */
883 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
884 if (UNTAG_Bool(REGB1
)) {
886 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
888 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
889 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
890 if (UNTAG_Bool(REGB2
)) {
892 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
894 /* ../lib/standard/kernel.nit:232 */
895 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
896 /* ../lib/standard/collection/array.nit:272 */
897 if (UNTAG_Bool(REGB1
)) {
898 /* ../lib/standard/collection/array.nit:273 */
899 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
900 if (UNTAG_Bool(REGB1
)) {
901 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
903 /* ../lib/standard/collection/array.nit:718 */
904 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB0
)];
905 /* compiling/compiling.nit:128 */
907 fra
.me
.REG
[8] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
908 if (!once_value_27
) {
909 fra
.me
.REG
[9] = BOX_NativeString("#include \"");
911 fra
.me
.REG
[9] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[9], REGB1
);
912 once_value_27
= fra
.me
.REG
[9];
913 register_static_object(&once_value_27
);
914 } else fra
.me
.REG
[9] = once_value_27
;
915 fra
.me
.REG
[9] = fra
.me
.REG
[9];
916 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
917 fra
.me
.REG
[7] = CALL_compiling___compiling_base___CProgram___module_header_name(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[7]);
918 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[7]);
919 if (!once_value_28
) {
920 fra
.me
.REG
[7] = BOX_NativeString("\"\n");
922 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB1
);
923 once_value_28
= fra
.me
.REG
[7];
924 register_static_object(&once_value_28
);
925 } else fra
.me
.REG
[7] = once_value_28
;
926 fra
.me
.REG
[7] = fra
.me
.REG
[7];
927 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[7]);
928 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
929 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[8]);
930 /* ../lib/standard/collection/array.nit:274 */
932 /* ../lib/standard/kernel.nit:235 */
933 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
934 /* ../lib/standard/collection/array.nit:274 */
937 /* ../lib/standard/collection/array.nit:272 */
942 /* compiling/compiling.nit:129 */
943 fra
.me
.REG
[6] = CALL_compiling___compiling_base___CompilerVisitor___header_writer(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
944 CALL_compiling___compiling_writer___Writer___write_to_stream(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
945 /* compiling/compiling.nit:130 */
946 if (!once_value_30
) {
947 fra
.me
.REG
[6] = BOX_NativeString("#endif\n");
949 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
950 once_value_30
= fra
.me
.REG
[6];
951 register_static_object(&once_value_30
);
952 } else fra
.me
.REG
[6] = once_value_30
;
953 fra
.me
.REG
[6] = fra
.me
.REG
[6];
954 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
955 /* compiling/compiling.nit:131 */
956 CALL_standard___stream___IOS___close(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
957 /* compiling/compiling.nit:133 */
959 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
960 if (!once_value_31
) {
961 fra
.me
.REG
[2] = BOX_NativeString("");
963 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
964 once_value_31
= fra
.me
.REG
[2];
965 register_static_object(&once_value_31
);
966 } else fra
.me
.REG
[2] = once_value_31
;
967 fra
.me
.REG
[2] = fra
.me
.REG
[2];
968 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
969 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
970 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
971 if (!once_value_32
) {
972 fra
.me
.REG
[2] = BOX_NativeString("/");
974 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
975 once_value_32
= fra
.me
.REG
[2];
976 register_static_object(&once_value_32
);
977 } else fra
.me
.REG
[2] = once_value_32
;
978 fra
.me
.REG
[2] = fra
.me
.REG
[2];
979 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
980 fra
.me
.REG
[2] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
981 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
982 if (!once_value_33
) {
983 fra
.me
.REG
[2] = BOX_NativeString(".");
985 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
986 once_value_33
= fra
.me
.REG
[2];
987 register_static_object(&once_value_33
);
988 } else fra
.me
.REG
[2] = once_value_33
;
989 fra
.me
.REG
[2] = fra
.me
.REG
[2];
990 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
991 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___get_file_ending(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
992 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
993 if (!once_value_34
) {
994 fra
.me
.REG
[2] = BOX_NativeString(".c");
996 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
997 once_value_34
= fra
.me
.REG
[2];
998 register_static_object(&once_value_34
);
999 } else fra
.me
.REG
[2] = once_value_34
;
1000 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1001 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
1002 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1003 /* compiling/compiling.nit:134 */
1004 fra
.me
.REG
[1] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1005 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1006 /* compiling/compiling.nit:135 */
1008 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1009 if (!once_value_35
) {
1010 fra
.me
.REG
[2] = BOX_NativeString("");
1012 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1013 once_value_35
= fra
.me
.REG
[2];
1014 register_static_object(&once_value_35
);
1015 } else fra
.me
.REG
[2] = once_value_35
;
1016 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1017 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1018 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1019 if (!once_value_36
) {
1020 fra
.me
.REG
[6] = BOX_NativeString("");
1022 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1023 once_value_36
= fra
.me
.REG
[6];
1024 register_static_object(&once_value_36
);
1025 } else fra
.me
.REG
[6] = once_value_36
;
1026 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1027 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1028 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1029 fra
.me
.REG
[1] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[1]);
1030 fra
.me
.REG
[4] = fra
.me
.REG
[1];
1031 /* compiling/compiling.nit:136 */
1033 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1034 if (!once_value_37
) {
1035 fra
.me
.REG
[6] = BOX_NativeString("/* This C file is generated by NIT to compile module ");
1036 REGB0
= TAG_Int(53);
1037 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1038 once_value_37
= fra
.me
.REG
[6];
1039 register_static_object(&once_value_37
);
1040 } else fra
.me
.REG
[6] = once_value_37
;
1041 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1042 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1043 fra
.me
.REG
[0] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1044 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1045 if (!once_value_38
) {
1046 fra
.me
.REG
[0] = BOX_NativeString(". */\n");
1048 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1049 once_value_38
= fra
.me
.REG
[0];
1050 register_static_object(&once_value_38
);
1051 } else fra
.me
.REG
[0] = once_value_38
;
1052 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1053 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1054 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1055 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
1056 /* compiling/compiling.nit:137 */
1058 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1059 if (!once_value_39
) {
1060 fra
.me
.REG
[0] = BOX_NativeString("#include \"");
1061 REGB0
= TAG_Int(10);
1062 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1063 once_value_39
= fra
.me
.REG
[0];
1064 register_static_object(&once_value_39
);
1065 } else fra
.me
.REG
[0] = once_value_39
;
1066 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1067 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1068 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[5]);
1069 if (!once_value_40
) {
1070 fra
.me
.REG
[5] = BOX_NativeString("\"\n");
1072 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
1073 once_value_40
= fra
.me
.REG
[5];
1074 register_static_object(&once_value_40
);
1075 } else fra
.me
.REG
[5] = once_value_40
;
1076 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1077 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[5]);
1078 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1079 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
1080 /* compiling/compiling.nit:138 */
1081 fra
.me
.REG
[3] = CALL_compiling___compiling_base___CompilerVisitor___top_writer(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1082 CALL_compiling___compiling_writer___Writer___write_to_stream(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1083 /* compiling/compiling.nit:139 */
1084 CALL_standard___stream___IOS___close(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1085 stack_frame_head
= fra
.me
.prev
;