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
.REG
[0] = NIT_NULL
;
15 /* ./compiling//compiling.nit:28 */
16 REGB0
= TAG_Bool(ATTR_compiling___Program____output_format(fra
.me
.REG
[0])!=NIT_NULL
);
17 if (UNTAG_Bool(REGB0
)) {
19 nit_abort("Uninitialized attribute %s", "_output_format", LOCATE_compiling
, 28);
21 fra
.me
.REG
[0] = ATTR_compiling___Program____output_format(fra
.me
.REG
[0]);
22 stack_frame_head
= fra
.me
.prev
;
25 void compiling___Program___output_format__eq(val_t p0
, val_t p1
){
26 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
28 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
29 fra
.me
.file
= LOCATE_compiling
;
31 fra
.me
.meth
= LOCATE_compiling___Program___output_format__eq
;
34 fra
.me
.REG
[0] = NIT_NULL
;
35 fra
.me
.REG
[1] = NIT_NULL
;
38 /* ./compiling//compiling.nit:28 */
39 ATTR_compiling___Program____output_format(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
40 stack_frame_head
= fra
.me
.prev
;
43 void compiling___Program___compile_prog(val_t p0
){
44 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
48 static val_t once_value_1
; /* Once value */
49 static val_t once_value_3
; /* Once value */
50 static val_t once_value_4
; /* Once value */
51 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
52 fra
.me
.file
= LOCATE_compiling
;
54 fra
.me
.meth
= LOCATE_compiling___Program___compile_prog
;
57 fra
.me
.REG
[0] = NIT_NULL
;
58 fra
.me
.REG
[1] = NIT_NULL
;
59 fra
.me
.REG
[2] = NIT_NULL
;
61 /* ./compiling//compiling.nit:34 */
62 fra
.me
.REG
[1] = CALL_compiling___Program___output_format(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
64 fra
.me
.REG
[2] = BOX_NativeString("none");
66 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
67 once_value_1
= fra
.me
.REG
[2];
68 register_static_object(&once_value_1
);
69 } else fra
.me
.REG
[2] = once_value_1
;
70 fra
.me
.REG
[2] = fra
.me
.REG
[2];
71 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[2]));
72 if (UNTAG_Bool(REGB0
)) {
74 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
77 if (UNTAG_Bool(REGB0
)) {
79 CALL_program___Program___with_each_iroutines(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_compiling___Program___compile_prog_2
));
80 /* ./compiling//compiling.nit:40 */
81 fra
.me
.REG
[2] = CALL_compiling___Program___output_format(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
83 fra
.me
.REG
[1] = BOX_NativeString("C");
85 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
86 once_value_3
= fra
.me
.REG
[1];
87 register_static_object(&once_value_3
);
88 } else fra
.me
.REG
[1] = once_value_3
;
89 fra
.me
.REG
[1] = fra
.me
.REG
[1];
90 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[2],fra
.me
.REG
[1]));
91 if (UNTAG_Bool(REGB0
)) {
93 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
96 if (UNTAG_Bool(REGB0
)) {
97 /* ./compiling//compiling.nit:41 */
98 CALL_compiling___Program___compile_prog_to_c(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
100 /* ./compiling//compiling.nit:42 */
101 fra
.me
.REG
[1] = CALL_compiling___Program___output_format(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
103 fra
.me
.REG
[2] = BOX_NativeString("icode");
105 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
106 once_value_4
= fra
.me
.REG
[2];
107 register_static_object(&once_value_4
);
108 } else fra
.me
.REG
[2] = once_value_4
;
109 fra
.me
.REG
[2] = fra
.me
.REG
[2];
110 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[2]));
111 if (UNTAG_Bool(REGB0
)) {
113 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
116 if (UNTAG_Bool(REGB0
)) {
117 /* ./compiling//compiling.nit:43 */
118 CALL_compiling___icode_generator___Program___generate_icode_files(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
122 stack_frame_head
= fra
.me
.prev
;
125 void OC_compiling___Program___compile_prog_2(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
126 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
128 /* ./compiling//compiling.nit:38 */
129 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
130 fra
.me
.file
= LOCATE_compiling
;
132 fra
.me
.meth
= LOCATE_compiling___Program___compile_prog
;
133 fra
.me
.has_broke
= 0;
135 fra
.me
.REG
[0] = NIT_NULL
;
136 fra
.me
.REG
[1] = NIT_NULL
;
139 CALL_analysis___IRoutine___optimize(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
140 stack_frame_head
= fra
.me
.prev
;
143 void compiling___Program___compile_prog_to_c(val_t p0
){
144 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
147 static val_t once_value_1
; /* Once value */
148 static val_t once_value_2
; /* Once value */
149 static val_t once_value_3
; /* Once value */
150 static val_t once_value_4
; /* Once value */
151 static val_t once_value_6
; /* Once value */
152 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
153 fra
.me
.file
= LOCATE_compiling
;
155 fra
.me
.meth
= LOCATE_compiling___Program___compile_prog_to_c
;
156 fra
.me
.has_broke
= 0;
158 fra
.me
.REG
[0] = NIT_NULL
;
159 fra
.me
.REG
[1] = NIT_NULL
;
160 fra
.me
.REG
[2] = NIT_NULL
;
161 fra
.me
.REG
[3] = NIT_NULL
;
163 /* ./compiling//compiling.nit:53 */
164 fra
.me
.REG
[1] = NEW_CProgram_compiling___compiling_base___CProgram___init(fra
.me
.REG
[0]);
165 /* ./compiling//compiling.nit:55 */
166 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
167 CALL_standard___file___String___mkdir(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
168 /* ./compiling//compiling.nit:57 */
169 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
171 fra
.me
.REG
[3] = BOX_NativeString("$CLIBDIR/nit_main.c");
173 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
174 once_value_1
= fra
.me
.REG
[3];
175 register_static_object(&once_value_1
);
176 } else fra
.me
.REG
[3] = once_value_1
;
177 fra
.me
.REG
[3] = fra
.me
.REG
[3];
178 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
179 /* ./compiling//compiling.nit:58 */
180 fra
.me
.REG
[3] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
182 fra
.me
.REG
[2] = BOX_NativeString("$CLIBDIR/gc.c");
184 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
185 once_value_2
= fra
.me
.REG
[2];
186 register_static_object(&once_value_2
);
187 } else fra
.me
.REG
[2] = once_value_2
;
188 fra
.me
.REG
[2] = fra
.me
.REG
[2];
189 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
190 /* ./compiling//compiling.nit:59 */
191 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
193 fra
.me
.REG
[3] = BOX_NativeString("$CLIBDIR/gc_static_objects_list.c");
195 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
196 once_value_3
= fra
.me
.REG
[3];
197 register_static_object(&once_value_3
);
198 } else fra
.me
.REG
[3] = once_value_3
;
199 fra
.me
.REG
[3] = fra
.me
.REG
[3];
200 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
201 /* ./compiling//compiling.nit:61 */
202 fra
.me
.REG
[3] = CALL_program___Program___tc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
204 fra
.me
.REG
[2] = BOX_NativeString("Generating C code");
206 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
207 once_value_4
= fra
.me
.REG
[2];
208 register_static_object(&once_value_4
);
209 } else fra
.me
.REG
[2] = once_value_4
;
210 fra
.me
.REG
[2] = fra
.me
.REG
[2];
212 CALL_mmloader___ToolContext___info(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], REGB0
);
213 /* ./compiling//compiling.nit:62 */
214 fra
.me
.REG
[2] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
215 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___mhe(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
216 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
217 if (UNTAG_Bool(REGB0
)) {
218 nit_abort("Reciever is null", NULL
, LOCATE_compiling
, 62);
220 fra
.me
.REG
[2] = CALL_metamodel___partial_order___PartialOrderElement___greaters_and_self(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
221 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
));
222 /* ./compiling//compiling.nit:64 */
223 fra
.me
.REG
[2] = CALL_program___Program___tc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
225 fra
.me
.REG
[3] = BOX_NativeString("Generating main, tables and makefile ...");
227 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
228 once_value_6
= fra
.me
.REG
[3];
229 register_static_object(&once_value_6
);
230 } else fra
.me
.REG
[3] = once_value_6
;
231 fra
.me
.REG
[3] = fra
.me
.REG
[3];
233 CALL_mmloader___ToolContext___info(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], REGB0
);
234 /* ./compiling//compiling.nit:65 */
235 CALL_compiling___Program___compile_main(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
236 /* ./compiling//compiling.nit:67 */
237 CALL_compiling___compiling_base___CProgram___generate_build_file(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
238 /* ./compiling//compiling.nit:69 */
239 fra
.me
.REG
[0] = CALL_program___Program___tc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
240 REGB0
= CALL_compiling___compiling_base___ToolContext___no_cc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
241 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
242 if (UNTAG_Bool(REGB0
)) {
243 CALL_compiling___compiling_base___CProgram___run_c_compiler(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
245 stack_frame_head
= fra
.me
.prev
;
248 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
){
249 struct {struct stack_frame_t me
;} fra
;
252 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
253 fra
.me
.file
= LOCATE_compiling
;
255 fra
.me
.meth
= LOCATE_compiling___Program___compile_prog_to_c
;
256 fra
.me
.has_broke
= 0;
258 fra
.me
.REG
[0] = NIT_NULL
;
259 fra
.me
.closure_ctx
= closctx_param
;
260 fra
.me
.closure_funs
= CREG
;
263 CALL_compiling___MMModule___compile_separate_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
264 stack_frame_head
= fra
.me
.prev
;
267 void compiling___Program___compile_main(val_t p0
, val_t p1
){
268 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
271 static val_t once_value_1
; /* Once value */
272 static val_t once_value_2
; /* Once value */
273 static val_t once_value_3
; /* Once value */
274 static val_t once_value_4
; /* Once value */
275 static val_t once_value_5
; /* Once value */
276 static val_t once_value_6
; /* Once value */
277 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
278 fra
.me
.file
= LOCATE_compiling
;
280 fra
.me
.meth
= LOCATE_compiling___Program___compile_main
;
281 fra
.me
.has_broke
= 0;
283 fra
.me
.REG
[0] = NIT_NULL
;
284 fra
.me
.REG
[1] = NIT_NULL
;
285 fra
.me
.REG
[2] = NIT_NULL
;
286 fra
.me
.REG
[3] = NIT_NULL
;
287 fra
.me
.REG
[4] = NIT_NULL
;
288 fra
.me
.REG
[5] = NIT_NULL
;
291 /* ./compiling//compiling.nit:75 */
292 fra
.me
.REG
[2] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
293 fra
.me
.REG
[2] = NEW_CompilerVisitor_compiling___compiling_base___CompilerVisitor___init(fra
.me
.REG
[2], fra
.me
.REG
[1]);
294 /* ./compiling//compiling.nit:76 */
296 fra
.me
.REG
[3] = BOX_NativeString("#include <nit_common.h>");
298 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
299 once_value_1
= fra
.me
.REG
[3];
300 register_static_object(&once_value_1
);
301 } else fra
.me
.REG
[3] = once_value_1
;
302 fra
.me
.REG
[3] = fra
.me
.REG
[3];
303 CALL_compiling___compiling_base___CompilerVisitor___add_decl(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
304 /* ./compiling//compiling.nit:77 */
305 CALL_compiling___compiling_global___Program___compile_tables_to_c(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
306 /* ./compiling//compiling.nit:78 */
307 CALL_compiling___compiling_global___Program___compile_main_part(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
308 /* ./compiling//compiling.nit:79 */
310 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
312 fra
.me
.REG
[4] = BOX_NativeString("");
314 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
315 once_value_2
= fra
.me
.REG
[4];
316 register_static_object(&once_value_2
);
317 } else fra
.me
.REG
[4] = once_value_2
;
318 fra
.me
.REG
[4] = fra
.me
.REG
[4];
319 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
320 fra
.me
.REG
[4] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
321 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
323 fra
.me
.REG
[4] = BOX_NativeString("/");
325 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
326 once_value_3
= fra
.me
.REG
[4];
327 register_static_object(&once_value_3
);
328 } else fra
.me
.REG
[4] = once_value_3
;
329 fra
.me
.REG
[4] = fra
.me
.REG
[4];
330 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
331 fra
.me
.REG
[4] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
332 fra
.me
.REG
[4] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
333 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
335 fra
.me
.REG
[4] = BOX_NativeString("._tables.c");
337 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
338 once_value_4
= fra
.me
.REG
[4];
339 register_static_object(&once_value_4
);
340 } else fra
.me
.REG
[4] = once_value_4
;
341 fra
.me
.REG
[4] = fra
.me
.REG
[4];
342 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
343 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
344 /* ./compiling//compiling.nit:80 */
345 fra
.me
.REG
[4] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
346 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
347 /* ./compiling//compiling.nit:81 */
348 fra
.me
.REG
[3] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[3]);
349 /* ./compiling//compiling.nit:82 */
351 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
353 fra
.me
.REG
[5] = BOX_NativeString("/* This C file is generated by NIT to compile program ");
355 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
356 once_value_5
= fra
.me
.REG
[5];
357 register_static_object(&once_value_5
);
358 } else fra
.me
.REG
[5] = once_value_5
;
359 fra
.me
.REG
[5] = fra
.me
.REG
[5];
360 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
361 fra
.me
.REG
[5] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
362 fra
.me
.REG
[5] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
363 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
365 fra
.me
.REG
[5] = BOX_NativeString(". */\n");
367 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
368 once_value_6
= fra
.me
.REG
[5];
369 register_static_object(&once_value_6
);
370 } else fra
.me
.REG
[5] = once_value_6
;
371 fra
.me
.REG
[5] = fra
.me
.REG
[5];
372 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
373 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
374 CALL_standard___stream___OStream___write(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
375 /* ./compiling//compiling.nit:83 */
376 fra
.me
.REG
[0] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
377 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMModule___mhe(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
378 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
379 if (UNTAG_Bool(REGB0
)) {
380 nit_abort("Reciever is null", NULL
, LOCATE_compiling
, 83);
382 fra
.me
.REG
[0] = CALL_metamodel___partial_order___PartialOrderElement___greaters_and_self(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
383 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
));
384 /* ./compiling//compiling.nit:86 */
385 fra
.me
.REG
[1] = CALL_compiling___compiling_base___CompilerVisitor___header_writer(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
386 CALL_compiling___compiling_writer___Writer___write_to_stream(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
387 /* ./compiling//compiling.nit:87 */
388 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CompilerVisitor___writer(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
389 CALL_compiling___compiling_writer___Writer___write_to_stream(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
390 /* ./compiling//compiling.nit:88 */
391 CALL_standard___stream___IOS___close(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
392 stack_frame_head
= fra
.me
.prev
;
395 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
){
396 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
400 static val_t once_value_8
; /* Once value */
401 static val_t once_value_9
; /* Once value */
402 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
403 fra
.me
.file
= LOCATE_compiling
;
405 fra
.me
.meth
= LOCATE_compiling___Program___compile_main
;
406 fra
.me
.has_broke
= 0;
408 fra
.me
.REG
[0] = NIT_NULL
;
409 fra
.me
.REG
[1] = NIT_NULL
;
410 fra
.me
.REG
[2] = NIT_NULL
;
411 fra
.me
.closure_ctx
= closctx_param
;
412 fra
.me
.closure_funs
= CREG
;
415 /* ./compiling//compiling.nit:84 */
417 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
419 fra
.me
.REG
[2] = BOX_NativeString("#include \"");
421 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
422 once_value_8
= fra
.me
.REG
[2];
423 register_static_object(&once_value_8
);
424 } else fra
.me
.REG
[2] = once_value_8
;
425 fra
.me
.REG
[2] = fra
.me
.REG
[2];
426 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
427 fra
.me
.REG
[0] = CALL_compiling___compiling_base___CProgram___module_header_name(closctx
->REG
[1])(closctx
->REG
[1], fra
.me
.REG
[0]);
428 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
430 fra
.me
.REG
[0] = BOX_NativeString("\"\n");
432 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
433 once_value_9
= fra
.me
.REG
[0];
434 register_static_object(&once_value_9
);
435 } else fra
.me
.REG
[0] = once_value_9
;
436 fra
.me
.REG
[0] = fra
.me
.REG
[0];
437 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
438 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
439 CALL_standard___stream___OStream___write(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[1]);
440 stack_frame_head
= fra
.me
.prev
;
443 void compiling___MMModule___compile_separate_module(val_t p0
, val_t p1
){
444 struct {struct stack_frame_t me
; val_t MORE_REG
[9];} fra
;
449 static val_t once_value_1
; /* Once value */
450 static val_t once_value_2
; /* Once value */
451 static val_t once_value_3
; /* Once value */
452 static val_t once_value_4
; /* Once value */
453 static val_t once_value_5
; /* Once value */
454 static val_t once_value_6
; /* Once value */
455 static val_t once_value_7
; /* Once value */
456 static val_t once_value_8
; /* Once value */
457 static val_t once_value_9
; /* Once value */
458 static val_t once_value_10
; /* Once value */
459 static val_t once_value_11
; /* Once value */
460 static val_t once_value_12
; /* Once value */
461 static val_t once_value_13
; /* Once value */
462 static val_t once_value_14
; /* Once value */
463 static val_t once_value_15
; /* Once value */
464 static val_t once_value_16
; /* Once value */
465 static val_t once_value_17
; /* Once value */
466 static val_t once_value_18
; /* Once value */
467 static val_t once_value_19
; /* Once value */
468 static val_t once_value_20
; /* Once value */
469 static val_t once_value_21
; /* Once value */
470 static val_t once_value_22
; /* Once value */
471 static val_t once_value_23
; /* Once value */
472 static val_t once_value_24
; /* Once value */
473 static val_t once_value_25
; /* Once value */
474 static val_t once_value_26
; /* Once value */
475 static val_t once_value_27
; /* Once value */
476 static val_t once_value_28
; /* Once value */
477 static val_t once_value_30
; /* Once value */
478 static val_t once_value_31
; /* Once value */
479 static val_t once_value_32
; /* Once value */
480 static val_t once_value_33
; /* Once value */
481 static val_t once_value_34
; /* Once value */
482 static val_t once_value_35
; /* Once value */
483 static val_t once_value_36
; /* Once value */
484 static val_t once_value_37
; /* Once value */
485 static val_t once_value_38
; /* Once value */
486 static val_t once_value_39
; /* Once value */
487 static val_t once_value_40
; /* Once value */
488 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
489 fra
.me
.file
= LOCATE_compiling
;
491 fra
.me
.meth
= LOCATE_compiling___MMModule___compile_separate_module
;
492 fra
.me
.has_broke
= 0;
493 fra
.me
.REG_size
= 10;
494 fra
.me
.REG
[0] = NIT_NULL
;
495 fra
.me
.REG
[1] = NIT_NULL
;
496 fra
.me
.REG
[2] = NIT_NULL
;
497 fra
.me
.REG
[3] = NIT_NULL
;
498 fra
.me
.REG
[4] = NIT_NULL
;
499 fra
.me
.REG
[5] = NIT_NULL
;
500 fra
.me
.REG
[6] = NIT_NULL
;
501 fra
.me
.REG
[7] = NIT_NULL
;
502 fra
.me
.REG
[8] = NIT_NULL
;
503 fra
.me
.REG
[9] = NIT_NULL
;
506 /* ./compiling//compiling.nit:96 */
507 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___program(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
508 fra
.me
.REG
[2] = CALL_program___Program___tc(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
509 /* ./compiling//compiling.nit:97 */
511 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
513 fra
.me
.REG
[4] = BOX_NativeString("Generating C code for module: ");
515 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
516 once_value_1
= fra
.me
.REG
[4];
517 register_static_object(&once_value_1
);
518 } else fra
.me
.REG
[4] = once_value_1
;
519 fra
.me
.REG
[4] = fra
.me
.REG
[4];
520 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
521 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMModule___full_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
522 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
523 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
525 fra
.me
.REG
[4] = BOX_NativeString("");
527 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
528 once_value_2
= fra
.me
.REG
[4];
529 register_static_object(&once_value_2
);
530 } else fra
.me
.REG
[4] = once_value_2
;
531 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]);
533 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
535 CALL_mmloader___ToolContext___info(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], REGB0
);
536 /* ./compiling//compiling.nit:98 */
537 fra
.me
.REG
[3] = NEW_CompilerVisitor_compiling___compiling_base___CompilerVisitor___init(fra
.me
.REG
[0], fra
.me
.REG
[1]);
538 /* ./compiling//compiling.nit:99 */
540 fra
.me
.REG
[2] = BOX_NativeString("#include <nit_common.h>");
542 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
543 once_value_3
= fra
.me
.REG
[2];
544 register_static_object(&once_value_3
);
545 } else fra
.me
.REG
[2] = once_value_3
;
546 fra
.me
.REG
[2] = fra
.me
.REG
[2];
547 CALL_compiling___compiling_base___CompilerVisitor___add_decl(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
548 /* ./compiling//compiling.nit:101 */
549 REGB0
= CALL_metamodel___abstractmetamodel___MMModule___is_extern_hybrid(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
550 if (UNTAG_Bool(REGB0
)) {
551 /* ./compiling//compiling.nit:104 */
553 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
555 fra
.me
.REG
[4] = BOX_NativeString("");
557 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
558 once_value_4
= fra
.me
.REG
[4];
559 register_static_object(&once_value_4
);
560 } else fra
.me
.REG
[4] = once_value_4
;
561 fra
.me
.REG
[4] = fra
.me
.REG
[4];
562 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
563 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
564 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
565 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
567 fra
.me
.REG
[4] = BOX_NativeString("._nitni.h");
569 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
570 once_value_5
= fra
.me
.REG
[4];
571 register_static_object(&once_value_5
);
572 } else fra
.me
.REG
[4] = once_value_5
;
573 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]);
575 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
576 /* ./compiling//compiling.nit:105 */
578 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
580 fra
.me
.REG
[5] = BOX_NativeString("#include \"");
582 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
583 once_value_6
= fra
.me
.REG
[5];
584 register_static_object(&once_value_6
);
585 } else fra
.me
.REG
[5] = once_value_6
;
586 fra
.me
.REG
[5] = fra
.me
.REG
[5];
587 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
588 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
590 fra
.me
.REG
[2] = BOX_NativeString("\"");
592 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
593 once_value_7
= fra
.me
.REG
[2];
594 register_static_object(&once_value_7
);
595 } else fra
.me
.REG
[2] = once_value_7
;
596 fra
.me
.REG
[2] = fra
.me
.REG
[2];
597 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
598 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
599 CALL_compiling___compiling_base___CompilerVisitor___add_decl(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
600 /* ./compiling//compiling.nit:106 */
602 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
604 fra
.me
.REG
[2] = BOX_NativeString("");
606 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
607 once_value_8
= fra
.me
.REG
[2];
608 register_static_object(&once_value_8
);
609 } else fra
.me
.REG
[2] = once_value_8
;
610 fra
.me
.REG
[2] = fra
.me
.REG
[2];
611 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
612 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
613 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
614 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
616 fra
.me
.REG
[2] = BOX_NativeString("._nitni.c");
618 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
619 once_value_9
= fra
.me
.REG
[2];
620 register_static_object(&once_value_9
);
621 } else fra
.me
.REG
[2] = once_value_9
;
622 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]);
624 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
625 /* ./compiling//compiling.nit:107 */
626 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
628 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
629 if (!once_value_10
) {
630 fra
.me
.REG
[6] = BOX_NativeString("");
632 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
633 once_value_10
= fra
.me
.REG
[6];
634 register_static_object(&once_value_10
);
635 } else fra
.me
.REG
[6] = once_value_10
;
636 fra
.me
.REG
[6] = fra
.me
.REG
[6];
637 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
638 fra
.me
.REG
[6] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
639 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
640 if (!once_value_11
) {
641 fra
.me
.REG
[6] = BOX_NativeString("/");
643 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
644 once_value_11
= fra
.me
.REG
[6];
645 register_static_object(&once_value_11
);
646 } else fra
.me
.REG
[6] = once_value_11
;
647 fra
.me
.REG
[6] = fra
.me
.REG
[6];
648 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
649 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[4]);
650 if (!once_value_12
) {
651 fra
.me
.REG
[4] = BOX_NativeString("");
653 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
654 once_value_12
= fra
.me
.REG
[4];
655 register_static_object(&once_value_12
);
656 } else fra
.me
.REG
[4] = once_value_12
;
657 fra
.me
.REG
[4] = fra
.me
.REG
[4];
658 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[4]);
659 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
660 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[5]);
661 /* ./compiling//compiling.nit:110 */
662 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMModule___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
663 fra
.me
.REG
[5] = CALL_location___Location___file(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
664 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
665 if (UNTAG_Bool(REGB0
)) {
666 nit_abort("Reciever is null", NULL
, LOCATE_compiling
, 110);
668 fra
.me
.REG
[5] = CALL_location___SourceFile___filename(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
669 if (!once_value_13
) {
670 fra
.me
.REG
[2] = BOX_NativeString(".nit");
672 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
673 once_value_13
= fra
.me
.REG
[2];
674 register_static_object(&once_value_13
);
675 } else fra
.me
.REG
[2] = once_value_13
;
676 fra
.me
.REG
[2] = fra
.me
.REG
[2];
677 fra
.me
.REG
[2] = CALL_standard___file___String___strip_extension(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[2]);
678 /* ./compiling//compiling.nit:111 */
679 if (!once_value_14
) {
680 fra
.me
.REG
[5] = BOX_NativeString(".nit.c");
682 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
683 once_value_14
= fra
.me
.REG
[5];
684 register_static_object(&once_value_14
);
685 } else fra
.me
.REG
[5] = once_value_14
;
686 fra
.me
.REG
[5] = fra
.me
.REG
[5];
687 fra
.me
.REG
[5] = CALL_standard___string___String_____plus(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[5]);
688 /* ./compiling//compiling.nit:112 */
689 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
690 if (UNTAG_Bool(REGB0
)) {
691 /* ./compiling//compiling.nit:113 */
692 fra
.me
.REG
[4] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
693 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
695 /* ./compiling//compiling.nit:115 */
696 if (!once_value_15
) {
697 fra
.me
.REG
[4] = BOX_NativeString("_nit.c");
699 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
700 once_value_15
= fra
.me
.REG
[4];
701 register_static_object(&once_value_15
);
702 } else fra
.me
.REG
[4] = once_value_15
;
703 fra
.me
.REG
[4] = fra
.me
.REG
[4];
704 fra
.me
.REG
[4] = CALL_standard___string___String_____plus(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
705 fra
.me
.REG
[5] = fra
.me
.REG
[4];
706 /* ./compiling//compiling.nit:116 */
707 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
708 if (UNTAG_Bool(REGB0
)) {
709 fra
.me
.REG
[4] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
710 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
714 /* ./compiling//compiling.nit:120 */
715 CALL_compiling___compiling_global___MMModule___declare_class_tables_to_c(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
716 /* ./compiling//compiling.nit:121 */
717 CALL_compiling___compiling_global___MMModule___compile_mod_to_c(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
718 /* ./compiling//compiling.nit:123 */
719 fra
.me
.REG
[5] = CALL_compiling___compiling_base___CProgram___module_header_name(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
720 /* ./compiling//compiling.nit:124 */
722 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
723 if (!once_value_16
) {
724 fra
.me
.REG
[2] = BOX_NativeString("");
726 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
727 once_value_16
= fra
.me
.REG
[2];
728 register_static_object(&once_value_16
);
729 } else fra
.me
.REG
[2] = once_value_16
;
730 fra
.me
.REG
[2] = fra
.me
.REG
[2];
731 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
732 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
733 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
734 if (!once_value_17
) {
735 fra
.me
.REG
[2] = BOX_NativeString("/");
737 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
738 once_value_17
= fra
.me
.REG
[2];
739 register_static_object(&once_value_17
);
740 } else fra
.me
.REG
[2] = once_value_17
;
741 fra
.me
.REG
[2] = fra
.me
.REG
[2];
742 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
743 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
744 if (!once_value_18
) {
745 fra
.me
.REG
[2] = BOX_NativeString("");
747 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
748 once_value_18
= fra
.me
.REG
[2];
749 register_static_object(&once_value_18
);
750 } else fra
.me
.REG
[2] = once_value_18
;
751 fra
.me
.REG
[2] = fra
.me
.REG
[2];
752 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
753 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
754 fra
.me
.REG
[4] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[4]);
755 /* ./compiling//compiling.nit:125 */
757 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
758 if (!once_value_19
) {
759 fra
.me
.REG
[6] = BOX_NativeString("/* This C header file is generated by NIT to compile modules and programs that requires ");
761 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
762 once_value_19
= fra
.me
.REG
[6];
763 register_static_object(&once_value_19
);
764 } else fra
.me
.REG
[6] = once_value_19
;
765 fra
.me
.REG
[6] = fra
.me
.REG
[6];
766 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
767 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMModule___full_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
768 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
769 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
770 if (!once_value_20
) {
771 fra
.me
.REG
[6] = BOX_NativeString(". */\n");
773 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
774 once_value_20
= fra
.me
.REG
[6];
775 register_static_object(&once_value_20
);
776 } else fra
.me
.REG
[6] = once_value_20
;
777 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 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
780 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
781 /* ./compiling//compiling.nit:126 */
783 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
784 if (!once_value_21
) {
785 fra
.me
.REG
[6] = BOX_NativeString("#ifndef ");
787 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
788 once_value_21
= fra
.me
.REG
[6];
789 register_static_object(&once_value_21
);
790 } else fra
.me
.REG
[6] = once_value_21
;
791 fra
.me
.REG
[6] = fra
.me
.REG
[6];
792 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
793 fra
.me
.REG
[6] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
794 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
795 if (!once_value_22
) {
796 fra
.me
.REG
[6] = BOX_NativeString("");
798 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
799 once_value_22
= fra
.me
.REG
[6];
800 register_static_object(&once_value_22
);
801 } else fra
.me
.REG
[6] = once_value_22
;
802 fra
.me
.REG
[6] = fra
.me
.REG
[6];
803 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
804 fra
.me
.REG
[6] = CALL_compiling___compiling_base___CProgram___get_file_ending(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
805 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
806 if (!once_value_23
) {
807 fra
.me
.REG
[6] = BOX_NativeString("\n");
809 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
810 once_value_23
= fra
.me
.REG
[6];
811 register_static_object(&once_value_23
);
812 } else fra
.me
.REG
[6] = once_value_23
;
813 fra
.me
.REG
[6] = fra
.me
.REG
[6];
814 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
815 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
816 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
817 /* ./compiling//compiling.nit:127 */
819 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
820 if (!once_value_24
) {
821 fra
.me
.REG
[6] = BOX_NativeString("#define ");
823 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
824 once_value_24
= fra
.me
.REG
[6];
825 register_static_object(&once_value_24
);
826 } else fra
.me
.REG
[6] = once_value_24
;
827 fra
.me
.REG
[6] = fra
.me
.REG
[6];
828 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
829 fra
.me
.REG
[6] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
830 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
831 if (!once_value_25
) {
832 fra
.me
.REG
[6] = BOX_NativeString("");
834 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
835 once_value_25
= fra
.me
.REG
[6];
836 register_static_object(&once_value_25
);
837 } else fra
.me
.REG
[6] = once_value_25
;
838 fra
.me
.REG
[6] = fra
.me
.REG
[6];
839 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
840 fra
.me
.REG
[6] = CALL_compiling___compiling_base___CProgram___get_file_ending(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
841 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
842 if (!once_value_26
) {
843 fra
.me
.REG
[6] = BOX_NativeString("\n");
845 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
846 once_value_26
= fra
.me
.REG
[6];
847 register_static_object(&once_value_26
);
848 } else fra
.me
.REG
[6] = once_value_26
;
849 fra
.me
.REG
[6] = fra
.me
.REG
[6];
850 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
851 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
852 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
853 /* ./compiling//compiling.nit:128 */
854 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___mhe(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
855 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
856 if (UNTAG_Bool(REGB0
)) {
857 nit_abort("Reciever is null", NULL
, LOCATE_compiling
, 128);
859 fra
.me
.REG
[2] = CALL_metamodel___partial_order___PartialOrderElement___direct_greaters(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
860 /* ./../lib/standard//collection//array.nit:269 */
862 /* ./../lib/standard//collection//array.nit:270 */
863 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
864 if (UNTAG_Bool(REGB1
)) {
866 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
868 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
869 /* ./../lib/standard//collection//array.nit:271 */
870 fra
.me
.REG
[6] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
871 /* ./../lib/standard//collection//array.nit:272 */
873 /* ./../lib/standard//collection//array.nit:24 */
874 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
875 if (UNTAG_Bool(REGB1
)) {
877 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
879 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
880 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
881 if (UNTAG_Bool(REGB2
)) {
883 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
885 /* ./../lib/standard//kernel.nit:232 */
886 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
887 /* ./../lib/standard//collection//array.nit:272 */
888 if (UNTAG_Bool(REGB1
)) {
889 /* ./../lib/standard//collection//array.nit:273 */
890 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
891 if (UNTAG_Bool(REGB1
)) {
892 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
894 /* ./../lib/standard//collection//array.nit:718 */
895 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB0
)];
896 /* ./compiling//compiling.nit:128 */
898 fra
.me
.REG
[8] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
899 if (!once_value_27
) {
900 fra
.me
.REG
[9] = BOX_NativeString("#include \"");
902 fra
.me
.REG
[9] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[9], REGB1
);
903 once_value_27
= fra
.me
.REG
[9];
904 register_static_object(&once_value_27
);
905 } else fra
.me
.REG
[9] = once_value_27
;
906 fra
.me
.REG
[9] = fra
.me
.REG
[9];
907 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
908 fra
.me
.REG
[7] = CALL_compiling___compiling_base___CProgram___module_header_name(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[7]);
909 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[7]);
910 if (!once_value_28
) {
911 fra
.me
.REG
[7] = BOX_NativeString("\"\n");
913 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB1
);
914 once_value_28
= fra
.me
.REG
[7];
915 register_static_object(&once_value_28
);
916 } else fra
.me
.REG
[7] = once_value_28
;
917 fra
.me
.REG
[7] = 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 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
920 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[8]);
921 /* ./../lib/standard//collection//array.nit:274 */
923 /* ./../lib/standard//kernel.nit:235 */
924 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
925 /* ./../lib/standard//collection//array.nit:274 */
928 /* ./../lib/standard//collection//array.nit:272 */
933 /* ./compiling//compiling.nit:129 */
934 fra
.me
.REG
[6] = CALL_compiling___compiling_base___CompilerVisitor___header_writer(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
935 CALL_compiling___compiling_writer___Writer___write_to_stream(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
936 /* ./compiling//compiling.nit:130 */
937 if (!once_value_30
) {
938 fra
.me
.REG
[6] = BOX_NativeString("#endif\n");
940 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
941 once_value_30
= fra
.me
.REG
[6];
942 register_static_object(&once_value_30
);
943 } else fra
.me
.REG
[6] = once_value_30
;
944 fra
.me
.REG
[6] = fra
.me
.REG
[6];
945 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
946 /* ./compiling//compiling.nit:131 */
947 CALL_standard___stream___IOS___close(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
948 /* ./compiling//compiling.nit:133 */
950 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
951 if (!once_value_31
) {
952 fra
.me
.REG
[2] = BOX_NativeString("");
954 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
955 once_value_31
= fra
.me
.REG
[2];
956 register_static_object(&once_value_31
);
957 } else fra
.me
.REG
[2] = once_value_31
;
958 fra
.me
.REG
[2] = fra
.me
.REG
[2];
959 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
960 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___compdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
961 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
962 if (!once_value_32
) {
963 fra
.me
.REG
[2] = BOX_NativeString("/");
965 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
966 once_value_32
= fra
.me
.REG
[2];
967 register_static_object(&once_value_32
);
968 } else fra
.me
.REG
[2] = once_value_32
;
969 fra
.me
.REG
[2] = fra
.me
.REG
[2];
970 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
971 fra
.me
.REG
[2] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
972 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
973 if (!once_value_33
) {
974 fra
.me
.REG
[2] = BOX_NativeString(".");
976 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
977 once_value_33
= fra
.me
.REG
[2];
978 register_static_object(&once_value_33
);
979 } else fra
.me
.REG
[2] = once_value_33
;
980 fra
.me
.REG
[2] = fra
.me
.REG
[2];
981 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
982 fra
.me
.REG
[2] = CALL_compiling___compiling_base___CProgram___get_file_ending(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
983 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
984 if (!once_value_34
) {
985 fra
.me
.REG
[2] = BOX_NativeString(".c");
987 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
988 once_value_34
= fra
.me
.REG
[2];
989 register_static_object(&once_value_34
);
990 } else fra
.me
.REG
[2] = once_value_34
;
991 fra
.me
.REG
[2] = fra
.me
.REG
[2];
992 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
993 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
994 /* ./compiling//compiling.nit:134 */
995 fra
.me
.REG
[1] = CALL_compiling___compiling_base___CProgram___files(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
996 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
997 /* ./compiling//compiling.nit:135 */
999 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1000 if (!once_value_35
) {
1001 fra
.me
.REG
[2] = BOX_NativeString("");
1003 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1004 once_value_35
= fra
.me
.REG
[2];
1005 register_static_object(&once_value_35
);
1006 } else fra
.me
.REG
[2] = once_value_35
;
1007 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1008 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1009 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1010 if (!once_value_36
) {
1011 fra
.me
.REG
[6] = BOX_NativeString("");
1013 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1014 once_value_36
= fra
.me
.REG
[6];
1015 register_static_object(&once_value_36
);
1016 } else fra
.me
.REG
[6] = once_value_36
;
1017 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1018 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1019 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1020 fra
.me
.REG
[1] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[1]);
1021 fra
.me
.REG
[4] = fra
.me
.REG
[1];
1022 /* ./compiling//compiling.nit:136 */
1024 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1025 if (!once_value_37
) {
1026 fra
.me
.REG
[6] = BOX_NativeString("/* This C file is generated by NIT to compile module ");
1027 REGB0
= TAG_Int(53);
1028 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1029 once_value_37
= fra
.me
.REG
[6];
1030 register_static_object(&once_value_37
);
1031 } else fra
.me
.REG
[6] = once_value_37
;
1032 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1033 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1034 fra
.me
.REG
[0] = CALL_compiling___compiling_base___MMModule___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1035 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1036 if (!once_value_38
) {
1037 fra
.me
.REG
[0] = BOX_NativeString(". */\n");
1039 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1040 once_value_38
= fra
.me
.REG
[0];
1041 register_static_object(&once_value_38
);
1042 } else fra
.me
.REG
[0] = once_value_38
;
1043 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 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1046 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
1047 /* ./compiling//compiling.nit:137 */
1049 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1050 if (!once_value_39
) {
1051 fra
.me
.REG
[0] = BOX_NativeString("#include \"");
1052 REGB0
= TAG_Int(10);
1053 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1054 once_value_39
= fra
.me
.REG
[0];
1055 register_static_object(&once_value_39
);
1056 } else fra
.me
.REG
[0] = once_value_39
;
1057 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1058 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1059 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[5]);
1060 if (!once_value_40
) {
1061 fra
.me
.REG
[5] = BOX_NativeString("\"\n");
1063 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
1064 once_value_40
= fra
.me
.REG
[5];
1065 register_static_object(&once_value_40
);
1066 } else fra
.me
.REG
[5] = once_value_40
;
1067 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1068 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[5]);
1069 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1070 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
1071 /* ./compiling//compiling.nit:138 */
1072 fra
.me
.REG
[3] = CALL_compiling___compiling_base___CompilerVisitor___top_writer(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1073 CALL_compiling___compiling_writer___Writer___write_to_stream(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1074 /* ./compiling//compiling.nit:139 */
1075 CALL_standard___stream___IOS___close(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1076 stack_frame_head
= fra
.me
.prev
;