Merge: doc: fixed some typos and other misc. corrections
[nit.git] / c_src / nitc__c_tools.sep.1.c
1 #include "nitc__c_tools.sep.0.h"
2 /* method c_tools$CCompilationUnit$header_c_base for (self: CCompilationUnit): Template */
3 val* nitc___nitc__CCompilationUnit___header_c_base(val* self) {
4 val* var /* : Template */;
5 val* var1 /* : Template */;
6 var1 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___header_c_base].val; /* _header_c_base on <self:CCompilationUnit> */
7 if (unlikely(var1 == NULL)) {
8 if(catchStack.cursor >= 0){
9 longjmp(catchStack.envs[catchStack.cursor], 1);
10 }
11 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_base");
12 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 24);
13 fatal_exit(1);
14 }
15 var = var1;
16 RET_LABEL:;
17 return var;
18 }
19 /* method c_tools$CCompilationUnit$header_custom for (self: CCompilationUnit): Template */
20 val* nitc___nitc__CCompilationUnit___header_custom(val* self) {
21 val* var /* : Template */;
22 val* var1 /* : Template */;
23 var1 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___header_custom].val; /* _header_custom on <self:CCompilationUnit> */
24 if (unlikely(var1 == NULL)) {
25 if(catchStack.cursor >= 0){
26 longjmp(catchStack.envs[catchStack.cursor], 1);
27 }
28 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_custom");
29 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 28);
30 fatal_exit(1);
31 }
32 var = var1;
33 RET_LABEL:;
34 return var;
35 }
36 /* method c_tools$CCompilationUnit$header_c_types for (self: CCompilationUnit): Template */
37 val* nitc___nitc__CCompilationUnit___header_c_types(val* self) {
38 val* var /* : Template */;
39 val* var1 /* : Template */;
40 var1 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___header_c_types].val; /* _header_c_types on <self:CCompilationUnit> */
41 if (unlikely(var1 == NULL)) {
42 if(catchStack.cursor >= 0){
43 longjmp(catchStack.envs[catchStack.cursor], 1);
44 }
45 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_types");
46 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 31);
47 fatal_exit(1);
48 }
49 var = var1;
50 RET_LABEL:;
51 return var;
52 }
53 /* method c_tools$CCompilationUnit$header_decl for (self: CCompilationUnit): Template */
54 val* nitc___nitc__CCompilationUnit___header_decl(val* self) {
55 val* var /* : Template */;
56 val* var1 /* : Template */;
57 var1 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___header_decl].val; /* _header_decl on <self:CCompilationUnit> */
58 if (unlikely(var1 == NULL)) {
59 if(catchStack.cursor >= 0){
60 longjmp(catchStack.envs[catchStack.cursor], 1);
61 }
62 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_decl");
63 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 34);
64 fatal_exit(1);
65 }
66 var = var1;
67 RET_LABEL:;
68 return var;
69 }
70 /* method c_tools$CCompilationUnit$body_decl for (self: CCompilationUnit): Template */
71 val* nitc___nitc__CCompilationUnit___body_decl(val* self) {
72 val* var /* : Template */;
73 val* var1 /* : Template */;
74 var1 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___body_decl].val; /* _body_decl on <self:CCompilationUnit> */
75 if (unlikely(var1 == NULL)) {
76 if(catchStack.cursor >= 0){
77 longjmp(catchStack.envs[catchStack.cursor], 1);
78 }
79 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl");
80 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 37);
81 fatal_exit(1);
82 }
83 var = var1;
84 RET_LABEL:;
85 return var;
86 }
87 /* method c_tools$CCompilationUnit$body_custom for (self: CCompilationUnit): Template */
88 val* nitc___nitc__CCompilationUnit___body_custom(val* self) {
89 val* var /* : Template */;
90 val* var1 /* : Template */;
91 var1 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___body_custom].val; /* _body_custom on <self:CCompilationUnit> */
92 if (unlikely(var1 == NULL)) {
93 if(catchStack.cursor >= 0){
94 longjmp(catchStack.envs[catchStack.cursor], 1);
95 }
96 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_custom");
97 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 41);
98 fatal_exit(1);
99 }
100 var = var1;
101 RET_LABEL:;
102 return var;
103 }
104 /* method c_tools$CCompilationUnit$body_impl for (self: CCompilationUnit): Template */
105 val* nitc___nitc__CCompilationUnit___body_impl(val* self) {
106 val* var /* : Template */;
107 val* var1 /* : Template */;
108 var1 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___body_impl].val; /* _body_impl on <self:CCompilationUnit> */
109 if (unlikely(var1 == NULL)) {
110 if(catchStack.cursor >= 0){
111 longjmp(catchStack.envs[catchStack.cursor], 1);
112 }
113 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl");
114 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 44);
115 fatal_exit(1);
116 }
117 var = var1;
118 RET_LABEL:;
119 return var;
120 }
121 /* method c_tools$CCompilationUnit$files for (self: CCompilationUnit): Array[String] */
122 val* nitc___nitc__CCompilationUnit___files(val* self) {
123 val* var /* : Array[String] */;
124 val* var1 /* : Array[String] */;
125 var1 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___files].val; /* _files on <self:CCompilationUnit> */
126 if (unlikely(var1 == NULL)) {
127 if(catchStack.cursor >= 0){
128 longjmp(catchStack.envs[catchStack.cursor], 1);
129 }
130 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _files");
131 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 47);
132 fatal_exit(1);
133 }
134 var = var1;
135 RET_LABEL:;
136 return var;
137 }
138 /* method c_tools$CCompilationUnit$compile_header_core for (self: CCompilationUnit, Writer) */
139 void nitc___nitc__CCompilationUnit___compile_header_core(val* self, val* p0) {
140 val* var_stream /* var stream: Writer */;
141 val* var /* : Template */;
142 val* var2 /* : Template */;
143 val* var3 /* : Template */;
144 val* var5 /* : Template */;
145 val* var6 /* : Template */;
146 val* var8 /* : Template */;
147 val* var9 /* : Template */;
148 val* var11 /* : Template */;
149 var_stream = p0;
150 {
151 { /* Inline c_tools$CCompilationUnit$header_c_base (self) on <self:CCompilationUnit> */
152 var2 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___header_c_base].val; /* _header_c_base on <self:CCompilationUnit> */
153 if (unlikely(var2 == NULL)) {
154 if(catchStack.cursor >= 0){
155 longjmp(catchStack.envs[catchStack.cursor], 1);
156 }
157 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_base");
158 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 24);
159 fatal_exit(1);
160 }
161 var = var2;
162 RET_LABEL1:(void)0;
163 }
164 }
165 {
166 template___template__Template___core__stream__Writable__write_to(var, var_stream); /* Direct call template$Template$write_to on <var:Template>*/
167 }
168 {
169 { /* Inline c_tools$CCompilationUnit$header_custom (self) on <self:CCompilationUnit> */
170 var5 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___header_custom].val; /* _header_custom on <self:CCompilationUnit> */
171 if (unlikely(var5 == NULL)) {
172 if(catchStack.cursor >= 0){
173 longjmp(catchStack.envs[catchStack.cursor], 1);
174 }
175 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_custom");
176 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 28);
177 fatal_exit(1);
178 }
179 var3 = var5;
180 RET_LABEL4:(void)0;
181 }
182 }
183 {
184 template___template__Template___core__stream__Writable__write_to(var3, var_stream); /* Direct call template$Template$write_to on <var3:Template>*/
185 }
186 {
187 { /* Inline c_tools$CCompilationUnit$header_c_types (self) on <self:CCompilationUnit> */
188 var8 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___header_c_types].val; /* _header_c_types on <self:CCompilationUnit> */
189 if (unlikely(var8 == NULL)) {
190 if(catchStack.cursor >= 0){
191 longjmp(catchStack.envs[catchStack.cursor], 1);
192 }
193 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_types");
194 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 31);
195 fatal_exit(1);
196 }
197 var6 = var8;
198 RET_LABEL7:(void)0;
199 }
200 }
201 {
202 template___template__Template___core__stream__Writable__write_to(var6, var_stream); /* Direct call template$Template$write_to on <var6:Template>*/
203 }
204 {
205 { /* Inline c_tools$CCompilationUnit$header_decl (self) on <self:CCompilationUnit> */
206 var11 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___header_decl].val; /* _header_decl on <self:CCompilationUnit> */
207 if (unlikely(var11 == NULL)) {
208 if(catchStack.cursor >= 0){
209 longjmp(catchStack.envs[catchStack.cursor], 1);
210 }
211 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_decl");
212 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 34);
213 fatal_exit(1);
214 }
215 var9 = var11;
216 RET_LABEL10:(void)0;
217 }
218 }
219 {
220 template___template__Template___core__stream__Writable__write_to(var9, var_stream); /* Direct call template$Template$write_to on <var9:Template>*/
221 }
222 RET_LABEL:;
223 }
224 /* method c_tools$CCompilationUnit$compile_body_core for (self: CCompilationUnit, Writer) */
225 void nitc___nitc__CCompilationUnit___compile_body_core(val* self, val* p0) {
226 val* var_stream /* var stream: Writer */;
227 val* var /* : Template */;
228 val* var2 /* : Template */;
229 val* var3 /* : Template */;
230 val* var5 /* : Template */;
231 val* var6 /* : Template */;
232 val* var8 /* : Template */;
233 var_stream = p0;
234 {
235 { /* Inline c_tools$CCompilationUnit$body_decl (self) on <self:CCompilationUnit> */
236 var2 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___body_decl].val; /* _body_decl on <self:CCompilationUnit> */
237 if (unlikely(var2 == NULL)) {
238 if(catchStack.cursor >= 0){
239 longjmp(catchStack.envs[catchStack.cursor], 1);
240 }
241 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl");
242 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 37);
243 fatal_exit(1);
244 }
245 var = var2;
246 RET_LABEL1:(void)0;
247 }
248 }
249 {
250 template___template__Template___core__stream__Writable__write_to(var, var_stream); /* Direct call template$Template$write_to on <var:Template>*/
251 }
252 {
253 { /* Inline c_tools$CCompilationUnit$body_custom (self) on <self:CCompilationUnit> */
254 var5 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___body_custom].val; /* _body_custom on <self:CCompilationUnit> */
255 if (unlikely(var5 == NULL)) {
256 if(catchStack.cursor >= 0){
257 longjmp(catchStack.envs[catchStack.cursor], 1);
258 }
259 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_custom");
260 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 41);
261 fatal_exit(1);
262 }
263 var3 = var5;
264 RET_LABEL4:(void)0;
265 }
266 }
267 {
268 template___template__Template___core__stream__Writable__write_to(var3, var_stream); /* Direct call template$Template$write_to on <var3:Template>*/
269 }
270 {
271 { /* Inline c_tools$CCompilationUnit$body_impl (self) on <self:CCompilationUnit> */
272 var8 = self->attrs[COLOR_nitc__c_tools__CCompilationUnit___body_impl].val; /* _body_impl on <self:CCompilationUnit> */
273 if (unlikely(var8 == NULL)) {
274 if(catchStack.cursor >= 0){
275 longjmp(catchStack.envs[catchStack.cursor], 1);
276 }
277 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl");
278 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 44);
279 fatal_exit(1);
280 }
281 var6 = var8;
282 RET_LABEL7:(void)0;
283 }
284 }
285 {
286 template___template__Template___core__stream__Writable__write_to(var6, var_stream); /* Direct call template$Template$write_to on <var6:Template>*/
287 }
288 RET_LABEL:;
289 }
290 /* method c_tools$CFunction$signature for (self: CFunction): String */
291 val* nitc___nitc__CFunction___signature(val* self) {
292 val* var /* : String */;
293 val* var1 /* : String */;
294 var1 = self->attrs[COLOR_nitc__c_tools__CFunction___signature].val; /* _signature on <self:CFunction> */
295 if (unlikely(var1 == NULL)) {
296 if(catchStack.cursor >= 0){
297 longjmp(catchStack.envs[catchStack.cursor], 1);
298 }
299 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _signature");
300 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 86);
301 fatal_exit(1);
302 }
303 var = var1;
304 RET_LABEL:;
305 return var;
306 }
307 /* method c_tools$CFunction$signature= for (self: CFunction, String) */
308 void nitc___nitc__CFunction___signature_61d(val* self, val* p0) {
309 self->attrs[COLOR_nitc__c_tools__CFunction___signature].val = p0; /* _signature on <self:CFunction> */
310 RET_LABEL:;
311 }
312 /* method c_tools$CFunction$decls for (self: CFunction): Template */
313 val* nitc___nitc__CFunction___decls(val* self) {
314 val* var /* : Template */;
315 val* var1 /* : Template */;
316 var1 = self->attrs[COLOR_nitc__c_tools__CFunction___decls].val; /* _decls on <self:CFunction> */
317 if (unlikely(var1 == NULL)) {
318 if(catchStack.cursor >= 0){
319 longjmp(catchStack.envs[catchStack.cursor], 1);
320 }
321 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _decls");
322 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 88);
323 fatal_exit(1);
324 }
325 var = var1;
326 RET_LABEL:;
327 return var;
328 }
329 /* method c_tools$CFunction$exprs for (self: CFunction): Template */
330 val* nitc___nitc__CFunction___exprs(val* self) {
331 val* var /* : Template */;
332 val* var1 /* : Template */;
333 var1 = self->attrs[COLOR_nitc__c_tools__CFunction___exprs].val; /* _exprs on <self:CFunction> */
334 if (unlikely(var1 == NULL)) {
335 if(catchStack.cursor >= 0){
336 longjmp(catchStack.envs[catchStack.cursor], 1);
337 }
338 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _exprs");
339 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 89);
340 fatal_exit(1);
341 }
342 var = var1;
343 RET_LABEL:;
344 return var;
345 }
346 /* method c_tools$CFunction$to_writer for (self: CFunction): Template */
347 val* nitc___nitc__CFunction___to_writer(val* self) {
348 val* var /* : Template */;
349 val* var1 /* : Template */;
350 val* var_w /* var w: Template */;
351 val* var2 /* : String */;
352 val* var4 /* : String */;
353 static val* varonce;
354 val* var5 /* : String */;
355 char* var6 /* : CString */;
356 val* var7 /* : String */;
357 val* var8 /* : nullable Int */;
358 val* var9 /* : nullable Int */;
359 val* var10 /* : nullable Bool */;
360 val* var11 /* : nullable Bool */;
361 val* var12 /* : Template */;
362 val* var14 /* : Template */;
363 static val* varonce15;
364 val* var16 /* : String */;
365 char* var17 /* : CString */;
366 val* var18 /* : String */;
367 val* var19 /* : nullable Int */;
368 val* var20 /* : nullable Int */;
369 val* var21 /* : nullable Bool */;
370 val* var22 /* : nullable Bool */;
371 val* var23 /* : Template */;
372 val* var25 /* : Template */;
373 static val* varonce26;
374 val* var27 /* : String */;
375 char* var28 /* : CString */;
376 val* var29 /* : String */;
377 val* var30 /* : nullable Int */;
378 val* var31 /* : nullable Int */;
379 val* var32 /* : nullable Bool */;
380 val* var33 /* : nullable Bool */;
381 var1 = NEW_template__Template(&type_template__Template);
382 {
383 ((void(*)(val* self))(var1->class->vft[COLOR_core__kernel__Object__init]))(var1); /* init on <var1:Template>*/
384 }
385 var_w = var1;
386 {
387 { /* Inline c_tools$CFunction$signature (self) on <self:CFunction> */
388 var4 = self->attrs[COLOR_nitc__c_tools__CFunction___signature].val; /* _signature on <self:CFunction> */
389 if (unlikely(var4 == NULL)) {
390 if(catchStack.cursor >= 0){
391 longjmp(catchStack.envs[catchStack.cursor], 1);
392 }
393 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _signature");
394 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 86);
395 fatal_exit(1);
396 }
397 var2 = var4;
398 RET_LABEL3:(void)0;
399 }
400 }
401 {
402 template___template__Template___add(var_w, var2); /* Direct call template$Template$add on <var_w:Template>*/
403 }
404 if (likely(varonce!=NULL)) {
405 var5 = varonce;
406 } else {
407 var6 = "\n{\n";
408 var8 = (val*)(3l<<2|1);
409 var9 = (val*)(3l<<2|1);
410 var10 = (val*)((long)(0)<<2|3);
411 var11 = (val*)((long)(0)<<2|3);
412 var7 = core__flat___CString___to_s_unsafe(var6, var8, var9, var10, var11);
413 var5 = var7;
414 varonce = var5;
415 }
416 {
417 template___template__Template___add(var_w, var5); /* Direct call template$Template$add on <var_w:Template>*/
418 }
419 {
420 { /* Inline c_tools$CFunction$decls (self) on <self:CFunction> */
421 var14 = self->attrs[COLOR_nitc__c_tools__CFunction___decls].val; /* _decls on <self:CFunction> */
422 if (unlikely(var14 == NULL)) {
423 if(catchStack.cursor >= 0){
424 longjmp(catchStack.envs[catchStack.cursor], 1);
425 }
426 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _decls");
427 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 88);
428 fatal_exit(1);
429 }
430 var12 = var14;
431 RET_LABEL13:(void)0;
432 }
433 }
434 {
435 template___template__Template___add(var_w, var12); /* Direct call template$Template$add on <var_w:Template>*/
436 }
437 if (likely(varonce15!=NULL)) {
438 var16 = varonce15;
439 } else {
440 var17 = "\n";
441 var19 = (val*)(1l<<2|1);
442 var20 = (val*)(1l<<2|1);
443 var21 = (val*)((long)(0)<<2|3);
444 var22 = (val*)((long)(0)<<2|3);
445 var18 = core__flat___CString___to_s_unsafe(var17, var19, var20, var21, var22);
446 var16 = var18;
447 varonce15 = var16;
448 }
449 {
450 template___template__Template___add(var_w, var16); /* Direct call template$Template$add on <var_w:Template>*/
451 }
452 {
453 { /* Inline c_tools$CFunction$exprs (self) on <self:CFunction> */
454 var25 = self->attrs[COLOR_nitc__c_tools__CFunction___exprs].val; /* _exprs on <self:CFunction> */
455 if (unlikely(var25 == NULL)) {
456 if(catchStack.cursor >= 0){
457 longjmp(catchStack.envs[catchStack.cursor], 1);
458 }
459 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _exprs");
460 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 89);
461 fatal_exit(1);
462 }
463 var23 = var25;
464 RET_LABEL24:(void)0;
465 }
466 }
467 {
468 template___template__Template___add(var_w, var23); /* Direct call template$Template$add on <var_w:Template>*/
469 }
470 if (likely(varonce26!=NULL)) {
471 var27 = varonce26;
472 } else {
473 var28 = "}\n";
474 var30 = (val*)(2l<<2|1);
475 var31 = (val*)(2l<<2|1);
476 var32 = (val*)((long)(0)<<2|3);
477 var33 = (val*)((long)(0)<<2|3);
478 var29 = core__flat___CString___to_s_unsafe(var28, var30, var31, var32, var33);
479 var27 = var29;
480 varonce26 = var27;
481 }
482 {
483 template___template__Template___add(var_w, var27); /* Direct call template$Template$add on <var_w:Template>*/
484 }
485 var = var_w;
486 goto RET_LABEL;
487 RET_LABEL:;
488 return var;
489 }
490 /* method c_tools$CFunction$init for (self: CFunction) */
491 void nitc___nitc__CFunction___core__kernel__Object__init(val* self) {
492 {
493 ((void(*)(val* self))(self->class->vft[COLOR_nitc___nitc__CFunction___core__kernel__Object__init]))(self); /* init on <self:CFunction>*/
494 }
495 RET_LABEL:;
496 }
497 /* method c_tools$ExternFile$filename for (self: ExternFile): String */
498 val* nitc___nitc__ExternFile___filename(val* self) {
499 val* var /* : String */;
500 val* var1 /* : String */;
501 var1 = self->attrs[COLOR_nitc__c_tools__ExternFile___filename].val; /* _filename on <self:ExternFile> */
502 if (unlikely(var1 == NULL)) {
503 if(catchStack.cursor >= 0){
504 longjmp(catchStack.envs[catchStack.cursor], 1);
505 }
506 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
507 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 108);
508 fatal_exit(1);
509 }
510 var = var1;
511 RET_LABEL:;
512 return var;
513 }
514 /* method c_tools$ExternFile$filename= for (self: ExternFile, String) */
515 void nitc___nitc__ExternFile___filename_61d(val* self, val* p0) {
516 self->attrs[COLOR_nitc__c_tools__ExternFile___filename].val = p0; /* _filename on <self:ExternFile> */
517 RET_LABEL:;
518 }
519 /* method c_tools$ExternFile$add_to_jar for (self: ExternFile): Bool */
520 short int nitc___nitc__ExternFile___add_to_jar(val* self) {
521 short int var /* : Bool */;
522 var = 0;
523 goto RET_LABEL;
524 RET_LABEL:;
525 return var;
526 }
527 /* method c_tools$ExternFile$pkgconfigs for (self: ExternFile): Array[String] */
528 val* nitc___nitc__ExternFile___pkgconfigs(val* self) {
529 val* var /* : Array[String] */;
530 val* var1 /* : Array[String] */;
531 var1 = self->attrs[COLOR_nitc__c_tools__ExternFile___pkgconfigs].val; /* _pkgconfigs on <self:ExternFile> */
532 if (unlikely(var1 == NULL)) {
533 if(catchStack.cursor >= 0){
534 longjmp(catchStack.envs[catchStack.cursor], 1);
535 }
536 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs");
537 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 123);
538 fatal_exit(1);
539 }
540 var = var1;
541 RET_LABEL:;
542 return var;
543 }
544 /* method c_tools$ExternFile$init for (self: ExternFile) */
545 void nitc___nitc__ExternFile___core__kernel__Object__init(val* self) {
546 {
547 ((void(*)(val* self))(self->class->vft[COLOR_nitc___nitc__ExternFile___core__kernel__Object__init]))(self); /* init on <self:ExternFile>*/
548 }
549 RET_LABEL:;
550 }
551 /* method c_tools$ExternCFile$cflags for (self: ExternCFile): String */
552 val* nitc___nitc__ExternCFile___cflags(val* self) {
553 val* var /* : String */;
554 val* var1 /* : String */;
555 var1 = self->attrs[COLOR_nitc__c_tools__ExternCFile___cflags].val; /* _cflags on <self:ExternCFile> */
556 if (unlikely(var1 == NULL)) {
557 if(catchStack.cursor >= 0){
558 longjmp(catchStack.envs[catchStack.cursor], 1);
559 }
560 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _cflags");
561 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 132);
562 fatal_exit(1);
563 }
564 var = var1;
565 RET_LABEL:;
566 return var;
567 }
568 /* method c_tools$ExternCFile$cflags= for (self: ExternCFile, String) */
569 void nitc___nitc__ExternCFile___cflags_61d(val* self, val* p0) {
570 self->attrs[COLOR_nitc__c_tools__ExternCFile___cflags].val = p0; /* _cflags on <self:ExternCFile> */
571 RET_LABEL:;
572 }
573 /* method c_tools$ExternCFile$hash for (self: ExternCFile): Int */
574 long nitc___nitc__ExternCFile___core__kernel__Object__hash(val* self) {
575 long var /* : Int */;
576 val* var1 /* : String */;
577 val* var3 /* : String */;
578 long var4 /* : Int */;
579 {
580 { /* Inline c_tools$ExternFile$filename (self) on <self:ExternCFile> */
581 var3 = self->attrs[COLOR_nitc__c_tools__ExternFile___filename].val; /* _filename on <self:ExternCFile> */
582 if (unlikely(var3 == NULL)) {
583 if(catchStack.cursor >= 0){
584 longjmp(catchStack.envs[catchStack.cursor], 1);
585 }
586 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
587 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 108);
588 fatal_exit(1);
589 }
590 var1 = var3;
591 RET_LABEL2:(void)0;
592 }
593 }
594 {
595 var4 = ((long(*)(val* self))(var1->class->vft[COLOR_core__kernel__Object__hash]))(var1); /* hash on <var1:String>*/
596 }
597 var = var4;
598 goto RET_LABEL;
599 RET_LABEL:;
600 return var;
601 }
602 /* method c_tools$ExternCFile$== for (self: ExternCFile, nullable Object): Bool */
603 short int nitc___nitc__ExternCFile___core__kernel__Object___61d_61d(val* self, val* p0) {
604 short int var /* : Bool */;
605 val* var_o /* var o: nullable Object */;
606 short int var1 /* : Bool */;
607 short int var2 /* : Bool */;
608 int cltype;
609 int idtype;
610 short int var_ /* var : Bool */;
611 val* var3 /* : String */;
612 val* var5 /* : String */;
613 val* var6 /* : String */;
614 val* var8 /* : String */;
615 short int var9 /* : Bool */;
616 var_o = p0;
617 /* <var_o:nullable Object> isa ExternCFile */
618 cltype = type_nitc__ExternCFile.color;
619 idtype = type_nitc__ExternCFile.id;
620 if(var_o == NULL) {
621 var2 = 0;
622 } else {
623 if(cltype >= (((long)var_o&3)?type_info[((long)var_o&3)]:var_o->type)->table_size) {
624 var2 = 0;
625 } else {
626 var2 = (((long)var_o&3)?type_info[((long)var_o&3)]:var_o->type)->type_table[cltype] == idtype;
627 }
628 }
629 var_ = var2;
630 if (var2){
631 {
632 { /* Inline c_tools$ExternFile$filename (self) on <self:ExternCFile> */
633 var5 = self->attrs[COLOR_nitc__c_tools__ExternFile___filename].val; /* _filename on <self:ExternCFile> */
634 if (unlikely(var5 == NULL)) {
635 if(catchStack.cursor >= 0){
636 longjmp(catchStack.envs[catchStack.cursor], 1);
637 }
638 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
639 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 108);
640 fatal_exit(1);
641 }
642 var3 = var5;
643 RET_LABEL4:(void)0;
644 }
645 }
646 {
647 { /* Inline c_tools$ExternFile$filename (var_o) on <var_o:nullable Object(ExternCFile)> */
648 var8 = var_o->attrs[COLOR_nitc__c_tools__ExternFile___filename].val; /* _filename on <var_o:nullable Object(ExternCFile)> */
649 if (unlikely(var8 == NULL)) {
650 if(catchStack.cursor >= 0){
651 longjmp(catchStack.envs[catchStack.cursor], 1);
652 }
653 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
654 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 108);
655 fatal_exit(1);
656 }
657 var6 = var8;
658 RET_LABEL7:(void)0;
659 }
660 }
661 {
662 var9 = ((short int(*)(val* self, val* p0))(var3->class->vft[COLOR_core__kernel__Object___61d_61d]))(var3, var6); /* == on <var3:String>*/
663 }
664 var1 = var9;
665 } else {
666 var1 = var_;
667 }
668 var = var1;
669 goto RET_LABEL;
670 RET_LABEL:;
671 return var;
672 }
673 /* method c_tools$ExternCFile$makefile_rule_name for (self: ExternCFile): String */
674 val* nitc___nitc__ExternCFile___ExternFile__makefile_rule_name(val* self) {
675 val* var /* : String */;
676 val* var1 /* : String */;
677 val* var3 /* : String */;
678 static val* varonce;
679 val* var4 /* : String */;
680 char* var5 /* : CString */;
681 val* var6 /* : String */;
682 val* var7 /* : nullable Int */;
683 val* var8 /* : nullable Int */;
684 val* var9 /* : nullable Bool */;
685 val* var10 /* : nullable Bool */;
686 val* var11 /* : String */;
687 val* var_basename /* var basename: String */;
688 val* var13 /* : NativeArray[String] */;
689 static val* varonce12;
690 static val* varonce14;
691 val* var15 /* : String */;
692 char* var16 /* : CString */;
693 val* var17 /* : String */;
694 val* var18 /* : nullable Int */;
695 val* var19 /* : nullable Int */;
696 val* var20 /* : nullable Bool */;
697 val* var21 /* : nullable Bool */;
698 val* var22 /* : String */;
699 val* var_res /* var res: String */;
700 {
701 { /* Inline c_tools$ExternFile$filename (self) on <self:ExternCFile> */
702 var3 = self->attrs[COLOR_nitc__c_tools__ExternFile___filename].val; /* _filename on <self:ExternCFile> */
703 if (unlikely(var3 == NULL)) {
704 if(catchStack.cursor >= 0){
705 longjmp(catchStack.envs[catchStack.cursor], 1);
706 }
707 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
708 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 108);
709 fatal_exit(1);
710 }
711 var1 = var3;
712 RET_LABEL2:(void)0;
713 }
714 }
715 if (likely(varonce!=NULL)) {
716 var4 = varonce;
717 } else {
718 var5 = ".c";
719 var7 = (val*)(2l<<2|1);
720 var8 = (val*)(2l<<2|1);
721 var9 = (val*)((long)(0)<<2|3);
722 var10 = (val*)((long)(0)<<2|3);
723 var6 = core__flat___CString___to_s_unsafe(var5, var7, var8, var9, var10);
724 var4 = var6;
725 varonce = var4;
726 }
727 {
728 var11 = ((val*(*)(val* self, val* p0))(var1->class->vft[COLOR_core__file__String__basename]))(var1, var4); /* basename on <var1:String>*/
729 }
730 var_basename = var11;
731 if (unlikely(varonce12==NULL)) {
732 var13 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String);
733 if (likely(varonce14!=NULL)) {
734 var15 = varonce14;
735 } else {
736 var16 = ".extern.o";
737 var18 = (val*)(9l<<2|1);
738 var19 = (val*)(9l<<2|1);
739 var20 = (val*)((long)(0)<<2|3);
740 var21 = (val*)((long)(0)<<2|3);
741 var17 = core__flat___CString___to_s_unsafe(var16, var18, var19, var20, var21);
742 var15 = var17;
743 varonce14 = var15;
744 }
745 ((struct instance_core__NativeArray*)var13)->values[1]=var15;
746 } else {
747 var13 = varonce12;
748 varonce12 = NULL;
749 }
750 ((struct instance_core__NativeArray*)var13)->values[0]=var_basename;
751 {
752 var22 = ((val*(*)(val* self))(var13->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var13); /* native_to_s on <var13:NativeArray[String]>*/
753 }
754 varonce12 = var13;
755 var_res = var22;
756 var = var_res;
757 goto RET_LABEL;
758 RET_LABEL:;
759 return var;
760 }
761 /* method c_tools$ExternCFile$makefile_rule_content for (self: ExternCFile): String */
762 val* nitc___nitc__ExternCFile___ExternFile__makefile_rule_content(val* self) {
763 val* var /* : String */;
764 val* var1 /* : String */;
765 val* var3 /* : String */;
766 val* var4 /* : String */;
767 val* var_ff /* var ff: String */;
768 val* var5 /* : String */;
769 val* var_o /* var o: String */;
770 static val* varonce;
771 val* var6 /* : String */;
772 char* var7 /* : CString */;
773 val* var8 /* : String */;
774 val* var9 /* : nullable Int */;
775 val* var10 /* : nullable Int */;
776 val* var11 /* : nullable Bool */;
777 val* var12 /* : nullable Bool */;
778 val* var_pkg /* var pkg: String */;
779 val* var13 /* : Array[String] */;
780 val* var15 /* : Array[String] */;
781 short int var16 /* : Bool */;
782 short int var17 /* : Bool */;
783 val* var19 /* : NativeArray[String] */;
784 static val* varonce18;
785 static val* varonce20;
786 val* var21 /* : String */;
787 char* var22 /* : CString */;
788 val* var23 /* : String */;
789 val* var24 /* : nullable Int */;
790 val* var25 /* : nullable Int */;
791 val* var26 /* : nullable Bool */;
792 val* var27 /* : nullable Bool */;
793 static val* varonce28;
794 val* var29 /* : String */;
795 char* var30 /* : CString */;
796 val* var31 /* : String */;
797 val* var32 /* : nullable Int */;
798 val* var33 /* : nullable Int */;
799 val* var34 /* : nullable Bool */;
800 val* var35 /* : nullable Bool */;
801 val* var36 /* : Array[String] */;
802 val* var38 /* : Array[String] */;
803 static val* varonce39;
804 val* var40 /* : String */;
805 char* var41 /* : CString */;
806 val* var42 /* : String */;
807 val* var43 /* : nullable Int */;
808 val* var44 /* : nullable Int */;
809 val* var45 /* : nullable Bool */;
810 val* var46 /* : nullable Bool */;
811 val* var47 /* : String */;
812 val* var48 /* : String */;
813 val* var50 /* : NativeArray[String] */;
814 static val* varonce49;
815 static val* varonce51;
816 val* var52 /* : String */;
817 char* var53 /* : CString */;
818 val* var54 /* : String */;
819 val* var55 /* : nullable Int */;
820 val* var56 /* : nullable Int */;
821 val* var57 /* : nullable Bool */;
822 val* var58 /* : nullable Bool */;
823 static val* varonce59;
824 val* var60 /* : String */;
825 char* var61 /* : CString */;
826 val* var62 /* : String */;
827 val* var63 /* : nullable Int */;
828 val* var64 /* : nullable Int */;
829 val* var65 /* : nullable Bool */;
830 val* var66 /* : nullable Bool */;
831 static val* varonce67;
832 val* var68 /* : String */;
833 char* var69 /* : CString */;
834 val* var70 /* : String */;
835 val* var71 /* : nullable Int */;
836 val* var72 /* : nullable Int */;
837 val* var73 /* : nullable Bool */;
838 val* var74 /* : nullable Bool */;
839 static val* varonce75;
840 val* var76 /* : String */;
841 char* var77 /* : CString */;
842 val* var78 /* : String */;
843 val* var79 /* : nullable Int */;
844 val* var80 /* : nullable Int */;
845 val* var81 /* : nullable Bool */;
846 val* var82 /* : nullable Bool */;
847 val* var83 /* : String */;
848 val* var85 /* : String */;
849 val* var86 /* : String */;
850 {
851 { /* Inline c_tools$ExternFile$filename (self) on <self:ExternCFile> */
852 var3 = self->attrs[COLOR_nitc__c_tools__ExternFile___filename].val; /* _filename on <self:ExternCFile> */
853 if (unlikely(var3 == NULL)) {
854 if(catchStack.cursor >= 0){
855 longjmp(catchStack.envs[catchStack.cursor], 1);
856 }
857 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
858 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 108);
859 fatal_exit(1);
860 }
861 var1 = var3;
862 RET_LABEL2:(void)0;
863 }
864 }
865 {
866 var4 = ((val*(*)(val* self, val* p0))(var1->class->vft[COLOR_core__file__String__basename]))(var1, ((val*)NULL)); /* basename on <var1:String>*/
867 }
868 var_ff = var4;
869 {
870 var5 = nitc___nitc__ExternCFile___ExternFile__makefile_rule_name(self);
871 }
872 var_o = var5;
873 if (likely(varonce!=NULL)) {
874 var6 = varonce;
875 } else {
876 var7 = "";
877 var9 = (val*)(0l<<2|1);
878 var10 = (val*)(0l<<2|1);
879 var11 = (val*)((long)(0)<<2|3);
880 var12 = (val*)((long)(0)<<2|3);
881 var8 = core__flat___CString___to_s_unsafe(var7, var9, var10, var11, var12);
882 var6 = var8;
883 varonce = var6;
884 }
885 var_pkg = var6;
886 {
887 { /* Inline c_tools$ExternFile$pkgconfigs (self) on <self:ExternCFile> */
888 var15 = self->attrs[COLOR_nitc__c_tools__ExternFile___pkgconfigs].val; /* _pkgconfigs on <self:ExternCFile> */
889 if (unlikely(var15 == NULL)) {
890 if(catchStack.cursor >= 0){
891 longjmp(catchStack.envs[catchStack.cursor], 1);
892 }
893 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs");
894 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 123);
895 fatal_exit(1);
896 }
897 var13 = var15;
898 RET_LABEL14:(void)0;
899 }
900 }
901 {
902 var16 = core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var13);
903 }
904 var17 = !var16;
905 if (var17){
906 if (unlikely(varonce18==NULL)) {
907 var19 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String);
908 if (likely(varonce20!=NULL)) {
909 var21 = varonce20;
910 } else {
911 var22 = "`pkg-config --cflags ";
912 var24 = (val*)(21l<<2|1);
913 var25 = (val*)(21l<<2|1);
914 var26 = (val*)((long)(0)<<2|3);
915 var27 = (val*)((long)(0)<<2|3);
916 var23 = core__flat___CString___to_s_unsafe(var22, var24, var25, var26, var27);
917 var21 = var23;
918 varonce20 = var21;
919 }
920 ((struct instance_core__NativeArray*)var19)->values[0]=var21;
921 if (likely(varonce28!=NULL)) {
922 var29 = varonce28;
923 } else {
924 var30 = "`";
925 var32 = (val*)(1l<<2|1);
926 var33 = (val*)(1l<<2|1);
927 var34 = (val*)((long)(0)<<2|3);
928 var35 = (val*)((long)(0)<<2|3);
929 var31 = core__flat___CString___to_s_unsafe(var30, var32, var33, var34, var35);
930 var29 = var31;
931 varonce28 = var29;
932 }
933 ((struct instance_core__NativeArray*)var19)->values[2]=var29;
934 } else {
935 var19 = varonce18;
936 varonce18 = NULL;
937 }
938 {
939 { /* Inline c_tools$ExternFile$pkgconfigs (self) on <self:ExternCFile> */
940 var38 = self->attrs[COLOR_nitc__c_tools__ExternFile___pkgconfigs].val; /* _pkgconfigs on <self:ExternCFile> */
941 if (unlikely(var38 == NULL)) {
942 if(catchStack.cursor >= 0){
943 longjmp(catchStack.envs[catchStack.cursor], 1);
944 }
945 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs");
946 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 123);
947 fatal_exit(1);
948 }
949 var36 = var38;
950 RET_LABEL37:(void)0;
951 }
952 }
953 if (likely(varonce39!=NULL)) {
954 var40 = varonce39;
955 } else {
956 var41 = " ";
957 var43 = (val*)(1l<<2|1);
958 var44 = (val*)(1l<<2|1);
959 var45 = (val*)((long)(0)<<2|3);
960 var46 = (val*)((long)(0)<<2|3);
961 var42 = core__flat___CString___to_s_unsafe(var41, var43, var44, var45, var46);
962 var40 = var42;
963 varonce39 = var40;
964 }
965 {
966 var47 = core__abstract_text___Collection___join(var36, var40, ((val*)NULL));
967 }
968 ((struct instance_core__NativeArray*)var19)->values[1]=var47;
969 {
970 var48 = ((val*(*)(val* self))(var19->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var19); /* native_to_s on <var19:NativeArray[String]>*/
971 }
972 varonce18 = var19;
973 var_pkg = var48;
974 } else {
975 }
976 if (unlikely(varonce49==NULL)) {
977 var50 = NEW_core__NativeArray((int)8l, &type_core__NativeArray__core__String);
978 if (likely(varonce51!=NULL)) {
979 var52 = varonce51;
980 } else {
981 var53 = "$(CC) $(CFLAGS) -Wall -Wno-unused-function ";
982 var55 = (val*)(43l<<2|1);
983 var56 = (val*)(43l<<2|1);
984 var57 = (val*)((long)(0)<<2|3);
985 var58 = (val*)((long)(0)<<2|3);
986 var54 = core__flat___CString___to_s_unsafe(var53, var55, var56, var57, var58);
987 var52 = var54;
988 varonce51 = var52;
989 }
990 ((struct instance_core__NativeArray*)var50)->values[0]=var52;
991 if (likely(varonce59!=NULL)) {
992 var60 = varonce59;
993 } else {
994 var61 = " ";
995 var63 = (val*)(1l<<2|1);
996 var64 = (val*)(1l<<2|1);
997 var65 = (val*)((long)(0)<<2|3);
998 var66 = (val*)((long)(0)<<2|3);
999 var62 = core__flat___CString___to_s_unsafe(var61, var63, var64, var65, var66);
1000 var60 = var62;
1001 varonce59 = var60;
1002 }
1003 ((struct instance_core__NativeArray*)var50)->values[2]=var60;
1004 if (likely(varonce67!=NULL)) {
1005 var68 = varonce67;
1006 } else {
1007 var69 = " -c -o ";
1008 var71 = (val*)(7l<<2|1);
1009 var72 = (val*)(7l<<2|1);
1010 var73 = (val*)((long)(0)<<2|3);
1011 var74 = (val*)((long)(0)<<2|3);
1012 var70 = core__flat___CString___to_s_unsafe(var69, var71, var72, var73, var74);
1013 var68 = var70;
1014 varonce67 = var68;
1015 }
1016 ((struct instance_core__NativeArray*)var50)->values[4]=var68;
1017 if (likely(varonce75!=NULL)) {
1018 var76 = varonce75;
1019 } else {
1020 var77 = " ";
1021 var79 = (val*)(1l<<2|1);
1022 var80 = (val*)(1l<<2|1);
1023 var81 = (val*)((long)(0)<<2|3);
1024 var82 = (val*)((long)(0)<<2|3);
1025 var78 = core__flat___CString___to_s_unsafe(var77, var79, var80, var81, var82);
1026 var76 = var78;
1027 varonce75 = var76;
1028 }
1029 ((struct instance_core__NativeArray*)var50)->values[6]=var76;
1030 } else {
1031 var50 = varonce49;
1032 varonce49 = NULL;
1033 }
1034 {
1035 { /* Inline c_tools$ExternCFile$cflags (self) on <self:ExternCFile> */
1036 var85 = self->attrs[COLOR_nitc__c_tools__ExternCFile___cflags].val; /* _cflags on <self:ExternCFile> */
1037 if (unlikely(var85 == NULL)) {
1038 if(catchStack.cursor >= 0){
1039 longjmp(catchStack.envs[catchStack.cursor], 1);
1040 }
1041 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _cflags");
1042 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools, 132);
1043 fatal_exit(1);
1044 }
1045 var83 = var85;
1046 RET_LABEL84:(void)0;
1047 }
1048 }
1049 ((struct instance_core__NativeArray*)var50)->values[1]=var83;
1050 ((struct instance_core__NativeArray*)var50)->values[3]=var_pkg;
1051 ((struct instance_core__NativeArray*)var50)->values[5]=var_o;
1052 ((struct instance_core__NativeArray*)var50)->values[7]=var_ff;
1053 {
1054 var86 = ((val*(*)(val* self))(var50->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var50); /* native_to_s on <var50:NativeArray[String]>*/
1055 }
1056 varonce49 = var50;
1057 var = var86;
1058 goto RET_LABEL;
1059 RET_LABEL:;
1060 return var;
1061 }
1062 /* method c_tools$ExternCFile$compiles_to_o_file for (self: ExternCFile): Bool */
1063 short int nitc___nitc__ExternCFile___ExternFile__compiles_to_o_file(val* self) {
1064 short int var /* : Bool */;
1065 var = 1;
1066 goto RET_LABEL;
1067 RET_LABEL:;
1068 return var;
1069 }
1070 /* method c_tools$ExternCFile$init for (self: ExternCFile) */
1071 void nitc___nitc__ExternCFile___core__kernel__Object__init(val* self) {
1072 {
1073 ((void(*)(val* self))(self->class->vft[COLOR_nitc___nitc__ExternCFile___core__kernel__Object__init]))(self); /* init on <self:ExternCFile>*/
1074 }
1075 RET_LABEL:;
1076 }