1 /* This C file is generated by NIT to compile module separate_options. */
2 #include "separate_options._sep.h"
3 static const char LOCATE_separate_options___ToolContext___separate_options
[] = "separate_options::ToolContext::separate_options";
4 val_t
separate_options___ToolContext___separate_options(val_t p0
){
5 struct {struct stack_frame_t me
;} fra
;
8 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9 fra
.me
.file
= LOCATE_separate_options
;
11 fra
.me
.meth
= LOCATE_separate_options___ToolContext___separate_options
;
14 fra
.me
.nitni_local_ref_head
= NULL
;
15 fra
.me
.REG
[0] = NIT_NULL
;
17 /* separate_options.nit:28 */
18 REGB0
= TAG_Bool(ATTR_separate_options___ToolContext_____atseparate_options(fra
.me
.REG
[0])!=NIT_NULL
);
19 if (UNTAG_Bool(REGB0
)) {
21 nit_abort("Uninitialized attribute %s", "@separate_options", LOCATE_separate_options
, 28);
23 fra
.me
.REG
[0] = ATTR_separate_options___ToolContext_____atseparate_options(fra
.me
.REG
[0]);
24 stack_frame_head
= fra
.me
.prev
;
27 static const char LOCATE_separate_options___ToolContext___separate_options__eq
[] = "separate_options::ToolContext::separate_options=";
28 void separate_options___ToolContext___separate_options__eq(val_t p0
, val_t p1
){
29 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
31 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
32 fra
.me
.file
= LOCATE_separate_options
;
34 fra
.me
.meth
= LOCATE_separate_options___ToolContext___separate_options__eq
;
37 fra
.me
.nitni_local_ref_head
= NULL
;
38 fra
.me
.REG
[0] = NIT_NULL
;
39 fra
.me
.REG
[1] = NIT_NULL
;
42 /* separate_options.nit:28 */
43 ATTR_separate_options___ToolContext_____atseparate_options(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
44 stack_frame_head
= fra
.me
.prev
;
47 static const char LOCATE_separate_options___ToolContext___opt_cc_lib_paths
[] = "separate_options::ToolContext::opt_cc_lib_paths";
48 val_t
separate_options___ToolContext___opt_cc_lib_paths(val_t p0
){
49 struct {struct stack_frame_t me
;} fra
;
52 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
53 fra
.me
.file
= LOCATE_separate_options
;
55 fra
.me
.meth
= LOCATE_separate_options___ToolContext___opt_cc_lib_paths
;
58 fra
.me
.nitni_local_ref_head
= NULL
;
59 fra
.me
.REG
[0] = NIT_NULL
;
61 /* separate_options.nit:30 */
62 REGB0
= TAG_Bool(ATTR_separate_options___ToolContext_____atopt_cc_lib_paths(fra
.me
.REG
[0])!=NIT_NULL
);
63 if (UNTAG_Bool(REGB0
)) {
65 nit_abort("Uninitialized attribute %s", "@opt_cc_lib_paths", LOCATE_separate_options
, 30);
67 fra
.me
.REG
[0] = ATTR_separate_options___ToolContext_____atopt_cc_lib_paths(fra
.me
.REG
[0]);
68 stack_frame_head
= fra
.me
.prev
;
71 static const char LOCATE_separate_options___ToolContext___opt_cc_lib_paths__eq
[] = "separate_options::ToolContext::opt_cc_lib_paths=";
72 void separate_options___ToolContext___opt_cc_lib_paths__eq(val_t p0
, val_t p1
){
73 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
75 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
76 fra
.me
.file
= LOCATE_separate_options
;
78 fra
.me
.meth
= LOCATE_separate_options___ToolContext___opt_cc_lib_paths__eq
;
81 fra
.me
.nitni_local_ref_head
= NULL
;
82 fra
.me
.REG
[0] = NIT_NULL
;
83 fra
.me
.REG
[1] = NIT_NULL
;
86 /* separate_options.nit:30 */
87 ATTR_separate_options___ToolContext_____atopt_cc_lib_paths(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
88 stack_frame_head
= fra
.me
.prev
;
91 static const char LOCATE_separate_options___ToolContext___opt_cc_libs
[] = "separate_options::ToolContext::opt_cc_libs";
92 val_t
separate_options___ToolContext___opt_cc_libs(val_t p0
){
93 struct {struct stack_frame_t me
;} fra
;
96 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
97 fra
.me
.file
= LOCATE_separate_options
;
99 fra
.me
.meth
= LOCATE_separate_options___ToolContext___opt_cc_libs
;
100 fra
.me
.has_broke
= 0;
102 fra
.me
.nitni_local_ref_head
= NULL
;
103 fra
.me
.REG
[0] = NIT_NULL
;
105 /* separate_options.nit:31 */
106 REGB0
= TAG_Bool(ATTR_separate_options___ToolContext_____atopt_cc_libs(fra
.me
.REG
[0])!=NIT_NULL
);
107 if (UNTAG_Bool(REGB0
)) {
109 nit_abort("Uninitialized attribute %s", "@opt_cc_libs", LOCATE_separate_options
, 31);
111 fra
.me
.REG
[0] = ATTR_separate_options___ToolContext_____atopt_cc_libs(fra
.me
.REG
[0]);
112 stack_frame_head
= fra
.me
.prev
;
113 return fra
.me
.REG
[0];
115 static const char LOCATE_separate_options___ToolContext___opt_cc_libs__eq
[] = "separate_options::ToolContext::opt_cc_libs=";
116 void separate_options___ToolContext___opt_cc_libs__eq(val_t p0
, val_t p1
){
117 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
119 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
120 fra
.me
.file
= LOCATE_separate_options
;
122 fra
.me
.meth
= LOCATE_separate_options___ToolContext___opt_cc_libs__eq
;
123 fra
.me
.has_broke
= 0;
125 fra
.me
.nitni_local_ref_head
= NULL
;
126 fra
.me
.REG
[0] = NIT_NULL
;
127 fra
.me
.REG
[1] = NIT_NULL
;
130 /* separate_options.nit:31 */
131 ATTR_separate_options___ToolContext_____atopt_cc_libs(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
132 stack_frame_head
= fra
.me
.prev
;
135 static const char LOCATE_separate_options___ToolContext___opt_cc_include_paths
[] = "separate_options::ToolContext::opt_cc_include_paths";
136 val_t
separate_options___ToolContext___opt_cc_include_paths(val_t p0
){
137 struct {struct stack_frame_t me
;} fra
;
140 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
141 fra
.me
.file
= LOCATE_separate_options
;
143 fra
.me
.meth
= LOCATE_separate_options___ToolContext___opt_cc_include_paths
;
144 fra
.me
.has_broke
= 0;
146 fra
.me
.nitni_local_ref_head
= NULL
;
147 fra
.me
.REG
[0] = NIT_NULL
;
149 /* separate_options.nit:32 */
150 REGB0
= TAG_Bool(ATTR_separate_options___ToolContext_____atopt_cc_include_paths(fra
.me
.REG
[0])!=NIT_NULL
);
151 if (UNTAG_Bool(REGB0
)) {
153 nit_abort("Uninitialized attribute %s", "@opt_cc_include_paths", LOCATE_separate_options
, 32);
155 fra
.me
.REG
[0] = ATTR_separate_options___ToolContext_____atopt_cc_include_paths(fra
.me
.REG
[0]);
156 stack_frame_head
= fra
.me
.prev
;
157 return fra
.me
.REG
[0];
159 static const char LOCATE_separate_options___ToolContext___opt_cc_include_paths__eq
[] = "separate_options::ToolContext::opt_cc_include_paths=";
160 void separate_options___ToolContext___opt_cc_include_paths__eq(val_t p0
, val_t p1
){
161 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
163 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
164 fra
.me
.file
= LOCATE_separate_options
;
166 fra
.me
.meth
= LOCATE_separate_options___ToolContext___opt_cc_include_paths__eq
;
167 fra
.me
.has_broke
= 0;
169 fra
.me
.nitni_local_ref_head
= NULL
;
170 fra
.me
.REG
[0] = NIT_NULL
;
171 fra
.me
.REG
[1] = NIT_NULL
;
174 /* separate_options.nit:32 */
175 ATTR_separate_options___ToolContext_____atopt_cc_include_paths(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
176 stack_frame_head
= fra
.me
.prev
;
179 static const char LOCATE_separate_options___ToolContext___init
[] = "separate_options::ToolContext::(toolcontext::ToolContext::init)";
180 void separate_options___ToolContext___init(val_t p0
, int* init_table
){
181 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_toolcontext___ToolContext
].i
;
182 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
185 if (init_table
[itpos0
]) return;
186 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
187 fra
.me
.file
= LOCATE_separate_options
;
189 fra
.me
.meth
= LOCATE_separate_options___ToolContext___init
;
190 fra
.me
.has_broke
= 0;
192 fra
.me
.nitni_local_ref_head
= NULL
;
193 fra
.me
.REG
[0] = NIT_NULL
;
194 fra
.me
.REG
[1] = NIT_NULL
;
195 fra
.me
.REG
[2] = NIT_NULL
;
196 fra
.me
.REG
[3] = NIT_NULL
;
198 /* separate_options.nit:34 */
199 fra
.me
.REG
[1] = fra
.me
.REG
[0];
200 /* separate_options.nit:36 */
201 CALL_SUPER_separate_options___ToolContext___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
202 /* separate_options.nit:38 */
203 fra
.me
.REG
[0] = CALL_separate_options___ToolContext___separate_options(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
205 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
206 fra
.me
.REG
[3] = CALL_separate_options___ToolContext___opt_cc_lib_paths(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
207 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
208 CALL_opts___OptionContext___add_option(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
209 /* separate_options.nit:39 */
210 fra
.me
.REG
[2] = CALL_separate_options___ToolContext___separate_options(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
212 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
213 fra
.me
.REG
[3] = CALL_separate_options___ToolContext___opt_cc_libs(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
214 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
215 CALL_opts___OptionContext___add_option(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
216 /* separate_options.nit:40 */
217 fra
.me
.REG
[0] = CALL_separate_options___ToolContext___separate_options(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
219 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
220 fra
.me
.REG
[1] = CALL_separate_options___ToolContext___opt_cc_include_paths(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
221 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
222 CALL_opts___OptionContext___add_option(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
223 stack_frame_head
= fra
.me
.prev
;
224 init_table
[itpos0
] = 1;
227 static const char LOCATE_separate_options___ToolContext___integrate_separate_options
[] = "separate_options::ToolContext::integrate_separate_options";
228 void separate_options___ToolContext___integrate_separate_options(val_t p0
, val_t p1
, val_t p2
){
229 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
236 static val_t once_value_1
; /* Once value */
237 static val_t once_value_3
; /* Once value */
238 static val_t once_value_4
; /* Once value */
239 static val_t once_value_5
; /* Once value */
240 static val_t once_value_6
; /* Once value */
241 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
242 fra
.me
.file
= LOCATE_separate_options
;
244 fra
.me
.meth
= LOCATE_separate_options___ToolContext___integrate_separate_options
;
245 fra
.me
.has_broke
= 0;
247 fra
.me
.nitni_local_ref_head
= NULL
;
248 fra
.me
.REG
[0] = NIT_NULL
;
249 fra
.me
.REG
[1] = NIT_NULL
;
250 fra
.me
.REG
[2] = NIT_NULL
;
251 fra
.me
.REG
[3] = NIT_NULL
;
252 fra
.me
.REG
[4] = NIT_NULL
;
253 fra
.me
.REG
[5] = NIT_NULL
;
254 fra
.me
.REG
[6] = NIT_NULL
;
255 fra
.me
.REG
[7] = NIT_NULL
;
259 /* separate_options.nit:45 */
260 REGB0
= TAG_Char('\n');
261 fra
.me
.REG
[1] = CALL_standard___string_search___String___split_with(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
262 /* ../lib/standard/collection/array.nit:269 */
264 /* ../lib/standard/collection/array.nit:270 */
265 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
266 if (UNTAG_Bool(REGB1
)) {
268 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
270 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
271 /* ../lib/standard/collection/array.nit:271 */
272 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
273 /* ../lib/standard/collection/array.nit:272 */
275 /* ../lib/standard/collection/array.nit:24 */
276 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
277 if (UNTAG_Bool(REGB1
)) {
279 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
281 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
282 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
283 if (UNTAG_Bool(REGB2
)) {
285 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
287 /* ../lib/standard/kernel.nit:235 */
288 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
289 /* ../lib/standard/collection/array.nit:272 */
290 if (UNTAG_Bool(REGB1
)) {
291 /* ../lib/standard/collection/array.nit:273 */
292 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
293 if (UNTAG_Bool(REGB1
)) {
294 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
296 /* ../lib/standard/collection/array.nit:724 */
297 fra
.me
.REG
[4] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
298 /* separate_options.nit:46 */
300 fra
.me
.REG
[5] = BOX_NativeString("\n");
302 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB1
);
303 once_value_1
= fra
.me
.REG
[5];
304 register_static_object(&once_value_1
);
305 } else fra
.me
.REG
[5] = once_value_1
;
306 fra
.me
.REG
[5] = fra
.me
.REG
[5];
307 fra
.me
.REG
[5] = CALL_standard___file___String___strip_extension(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
308 fra
.me
.REG
[4] = fra
.me
.REG
[5];
309 /* separate_options.nit:47 */
310 fra
.me
.REG
[5] = CALL_separate_options___ToolContext___separate_options(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
311 REGB1
= TAG_Char(' ');
312 fra
.me
.REG
[4] = CALL_standard___string_search___String___split_with(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB1
);
313 CALL_opts___OptionContext___parse(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[4]);
314 /* separate_options.nit:48 */
315 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___init();
316 /* separate_options.nit:49 */
317 fra
.me
.REG
[5] = CALL_separate_options___ToolContext___separate_options(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
318 fra
.me
.REG
[5] = CALL_opts___OptionContext___rest(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
319 /* ../lib/standard/collection/array.nit:269 */
321 /* ../lib/standard/collection/array.nit:270 */
322 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
323 if (UNTAG_Bool(REGB2
)) {
325 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
327 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
328 /* ../lib/standard/collection/array.nit:271 */
329 fra
.me
.REG
[6] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
330 /* ../lib/standard/collection/array.nit:272 */
332 /* ../lib/standard/collection/array.nit:24 */
333 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
334 if (UNTAG_Bool(REGB2
)) {
336 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
338 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
339 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
340 if (UNTAG_Bool(REGB3
)) {
342 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
344 /* ../lib/standard/kernel.nit:235 */
345 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
346 /* ../lib/standard/collection/array.nit:272 */
347 if (UNTAG_Bool(REGB2
)) {
348 /* ../lib/standard/collection/array.nit:273 */
349 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
350 if (UNTAG_Bool(REGB2
)) {
351 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
353 /* ../lib/standard/collection/array.nit:724 */
354 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB1
)];
355 /* ../lib/standard/collection/array.nit:24 */
356 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[7])!=NIT_NULL
);
357 if (UNTAG_Bool(REGB2
)) {
359 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
361 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[7]);
362 /* separate_options.nit:49 */
364 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
365 if (UNTAG_Bool(REGB4
)) {
367 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
369 /* ../lib/standard/kernel.nit:237 */
370 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>UNTAG_Int(REGB3
));
371 /* separate_options.nit:49 */
372 if (UNTAG_Bool(REGB3
)) {
373 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[7]);
375 /* ../lib/standard/collection/array.nit:274 */
377 /* ../lib/standard/kernel.nit:238 */
378 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
379 /* ../lib/standard/collection/array.nit:274 */
382 /* ../lib/standard/collection/array.nit:272 */
387 /* ../lib/standard/collection/array.nit:24 */
388 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
389 if (UNTAG_Bool(REGB1
)) {
391 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
393 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
394 /* separate_options.nit:50 */
396 REGB2
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
397 if (UNTAG_Bool(REGB2
)) {
399 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
401 /* ../lib/standard/kernel.nit:237 */
402 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB3
));
403 /* separate_options.nit:50 */
404 if (UNTAG_Bool(REGB3
)) {
405 /* separate_options.nit:51 */
407 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB3
);
409 fra
.me
.REG
[5] = BOX_NativeString("module \"");
411 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB3
);
412 once_value_3
= fra
.me
.REG
[5];
413 register_static_object(&once_value_3
);
414 } else fra
.me
.REG
[5] = once_value_3
;
415 fra
.me
.REG
[5] = fra
.me
.REG
[5];
416 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
417 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
418 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
420 fra
.me
.REG
[5] = BOX_NativeString("\" args file has unknown args: ");
422 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB3
);
423 once_value_4
= fra
.me
.REG
[5];
424 register_static_object(&once_value_4
);
425 } else fra
.me
.REG
[5] = once_value_4
;
426 fra
.me
.REG
[5] = fra
.me
.REG
[5];
427 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
429 fra
.me
.REG
[5] = BOX_NativeString(", ");
431 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB3
);
432 once_value_5
= fra
.me
.REG
[5];
433 register_static_object(&once_value_5
);
434 } else fra
.me
.REG
[5] = once_value_5
;
435 fra
.me
.REG
[5] = fra
.me
.REG
[5];
436 fra
.me
.REG
[5] = CALL_standard___string___Collection___join(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
437 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
439 fra
.me
.REG
[5] = BOX_NativeString("");
441 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB3
);
442 once_value_6
= fra
.me
.REG
[5];
443 register_static_object(&once_value_6
);
444 } else fra
.me
.REG
[5] = once_value_6
;
445 fra
.me
.REG
[5] = fra
.me
.REG
[5];
446 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
447 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
448 CALL_toolcontext___ToolContext___error(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[6]);
450 /* ../lib/standard/collection/array.nit:274 */
452 /* ../lib/standard/kernel.nit:238 */
453 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
454 /* ../lib/standard/collection/array.nit:274 */
457 /* ../lib/standard/collection/array.nit:272 */
462 /* separate_options.nit:55 */
463 fra
.me
.REG
[2] = CALL_compiling___compiling_base___ToolContext___cc_lib_paths(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
464 fra
.me
.REG
[3] = CALL_separate_options___ToolContext___opt_cc_lib_paths(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
465 fra
.me
.REG
[3] = CALL_opts___Option___value(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
466 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
467 /* separate_options.nit:56 */
468 fra
.me
.REG
[3] = CALL_compiling___compiling_base___ToolContext___cc_libs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
469 fra
.me
.REG
[2] = CALL_separate_options___ToolContext___opt_cc_libs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
470 fra
.me
.REG
[2] = CALL_opts___Option___value(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
471 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
472 /* separate_options.nit:57 */
473 fra
.me
.REG
[2] = CALL_compiling___compiling_base___ToolContext___cc_include_paths(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
474 fra
.me
.REG
[0] = CALL_separate_options___ToolContext___opt_cc_include_paths(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
475 fra
.me
.REG
[0] = CALL_opts___Option___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
476 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
477 stack_frame_head
= fra
.me
.prev
;
480 static const char LOCATE_separate_options___MMSrcModule___compile_separate_module
[] = "separate_options::MMSrcModule::(compiling::MMModule::compile_separate_module)";
481 void separate_options___MMSrcModule___compile_separate_module(val_t p0
, val_t p1
){
482 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
485 static val_t once_value_1
; /* Once value */
486 static val_t once_value_2
; /* Once value */
487 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
488 fra
.me
.file
= LOCATE_separate_options
;
490 fra
.me
.meth
= LOCATE_separate_options___MMSrcModule___compile_separate_module
;
491 fra
.me
.has_broke
= 0;
493 fra
.me
.nitni_local_ref_head
= NULL
;
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
;
500 /* separate_options.nit:63 */
501 fra
.me
.REG
[2] = fra
.me
.REG
[0];
502 fra
.me
.REG
[3] = fra
.me
.REG
[1];
503 /* separate_options.nit:65 */
504 CALL_SUPER_separate_options___MMSrcModule___compile_separate_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
505 /* separate_options.nit:68 */
507 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
509 fra
.me
.REG
[0] = BOX_NativeString("");
511 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
512 once_value_1
= fra
.me
.REG
[0];
513 register_static_object(&once_value_1
);
514 } else fra
.me
.REG
[0] = once_value_1
;
515 fra
.me
.REG
[0] = fra
.me
.REG
[0];
516 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
517 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMModule___location(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
518 fra
.me
.REG
[0] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
519 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
520 if (UNTAG_Bool(REGB0
)) {
521 nit_abort("Reciever is null", NULL
, LOCATE_separate_options
, 68);
523 fra
.me
.REG
[0] = CALL_location___SourceFile___filename(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
524 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
526 fra
.me
.REG
[0] = BOX_NativeString(".args");
528 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
529 once_value_2
= fra
.me
.REG
[0];
530 register_static_object(&once_value_2
);
531 } else fra
.me
.REG
[0] = once_value_2
;
532 fra
.me
.REG
[0] = fra
.me
.REG
[0];
533 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
534 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
535 /* separate_options.nit:69 */
536 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
537 if (UNTAG_Bool(REGB0
)) {
538 /* separate_options.nit:70 */
539 fra
.me
.REG
[1] = NEW_IFStream_standard___file___IFStream___open(fra
.me
.REG
[1]);
540 /* separate_options.nit:71 */
541 fra
.me
.REG
[0] = CALL_standard___stream___IStream___read_all(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
542 /* separate_options.nit:72 */
543 CALL_standard___stream___IOS___close(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
544 /* separate_options.nit:74 */
545 fra
.me
.REG
[1] = CALL_compiling___compiling_base___CProgram___program(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
546 fra
.me
.REG
[1] = CALL_program___Program___tc(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
547 CALL_separate_options___ToolContext___integrate_separate_options(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[2]);
548 /* separate_options.nit:75 */
549 fra
.me
.REG
[3] = CALL_compiling___compiling_base___CProgram___program(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
550 fra
.me
.REG
[3] = CALL_program___Program___tc(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
551 CALL_toolcontext___ToolContext___check_errors(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
553 stack_frame_head
= fra
.me
.prev
;