c_src: updates c_src for extern classes to be special of Pointer
[nit.git] / c_src / separate_options._sep.c
1 /* This C file is generated by NIT to compile module separate_options. */
2 #include "separate_options._sep.h"
3 val_t separate_options___ToolContext___separate_options(val_t p0){
4 struct {struct stack_frame_t me;} fra;
5 val_t REGB0;
6 val_t tmp;
7 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
8 fra.me.file = LOCATE_separate_options;
9 fra.me.line = 10;
10 fra.me.meth = LOCATE_separate_options___ToolContext___separate_options;
11 fra.me.has_broke = 0;
12 fra.me.REG_size = 1;
13 fra.me.REG[0] = NIT_NULL;
14 fra.me.REG[0] = p0;
15 /* ./separate_options.nit:10 */
16 REGB0 = TAG_Bool(ATTR_separate_options___ToolContext_____atseparate_options(fra.me.REG[0])!=NIT_NULL);
17 if (UNTAG_Bool(REGB0)) {
18 } else {
19 nit_abort("Uninitialized attribute %s", "@separate_options", LOCATE_separate_options, 10);
20 }
21 fra.me.REG[0] = ATTR_separate_options___ToolContext_____atseparate_options(fra.me.REG[0]);
22 stack_frame_head = fra.me.prev;
23 return fra.me.REG[0];
24 }
25 void separate_options___ToolContext___separate_options__eq(val_t p0, val_t p1){
26 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
27 val_t tmp;
28 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
29 fra.me.file = LOCATE_separate_options;
30 fra.me.line = 10;
31 fra.me.meth = LOCATE_separate_options___ToolContext___separate_options__eq;
32 fra.me.has_broke = 0;
33 fra.me.REG_size = 2;
34 fra.me.REG[0] = NIT_NULL;
35 fra.me.REG[1] = NIT_NULL;
36 fra.me.REG[0] = p0;
37 fra.me.REG[1] = p1;
38 /* ./separate_options.nit:10 */
39 ATTR_separate_options___ToolContext_____atseparate_options(fra.me.REG[0]) = fra.me.REG[1];
40 stack_frame_head = fra.me.prev;
41 return;
42 }
43 val_t separate_options___ToolContext___opt_cc_lib_paths(val_t p0){
44 struct {struct stack_frame_t me;} fra;
45 val_t REGB0;
46 val_t tmp;
47 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
48 fra.me.file = LOCATE_separate_options;
49 fra.me.line = 12;
50 fra.me.meth = LOCATE_separate_options___ToolContext___opt_cc_lib_paths;
51 fra.me.has_broke = 0;
52 fra.me.REG_size = 1;
53 fra.me.REG[0] = NIT_NULL;
54 fra.me.REG[0] = p0;
55 /* ./separate_options.nit:12 */
56 REGB0 = TAG_Bool(ATTR_separate_options___ToolContext_____atopt_cc_lib_paths(fra.me.REG[0])!=NIT_NULL);
57 if (UNTAG_Bool(REGB0)) {
58 } else {
59 nit_abort("Uninitialized attribute %s", "@opt_cc_lib_paths", LOCATE_separate_options, 12);
60 }
61 fra.me.REG[0] = ATTR_separate_options___ToolContext_____atopt_cc_lib_paths(fra.me.REG[0]);
62 stack_frame_head = fra.me.prev;
63 return fra.me.REG[0];
64 }
65 void separate_options___ToolContext___opt_cc_lib_paths__eq(val_t p0, val_t p1){
66 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
67 val_t tmp;
68 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
69 fra.me.file = LOCATE_separate_options;
70 fra.me.line = 12;
71 fra.me.meth = LOCATE_separate_options___ToolContext___opt_cc_lib_paths__eq;
72 fra.me.has_broke = 0;
73 fra.me.REG_size = 2;
74 fra.me.REG[0] = NIT_NULL;
75 fra.me.REG[1] = NIT_NULL;
76 fra.me.REG[0] = p0;
77 fra.me.REG[1] = p1;
78 /* ./separate_options.nit:12 */
79 ATTR_separate_options___ToolContext_____atopt_cc_lib_paths(fra.me.REG[0]) = fra.me.REG[1];
80 stack_frame_head = fra.me.prev;
81 return;
82 }
83 val_t separate_options___ToolContext___opt_cc_libs(val_t p0){
84 struct {struct stack_frame_t me;} fra;
85 val_t REGB0;
86 val_t tmp;
87 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
88 fra.me.file = LOCATE_separate_options;
89 fra.me.line = 13;
90 fra.me.meth = LOCATE_separate_options___ToolContext___opt_cc_libs;
91 fra.me.has_broke = 0;
92 fra.me.REG_size = 1;
93 fra.me.REG[0] = NIT_NULL;
94 fra.me.REG[0] = p0;
95 /* ./separate_options.nit:13 */
96 REGB0 = TAG_Bool(ATTR_separate_options___ToolContext_____atopt_cc_libs(fra.me.REG[0])!=NIT_NULL);
97 if (UNTAG_Bool(REGB0)) {
98 } else {
99 nit_abort("Uninitialized attribute %s", "@opt_cc_libs", LOCATE_separate_options, 13);
100 }
101 fra.me.REG[0] = ATTR_separate_options___ToolContext_____atopt_cc_libs(fra.me.REG[0]);
102 stack_frame_head = fra.me.prev;
103 return fra.me.REG[0];
104 }
105 void separate_options___ToolContext___opt_cc_libs__eq(val_t p0, val_t p1){
106 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
107 val_t tmp;
108 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
109 fra.me.file = LOCATE_separate_options;
110 fra.me.line = 13;
111 fra.me.meth = LOCATE_separate_options___ToolContext___opt_cc_libs__eq;
112 fra.me.has_broke = 0;
113 fra.me.REG_size = 2;
114 fra.me.REG[0] = NIT_NULL;
115 fra.me.REG[1] = NIT_NULL;
116 fra.me.REG[0] = p0;
117 fra.me.REG[1] = p1;
118 /* ./separate_options.nit:13 */
119 ATTR_separate_options___ToolContext_____atopt_cc_libs(fra.me.REG[0]) = fra.me.REG[1];
120 stack_frame_head = fra.me.prev;
121 return;
122 }
123 val_t separate_options___ToolContext___opt_cc_include_paths(val_t p0){
124 struct {struct stack_frame_t me;} fra;
125 val_t REGB0;
126 val_t tmp;
127 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
128 fra.me.file = LOCATE_separate_options;
129 fra.me.line = 14;
130 fra.me.meth = LOCATE_separate_options___ToolContext___opt_cc_include_paths;
131 fra.me.has_broke = 0;
132 fra.me.REG_size = 1;
133 fra.me.REG[0] = NIT_NULL;
134 fra.me.REG[0] = p0;
135 /* ./separate_options.nit:14 */
136 REGB0 = TAG_Bool(ATTR_separate_options___ToolContext_____atopt_cc_include_paths(fra.me.REG[0])!=NIT_NULL);
137 if (UNTAG_Bool(REGB0)) {
138 } else {
139 nit_abort("Uninitialized attribute %s", "@opt_cc_include_paths", LOCATE_separate_options, 14);
140 }
141 fra.me.REG[0] = ATTR_separate_options___ToolContext_____atopt_cc_include_paths(fra.me.REG[0]);
142 stack_frame_head = fra.me.prev;
143 return fra.me.REG[0];
144 }
145 void separate_options___ToolContext___opt_cc_include_paths__eq(val_t p0, val_t p1){
146 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
147 val_t tmp;
148 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
149 fra.me.file = LOCATE_separate_options;
150 fra.me.line = 14;
151 fra.me.meth = LOCATE_separate_options___ToolContext___opt_cc_include_paths__eq;
152 fra.me.has_broke = 0;
153 fra.me.REG_size = 2;
154 fra.me.REG[0] = NIT_NULL;
155 fra.me.REG[1] = NIT_NULL;
156 fra.me.REG[0] = p0;
157 fra.me.REG[1] = p1;
158 /* ./separate_options.nit:14 */
159 ATTR_separate_options___ToolContext_____atopt_cc_include_paths(fra.me.REG[0]) = fra.me.REG[1];
160 stack_frame_head = fra.me.prev;
161 return;
162 }
163 void separate_options___ToolContext___init(val_t p0, int* init_table){
164 int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_mmloader___ToolContext].i;
165 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
166 val_t REGB0;
167 val_t tmp;
168 if (init_table[itpos0]) return;
169 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
170 fra.me.file = LOCATE_separate_options;
171 fra.me.line = 16;
172 fra.me.meth = LOCATE_separate_options___ToolContext___init;
173 fra.me.has_broke = 0;
174 fra.me.REG_size = 4;
175 fra.me.REG[0] = NIT_NULL;
176 fra.me.REG[1] = NIT_NULL;
177 fra.me.REG[2] = NIT_NULL;
178 fra.me.REG[3] = NIT_NULL;
179 fra.me.REG[0] = p0;
180 /* ./separate_options.nit:16 */
181 fra.me.REG[1] = fra.me.REG[0];
182 /* ./separate_options.nit:18 */
183 CALL_SUPER_separate_options___ToolContext___init(fra.me.REG[0])(fra.me.REG[0], init_table);
184 /* ./separate_options.nit:20 */
185 fra.me.REG[0] = CALL_separate_options___ToolContext___separate_options(fra.me.REG[1])(fra.me.REG[1]);
186 REGB0 = TAG_Int(0);
187 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
188 fra.me.REG[3] = CALL_separate_options___ToolContext___opt_cc_lib_paths(fra.me.REG[1])(fra.me.REG[1]);
189 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
190 CALL_opts___OptionContext___add_option(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
191 /* ./separate_options.nit:21 */
192 fra.me.REG[2] = CALL_separate_options___ToolContext___separate_options(fra.me.REG[1])(fra.me.REG[1]);
193 REGB0 = TAG_Int(0);
194 fra.me.REG[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
195 fra.me.REG[3] = CALL_separate_options___ToolContext___opt_cc_libs(fra.me.REG[1])(fra.me.REG[1]);
196 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[3]);
197 CALL_opts___OptionContext___add_option(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
198 /* ./separate_options.nit:22 */
199 fra.me.REG[0] = CALL_separate_options___ToolContext___separate_options(fra.me.REG[1])(fra.me.REG[1]);
200 REGB0 = TAG_Int(0);
201 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
202 fra.me.REG[1] = CALL_separate_options___ToolContext___opt_cc_include_paths(fra.me.REG[1])(fra.me.REG[1]);
203 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
204 CALL_opts___OptionContext___add_option(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
205 stack_frame_head = fra.me.prev;
206 init_table[itpos0] = 1;
207 return;
208 }
209 void separate_options___ToolContext___integrate_separate_options(val_t p0, val_t p1){
210 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
211 val_t REGB0;
212 val_t REGB1;
213 val_t tmp;
214 static val_t once_value_1; /* Once value */
215 static val_t once_value_2; /* Once value */
216 static val_t once_value_3; /* Once value */
217 static val_t once_value_4; /* Once value */
218 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
219 fra.me.file = LOCATE_separate_options;
220 fra.me.line = 25;
221 fra.me.meth = LOCATE_separate_options___ToolContext___integrate_separate_options;
222 fra.me.has_broke = 0;
223 fra.me.REG_size = 4;
224 fra.me.REG[0] = NIT_NULL;
225 fra.me.REG[1] = NIT_NULL;
226 fra.me.REG[2] = NIT_NULL;
227 fra.me.REG[3] = NIT_NULL;
228 fra.me.REG[0] = p0;
229 fra.me.REG[1] = p1;
230 /* ./separate_options.nit:27 */
231 fra.me.REG[2] = CALL_separate_options___ToolContext___separate_options(fra.me.REG[0])(fra.me.REG[0]);
232 REGB0 = TAG_Char(' ');
233 fra.me.REG[1] = CALL_standard___string_search___String___split_with(fra.me.REG[1])(fra.me.REG[1], REGB0);
234 CALL_opts___OptionContext___parse(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
235 /* ./separate_options.nit:28 */
236 fra.me.REG[1] = CALL_separate_options___ToolContext___separate_options(fra.me.REG[0])(fra.me.REG[0]);
237 fra.me.REG[1] = CALL_opts___OptionContext___rest(fra.me.REG[1])(fra.me.REG[1]);
238 /* ./../lib/standard//collection//array.nit:23 */
239 REGB0 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1])!=NIT_NULL);
240 if (UNTAG_Bool(REGB0)) {
241 } else {
242 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 23);
243 }
244 REGB0 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1]);
245 /* ./separate_options.nit:28 */
246 REGB1 = TAG_Int(0);
247 /* ./../lib/standard//kernel.nit:217 */
248 REGB1 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB1));
249 /* ./separate_options.nit:28 */
250 if (UNTAG_Bool(REGB1)) {
251 /* ./separate_options.nit:29 */
252 REGB1 = TAG_Int(5);
253 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
254 if (!once_value_1) {
255 fra.me.REG[2] = BOX_NativeString("module ");
256 REGB1 = TAG_Int(7);
257 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB1);
258 once_value_1 = fra.me.REG[2];
259 register_static_object(&once_value_1);
260 } else fra.me.REG[2] = once_value_1;
261 fra.me.REG[2] = fra.me.REG[2];
262 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
263 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
264 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
265 if (!once_value_2) {
266 fra.me.REG[2] = BOX_NativeString(" args file has unknown args: ");
267 REGB1 = TAG_Int(29);
268 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB1);
269 once_value_2 = fra.me.REG[2];
270 register_static_object(&once_value_2);
271 } else fra.me.REG[2] = once_value_2;
272 fra.me.REG[2] = fra.me.REG[2];
273 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
274 fra.me.REG[2] = CALL_separate_options___ToolContext___separate_options(fra.me.REG[0])(fra.me.REG[0]);
275 fra.me.REG[2] = CALL_opts___OptionContext___rest(fra.me.REG[2])(fra.me.REG[2]);
276 if (!once_value_3) {
277 fra.me.REG[3] = BOX_NativeString(", ");
278 REGB1 = TAG_Int(2);
279 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
280 once_value_3 = fra.me.REG[3];
281 register_static_object(&once_value_3);
282 } else fra.me.REG[3] = once_value_3;
283 fra.me.REG[3] = fra.me.REG[3];
284 fra.me.REG[3] = CALL_standard___string___Collection___join(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
285 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
286 if (!once_value_4) {
287 fra.me.REG[3] = BOX_NativeString("");
288 REGB1 = TAG_Int(0);
289 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
290 once_value_4 = fra.me.REG[3];
291 register_static_object(&once_value_4);
292 } else fra.me.REG[3] = once_value_4;
293 fra.me.REG[3] = fra.me.REG[3];
294 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
295 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
296 CALL_mmloader___ToolContext___warning(fra.me.REG[0])(fra.me.REG[0], NIT_NULL, fra.me.REG[1]);
297 }
298 /* ./separate_options.nit:32 */
299 fra.me.REG[1] = CALL_compiling___compiling_base___ToolContext___cc_lib_paths(fra.me.REG[0])(fra.me.REG[0]);
300 fra.me.REG[3] = CALL_separate_options___ToolContext___opt_cc_lib_paths(fra.me.REG[0])(fra.me.REG[0]);
301 fra.me.REG[3] = CALL_opts___Option___value(fra.me.REG[3])(fra.me.REG[3]);
302 CALL_standard___collection___abstract_collection___Sequence___append(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
303 /* ./separate_options.nit:33 */
304 fra.me.REG[3] = CALL_compiling___compiling_base___ToolContext___cc_libs(fra.me.REG[0])(fra.me.REG[0]);
305 fra.me.REG[1] = CALL_separate_options___ToolContext___opt_cc_libs(fra.me.REG[0])(fra.me.REG[0]);
306 fra.me.REG[1] = CALL_opts___Option___value(fra.me.REG[1])(fra.me.REG[1]);
307 CALL_standard___collection___abstract_collection___Sequence___append(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
308 /* ./separate_options.nit:34 */
309 fra.me.REG[1] = CALL_compiling___compiling_base___ToolContext___cc_include_paths(fra.me.REG[0])(fra.me.REG[0]);
310 fra.me.REG[0] = CALL_separate_options___ToolContext___opt_cc_include_paths(fra.me.REG[0])(fra.me.REG[0]);
311 fra.me.REG[0] = CALL_opts___Option___value(fra.me.REG[0])(fra.me.REG[0]);
312 CALL_standard___collection___abstract_collection___Sequence___append(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
313 stack_frame_head = fra.me.prev;
314 return;
315 }
316 void separate_options___MMSrcModule___compile_separate_module(val_t p0, val_t p1){
317 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
318 val_t REGB0;
319 val_t tmp;
320 static val_t once_value_1; /* Once value */
321 static val_t once_value_2; /* Once value */
322 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
323 fra.me.file = LOCATE_separate_options;
324 fra.me.line = 40;
325 fra.me.meth = LOCATE_separate_options___MMSrcModule___compile_separate_module;
326 fra.me.has_broke = 0;
327 fra.me.REG_size = 4;
328 fra.me.REG[0] = NIT_NULL;
329 fra.me.REG[1] = NIT_NULL;
330 fra.me.REG[2] = NIT_NULL;
331 fra.me.REG[3] = NIT_NULL;
332 fra.me.REG[0] = p0;
333 fra.me.REG[1] = p1;
334 /* ./separate_options.nit:40 */
335 fra.me.REG[2] = fra.me.REG[0];
336 fra.me.REG[3] = fra.me.REG[1];
337 /* ./separate_options.nit:42 */
338 CALL_SUPER_separate_options___MMSrcModule___compile_separate_module(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
339 /* ./separate_options.nit:45 */
340 REGB0 = TAG_Int(3);
341 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
342 if (!once_value_1) {
343 fra.me.REG[0] = BOX_NativeString("");
344 REGB0 = TAG_Int(0);
345 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
346 once_value_1 = fra.me.REG[0];
347 register_static_object(&once_value_1);
348 } else fra.me.REG[0] = once_value_1;
349 fra.me.REG[0] = fra.me.REG[0];
350 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
351 fra.me.REG[2] = CALL_metamodel___abstractmetamodel___MMModule___location(fra.me.REG[2])(fra.me.REG[2]);
352 fra.me.REG[2] = CALL_location___Location___file(fra.me.REG[2])(fra.me.REG[2]);
353 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
354 if (UNTAG_Bool(REGB0)) {
355 nit_abort("Reciever is null", NULL, LOCATE_separate_options, 45);
356 }
357 fra.me.REG[2] = CALL_location___SourceFile___filename(fra.me.REG[2])(fra.me.REG[2]);
358 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
359 if (!once_value_2) {
360 fra.me.REG[2] = BOX_NativeString(".args");
361 REGB0 = TAG_Int(5);
362 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
363 once_value_2 = fra.me.REG[2];
364 register_static_object(&once_value_2);
365 } else fra.me.REG[2] = once_value_2;
366 fra.me.REG[2] = fra.me.REG[2];
367 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
368 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
369 /* ./separate_options.nit:46 */
370 REGB0 = CALL_standard___file___String___file_exists(fra.me.REG[1])(fra.me.REG[1]);
371 if (UNTAG_Bool(REGB0)) {
372 /* ./separate_options.nit:47 */
373 fra.me.REG[1] = NEW_IFStream_standard___file___IFStream___open(fra.me.REG[1]);
374 /* ./separate_options.nit:48 */
375 fra.me.REG[2] = CALL_standard___stream___IStream___read_all(fra.me.REG[1])(fra.me.REG[1]);
376 /* ./separate_options.nit:49 */
377 CALL_standard___stream___IOS___close(fra.me.REG[1])(fra.me.REG[1]);
378 /* ./separate_options.nit:51 */
379 fra.me.REG[3] = CALL_compiling___compiling_base___CProgram___program(fra.me.REG[3])(fra.me.REG[3]);
380 fra.me.REG[3] = CALL_program___Program___tc(fra.me.REG[3])(fra.me.REG[3]);
381 CALL_separate_options___ToolContext___integrate_separate_options(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
382 }
383 stack_frame_head = fra.me.prev;
384 return;
385 }