1 #include "c_compiler_options.sep.0.h"
2 /* method c_compiler_options#ToolContext#c_compiler_options_phase for (self: ToolContext): Phase */
3 val
* c_compiler_options__ToolContext__c_compiler_options_phase(val
* self
) {
4 val
* var
/* : Phase */;
5 val
* var1
/* : Phase */;
6 var1
= self
->attrs
[COLOR_c_compiler_options__ToolContext___64dc_compiler_options_phase
].val
; /* @c_compiler_options_phase on <self:ToolContext> */
8 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @c_compiler_options_phase");
9 fprintf(stderr
, " (%s:%d)\n", "src/common_ffi/c_compiler_options.nit", 26);
16 /* method c_compiler_options#ToolContext#c_compiler_options_phase for (self: Object): Phase */
17 val
* VIRTUAL_c_compiler_options__ToolContext__c_compiler_options_phase(val
* self
) {
18 val
* var
/* : Phase */;
19 val
* var1
/* : Phase */;
20 var1
= c_compiler_options__ToolContext__c_compiler_options_phase(self
);
25 /* method c_compiler_options#ToolContext#c_compiler_options_phase= for (self: ToolContext, Phase) */
26 void c_compiler_options__ToolContext__c_compiler_options_phase_61d(val
* self
, val
* p0
) {
27 self
->attrs
[COLOR_c_compiler_options__ToolContext___64dc_compiler_options_phase
].val
= p0
; /* @c_compiler_options_phase on <self:ToolContext> */
30 /* method c_compiler_options#ToolContext#c_compiler_options_phase= for (self: Object, Phase) */
31 void VIRTUAL_c_compiler_options__ToolContext__c_compiler_options_phase_61d(val
* self
, val
* p0
) {
32 c_compiler_options__ToolContext__c_compiler_options_phase_61d(self
, p0
);
35 /* method c_compiler_options#CCompilerOptionsPhase#compiler_annotation_name for (self: CCompilerOptionsPhase): String */
36 val
* c_compiler_options__CCompilerOptionsPhase__compiler_annotation_name(val
* self
) {
37 val
* var
/* : String */;
39 val
* var1
/* : String */;
40 char* var2
/* : NativeString */;
41 long var3
/* : Int */;
42 val
* var4
/* : String */;
46 var2
= "c_compiler_option";
48 var4
= string__NativeString__to_s_with_length(var2
, var3
);
57 /* method c_compiler_options#CCompilerOptionsPhase#compiler_annotation_name for (self: Object): String */
58 val
* VIRTUAL_c_compiler_options__CCompilerOptionsPhase__compiler_annotation_name(val
* self
) {
59 val
* var
/* : String */;
60 val
* var1
/* : String */;
61 var1
= c_compiler_options__CCompilerOptionsPhase__compiler_annotation_name(self
);
66 /* method c_compiler_options#CCompilerOptionsPhase#linker_annotation_name for (self: CCompilerOptionsPhase): String */
67 val
* c_compiler_options__CCompilerOptionsPhase__linker_annotation_name(val
* self
) {
68 val
* var
/* : String */;
70 val
* var1
/* : String */;
71 char* var2
/* : NativeString */;
72 long var3
/* : Int */;
73 val
* var4
/* : String */;
77 var2
= "c_linker_option";
79 var4
= string__NativeString__to_s_with_length(var2
, var3
);
88 /* method c_compiler_options#CCompilerOptionsPhase#linker_annotation_name for (self: Object): String */
89 val
* VIRTUAL_c_compiler_options__CCompilerOptionsPhase__linker_annotation_name(val
* self
) {
90 val
* var
/* : String */;
91 val
* var1
/* : String */;
92 var1
= c_compiler_options__CCompilerOptionsPhase__linker_annotation_name(self
);
97 /* method c_compiler_options#CCompilerOptionsPhase#cpp_compiler_annotation_name for (self: CCompilerOptionsPhase): String */
98 val
* c_compiler_options__CCompilerOptionsPhase__cpp_compiler_annotation_name(val
* self
) {
99 val
* var
/* : String */;
101 val
* var1
/* : String */;
102 char* var2
/* : NativeString */;
103 long var3
/* : Int */;
104 val
* var4
/* : String */;
108 var2
= "cpp_compiler_option";
110 var4
= string__NativeString__to_s_with_length(var2
, var3
);
119 /* method c_compiler_options#CCompilerOptionsPhase#cpp_compiler_annotation_name for (self: Object): String */
120 val
* VIRTUAL_c_compiler_options__CCompilerOptionsPhase__cpp_compiler_annotation_name(val
* self
) {
121 val
* var
/* : String */;
122 val
* var1
/* : String */;
123 var1
= c_compiler_options__CCompilerOptionsPhase__cpp_compiler_annotation_name(self
);
128 /* method c_compiler_options#CCompilerOptionsPhase#process_annotated_node for (self: CCompilerOptionsPhase, ANode, AAnnotation) */
129 void c_compiler_options__CCompilerOptionsPhase__process_annotated_node(val
* self
, val
* p0
, val
* p1
) {
130 val
* var_nmoduledecl
/* var nmoduledecl: ANode */;
131 val
* var_nat
/* var nat: AAnnotation */;
132 val
* var
/* : AAtid */;
133 val
* var1
/* : Token */;
134 val
* var2
/* : String */;
135 val
* var_annotation_name
/* var annotation_name: String */;
136 short int var3
/* : Bool */;
137 short int var4
/* : Bool */;
138 val
* var5
/* : String */;
139 short int var6
/* : Bool */;
140 short int var_
/* var : Bool */;
141 val
* var7
/* : String */;
142 short int var8
/* : Bool */;
143 short int var_9
/* var : Bool */;
144 val
* var10
/* : String */;
145 short int var11
/* : Bool */;
146 val
* var12
/* : ToolContext */;
147 val
* var13
/* : ModelBuilder */;
148 val
* var_modelbuilder
/* var modelbuilder: ModelBuilder */;
149 short int var14
/* : Bool */;
152 short int var15
/* : Bool */;
154 val
* var16
/* : String */;
155 char* var17
/* : NativeString */;
156 long var18
/* : Int */;
157 val
* var19
/* : String */;
158 static val
* varonce20
;
159 val
* var21
/* : String */;
160 char* var22
/* : NativeString */;
161 long var23
/* : Int */;
162 val
* var24
/* : String */;
163 val
* var25
/* : Array[Object] */;
164 long var26
/* : Int */;
165 val
* var27
/* : NativeArray[Object] */;
166 val
* var28
/* : String */;
167 val
* var29
/* : ANodes[AAtArg] */;
168 val
* var_args
/* var args: ANodes[AAtArg] */;
169 short int var30
/* : Bool */;
170 static val
* varonce31
;
171 val
* var32
/* : String */;
172 char* var33
/* : NativeString */;
173 long var34
/* : Int */;
174 val
* var35
/* : String */;
175 static val
* varonce36
;
176 val
* var37
/* : String */;
177 char* var38
/* : NativeString */;
178 long var39
/* : Int */;
179 val
* var40
/* : String */;
180 val
* var41
/* : Array[Object] */;
181 long var42
/* : Int */;
182 val
* var43
/* : NativeArray[Object] */;
183 val
* var44
/* : String */;
184 val
* var45
/* : Array[CCompilerOption] */;
185 val
* var_options
/* var options: Array[CCompilerOption] */;
186 val
* var46
/* : Iterator[nullable Object] */;
187 short int var47
/* : Bool */;
188 val
* var48
/* : nullable Object */;
189 val
* var_arg
/* var arg: AAtArg */;
190 short int var49
/* : Bool */;
193 short int var52
/* : Bool */;
194 static val
* varonce53
;
195 val
* var54
/* : String */;
196 char* var55
/* : NativeString */;
197 long var56
/* : Int */;
198 val
* var57
/* : String */;
199 static val
* varonce58
;
200 val
* var59
/* : String */;
201 char* var60
/* : NativeString */;
202 long var61
/* : Int */;
203 val
* var62
/* : String */;
204 val
* var63
/* : Array[Object] */;
205 long var64
/* : Int */;
206 val
* var65
/* : NativeArray[Object] */;
207 val
* var66
/* : String */;
208 val
* var67
/* : AExpr */;
209 val
* var_expr
/* var expr: AExpr */;
210 short int var68
/* : Bool */;
213 val
* var71
/* : String */;
214 val
* var_text
/* var text: String */;
215 long var72
/* : Int */;
216 long var73
/* : Int */;
217 long var74
/* : Int */;
218 long var75
/* : Int */;
219 long var77
/* : Int */;
220 val
* var78
/* : String */;
221 val
* var79
/* : DirectCCompilerOption */;
222 val
* var_opt
/* var opt: DirectCCompilerOption */;
223 short int var80
/* : Bool */;
226 val
* var83
/* : AExprs */;
227 val
* var84
/* : Array[AExpr] */;
228 val
* var_exec_args
/* var exec_args: Array[AExpr] */;
229 short int var85
/* : Bool */;
230 val
* var86
/* : TId */;
231 val
* var87
/* : String */;
232 static val
* varonce88
;
233 val
* var89
/* : String */;
234 char* var90
/* : NativeString */;
235 long var91
/* : Int */;
236 val
* var92
/* : String */;
237 short int var93
/* : Bool */;
238 short int var_94
/* var : Bool */;
239 short int var95
/* : Bool */;
240 static val
* varonce96
;
241 val
* var97
/* : String */;
242 char* var98
/* : NativeString */;
243 long var99
/* : Int */;
244 val
* var100
/* : String */;
245 static val
* varonce101
;
246 val
* var102
/* : String */;
247 char* var103
/* : NativeString */;
248 long var104
/* : Int */;
249 val
* var105
/* : String */;
250 val
* var106
/* : Array[Object] */;
251 long var107
/* : Int */;
252 val
* var108
/* : NativeArray[Object] */;
253 val
* var109
/* : String */;
254 val
* var110
/* : Array[String] */;
255 val
* var_exec_args_as_strings
/* var exec_args_as_strings: Array[String] */;
256 val
* var111
/* : Iterator[nullable Object] */;
257 short int var112
/* : Bool */;
258 val
* var113
/* : nullable Object */;
259 val
* var_exec_arg
/* var exec_arg: AExpr */;
260 short int var114
/* : Bool */;
263 short int var117
/* : Bool */;
264 static val
* varonce118
;
265 val
* var119
/* : String */;
266 char* var120
/* : NativeString */;
267 long var121
/* : Int */;
268 val
* var122
/* : String */;
269 val
* var123
/* : String */;
270 val
* var_arg_string
/* var arg_string: String */;
271 long var124
/* : Int */;
272 long var125
/* : Int */;
273 long var126
/* : Int */;
274 long var127
/* : Int */;
275 long var129
/* : Int */;
276 val
* var130
/* : String */;
277 val
* var131
/* : ExecCCompilerOption */;
278 val
* var_opt132
/* var opt: ExecCCompilerOption */;
279 static val
* varonce133
;
280 val
* var134
/* : String */;
281 char* var135
/* : NativeString */;
282 long var136
/* : Int */;
283 val
* var137
/* : String */;
284 static val
* varonce138
;
285 val
* var139
/* : String */;
286 char* var140
/* : NativeString */;
287 long var141
/* : Int */;
288 val
* var142
/* : String */;
289 val
* var143
/* : Array[Object] */;
290 long var144
/* : Int */;
291 val
* var145
/* : NativeArray[Object] */;
292 val
* var146
/* : String */;
293 val
* var148
/* : Array[DirectCCompilerOption] */;
294 val
* var_simplified_options
/* var simplified_options: Array[DirectCCompilerOption] */;
295 val
* var149
/* : Iterator[nullable Object] */;
296 short int var150
/* : Bool */;
297 val
* var151
/* : nullable Object */;
298 val
* var_opt152
/* var opt: CCompilerOption */;
299 short int var153
/* : Bool */;
302 val
* var156
/* : Array[String] */;
303 val
* var_cmd_args
/* var cmd_args: Array[String] */;
304 long var157
/* : Int */;
305 long var158
/* : Int */;
306 short int var159
/* : Bool */;
307 short int var161
/* : Bool */;
308 val
* var162
/* : IProcess */;
309 long var163
/* : Int */;
310 val
* var164
/* : nullable Object */;
311 val
* var165
/* : Array[String] */;
312 val
* var_proc
/* var proc: nullable Object */;
313 long var166
/* : Int */;
314 long var167
/* : Int */;
315 short int var168
/* : Bool */;
316 short int var170
/* : Bool */;
319 const char* var_class_name
;
320 short int var173
/* : Bool */;
321 long var174
/* : Int */;
322 long var175
/* : Int */;
323 long var176
/* : Int */;
324 long var177
/* : Int */;
325 long var179
/* : Int */;
326 val
* var180
/* : Array[nullable Object] */;
327 val
* var_rest_args
/* var rest_args: Array[String] */;
328 val
* var181
/* : IProcess */;
329 long var182
/* : Int */;
330 val
* var183
/* : nullable Object */;
331 long var184
/* : Int */;
332 long var_status
/* var status: Int */;
333 long var185
/* : Int */;
334 short int var186
/* : Bool */;
335 short int var188
/* : Bool */;
336 short int var189
/* : Bool */;
337 val
* var190
/* : ACallExpr */;
338 static val
* varonce191
;
339 val
* var192
/* : String */;
340 char* var193
/* : NativeString */;
341 long var194
/* : Int */;
342 val
* var195
/* : String */;
343 static val
* varonce196
;
344 val
* var197
/* : String */;
345 char* var198
/* : NativeString */;
346 long var199
/* : Int */;
347 val
* var200
/* : String */;
348 val
* var201
/* : Array[Object] */;
349 long var202
/* : Int */;
350 val
* var203
/* : NativeArray[Object] */;
351 val
* var204
/* : String */;
352 val
* var205
/* : String */;
353 static val
* varonce206
;
354 val
* var207
/* : String */;
355 char* var208
/* : NativeString */;
356 long var209
/* : Int */;
357 val
* var210
/* : String */;
358 static val
* varonce211
;
359 val
* var212
/* : String */;
360 char* var213
/* : NativeString */;
361 long var214
/* : Int */;
362 val
* var215
/* : String */;
363 val
* var216
/* : String */;
364 val
* var_result
/* var result: String */;
365 short int var217
/* : Bool */;
366 val
* var218
/* : ACallExpr */;
367 static val
* varonce219
;
368 val
* var220
/* : String */;
369 char* var221
/* : NativeString */;
370 long var222
/* : Int */;
371 val
* var223
/* : String */;
372 val
* var224
/* : DirectCCompilerOption */;
373 short int var225
/* : Bool */;
376 val
* var229
/* : nullable ANode */;
377 short int var230
/* : Bool */;
380 const char* var_class_name233
;
381 val
* var_nmodule
/* var nmodule: AModule */;
382 val
* var234
/* : Iterator[nullable Object] */;
383 short int var235
/* : Bool */;
384 val
* var236
/* : nullable Object */;
385 val
* var_opt237
/* var opt: DirectCCompilerOption */;
386 val
* var238
/* : String */;
387 val
* var_cmd
/* var cmd: String */;
388 val
* var239
/* : String */;
389 short int var240
/* : Bool */;
390 val
* var241
/* : String */;
391 short int var242
/* : Bool */;
392 val
* var243
/* : String */;
393 short int var244
/* : Bool */;
394 var_nmoduledecl
= p0
;
396 var
= ((val
* (*)(val
*))(var_nat
->class->vft
[COLOR_parser_nodes__AAnnotation__n_atid
]))(var_nat
) /* n_atid on <var_nat:AAnnotation>*/;
397 var1
= ((val
* (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__AAtid__n_id
]))(var
) /* n_id on <var:AAtid>*/;
398 var2
= ((val
* (*)(val
*))(var1
->class->vft
[COLOR_parser_nodes__Token__text
]))(var1
) /* text on <var1:Token>*/;
399 var_annotation_name
= var2
;
400 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__compiler_annotation_name
]))(self
) /* compiler_annotation_name on <self:CCompilerOptionsPhase>*/;
401 var6
= ((short int (*)(val
*, val
*))(var_annotation_name
->class->vft
[COLOR_kernel__Object___33d_61d
]))(var_annotation_name
, var5
) /* != on <var_annotation_name:String>*/;
404 var7
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__linker_annotation_name
]))(self
) /* linker_annotation_name on <self:CCompilerOptionsPhase>*/;
405 var8
= ((short int (*)(val
*, val
*))(var_annotation_name
->class->vft
[COLOR_kernel__Object___33d_61d
]))(var_annotation_name
, var7
) /* != on <var_annotation_name:String>*/;
412 var10
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__cpp_compiler_annotation_name
]))(self
) /* cpp_compiler_annotation_name on <self:CCompilerOptionsPhase>*/;
413 var11
= ((short int (*)(val
*, val
*))(var_annotation_name
->class->vft
[COLOR_kernel__Object___33d_61d
]))(var_annotation_name
, var10
) /* != on <var_annotation_name:String>*/;
422 var12
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_phase__Phase__toolcontext
]))(self
) /* toolcontext on <self:CCompilerOptionsPhase>*/;
423 var13
= ((val
* (*)(val
*))(var12
->class->vft
[COLOR_modelbuilder__ToolContext__modelbuilder
]))(var12
) /* modelbuilder on <var12:ToolContext>*/;
424 var_modelbuilder
= var13
;
425 /* <var_nmoduledecl:ANode> isa AModuledecl */
426 cltype
= type_parser_nodes__AModuledecl
.color
;
427 idtype
= type_parser_nodes__AModuledecl
.id
;
428 if(cltype
>= var_nmoduledecl
->type
->table_size
) {
431 var14
= var_nmoduledecl
->type
->type_table
[cltype
] == idtype
;
438 var17
= "Syntax error: only the declaration of modules may use \"";
440 var19
= string__NativeString__to_s_with_length(var17
, var18
);
449 var24
= string__NativeString__to_s_with_length(var22
, var23
);
453 var25
= NEW_array__Array(&type_array__Arraykernel__Object
);
454 { /* var25 = array_instance Array[Object] */
456 var27
= NEW_array__NativeArray(var26
, &type_array__NativeArraykernel__Object
);
457 ((struct instance_array__NativeArray
*)var27
)->values
[0] = (val
*) var16
;
458 ((struct instance_array__NativeArray
*)var27
)->values
[1] = (val
*) var_annotation_name
;
459 ((struct instance_array__NativeArray
*)var27
)->values
[2] = (val
*) var21
;
460 ((void (*)(val
*, val
*, long))(var25
->class->vft
[COLOR_array__Array__with_native
]))(var25
, var27
, var26
) /* with_native on <var25:Array[Object]>*/;
462 var28
= ((val
* (*)(val
*))(var25
->class->vft
[COLOR_string__Object__to_s
]))(var25
) /* to_s on <var25:Array[Object]>*/;
463 ((void (*)(val
*, val
*, val
*))(var_modelbuilder
->class->vft
[COLOR_modelbuilder__ModelBuilder__error
]))(var_modelbuilder
, var_nat
, var28
) /* error on <var_modelbuilder:ModelBuilder>*/;
467 var29
= ((val
* (*)(val
*))(var_nat
->class->vft
[COLOR_parser_nodes__AAnnotation__n_args
]))(var_nat
) /* n_args on <var_nat:AAnnotation>*/;
469 var30
= ((short int (*)(val
*))(var_args
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var_args
) /* is_empty on <var_args:ANodes[AAtArg]>*/;
474 var33
= "Syntax error: \"";
476 var35
= string__NativeString__to_s_with_length(var33
, var34
);
483 var38
= "\" expects at least one argument.";
485 var40
= string__NativeString__to_s_with_length(var38
, var39
);
489 var41
= NEW_array__Array(&type_array__Arraykernel__Object
);
490 { /* var41 = array_instance Array[Object] */
492 var43
= NEW_array__NativeArray(var42
, &type_array__NativeArraykernel__Object
);
493 ((struct instance_array__NativeArray
*)var43
)->values
[0] = (val
*) var32
;
494 ((struct instance_array__NativeArray
*)var43
)->values
[1] = (val
*) var_annotation_name
;
495 ((struct instance_array__NativeArray
*)var43
)->values
[2] = (val
*) var37
;
496 ((void (*)(val
*, val
*, long))(var41
->class->vft
[COLOR_array__Array__with_native
]))(var41
, var43
, var42
) /* with_native on <var41:Array[Object]>*/;
498 var44
= ((val
* (*)(val
*))(var41
->class->vft
[COLOR_string__Object__to_s
]))(var41
) /* to_s on <var41:Array[Object]>*/;
499 ((void (*)(val
*, val
*, val
*))(var_modelbuilder
->class->vft
[COLOR_modelbuilder__ModelBuilder__error
]))(var_modelbuilder
, var_nat
, var44
) /* error on <var_modelbuilder:ModelBuilder>*/;
503 var45
= NEW_array__Array(&type_array__Arrayc_compiler_options__CCompilerOption
);
504 ((void (*)(val
*))(var45
->class->vft
[COLOR_array__Array__init
]))(var45
) /* init on <var45:Array[CCompilerOption]>*/;
506 var46
= ((val
* (*)(val
*))(var_args
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_args
) /* iterator on <var_args:ANodes[AAtArg]>*/;
508 var47
= ((short int (*)(val
*))(var46
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var46
) /* is_ok on <var46:Iterator[nullable Object]>*/;
510 var48
= ((val
* (*)(val
*))(var46
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var46
) /* item on <var46:Iterator[nullable Object]>*/;
512 /* <var_arg:AAtArg> isa AExprAtArg */
513 cltype50
= type_parser_nodes__AExprAtArg
.color
;
514 idtype51
= type_parser_nodes__AExprAtArg
.id
;
515 if(cltype50
>= var_arg
->type
->table_size
) {
518 var49
= var_arg
->type
->type_table
[cltype50
] == idtype51
;
525 var55
= "Syntax error: \"";
527 var57
= string__NativeString__to_s_with_length(var55
, var56
);
534 var60
= "\" expects its arguments to be the name of the package as String literals or a call to `exex(\"local_program\")`.";
536 var62
= string__NativeString__to_s_with_length(var60
, var61
);
540 var63
= NEW_array__Array(&type_array__Arraykernel__Object
);
541 { /* var63 = array_instance Array[Object] */
543 var65
= NEW_array__NativeArray(var64
, &type_array__NativeArraykernel__Object
);
544 ((struct instance_array__NativeArray
*)var65
)->values
[0] = (val
*) var54
;
545 ((struct instance_array__NativeArray
*)var65
)->values
[1] = (val
*) var_annotation_name
;
546 ((struct instance_array__NativeArray
*)var65
)->values
[2] = (val
*) var59
;
547 ((void (*)(val
*, val
*, long))(var63
->class->vft
[COLOR_array__Array__with_native
]))(var63
, var65
, var64
) /* with_native on <var63:Array[Object]>*/;
549 var66
= ((val
* (*)(val
*))(var63
->class->vft
[COLOR_string__Object__to_s
]))(var63
) /* to_s on <var63:Array[Object]>*/;
550 ((void (*)(val
*, val
*, val
*))(var_modelbuilder
->class->vft
[COLOR_modelbuilder__ModelBuilder__error
]))(var_modelbuilder
, var_nat
, var66
) /* error on <var_modelbuilder:ModelBuilder>*/;
554 var67
= ((val
* (*)(val
*))(var_arg
->class->vft
[COLOR_parser_nodes__AExprAtArg__n_expr
]))(var_arg
) /* n_expr on <var_arg:AAtArg(AExprAtArg)>*/;
556 /* <var_expr:AExpr> isa AStringFormExpr */
557 cltype69
= type_parser_nodes__AStringFormExpr
.color
;
558 idtype70
= type_parser_nodes__AStringFormExpr
.id
;
559 if(cltype69
>= var_expr
->type
->table_size
) {
562 var68
= var_expr
->type
->type_table
[cltype69
] == idtype70
;
565 var71
= ((val
* (*)(val
*))(var_expr
->class->vft
[COLOR_modelize_property__Prod__collect_text
]))(var_expr
) /* collect_text on <var_expr:AExpr(AStringFormExpr)>*/;
568 var73
= ((long (*)(val
*))(var_text
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_text
) /* length on <var_text:String>*/;
570 { /* Inline kernel#Int#- (var73,var74) */
571 var77
= var73
- var74
;
576 var78
= ((val
* (*)(val
*, long, long))(var_text
->class->vft
[COLOR_string__AbstractString__substring
]))(var_text
, var72
, var75
) /* substring on <var_text:String>*/;
578 var79
= NEW_c_compiler_options__DirectCCompilerOption(&type_c_compiler_options__DirectCCompilerOption
);
579 ((void (*)(val
*, val
*))(var79
->class->vft
[COLOR_c_compiler_options__DirectCCompilerOption__init
]))(var79
, var_text
) /* init on <var79:DirectCCompilerOption>*/;
581 ((void (*)(val
*, val
*))(var_options
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_options
, var_opt
) /* add on <var_options:Array[CCompilerOption]>*/;
583 /* <var_expr:AExpr> isa ACallExpr */
584 cltype81
= type_parser_nodes__ACallExpr
.color
;
585 idtype82
= type_parser_nodes__ACallExpr
.id
;
586 if(cltype81
>= var_expr
->type
->table_size
) {
589 var80
= var_expr
->type
->type_table
[cltype81
] == idtype82
;
592 var83
= ((val
* (*)(val
*))(var_expr
->class->vft
[COLOR_parser_nodes__ACallFormExpr__n_args
]))(var_expr
) /* n_args on <var_expr:AExpr(ACallExpr)>*/;
593 var84
= ((val
* (*)(val
*))(var83
->class->vft
[COLOR_typing__AExprs__to_a
]))(var83
) /* to_a on <var83:AExprs>*/;
594 var_exec_args
= var84
;
595 var86
= ((val
* (*)(val
*))(var_expr
->class->vft
[COLOR_parser_nodes__ACallFormExpr__n_id
]))(var_expr
) /* n_id on <var_expr:AExpr(ACallExpr)>*/;
596 var87
= ((val
* (*)(val
*))(var86
->class->vft
[COLOR_parser_nodes__Token__text
]))(var86
) /* text on <var86:TId>*/;
602 var92
= string__NativeString__to_s_with_length(var90
, var91
);
606 var93
= ((short int (*)(val
*, val
*))(var87
->class->vft
[COLOR_kernel__Object___33d_61d
]))(var87
, var89
) /* != on <var87:String>*/;
611 var95
= ((short int (*)(val
*))(var_exec_args
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var_exec_args
) /* is_empty on <var_exec_args:Array[AExpr]>*/;
618 var98
= "Syntax error: \"";
620 var100
= string__NativeString__to_s_with_length(var98
, var99
);
627 var103
= "\" accepts only calls to `exec` with the command as arguments.";
629 var105
= string__NativeString__to_s_with_length(var103
, var104
);
633 var106
= NEW_array__Array(&type_array__Arraykernel__Object
);
634 { /* var106 = array_instance Array[Object] */
636 var108
= NEW_array__NativeArray(var107
, &type_array__NativeArraykernel__Object
);
637 ((struct instance_array__NativeArray
*)var108
)->values
[0] = (val
*) var97
;
638 ((struct instance_array__NativeArray
*)var108
)->values
[1] = (val
*) var_annotation_name
;
639 ((struct instance_array__NativeArray
*)var108
)->values
[2] = (val
*) var102
;
640 ((void (*)(val
*, val
*, long))(var106
->class->vft
[COLOR_array__Array__with_native
]))(var106
, var108
, var107
) /* with_native on <var106:Array[Object]>*/;
642 var109
= ((val
* (*)(val
*))(var106
->class->vft
[COLOR_string__Object__to_s
]))(var106
) /* to_s on <var106:Array[Object]>*/;
643 ((void (*)(val
*, val
*, val
*))(var_modelbuilder
->class->vft
[COLOR_modelbuilder__ModelBuilder__error
]))(var_modelbuilder
, var_nat
, var109
) /* error on <var_modelbuilder:ModelBuilder>*/;
647 var110
= NEW_array__Array(&type_array__Arraystring__String
);
648 ((void (*)(val
*))(var110
->class->vft
[COLOR_array__Array__init
]))(var110
) /* init on <var110:Array[String]>*/;
649 var_exec_args_as_strings
= var110
;
650 var111
= ((val
* (*)(val
*))(var_exec_args
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_exec_args
) /* iterator on <var_exec_args:Array[AExpr]>*/;
652 var112
= ((short int (*)(val
*))(var111
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var111
) /* is_ok on <var111:Iterator[nullable Object]>*/;
654 var113
= ((val
* (*)(val
*))(var111
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var111
) /* item on <var111:Iterator[nullable Object]>*/;
655 var_exec_arg
= var113
;
656 /* <var_exec_arg:AExpr> isa AStringFormExpr */
657 cltype115
= type_parser_nodes__AStringFormExpr
.color
;
658 idtype116
= type_parser_nodes__AStringFormExpr
.id
;
659 if(cltype115
>= var_exec_arg
->type
->table_size
) {
662 var114
= var_exec_arg
->type
->type_table
[cltype115
] == idtype116
;
669 var120
= "Syntax error: calls to `exec` expects the arguments to be String literals.";
671 var122
= string__NativeString__to_s_with_length(var120
, var121
);
675 ((void (*)(val
*, val
*, val
*))(var_modelbuilder
->class->vft
[COLOR_modelbuilder__ModelBuilder__error
]))(var_modelbuilder
, var_nat
, var119
) /* error on <var_modelbuilder:ModelBuilder>*/;
678 var123
= ((val
* (*)(val
*))(var_exec_arg
->class->vft
[COLOR_modelize_property__Prod__collect_text
]))(var_exec_arg
) /* collect_text on <var_exec_arg:AExpr(AStringFormExpr)>*/;
679 var_arg_string
= var123
;
681 var125
= ((long (*)(val
*))(var_arg_string
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_arg_string
) /* length on <var_arg_string:String>*/;
683 { /* Inline kernel#Int#- (var125,var126) */
684 var129
= var125
- var126
;
687 RET_LABEL128
:(void)0;
689 var130
= ((val
* (*)(val
*, long, long))(var_arg_string
->class->vft
[COLOR_string__AbstractString__substring
]))(var_arg_string
, var124
, var127
) /* substring on <var_arg_string:String>*/;
690 var_arg_string
= var130
;
691 ((void (*)(val
*, val
*))(var_exec_args_as_strings
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_exec_args_as_strings
, var_arg_string
) /* add on <var_exec_args_as_strings:Array[String]>*/;
693 CONTINUE_label
: (void)0;
694 ((void (*)(val
*))(var111
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var111
) /* next on <var111:Iterator[nullable Object]>*/;
696 BREAK_label
: (void)0;
697 var131
= NEW_c_compiler_options__ExecCCompilerOption(&type_c_compiler_options__ExecCCompilerOption
);
698 ((void (*)(val
*, val
*, val
*))(var131
->class->vft
[COLOR_c_compiler_options__ExecCCompilerOption__init
]))(var131
, var_exec_args_as_strings
, var_expr
) /* init on <var131:ExecCCompilerOption>*/;
700 ((void (*)(val
*, val
*))(var_options
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_options
, var_opt132
) /* add on <var_options:Array[CCompilerOption]>*/;
705 var135
= "Syntax error: \"";
707 var137
= string__NativeString__to_s_with_length(var135
, var136
);
714 var140
= "\" expects its arguments to be the name of the package as String literals.";
716 var142
= string__NativeString__to_s_with_length(var140
, var141
);
720 var143
= NEW_array__Array(&type_array__Arraykernel__Object
);
721 { /* var143 = array_instance Array[Object] */
723 var145
= NEW_array__NativeArray(var144
, &type_array__NativeArraykernel__Object
);
724 ((struct instance_array__NativeArray
*)var145
)->values
[0] = (val
*) var134
;
725 ((struct instance_array__NativeArray
*)var145
)->values
[1] = (val
*) var_annotation_name
;
726 ((struct instance_array__NativeArray
*)var145
)->values
[2] = (val
*) var139
;
727 ((void (*)(val
*, val
*, long))(var143
->class->vft
[COLOR_array__Array__with_native
]))(var143
, var145
, var144
) /* with_native on <var143:Array[Object]>*/;
729 var146
= ((val
* (*)(val
*))(var143
->class->vft
[COLOR_string__Object__to_s
]))(var143
) /* to_s on <var143:Array[Object]>*/;
730 ((void (*)(val
*, val
*, val
*))(var_modelbuilder
->class->vft
[COLOR_modelbuilder__ModelBuilder__error
]))(var_modelbuilder
, var_nat
, var146
) /* error on <var_modelbuilder:ModelBuilder>*/;
734 CONTINUE_label147
: (void)0;
735 ((void (*)(val
*))(var46
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var46
) /* next on <var46:Iterator[nullable Object]>*/;
737 BREAK_label147
: (void)0;
738 var148
= NEW_array__Array(&type_array__Arrayc_compiler_options__DirectCCompilerOption
);
739 ((void (*)(val
*))(var148
->class->vft
[COLOR_array__Array__init
]))(var148
) /* init on <var148:Array[DirectCCompilerOption]>*/;
740 var_simplified_options
= var148
;
741 var149
= ((val
* (*)(val
*))(var_options
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_options
) /* iterator on <var_options:Array[CCompilerOption]>*/;
743 var150
= ((short int (*)(val
*))(var149
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var149
) /* is_ok on <var149:Iterator[nullable Object]>*/;
745 var151
= ((val
* (*)(val
*))(var149
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var149
) /* item on <var149:Iterator[nullable Object]>*/;
747 /* <var_opt152:CCompilerOption> isa ExecCCompilerOption */
748 cltype154
= type_c_compiler_options__ExecCCompilerOption
.color
;
749 idtype155
= type_c_compiler_options__ExecCCompilerOption
.id
;
750 if(cltype154
>= var_opt152
->type
->table_size
) {
753 var153
= var_opt152
->type
->type_table
[cltype154
] == idtype155
;
756 var156
= ((val
* (*)(val
*))(var_opt152
->class->vft
[COLOR_c_compiler_options__ExecCCompilerOption__command
]))(var_opt152
) /* command on <var_opt152:CCompilerOption(ExecCCompilerOption)>*/;
757 var_cmd_args
= var156
;
758 var157
= ((long (*)(val
*))(var_cmd_args
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_cmd_args
) /* length on <var_cmd_args:Array[String]>*/;
760 { /* Inline kernel#Int#== (var157,var158) */
761 var161
= var157
== var158
;
764 RET_LABEL160
:(void)0;
767 var162
= NEW_exec__IProcess(&type_exec__IProcess
);
769 var164
= ((val
* (*)(val
*, long))(var_cmd_args
->class->vft
[COLOR_abstract_collection__SequenceRead___91d_93d
]))(var_cmd_args
, var163
) /* [] on <var_cmd_args:Array[String]>*/;
770 var165
= NEW_array__Array(&type_array__Arraystring__String
);
771 ((void (*)(val
*))(var165
->class->vft
[COLOR_array__Array__init
]))(var165
) /* init on <var165:Array[String]>*/;
772 ((void (*)(val
*, val
*, val
*))(var162
->class->vft
[COLOR_exec__IProcess__from_a
]))(var162
, var164
, var165
) /* from_a on <var162:IProcess>*/;
775 var166
= ((long (*)(val
*))(var_cmd_args
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_cmd_args
) /* length on <var_cmd_args:Array[String]>*/;
777 { /* Inline kernel#Int#> (var166,var167) */
778 /* Covariant cast for argument 0 (i) <var167:Int> isa OTHER */
779 /* <var167:Int> isa OTHER */
780 var170
= 1; /* easy <var167:Int> isa OTHER*/
782 var_class_name
= type_kernel__Int
.name
;
783 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
784 fprintf(stderr
, " (%s:%d)\n", "lib/standard/kernel.nit", 267);
787 var173
= var166
> var167
;
790 RET_LABEL169
:(void)0;
794 var175
= ((long (*)(val
*))(var_cmd_args
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_cmd_args
) /* length on <var_cmd_args:Array[String]>*/;
796 { /* Inline kernel#Int#- (var175,var176) */
797 var179
= var175
- var176
;
800 RET_LABEL178
:(void)0;
802 var180
= ((val
* (*)(val
*, long, long))(var_cmd_args
->class->vft
[COLOR_collection__Sequence__subarray
]))(var_cmd_args
, var174
, var177
) /* subarray on <var_cmd_args:Array[String]>*/;
803 var_rest_args
= var180
;
804 var181
= NEW_exec__IProcess(&type_exec__IProcess
);
806 var183
= ((val
* (*)(val
*, long))(var_cmd_args
->class->vft
[COLOR_abstract_collection__SequenceRead___91d_93d
]))(var_cmd_args
, var182
) /* [] on <var_cmd_args:Array[String]>*/;
807 ((void (*)(val
*, val
*, val
*))(var181
->class->vft
[COLOR_exec__IProcess__from_a
]))(var181
, var183
, var_rest_args
) /* from_a on <var181:IProcess>*/;
810 fprintf(stderr
, "Runtime error: %s", "Aborted");
811 fprintf(stderr
, " (%s:%d)\n", "src/common_ffi/c_compiler_options.nit", 111);
815 ((void (*)(val
*))(var_proc
->class->vft
[COLOR_exec__Process__wait
]))(var_proc
) /* wait on <var_proc:nullable Object(IProcess)>*/;
816 var184
= ((long (*)(val
*))(var_proc
->class->vft
[COLOR_exec__Process__status
]))(var_proc
) /* status on <var_proc:nullable Object(IProcess)>*/;
819 { /* Inline kernel#Int#!= (var_status,var185) */
820 var188
= var_status
== var185
;
824 RET_LABEL187
:(void)0;
827 var190
= ((val
* (*)(val
*))(var_opt152
->class->vft
[COLOR_c_compiler_options__ExecCCompilerOption__exec_node
]))(var_opt152
) /* exec_node on <var_opt152:CCompilerOption(ExecCCompilerOption)>*/;
831 var193
= "Annotation error: Something went wrong executing the argument of annotation \"";
833 var195
= string__NativeString__to_s_with_length(var193
, var194
);
840 var198
= "\", make sure the command is valid.";
842 var200
= string__NativeString__to_s_with_length(var198
, var199
);
846 var201
= NEW_array__Array(&type_array__Arraykernel__Object
);
847 { /* var201 = array_instance Array[Object] */
849 var203
= NEW_array__NativeArray(var202
, &type_array__NativeArraykernel__Object
);
850 ((struct instance_array__NativeArray
*)var203
)->values
[0] = (val
*) var192
;
851 ((struct instance_array__NativeArray
*)var203
)->values
[1] = (val
*) var_annotation_name
;
852 ((struct instance_array__NativeArray
*)var203
)->values
[2] = (val
*) var197
;
853 ((void (*)(val
*, val
*, long))(var201
->class->vft
[COLOR_array__Array__with_native
]))(var201
, var203
, var202
) /* with_native on <var201:Array[Object]>*/;
855 var204
= ((val
* (*)(val
*))(var201
->class->vft
[COLOR_string__Object__to_s
]))(var201
) /* to_s on <var201:Array[Object]>*/;
856 ((void (*)(val
*, val
*, val
*))(var_modelbuilder
->class->vft
[COLOR_modelbuilder__ModelBuilder__error
]))(var_modelbuilder
, var190
, var204
) /* error on <var_modelbuilder:ModelBuilder>*/;
860 var205
= ((val
* (*)(val
*))(var_proc
->class->vft
[COLOR_stream__IStream__read_all
]))(var_proc
) /* read_all on <var_proc:nullable Object(IProcess)>*/;
866 var210
= string__NativeString__to_s_with_length(var208
, var209
);
875 var215
= string__NativeString__to_s_with_length(var213
, var214
);
879 var216
= ((val
* (*)(val
*, val
*, val
*))(var205
->class->vft
[COLOR_string_search__String__replace
]))(var205
, var207
, var212
) /* replace on <var205:String>*/;
881 var217
= ((short int (*)(val
*))(var_result
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var_result
) /* is_empty on <var_result:String>*/;
883 var218
= ((val
* (*)(val
*))(var_opt152
->class->vft
[COLOR_c_compiler_options__ExecCCompilerOption__exec_node
]))(var_opt152
) /* exec_node on <var_opt152:CCompilerOption(ExecCCompilerOption)>*/;
887 var221
= "Annotation error: Got no result from the command, make sure it is valid.";
889 var223
= string__NativeString__to_s_with_length(var221
, var222
);
893 ((void (*)(val
*, val
*, val
*))(var_modelbuilder
->class->vft
[COLOR_modelbuilder__ModelBuilder__error
]))(var_modelbuilder
, var218
, var220
) /* error on <var_modelbuilder:ModelBuilder>*/;
897 var224
= NEW_c_compiler_options__DirectCCompilerOption(&type_c_compiler_options__DirectCCompilerOption
);
898 ((void (*)(val
*, val
*))(var224
->class->vft
[COLOR_c_compiler_options__DirectCCompilerOption__init
]))(var224
, var_result
) /* init on <var224:DirectCCompilerOption>*/;
899 ((void (*)(val
*, val
*))(var_simplified_options
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_simplified_options
, var224
) /* add on <var_simplified_options:Array[DirectCCompilerOption]>*/;
901 /* <var_opt152:CCompilerOption> isa DirectCCompilerOption */
902 cltype226
= type_c_compiler_options__DirectCCompilerOption
.color
;
903 idtype227
= type_c_compiler_options__DirectCCompilerOption
.id
;
904 if(cltype226
>= var_opt152
->type
->table_size
) {
907 var225
= var_opt152
->type
->type_table
[cltype226
] == idtype227
;
910 fprintf(stderr
, "Runtime error: %s", "Assert failed");
911 fprintf(stderr
, " (%s:%d)\n", "src/common_ffi/c_compiler_options.nit", 131);
914 ((void (*)(val
*, val
*))(var_simplified_options
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_simplified_options
, var_opt152
) /* add on <var_simplified_options:Array[DirectCCompilerOption]>*/;
916 CONTINUE_label228
: (void)0;
917 ((void (*)(val
*))(var149
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var149
) /* next on <var149:Iterator[nullable Object]>*/;
919 BREAK_label228
: (void)0;
920 var229
= ((val
* (*)(val
*))(var_nmoduledecl
->class->vft
[COLOR_parser_nodes__ANode__parent
]))(var_nmoduledecl
) /* parent on <var_nmoduledecl:ANode(AModuledecl)>*/;
921 /* <var229:nullable ANode> isa AModule */
922 cltype231
= type_parser_nodes__AModule
.color
;
923 idtype232
= type_parser_nodes__AModule
.id
;
927 if(cltype231
>= var229
->type
->table_size
) {
930 var230
= var229
->type
->type_table
[cltype231
] == idtype232
;
934 var_class_name233
= var229
== NULL ?
"null" : var229
->type
->name
;
935 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "AModule", var_class_name233
);
936 fprintf(stderr
, " (%s:%d)\n", "src/common_ffi/c_compiler_options.nit", 137);
939 var_nmodule
= var229
;
940 var234
= ((val
* (*)(val
*))(var_simplified_options
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_simplified_options
) /* iterator on <var_simplified_options:Array[DirectCCompilerOption]>*/;
942 var235
= ((short int (*)(val
*))(var234
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var234
) /* is_ok on <var234:Iterator[nullable Object]>*/;
944 var236
= ((val
* (*)(val
*))(var234
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var234
) /* item on <var234:Iterator[nullable Object]>*/;
946 var238
= ((val
* (*)(val
*))(var_opt237
->class->vft
[COLOR_c_compiler_options__DirectCCompilerOption__option
]))(var_opt237
) /* option on <var_opt237:DirectCCompilerOption>*/;
948 var239
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__compiler_annotation_name
]))(self
) /* compiler_annotation_name on <self:CCompilerOptionsPhase>*/;
949 var240
= ((short int (*)(val
*, val
*))(var_annotation_name
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_annotation_name
, var239
) /* == on <var_annotation_name:String>*/;
951 ((void (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__process_c_compiler_annotation
]))(self
, var_nmodule
, var_cmd
) /* process_c_compiler_annotation on <self:CCompilerOptionsPhase>*/;
953 var241
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__linker_annotation_name
]))(self
) /* linker_annotation_name on <self:CCompilerOptionsPhase>*/;
954 var242
= ((short int (*)(val
*, val
*))(var_annotation_name
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_annotation_name
, var241
) /* == on <var_annotation_name:String>*/;
956 ((void (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__process_c_linker_annotation
]))(self
, var_nmodule
, var_cmd
) /* process_c_linker_annotation on <self:CCompilerOptionsPhase>*/;
958 var243
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__cpp_compiler_annotation_name
]))(self
) /* cpp_compiler_annotation_name on <self:CCompilerOptionsPhase>*/;
959 var244
= ((short int (*)(val
*, val
*))(var_annotation_name
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_annotation_name
, var243
) /* == on <var_annotation_name:String>*/;
961 ((void (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOptionsPhase__process_cpp_compiler_annotation
]))(self
, var_nmodule
, var_cmd
) /* process_cpp_compiler_annotation on <self:CCompilerOptionsPhase>*/;
963 fprintf(stderr
, "Runtime error: %s", "Aborted");
964 fprintf(stderr
, " (%s:%d)\n", "src/common_ffi/c_compiler_options.nit", 147);
969 CONTINUE_label245
: (void)0;
970 ((void (*)(val
*))(var234
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var234
) /* next on <var234:Iterator[nullable Object]>*/;
972 BREAK_label245
: (void)0;
975 /* method c_compiler_options#CCompilerOptionsPhase#process_annotated_node for (self: Object, ANode, AAnnotation) */
976 void VIRTUAL_c_compiler_options__CCompilerOptionsPhase__process_annotated_node(val
* self
, val
* p0
, val
* p1
) {
977 c_compiler_options__CCompilerOptionsPhase__process_annotated_node(self
, p0
, p1
);
980 /* method c_compiler_options#CCompilerOptionsPhase#process_c_compiler_annotation for (self: CCompilerOptionsPhase, AModule, String) */
981 void c_compiler_options__CCompilerOptionsPhase__process_c_compiler_annotation(val
* self
, val
* p0
, val
* p1
) {
982 val
* var_nmodule
/* var nmodule: AModule */;
983 val
* var_opt
/* var opt: String */;
984 val
* var
/* : String */;
986 val
* var1
/* : String */;
987 char* var2
/* : NativeString */;
988 long var3
/* : Int */;
989 val
* var4
/* : String */;
990 val
* var5
/* : Array[Object] */;
991 long var6
/* : Int */;
992 val
* var7
/* : NativeArray[Object] */;
993 val
* var8
/* : String */;
996 var
= ((val
* (*)(val
*))(var_nmodule
->class->vft
[COLOR_c__AModule__c_compiler_options
]))(var_nmodule
) /* c_compiler_options on <var_nmodule:AModule>*/;
1002 var4
= string__NativeString__to_s_with_length(var2
, var3
);
1006 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
1007 { /* var5 = array_instance Array[Object] */
1009 var7
= NEW_array__NativeArray(var6
, &type_array__NativeArraykernel__Object
);
1010 ((struct instance_array__NativeArray
*)var7
)->values
[0] = (val
*) var
;
1011 ((struct instance_array__NativeArray
*)var7
)->values
[1] = (val
*) var1
;
1012 ((struct instance_array__NativeArray
*)var7
)->values
[2] = (val
*) var_opt
;
1013 ((void (*)(val
*, val
*, long))(var5
->class->vft
[COLOR_array__Array__with_native
]))(var5
, var7
, var6
) /* with_native on <var5:Array[Object]>*/;
1015 var8
= ((val
* (*)(val
*))(var5
->class->vft
[COLOR_string__Object__to_s
]))(var5
) /* to_s on <var5:Array[Object]>*/;
1016 ((void (*)(val
*, val
*))(var_nmodule
->class->vft
[COLOR_c__AModule__c_compiler_options_61d
]))(var_nmodule
, var8
) /* c_compiler_options= on <var_nmodule:AModule>*/;
1019 /* method c_compiler_options#CCompilerOptionsPhase#process_c_compiler_annotation for (self: Object, AModule, String) */
1020 void VIRTUAL_c_compiler_options__CCompilerOptionsPhase__process_c_compiler_annotation(val
* self
, val
* p0
, val
* p1
) {
1021 c_compiler_options__CCompilerOptionsPhase__process_c_compiler_annotation(self
, p0
, p1
);
1024 /* method c_compiler_options#CCompilerOptionsPhase#process_c_linker_annotation for (self: CCompilerOptionsPhase, AModule, String) */
1025 void c_compiler_options__CCompilerOptionsPhase__process_c_linker_annotation(val
* self
, val
* p0
, val
* p1
) {
1026 val
* var_nmodule
/* var nmodule: AModule */;
1027 val
* var_opt
/* var opt: String */;
1028 val
* var
/* : String */;
1029 static val
* varonce
;
1030 val
* var1
/* : String */;
1031 char* var2
/* : NativeString */;
1032 long var3
/* : Int */;
1033 val
* var4
/* : String */;
1034 val
* var5
/* : Array[Object] */;
1035 long var6
/* : Int */;
1036 val
* var7
/* : NativeArray[Object] */;
1037 val
* var8
/* : String */;
1040 var
= ((val
* (*)(val
*))(var_nmodule
->class->vft
[COLOR_c__AModule__c_linker_options
]))(var_nmodule
) /* c_linker_options on <var_nmodule:AModule>*/;
1046 var4
= string__NativeString__to_s_with_length(var2
, var3
);
1050 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
1051 { /* var5 = array_instance Array[Object] */
1053 var7
= NEW_array__NativeArray(var6
, &type_array__NativeArraykernel__Object
);
1054 ((struct instance_array__NativeArray
*)var7
)->values
[0] = (val
*) var
;
1055 ((struct instance_array__NativeArray
*)var7
)->values
[1] = (val
*) var1
;
1056 ((struct instance_array__NativeArray
*)var7
)->values
[2] = (val
*) var_opt
;
1057 ((void (*)(val
*, val
*, long))(var5
->class->vft
[COLOR_array__Array__with_native
]))(var5
, var7
, var6
) /* with_native on <var5:Array[Object]>*/;
1059 var8
= ((val
* (*)(val
*))(var5
->class->vft
[COLOR_string__Object__to_s
]))(var5
) /* to_s on <var5:Array[Object]>*/;
1060 ((void (*)(val
*, val
*))(var_nmodule
->class->vft
[COLOR_c__AModule__c_linker_options_61d
]))(var_nmodule
, var8
) /* c_linker_options= on <var_nmodule:AModule>*/;
1063 /* method c_compiler_options#CCompilerOptionsPhase#process_c_linker_annotation for (self: Object, AModule, String) */
1064 void VIRTUAL_c_compiler_options__CCompilerOptionsPhase__process_c_linker_annotation(val
* self
, val
* p0
, val
* p1
) {
1065 c_compiler_options__CCompilerOptionsPhase__process_c_linker_annotation(self
, p0
, p1
);
1068 /* method c_compiler_options#CCompilerOptionsPhase#process_cpp_compiler_annotation for (self: CCompilerOptionsPhase, AModule, String) */
1069 void c_compiler_options__CCompilerOptionsPhase__process_cpp_compiler_annotation(val
* self
, val
* p0
, val
* p1
) {
1070 val
* var_nmodule
/* var nmodule: AModule */;
1071 val
* var_opt
/* var opt: String */;
1072 val
* var
/* : String */;
1073 static val
* varonce
;
1074 val
* var1
/* : String */;
1075 char* var2
/* : NativeString */;
1076 long var3
/* : Int */;
1077 val
* var4
/* : String */;
1078 val
* var5
/* : Array[Object] */;
1079 long var6
/* : Int */;
1080 val
* var7
/* : NativeArray[Object] */;
1081 val
* var8
/* : String */;
1084 var
= ((val
* (*)(val
*))(var_nmodule
->class->vft
[COLOR_cpp__AModule__cpp_compiler_options
]))(var_nmodule
) /* cpp_compiler_options on <var_nmodule:AModule>*/;
1090 var4
= string__NativeString__to_s_with_length(var2
, var3
);
1094 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
1095 { /* var5 = array_instance Array[Object] */
1097 var7
= NEW_array__NativeArray(var6
, &type_array__NativeArraykernel__Object
);
1098 ((struct instance_array__NativeArray
*)var7
)->values
[0] = (val
*) var
;
1099 ((struct instance_array__NativeArray
*)var7
)->values
[1] = (val
*) var1
;
1100 ((struct instance_array__NativeArray
*)var7
)->values
[2] = (val
*) var_opt
;
1101 ((void (*)(val
*, val
*, long))(var5
->class->vft
[COLOR_array__Array__with_native
]))(var5
, var7
, var6
) /* with_native on <var5:Array[Object]>*/;
1103 var8
= ((val
* (*)(val
*))(var5
->class->vft
[COLOR_string__Object__to_s
]))(var5
) /* to_s on <var5:Array[Object]>*/;
1104 ((void (*)(val
*, val
*))(var_nmodule
->class->vft
[COLOR_cpp__AModule__cpp_compiler_options_61d
]))(var_nmodule
, var8
) /* cpp_compiler_options= on <var_nmodule:AModule>*/;
1107 /* method c_compiler_options#CCompilerOptionsPhase#process_cpp_compiler_annotation for (self: Object, AModule, String) */
1108 void VIRTUAL_c_compiler_options__CCompilerOptionsPhase__process_cpp_compiler_annotation(val
* self
, val
* p0
, val
* p1
) {
1109 c_compiler_options__CCompilerOptionsPhase__process_cpp_compiler_annotation(self
, p0
, p1
);
1112 /* method c_compiler_options#CCompilerOption#init for (self: CCompilerOption) */
1113 void c_compiler_options__CCompilerOption__init(val
* self
) {
1116 /* method c_compiler_options#CCompilerOption#init for (self: Object) */
1117 void VIRTUAL_c_compiler_options__CCompilerOption__init(val
* self
) {
1118 c_compiler_options__CCompilerOption__init(self
);
1121 /* method c_compiler_options#DirectCCompilerOption#option for (self: DirectCCompilerOption): String */
1122 val
* c_compiler_options__DirectCCompilerOption__option(val
* self
) {
1123 val
* var
/* : String */;
1124 val
* var1
/* : String */;
1125 var1
= self
->attrs
[COLOR_c_compiler_options__DirectCCompilerOption___64doption
].val
; /* @option on <self:DirectCCompilerOption> */
1127 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @option");
1128 fprintf(stderr
, " (%s:%d)\n", "src/common_ffi/c_compiler_options.nit", 173);
1135 /* method c_compiler_options#DirectCCompilerOption#option for (self: Object): String */
1136 val
* VIRTUAL_c_compiler_options__DirectCCompilerOption__option(val
* self
) {
1137 val
* var
/* : String */;
1138 val
* var1
/* : String */;
1139 var1
= c_compiler_options__DirectCCompilerOption__option(self
);
1144 /* method c_compiler_options#DirectCCompilerOption#option= for (self: DirectCCompilerOption, String) */
1145 void c_compiler_options__DirectCCompilerOption__option_61d(val
* self
, val
* p0
) {
1146 self
->attrs
[COLOR_c_compiler_options__DirectCCompilerOption___64doption
].val
= p0
; /* @option on <self:DirectCCompilerOption> */
1149 /* method c_compiler_options#DirectCCompilerOption#option= for (self: Object, String) */
1150 void VIRTUAL_c_compiler_options__DirectCCompilerOption__option_61d(val
* self
, val
* p0
) {
1151 c_compiler_options__DirectCCompilerOption__option_61d(self
, p0
);
1154 /* method c_compiler_options#DirectCCompilerOption#init for (self: DirectCCompilerOption, String) */
1155 void c_compiler_options__DirectCCompilerOption__init(val
* self
, val
* p0
) {
1156 val
* var_opt
/* var opt: String */;
1158 ((void (*)(val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOption__init
]))(self
) /* init on <self:DirectCCompilerOption>*/;
1159 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_c_compiler_options__DirectCCompilerOption__option_61d
]))(self
, var_opt
) /* option= on <self:DirectCCompilerOption>*/;
1162 /* method c_compiler_options#DirectCCompilerOption#init for (self: Object, String) */
1163 void VIRTUAL_c_compiler_options__DirectCCompilerOption__init(val
* self
, val
* p0
) {
1164 c_compiler_options__DirectCCompilerOption__init(self
, p0
);
1167 /* method c_compiler_options#ExecCCompilerOption#command for (self: ExecCCompilerOption): Array[String] */
1168 val
* c_compiler_options__ExecCCompilerOption__command(val
* self
) {
1169 val
* var
/* : Array[String] */;
1170 val
* var1
/* : Array[String] */;
1171 var1
= self
->attrs
[COLOR_c_compiler_options__ExecCCompilerOption___64dcommand
].val
; /* @command on <self:ExecCCompilerOption> */
1173 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @command");
1174 fprintf(stderr
, " (%s:%d)\n", "src/common_ffi/c_compiler_options.nit", 180);
1181 /* method c_compiler_options#ExecCCompilerOption#command for (self: Object): Array[String] */
1182 val
* VIRTUAL_c_compiler_options__ExecCCompilerOption__command(val
* self
) {
1183 val
* var
/* : Array[String] */;
1184 val
* var1
/* : Array[String] */;
1185 var1
= c_compiler_options__ExecCCompilerOption__command(self
);
1190 /* method c_compiler_options#ExecCCompilerOption#command= for (self: ExecCCompilerOption, Array[String]) */
1191 void c_compiler_options__ExecCCompilerOption__command_61d(val
* self
, val
* p0
) {
1192 self
->attrs
[COLOR_c_compiler_options__ExecCCompilerOption___64dcommand
].val
= p0
; /* @command on <self:ExecCCompilerOption> */
1195 /* method c_compiler_options#ExecCCompilerOption#command= for (self: Object, Array[String]) */
1196 void VIRTUAL_c_compiler_options__ExecCCompilerOption__command_61d(val
* self
, val
* p0
) {
1197 c_compiler_options__ExecCCompilerOption__command_61d(self
, p0
);
1200 /* method c_compiler_options#ExecCCompilerOption#exec_node for (self: ExecCCompilerOption): ACallExpr */
1201 val
* c_compiler_options__ExecCCompilerOption__exec_node(val
* self
) {
1202 val
* var
/* : ACallExpr */;
1203 val
* var1
/* : ACallExpr */;
1204 var1
= self
->attrs
[COLOR_c_compiler_options__ExecCCompilerOption___64dexec_node
].val
; /* @exec_node on <self:ExecCCompilerOption> */
1206 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @exec_node");
1207 fprintf(stderr
, " (%s:%d)\n", "src/common_ffi/c_compiler_options.nit", 181);
1214 /* method c_compiler_options#ExecCCompilerOption#exec_node for (self: Object): ACallExpr */
1215 val
* VIRTUAL_c_compiler_options__ExecCCompilerOption__exec_node(val
* self
) {
1216 val
* var
/* : ACallExpr */;
1217 val
* var1
/* : ACallExpr */;
1218 var1
= c_compiler_options__ExecCCompilerOption__exec_node(self
);
1223 /* method c_compiler_options#ExecCCompilerOption#exec_node= for (self: ExecCCompilerOption, ACallExpr) */
1224 void c_compiler_options__ExecCCompilerOption__exec_node_61d(val
* self
, val
* p0
) {
1225 self
->attrs
[COLOR_c_compiler_options__ExecCCompilerOption___64dexec_node
].val
= p0
; /* @exec_node on <self:ExecCCompilerOption> */
1228 /* method c_compiler_options#ExecCCompilerOption#exec_node= for (self: Object, ACallExpr) */
1229 void VIRTUAL_c_compiler_options__ExecCCompilerOption__exec_node_61d(val
* self
, val
* p0
) {
1230 c_compiler_options__ExecCCompilerOption__exec_node_61d(self
, p0
);
1233 /* method c_compiler_options#ExecCCompilerOption#init for (self: ExecCCompilerOption, Array[String], ACallExpr) */
1234 void c_compiler_options__ExecCCompilerOption__init(val
* self
, val
* p0
, val
* p1
) {
1235 val
* var_command
/* var command: Array[String] */;
1236 val
* var_exec_node
/* var exec_node: ACallExpr */;
1239 ((void (*)(val
*))(self
->class->vft
[COLOR_c_compiler_options__CCompilerOption__init
]))(self
) /* init on <self:ExecCCompilerOption>*/;
1240 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_c_compiler_options__ExecCCompilerOption__command_61d
]))(self
, var_command
) /* command= on <self:ExecCCompilerOption>*/;
1241 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_c_compiler_options__ExecCCompilerOption__exec_node_61d
]))(self
, var_exec_node
) /* exec_node= on <self:ExecCCompilerOption>*/;
1244 /* method c_compiler_options#ExecCCompilerOption#init for (self: Object, Array[String], ACallExpr) */
1245 void VIRTUAL_c_compiler_options__ExecCCompilerOption__init(val
* self
, val
* p0
, val
* p1
) {
1246 c_compiler_options__ExecCCompilerOption__init(self
, p0
, p1
);