X-Git-Url: http://nitlanguage.org diff --git a/c_src/parser._sep.c b/c_src/parser._sep.c index 33902e3..e34f157 100644 --- a/c_src/parser._sep.c +++ b/c_src/parser._sep.c @@ -1,33633 +1,39603 @@ +/* This C file is generated by NIT to compile module parser. */ #include "parser._sep.h" -val_t parser___State___state(val_t self) { - struct trace_t trace = {NULL, "parser::State::state (src/parser//parser.nit:10,2--11:35)"}; - trace.prev = tracehead; tracehead = &trace; - tracehead = trace.prev; - return ATTR_parser___State____state( self) /*State::_state*/; -} -void parser___State___state__eq(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::State::state= (src/parser//parser.nit:10,2--11:35)"}; - trace.prev = tracehead; tracehead = &trace; - ATTR_parser___State____state( self) /*State::_state*/ = param0; - tracehead = trace.prev; - return; -} -val_t parser___State___nodes(val_t self) { - struct trace_t trace = {NULL, "parser::State::nodes (src/parser//parser.nit:13,2--14:38)"}; - trace.prev = tracehead; tracehead = &trace; - tracehead = trace.prev; - return ATTR_parser___State____nodes( self) /*State::_nodes*/; -} -void parser___State___nodes__eq(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::State::nodes= (src/parser//parser.nit:13,2--14:38)"}; - trace.prev = tracehead; tracehead = &trace; - ATTR_parser___State____nodes( self) /*State::_nodes*/ = param0; - tracehead = trace.prev; - return; -} -void parser___State___init(val_t self, val_t param0, val_t param1, int* init_table) { - struct trace_t trace = {NULL, "parser::State::init (src/parser//parser.nit:16,2--19:16)"}; - val_t variable0; - val_t variable1; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = param1; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_State].i]) return; - ATTR_parser___State____state( self) /*State::_state*/ = variable0 /*state*/; - ATTR_parser___State____nodes( self) /*State::_nodes*/ = variable1 /*nodes*/; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_State].i] = 1; - tracehead = trace.prev; - return; -} -void parser___Parser___init(val_t self, val_t param0, int* init_table) { - struct trace_t trace = {NULL, "parser::Parser::init (src/parser//parser.nit:33,2--41:20)"}; - val_t variable0; - val_t variable1; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_Parser].i]) return; - ATTR_parser___Parser____lexer( self) /*Parser::_lexer*/ = variable0 /*lexer*/; - variable1 = NEW_array___Array___init(); /*new Array[State]*/ - ATTR_parser___Parser____stack( self) /*Parser::_stack*/ = variable1; - variable1 = TAG_Int(-UNTAG_Int( TAG_Int(1))); - ATTR_parser___Parser____stack_pos( self) /*Parser::_stack_pos*/ = variable1; - ((parser_tables___Parser___build_goto_table_t)CALL( self,COLOR_parser_tables___Parser___build_goto_table))( self) /*Parser::build_goto_table*/; - ((parser_tables___Parser___build_action_table_t)CALL( self,COLOR_parser_tables___Parser___build_action_table))( self) /*Parser::build_action_table*/; - ((parser___Parser___build_reduce_table_t)CALL( self,COLOR_parser___Parser___build_reduce_table))( self) /*Parser::build_reduce_table*/; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_Parser].i] = 1; - tracehead = trace.prev; - return; -} -val_t parser___Parser___go_to(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::Parser::go_to (src/parser//parser.nit:44,2--65:16)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable2 = ((parser___Parser___state_t)CALL( self,COLOR_parser___Parser___state))( self) /*Parser::state*/; - variable1 = variable2; - variable3 = ATTR_parser_tables___Parser____goto_table( self) /*Parser::_goto_table*/; - variable4 = variable0 /*index*/; - variable5 = TAG_Bool(UNTAG_Int( variable4 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable6 = variable5; - if (UNTAG_Bool(variable6)) { /* and */ - variable6 = variable3; - variable6 = ATTR_array___AbstractArray____length(variable6) /*Array::_length*/; - variable6 = TAG_Bool(UNTAG_Int( variable4 /*index*/)=UNTAG_Int( TAG_Int(0))); - variable9 = variable8; - if (UNTAG_Bool(variable9)) { /* and */ - variable9 = ATTR_array___AbstractArray____length( variable2 /*table*/) /*Array::_length*/; - variable9 = TAG_Bool(UNTAG_Int( variable7 /*index*/)=UNTAG_Int( TAG_Int(0))); - variable9 = variable8; - if (UNTAG_Bool(variable9)) { /* and */ - variable9 = ATTR_array___AbstractArray____length( variable2 /*table*/) /*Array::_length*/; - variable9 = TAG_Bool(UNTAG_Int( variable7 /*index*/)UNTAG_Int(variable7)); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = TAG_Int(UNTAG_Int( variable5 /*middle*/)+UNTAG_Int( TAG_Int(1))); - variable3 = variable7 /*low=*/; - } else { /*if*/ - variable7 = TAG_Int(UNTAG_Int( variable6 /*subindex*/)+UNTAG_Int( TAG_Int(1))); - variable8 = variable7; - variable9 = TAG_Bool(UNTAG_Int( variable8 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable10 = variable9; - if (UNTAG_Bool(variable10)) { /* and */ - variable10 = ATTR_array___AbstractArray____length( variable2 /*table*/) /*Array::_length*/; - variable10 = TAG_Bool(UNTAG_Int( variable8 /*index*/)vft[INIT_TABLE_POS_State].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos0]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 15; + fra.me.meth = LOCATE_parser___State___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + fra.me.REG[1] = p2; + /* ./parser//parser.nit:17 */ + ATTR_parser___State____state(fra.me.REG[0]) = REGB0; + /* ./parser//parser.nit:18 */ + ATTR_parser___State____nodes(fra.me.REG[0]) = fra.me.REG[1]; + stack_frame_head = fra.me.prev; + init_table[itpos0] = 1; + return; +} +void parser___Parser___init(val_t p0, val_t p1, int* init_table){ + int itpos1 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_Parser].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos1]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 33; + fra.me.meth = LOCATE_parser___Parser___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:36 */ + ATTR_parser___Parser____lexer(fra.me.REG[0]) = fra.me.REG[1]; + /* ./parser//parser.nit:37 */ + fra.me.REG[1] = NEW_Array_array___Array___init(); + ATTR_parser___Parser____stack(fra.me.REG[0]) = fra.me.REG[1]; + /* ./parser//parser.nit:38 */ + REGB0 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:216 */ + REGB0 = TAG_Int(-UNTAG_Int(REGB0)); + /* ./parser//parser.nit:38 */ + ATTR_parser___Parser____stack_pos(fra.me.REG[0]) = REGB0; + /* ./parser//parser.nit:39 */ + CALL_parser___Parser___build_reduce_table(fra.me.REG[0])(fra.me.REG[0]); + stack_frame_head = fra.me.prev; + init_table[itpos1] = 1; + return; +} +val_t parser___Parser___go_to(val_t p0, val_t p1){ + struct {struct stack_frame_t me;} fra; + val_t REGB0; + val_t REGB1; + val_t REGB2; + val_t REGB3; + val_t REGB4; + val_t REGB5; + val_t REGB6; + val_t REGB7; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 42; + fra.me.meth = LOCATE_parser___Parser___go_to; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:45 */ + REGB1 = CALL_parser___Parser___state(fra.me.REG[0])(fra.me.REG[0]); + /* ./parser//parser.nit:46 */ + REGB2 = TAG_Int(1); + /* ./parser//parser.nit:47 */ + REGB3 = TAG_Int(0); + REGB3 = CALL_tables___TablesCapable___parser_goto(fra.me.REG[0])(fra.me.REG[0], REGB0, REGB3); + REGB4 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:217 */ + REGB4 = TAG_Int(UNTAG_Int(REGB3)-UNTAG_Int(REGB4)); + /* ./parser//parser.nit:49 */ + while(1) { + /* ./../lib/standard//kernel.nit:211 */ + REGB3 = TAG_Bool(UNTAG_Int(REGB2)<=UNTAG_Int(REGB4)); + /* ./parser//parser.nit:49 */ + if (UNTAG_Bool(REGB3)) { + /* ./../lib/standard//kernel.nit:215 */ + REGB3 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB4)); + /* ./parser//parser.nit:50 */ + REGB5 = TAG_Int(2); + /* ./../lib/standard//kernel.nit:219 */ + REGB5 = TAG_Int(UNTAG_Int(REGB3)/UNTAG_Int(REGB5)); + /* ./parser//parser.nit:51 */ + REGB3 = TAG_Int(2); + /* ./../lib/standard//kernel.nit:218 */ + REGB3 = TAG_Int(UNTAG_Int(REGB5)*UNTAG_Int(REGB3)); + /* ./parser//parser.nit:51 */ + REGB6 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB6 = TAG_Int(UNTAG_Int(REGB3)+UNTAG_Int(REGB6)); + /* ./parser//parser.nit:53 */ + REGB3 = CALL_tables___TablesCapable___parser_goto(fra.me.REG[0])(fra.me.REG[0], REGB0, REGB6); + /* ./../lib/standard//kernel.nit:212 */ + REGB7 = TAG_Bool(UNTAG_Int(REGB1)UNTAG_Int(REGB3)); + /* ./parser//parser.nit:56 */ + if (UNTAG_Bool(REGB3)) { + /* ./parser//parser.nit:57 */ + REGB3 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB3 = TAG_Int(UNTAG_Int(REGB5)+UNTAG_Int(REGB3)); + /* ./parser//parser.nit:57 */ + REGB2 = REGB3; + } else { + /* ./parser//parser.nit:59 */ + REGB3 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB3 = TAG_Int(UNTAG_Int(REGB6)+UNTAG_Int(REGB3)); + /* ./parser//parser.nit:59 */ + REGB3 = CALL_tables___TablesCapable___parser_goto(fra.me.REG[0])(fra.me.REG[0], REGB0, REGB3); + goto label1; } - variable9 = variable10; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);} - variable9 = ATTR_array___Array____items( variable2 /*table*/) /*Array::_items*/; - variable9 = UNBOX_NativeArray(variable9)[UNTAG_Int( variable8 /*index*/)]; - goto return_label7; - return_label7: while(false); - variable7 = variable9; - variable1 = variable7; - goto return_label2; } + } else { + /* ./parser//parser.nit:49 */ + goto label2; + } + } + label2: while(0); + /* ./parser//parser.nit:63 */ + REGB2 = TAG_Int(2); + REGB2 = CALL_tables___TablesCapable___parser_goto(fra.me.REG[0])(fra.me.REG[0], REGB0, REGB2); + REGB3 = REGB2; + goto label1; + label1: while(0); + stack_frame_head = fra.me.prev; + return REGB3; +} +void parser___Parser___push(val_t p0, val_t p1, val_t p2){ + struct {struct stack_frame_t me; val_t MORE_REG[2];} fra; + val_t REGB0; + val_t REGB1; + val_t REGB2; + val_t REGB3; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 66; + fra.me.meth = LOCATE_parser___Parser___push; + fra.me.has_broke = 0; + fra.me.REG_size = 3; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + fra.me.REG[1] = p2; + /* ./parser//parser.nit:69 */ + REGB1 = TAG_Bool(ATTR_parser___Parser____stack_pos(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_stack_pos", LOCATE_parser, 69); + } + REGB1 = ATTR_parser___Parser____stack_pos(fra.me.REG[0]); + REGB2 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB2 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB2)); + /* ./parser//parser.nit:70 */ + ATTR_parser___Parser____stack_pos(fra.me.REG[0]) = REGB2; + /* ./parser//parser.nit:71 */ + REGB1 = TAG_Bool(ATTR_parser___Parser____stack(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_stack", LOCATE_parser, 71); + } + fra.me.REG[2] = ATTR_parser___Parser____stack(fra.me.REG[0]); + /* ./../lib/standard//collection//array.nit:23 */ + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23); + } + REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]); + /* ./../lib/standard//kernel.nit:212 */ + REGB1 = TAG_Bool(UNTAG_Int(REGB2)=UNTAG_Int(REGB1)); + /* ./../lib/standard//collection//array.nit:245 */ + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 245); + } + REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]); + /* ./../lib/standard//kernel.nit:212 */ + REGB1 = TAG_Bool(UNTAG_Int(REGB2)=UNTAG_Int( TAG_Int(0))); - variable7 = variable6; - if (UNTAG_Bool(variable7)) { /* and */ - variable7 = ATTR_array___AbstractArray____length( variable2 /*table*/) /*Array::_length*/; - variable7 = TAG_Bool(UNTAG_Int( variable5 /*index*/)=UNTAG_Int( TAG_Int(0))); - variable7 = variable6; - if (UNTAG_Bool(variable7)) { /* and */ - variable7 = variable4; - variable7 = ATTR_array___AbstractArray____length(variable7) /*Array::_length*/; - variable7 = TAG_Bool(UNTAG_Int( variable5 /*index*/)=UNTAG_Int( TAG_Int(0))); - variable4 = variable3; - if (UNTAG_Bool(variable4)) { /* and */ - variable4 = variable0; - variable4 = ATTR_array___AbstractArray____length(variable4) /*Array::_length*/; - variable4 = TAG_Bool(UNTAG_Int( variable2 /*index*/)=UNTAG_Int( TAG_Int(0))); - variable5 = variable4; - if (UNTAG_Bool(variable5)) { /* and */ - variable5 = variable1; - variable5 = ATTR_array___AbstractArray____length(variable5) /*Array::_length*/; - variable5 = TAG_Bool(UNTAG_Int( variable3 /*index*/)val[UNTAG_Int(REGB2)]; + /* ./../lib/standard//collection//array.nit:246 */ + goto label1; + label1: while(0); + /* ./parser//parser.nit:73 */ + CALL_parser___State___state__eq(fra.me.REG[2])(fra.me.REG[2], REGB0); + /* ./parser//parser.nit:74 */ + CALL_parser___State___nodes__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); + } else { + /* ./parser//parser.nit:76 */ + REGB2 = TAG_Bool(ATTR_parser___Parser____stack(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB2)) { + } else { + nit_abort("Uninitialized attribute %s", "_stack", LOCATE_parser, 76); } - variable6 = ((lexer___Token___parser_index_t)CALL( variable2 /*token*/,COLOR_lexer___Token___parser_index))( variable2 /*token*/) /*Token::parser_index*/; - variable5 = variable6; - variable7 = ATTR_parser_tables___Parser____action_table( self) /*Parser::_action_table*/; - variable8 = ((parser___Parser___state_t)CALL( self,COLOR_parser___Parser___state))( self) /*Parser::state*/; - variable9 = variable8; - variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable11 = variable10; - if (UNTAG_Bool(variable11)) { /* and */ - variable11 = variable7; - variable11 = ATTR_array___AbstractArray____length(variable11) /*Array::_length*/; - variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)=UNTAG_Int(REGB1)); + /* ./../lib/standard//collection//array.nit:245 */ + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[1])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 245); } - variable10 = variable11; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);} - variable10 = variable7; - variable10 = ATTR_array___Array____items(variable10) /*Array::_items*/; - variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)]; - goto return_label17; - return_label17: while(false); - variable7 = variable10; - variable6 = variable7; - variable8 = TAG_Int(1); - variable9 = TAG_Bool(UNTAG_Int( variable8 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable10 = variable9; - if (UNTAG_Bool(variable10)) { /* and */ - variable10 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*Array::_length*/; - variable10 = TAG_Bool(UNTAG_Int( variable8 /*index*/)val[UNTAG_Int(REGB0)]; + /* ./../lib/standard//collection//array.nit:246 */ + goto label1; + label1: while(0); + /* ./parser//parser.nit:83 */ + REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 83); + } + REGB0 = CALL_parser___State___state(fra.me.REG[1])(fra.me.REG[1]); + goto label2; + label2: while(0); + stack_frame_head = fra.me.prev; + return REGB0; +} +val_t parser___Parser___pop(val_t p0){ + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t REGB1; + val_t REGB2; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 86; + fra.me.meth = LOCATE_parser___Parser___pop; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + /* ./parser//parser.nit:89 */ + REGB0 = TAG_Bool(ATTR_parser___Parser____stack(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_stack", LOCATE_parser, 89); + } + fra.me.REG[1] = ATTR_parser___Parser____stack(fra.me.REG[0]); + REGB0 = TAG_Bool(ATTR_parser___Parser____stack_pos(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_stack_pos", LOCATE_parser, 89); + } + REGB0 = ATTR_parser___Parser____stack_pos(fra.me.REG[0]); + /* ./../lib/standard//collection//array.nit:245 */ + REGB1 = TAG_Int(0); + /* ./../lib/standard//kernel.nit:213 */ + REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1)); + /* ./../lib/standard//collection//array.nit:245 */ + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[1])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 245); } - variable9 = variable10; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);} - variable9 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/; - variable9 = UNBOX_NativeArray(variable9)[UNTAG_Int( variable8 /*index*/)]; - goto return_label18; - return_label18: while(false); - variable8 = variable9; - variable7 = variable8; - variable9 = TAG_Int(2); - variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable11 = variable10; - if (UNTAG_Bool(variable11)) { /* and */ - variable11 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*Array::_length*/; - variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)val[UNTAG_Int(REGB0)]; + /* ./../lib/standard//collection//array.nit:246 */ + goto label1; + label1: while(0); + /* ./parser//parser.nit:89 */ + REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 89); + } + fra.me.REG[1] = CALL_parser___State___nodes(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:90 */ + REGB0 = TAG_Bool(ATTR_parser___Parser____stack_pos(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_stack_pos", LOCATE_parser, 90); + } + REGB0 = ATTR_parser___Parser____stack_pos(fra.me.REG[0]); + REGB1 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:217 */ + REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1)); + /* ./parser//parser.nit:90 */ + ATTR_parser___Parser____stack_pos(fra.me.REG[0]) = REGB1; + /* ./parser//parser.nit:91 */ + goto label2; + label2: while(0); + stack_frame_head = fra.me.prev; + return fra.me.REG[1]; +} +val_t parser___Parser___parse(val_t p0){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t REGB2; + val_t REGB3; + val_t REGB4; + val_t REGB5; + val_t REGB6; + val_t REGB7; + val_t REGB8; + val_t tmp; + static val_t once_value_4; /* Once value */ + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 94; + fra.me.meth = LOCATE_parser___Parser___parse; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + /* ./parser//parser.nit:97 */ + REGB0 = TAG_Int(0); + CALL_parser___Parser___push(fra.me.REG[0])(fra.me.REG[0], REGB0, NIT_NULL); + /* ./parser//parser.nit:99 */ + REGB0 = TAG_Bool(ATTR_parser___Parser____lexer(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_lexer", LOCATE_parser, 99); + } + fra.me.REG[1] = ATTR_parser___Parser____lexer(fra.me.REG[0]); + /* ./parser//parser.nit:100 */ + while(1) { + /* ./parser//parser.nit:101 */ + fra.me.REG[2] = CALL_lexer___Lexer___peek(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:102 */ + REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[2], COLOR_AError, ID_AError)) /*cast AError*/; + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:103 */ + fra.me.REG[3] = NEW_Start_parser_prod___Start___init(NIT_NULL, fra.me.REG[2]); + goto label1; } - variable10 = variable11; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);} - variable10 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/; - variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)]; - goto return_label19; - return_label19: while(false); - variable9 = variable10; - variable8 = variable9; - variable9 = TAG_Int(1); - variable11 = ((array___AbstractArray___length_t)CALL( variable6 /*table*/,COLOR_abstract_collection___Collection___length))( variable6 /*table*/) /*Array::length*/; - variable11 = TAG_Int(UNTAG_Int(variable11)/UNTAG_Int( TAG_Int(3))); - variable11 = TAG_Int(UNTAG_Int(variable11)-UNTAG_Int( TAG_Int(1))); - variable10 = variable11; - while (true) { /*while*/ - variable11 = TAG_Bool(UNTAG_Int( variable9 /*low*/)<=UNTAG_Int( variable10 /*high*/)); - if (!UNTAG_Bool(variable11)) break; /* while*/ - variable12 = TAG_Int(UNTAG_Int( variable9 /*low*/)+UNTAG_Int( variable10 /*high*/)); - variable12 = TAG_Int(UNTAG_Int(variable12)/UNTAG_Int( TAG_Int(2))); - variable11 = variable12; - variable13 = TAG_Int(UNTAG_Int( variable11 /*middle*/)*UNTAG_Int( TAG_Int(3))); - variable12 = variable13; - variable13 = variable12 /*subindex*/; - variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable15 = variable14; - if (UNTAG_Bool(variable15)) { /* and */ - variable15 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*Array::_length*/; - variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)UNTAG_Int(REGB5)); + /* ./parser//parser.nit:120 */ + if (UNTAG_Bool(REGB5)) { + /* ./parser//parser.nit:121 */ + REGB5 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB5 = TAG_Int(UNTAG_Int(REGB6)+UNTAG_Int(REGB5)); + /* ./parser//parser.nit:121 */ + REGB1 = REGB5; + } else { + /* ./parser//parser.nit:123 */ + REGB5 = CALL_parser___Parser___state(fra.me.REG[0])(fra.me.REG[0]); + REGB6 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB6 = TAG_Int(UNTAG_Int(REGB7)+UNTAG_Int(REGB6)); + /* ./parser//parser.nit:123 */ + REGB6 = CALL_tables___TablesCapable___parser_action(fra.me.REG[0])(fra.me.REG[0], REGB5, REGB6); + REGB2 = REGB6; + /* ./parser//parser.nit:124 */ + REGB6 = CALL_parser___Parser___state(fra.me.REG[0])(fra.me.REG[0]); + REGB5 = TAG_Int(2); + /* ./../lib/standard//kernel.nit:215 */ + REGB5 = TAG_Int(UNTAG_Int(REGB7)+UNTAG_Int(REGB5)); + /* ./parser//parser.nit:124 */ + REGB5 = CALL_tables___TablesCapable___parser_action(fra.me.REG[0])(fra.me.REG[0], REGB6, REGB5); + REGB3 = REGB5; + /* ./parser//parser.nit:125 */ + goto label2; + } + } + } else { + /* ./parser//parser.nit:113 */ + goto label2; } - variable14 = variable15; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);} - variable14 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/; - variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)]; - goto return_label21; - return_label21: while(false); - variable13 = variable14; - variable13 = TAG_Bool(UNTAG_Int( variable5 /*index*/)=UNTAG_Int( TAG_Int(0))); - variable15 = variable14; - if (UNTAG_Bool(variable15)) { /* and */ - variable15 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*Array::_length*/; - variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)=UNTAG_Int(REGB1)); + /* ./../lib/standard//collection//array.nit:245 */ + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 245); + } + REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[4]); + /* ./../lib/standard//kernel.nit:212 */ + REGB1 = TAG_Bool(UNTAG_Int(REGB3)UNTAG_Int(variable13)); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = TAG_Int(UNTAG_Int( variable11 /*middle*/)+UNTAG_Int( TAG_Int(1))); - variable9 = variable13 /*low=*/; - } else { /*if*/ - variable13 = TAG_Int(UNTAG_Int( variable12 /*subindex*/)+UNTAG_Int( TAG_Int(1))); - variable14 = variable13; - variable15 = TAG_Bool(UNTAG_Int( variable14 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable16 = variable15; - if (UNTAG_Bool(variable16)) { /* and */ - variable16 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*Array::_length*/; - variable16 = TAG_Bool(UNTAG_Int( variable14 /*index*/)val[UNTAG_Int(REGB3)]; + /* ./../lib/standard//collection//array.nit:246 */ + goto label3; + label3: while(0); + /* ./parser//parser.nit:132 */ + REGB3 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB3)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 132); + } + CALL_parser___ReduceAction___action(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]); + } else { + /* ./parser//parser.nit:133 */ + REGB3 = TAG_Int(2); + REGB1 = TAG_Bool(IS_EQUAL_OO(REGB2,REGB3)); + if (UNTAG_Bool(REGB1)) { + } else { + /* ./../lib/standard//kernel.nit:207 */ + REGB3 = TAG_Bool((REGB2)==(REGB3)); + /* ./parser//parser.nit:133 */ + REGB1 = REGB3; + } + if (UNTAG_Bool(REGB1)) { + /* ./parser//parser.nit:134 */ + fra.me.REG[4] = CALL_lexer___Lexer___next(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:135 */ + REGB1 = TAG_Bool(VAL_ISA(fra.me.REG[4], COLOR_EOF, ID_EOF)) /*cast EOF*/; + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 135); + } + /* ./parser//parser.nit:136 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[0])(fra.me.REG[0]); + /* ./parser//parser.nit:137 */ + REGB1 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_AModule, ID_AModule)) /*cast AModule*/; + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 137); } - variable15 = variable16; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);} - variable15 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/; - variable15 = UNBOX_NativeArray(variable15)[UNTAG_Int( variable14 /*index*/)]; - goto return_label23; - return_label23: while(false); - variable13 = variable15; - variable7 = variable13 /*action_type=*/; - variable13 = TAG_Int(UNTAG_Int( variable12 /*subindex*/)+UNTAG_Int( TAG_Int(2))); - variable14 = variable13; - variable15 = TAG_Bool(UNTAG_Int( variable14 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable16 = variable15; - if (UNTAG_Bool(variable16)) { /* and */ - variable16 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*Array::_length*/; - variable16 = TAG_Bool(UNTAG_Int( variable14 /*index*/)=UNTAG_Int( TAG_Int(0))); - variable14 = variable13; - if (UNTAG_Bool(variable14)) { /* and */ - variable14 = variable11; - variable14 = ATTR_array___AbstractArray____length(variable14) /*Array::_length*/; - variable14 = TAG_Bool(UNTAG_Int( variable12 /*index*/)=UNTAG_Int( TAG_Int(0))); - variable17 = variable16; - if (UNTAG_Bool(variable17)) { /* and */ - variable17 = variable14; - variable17 = ATTR_array___AbstractArray____length(variable17) /*Array::_length*/; - variable17 = TAG_Bool(UNTAG_Int( variable15 /*index*/)val[UNTAG_Int(REGB0)]; + /* ./parser//parser.nit:886 */ + ATTR_parser___Prod____first_location(fra.me.REG[5]) = fra.me.REG[2]; + /* ./../lib/standard//collection//array.nit:239 */ + REGB1 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1)); + /* ./../lib/standard//collection//array.nit:239 */ + REGB0 = REGB1; + } else { + /* ./../lib/standard//collection//array.nit:237 */ + goto label2; + } + } + label2: while(0); + /* ./parser//parser.nit:888 */ + REGB0 = TAG_Bool(ATTR_parser___ComputeProdLocationVisitor____need_first_prods(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_need_first_prods", LOCATE_parser, 888); + } + fra.me.REG[4] = ATTR_parser___ComputeProdLocationVisitor____need_first_prods(fra.me.REG[0]); + CALL_abstract_collection___RemovableCollection___clear(fra.me.REG[4])(fra.me.REG[4]); + /* ./parser//parser.nit:891 */ + REGB0 = TAG_Bool(ATTR_parser___ComputeProdLocationVisitor____need_after_epsilons(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_need_after_epsilons", LOCATE_parser, 891); + } + fra.me.REG[4] = ATTR_parser___ComputeProdLocationVisitor____need_after_epsilons(fra.me.REG[0]); + /* ./../lib/standard//collection//array.nit:234 */ + REGB0 = TAG_Int(0); + /* ./../lib/standard//collection//array.nit:235 */ + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235); + } + REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[4]); + /* ./../lib/standard//collection//array.nit:236 */ + fra.me.REG[3] = ATTR_array___Array____items(fra.me.REG[4]); + /* ./../lib/standard//collection//array.nit:237 */ + while(1) { + /* ./../lib/standard//collection//array.nit:23 */ + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23); + } + REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[4]); + /* ./../lib/standard//kernel.nit:212 */ + REGB1 = TAG_Bool(UNTAG_Int(REGB0)val[UNTAG_Int(REGB0)]; + /* ./parser//parser.nit:894 */ + fra.me.REG[6] = fra.me.REG[2]; + /* ./parser//parser.nit:895 */ + fra.me.REG[7] = ATTR_parser___Prod____last_location(fra.me.REG[5]); + /* ./parser//parser.nit:896 */ + fra.me.REG[8] = CALL_location___Location___file(fra.me.REG[6])(fra.me.REG[6]); + REGB1 = TAG_Bool(fra.me.REG[7]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 896); + } + REGB1 = CALL_location___Location___line_end(fra.me.REG[7])(fra.me.REG[7]); + REGB2 = CALL_location___Location___line_start(fra.me.REG[6])(fra.me.REG[6]); + REGB3 = TAG_Bool(fra.me.REG[7]==NIT_NULL); + if (UNTAG_Bool(REGB3)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 896); + } + REGB3 = CALL_location___Location___column_end(fra.me.REG[7])(fra.me.REG[7]); + REGB4 = CALL_location___Location___column_start(fra.me.REG[6])(fra.me.REG[6]); + fra.me.REG[8] = NEW_Location_location___Location___init(fra.me.REG[8], REGB1, REGB2, REGB3, REGB4); + CALL_parser_nodes___Prod___location__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[8]); + /* ./../lib/standard//collection//array.nit:239 */ + REGB4 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB4 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB4)); + /* ./../lib/standard//collection//array.nit:239 */ + REGB0 = REGB4; + } else { + /* ./../lib/standard//collection//array.nit:237 */ + goto label3; + } + } + label3: while(0); + /* ./parser//parser.nit:898 */ + REGB0 = TAG_Bool(ATTR_parser___ComputeProdLocationVisitor____need_after_epsilons(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_need_after_epsilons", LOCATE_parser, 898); + } + fra.me.REG[2] = ATTR_parser___ComputeProdLocationVisitor____need_after_epsilons(fra.me.REG[0]); + CALL_abstract_collection___RemovableCollection___clear(fra.me.REG[2])(fra.me.REG[2]); + } else { + /* ./parser//parser.nit:900 */ + REGB0 = TAG_Bool((fra.me.REG[1]!=NIT_NULL) && VAL_ISA(fra.me.REG[1], COLOR_Prod, ID_Prod)) /*cast Prod*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 900); + } + /* ./parser//parser.nit:901 */ + REGB0 = TAG_Bool(ATTR_parser___ComputeProdLocationVisitor____need_first_prods(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_need_first_prods", LOCATE_parser, 901); + } + fra.me.REG[2] = ATTR_parser___ComputeProdLocationVisitor____need_first_prods(fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); + /* ./parser//parser.nit:903 */ + fra.me.REG[2] = ATTR_parser___ComputeProdLocationVisitor____last_location(fra.me.REG[0]); + /* ./parser//parser.nit:904 */ + ATTR_parser___ComputeProdLocationVisitor____last_location(fra.me.REG[0]) = NIT_NULL; + /* ./parser//parser.nit:905 */ + REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 905); + } + CALL_parser_prod___ANode___visit_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + /* ./parser//parser.nit:906 */ + fra.me.REG[3] = ATTR_parser___ComputeProdLocationVisitor____last_location(fra.me.REG[0]); + /* ./parser//parser.nit:907 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB4)) { + REGB4 = TAG_Bool(false); + REGB0 = REGB4; + } else { + REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB4; + } + } + if (UNTAG_Bool(REGB0)) { + ATTR_parser___ComputeProdLocationVisitor____last_location(fra.me.REG[0]) = fra.me.REG[2]; + } + /* ./parser//parser.nit:909 */ + ATTR_parser___Prod____last_location(fra.me.REG[1]) = fra.me.REG[3]; + /* ./parser//parser.nit:910 */ + fra.me.REG[2] = ATTR_parser___Prod____first_location(fra.me.REG[1]); + /* ./parser//parser.nit:911 */ + REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB4)) { + REGB4 = TAG_Bool(false); + REGB0 = REGB4; + } else { + REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL); + REGB0 = REGB4; + } + } + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:913 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB4)) { + REGB4 = TAG_Bool(false); + REGB0 = REGB4; + } else { + REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB4; + } + } + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 913); + } + /* ./parser//parser.nit:915 */ + REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 915); + } + fra.me.REG[4] = CALL_location___Location___file(fra.me.REG[2])(fra.me.REG[2]); + REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 915); + } + REGB0 = CALL_location___Location___line_start(fra.me.REG[2])(fra.me.REG[2]); + REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB4)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 915); + } + REGB4 = CALL_location___Location___line_end(fra.me.REG[3])(fra.me.REG[3]); + REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB3)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 915); + } + REGB3 = CALL_location___Location___column_start(fra.me.REG[2])(fra.me.REG[2]); + REGB2 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB2)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 915); + } + REGB2 = CALL_location___Location___column_end(fra.me.REG[3])(fra.me.REG[3]); + fra.me.REG[4] = NEW_Location_location___Location___init(fra.me.REG[4], REGB0, REGB4, REGB3, REGB2); + REGB2 = TAG_Bool(fra.me.REG[1]==NIT_NULL); + if (UNTAG_Bool(REGB2)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 915); + } + CALL_parser_nodes___Prod___location__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]); + /* ./parser//parser.nit:917 */ + REGB2 = TAG_Bool(ATTR_parser___ComputeProdLocationVisitor____need_before_epsilons(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB2)) { + } else { + nit_abort("Uninitialized attribute %s", "_need_before_epsilons", LOCATE_parser, 917); + } + fra.me.REG[4] = ATTR_parser___ComputeProdLocationVisitor____need_before_epsilons(fra.me.REG[0]); + /* ./../lib/standard//collection//array.nit:234 */ + REGB2 = TAG_Int(0); + /* ./../lib/standard//collection//array.nit:235 */ + REGB3 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL); + if (UNTAG_Bool(REGB3)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235); + } + REGB3 = ATTR_array___AbstractArrayRead____length(fra.me.REG[4]); + /* ./../lib/standard//collection//array.nit:236 */ + fra.me.REG[8] = ATTR_array___Array____items(fra.me.REG[4]); + /* ./../lib/standard//collection//array.nit:237 */ + while(1) { + /* ./../lib/standard//collection//array.nit:23 */ + REGB3 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL); + if (UNTAG_Bool(REGB3)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23); + } + REGB3 = ATTR_array___AbstractArrayRead____length(fra.me.REG[4]); + /* ./../lib/standard//kernel.nit:212 */ + REGB3 = TAG_Bool(UNTAG_Int(REGB2)val[UNTAG_Int(REGB2)]; + /* ./parser//parser.nit:920 */ + REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB3)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 920); + } + fra.me.REG[6] = CALL_location___Location___file(fra.me.REG[2])(fra.me.REG[2]); + REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB3)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 920); + } + REGB3 = CALL_location___Location___line_start(fra.me.REG[2])(fra.me.REG[2]); + REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB4)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 920); + } + REGB4 = CALL_location___Location___line_start(fra.me.REG[2])(fra.me.REG[2]); + REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 920); + } + REGB0 = CALL_location___Location___column_start(fra.me.REG[2])(fra.me.REG[2]); + REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 920); + } + REGB1 = CALL_location___Location___column_start(fra.me.REG[2])(fra.me.REG[2]); + fra.me.REG[6] = NEW_Location_location___Location___init(fra.me.REG[6], REGB3, REGB4, REGB0, REGB1); + CALL_parser_nodes___Prod___location__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); + /* ./../lib/standard//collection//array.nit:239 */ + REGB1 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ + REGB1 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB1)); + /* ./../lib/standard//collection//array.nit:239 */ + REGB2 = REGB1; + } else { + /* ./../lib/standard//collection//array.nit:237 */ + goto label4; + } + } + label4: while(0); + /* ./parser//parser.nit:922 */ + REGB2 = TAG_Bool(ATTR_parser___ComputeProdLocationVisitor____need_before_epsilons(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB2)) { + } else { + nit_abort("Uninitialized attribute %s", "_need_before_epsilons", LOCATE_parser, 922); + } + fra.me.REG[2] = ATTR_parser___ComputeProdLocationVisitor____need_before_epsilons(fra.me.REG[0]); + CALL_abstract_collection___RemovableCollection___clear(fra.me.REG[2])(fra.me.REG[2]); + /* ./parser//parser.nit:924 */ + REGB2 = TAG_Bool(ATTR_parser___ComputeProdLocationVisitor____need_after_epsilons(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB2)) { + } else { + nit_abort("Uninitialized attribute %s", "_need_after_epsilons", LOCATE_parser, 924); + } + fra.me.REG[2] = ATTR_parser___ComputeProdLocationVisitor____need_after_epsilons(fra.me.REG[0]); + /* ./../lib/standard//collection//array.nit:234 */ + REGB2 = TAG_Int(0); + /* ./../lib/standard//collection//array.nit:235 */ + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235); + } + REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]); + /* ./../lib/standard//collection//array.nit:236 */ + fra.me.REG[8] = ATTR_array___Array____items(fra.me.REG[2]); + /* ./../lib/standard//collection//array.nit:237 */ + while(1) { + /* ./../lib/standard//collection//array.nit:23 */ + REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL); + if (UNTAG_Bool(REGB1)) { + } else { + nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23); + } + REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]); + /* ./../lib/standard//kernel.nit:212 */ + REGB1 = TAG_Bool(UNTAG_Int(REGB2)val[UNTAG_Int(REGB2)]; + /* ./parser//parser.nit:927 */ + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 927); + } + fra.me.REG[6] = CALL_location___Location___file(fra.me.REG[3])(fra.me.REG[3]); + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 927); + } + REGB1 = CALL_location___Location___line_end(fra.me.REG[3])(fra.me.REG[3]); + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 927); + } + REGB0 = CALL_location___Location___line_end(fra.me.REG[3])(fra.me.REG[3]); + REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB4)) { + nit_abort("Reciever is null", NULL, LOCATE_parser, 927); } - variable16 = variable17; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);} - variable16 = variable14; - variable16 = ATTR_array___Array____items(variable16) /*Array::_items*/; - variable16 = UNBOX_NativeArray(variable16)[UNTAG_Int( variable15 /*index*/)]; - goto return_label26; - return_label26: while(false); - variable14 = variable16; - variable15 = variable14; - variable16 = TAG_Bool(UNTAG_Int( variable15 /*index*/)>=UNTAG_Int( TAG_Int(0))); - variable17 = variable16; - if (UNTAG_Bool(variable17)) { /* and */ - variable17 = variable13; - variable17 = ATTR_array___AbstractArray____length(variable17) /*Array::_length*/; - variable17 = TAG_Bool(UNTAG_Int( variable15 /*index*/)vft[INIT_TABLE_POS_SearchTokensVisitor].i]) return; - variable0 = NEW_array___Array___init(); /*new Array[Prod]*/ - ATTR_parser___SearchTokensVisitor____untokenned_nodes( self) /*SearchTokensVisitor::_untokenned_nodes*/ = variable0; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_SearchTokensVisitor].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction::action (src/parser//parser.nit:763,2--22)"}; - trace.prev = tracehead; tracehead = &trace; - fprintf(stderr, "Deferred method action called (src/parser//parser.nit:763,2)\n"); - nit_exit(1); - tracehead = trace.prev; - return; -} -void parser___ReduceAction0___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction0::action (src/parser//parser.nit:768,2--779:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = NEW_array___Array___init(); /*new Array[Object]*/ - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable5 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable2 /*listnode3*/, variable3 /*listnode4*/); /*new AModule*/ - variable4 = variable5; - variable1 = variable4 /*pmodulenode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction0___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction0::init (src/parser//parser.nit:781,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction0].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction0].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction1___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction1::action (src/parser//parser.nit:785,2--799:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable2 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable5 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:792,6--46\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AModule___init_amodule( variable5 /*ppackagedeclnode2*/, variable3 /*listnode3*/, variable4 /*listnode4*/); /*new AModule*/ - variable6 = variable7; - variable1 = variable6 /*pmodulenode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction1___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction1::init (src/parser//parser.nit:801,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction1].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction1].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction2___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction2::action (src/parser//parser.nit:805,2--826:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable2 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode3*/==NIT_NULL) || VAL_ISA( variable5 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:812,6--38\n"); nit_exit(1);} - variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode3*/ == NIT_NULL /*null*/) || (( variable5 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable6)) { /*if*/ - variable6 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable6)) { /*if*/ - variable3 = variable5 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode4*/, variable5 /*listnode3*/) /*Array::append*/; - } - } - variable7 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable3 /*listnode4*/, variable4 /*listnode5*/); /*new AModule*/ - variable6 = variable7; - variable1 = variable6 /*pmodulenode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction2___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction2::init (src/parser//parser.nit:828,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction2].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction2].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction3___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction3::action (src/parser//parser.nit:832,2--856:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:840,6--46\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode3*/==NIT_NULL) || VAL_ISA( variable7 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:842,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode3*/ == NIT_NULL /*null*/) || (( variable7 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable7 /*listnode3*/) /*Array::append*/; - } - } - variable9 = NEW_parser_prod___AModule___init_amodule( variable6 /*ppackagedeclnode2*/, variable4 /*listnode4*/, variable5 /*listnode5*/); /*new AModule*/ - variable8 = variable9; - variable1 = variable8 /*pmodulenode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction3___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction3::init (src/parser//parser.nit:858,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction3].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction3].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction4___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction4::action (src/parser//parser.nit:862,2--883:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable2 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode4*/==NIT_NULL) || VAL_ISA( variable5 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:869,6--38\n"); nit_exit(1);} - variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode4*/ == NIT_NULL /*null*/) || (( variable5 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable6)) { /*if*/ - variable6 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable6)) { /*if*/ - variable4 = variable5 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable5 /*listnode4*/) /*Array::append*/; - } - } - variable7 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable3 /*listnode3*/, variable4 /*listnode5*/); /*new AModule*/ - variable6 = variable7; - variable1 = variable6 /*pmodulenode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction4___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction4::init (src/parser//parser.nit:885,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction4].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction4].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction5___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction5::action (src/parser//parser.nit:889,2--913:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:897,6--46\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:899,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable5 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; - } - } - variable9 = NEW_parser_prod___AModule___init_amodule( variable6 /*ppackagedeclnode2*/, variable4 /*listnode3*/, variable5 /*listnode5*/); /*new AModule*/ - variable8 = variable9; - variable1 = variable8 /*pmodulenode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction5___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction5::init (src/parser//parser.nit:915,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction5].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction5].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction6___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction6::action (src/parser//parser.nit:919,2--950:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*listnode3*/==NIT_NULL) || VAL_ISA( variable6 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:927,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode3*/ == NIT_NULL /*null*/) || (( variable6 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable6 /*listnode3*/) /*Array::append*/; - } - } - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode5*/==NIT_NULL) || VAL_ISA( variable7 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:936,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode5*/ == NIT_NULL /*null*/) || (( variable7 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable5 = variable7 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode6*/, variable7 /*listnode5*/) /*Array::append*/; - } - } - variable9 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable4 /*listnode4*/, variable5 /*listnode6*/); /*new AModule*/ - variable8 = variable9; - variable1 = variable8 /*pmodulenode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction6___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction6::init (src/parser//parser.nit:952,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction6].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction6].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction7___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction7::action (src/parser//parser.nit:956,2--990:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable7 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:965,6--46\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:967,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode4*/, variable8 /*listnode3*/) /*Array::append*/; - } - } - variable9 = variable2 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:976,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*Array::append*/; - } - } - variable11 = NEW_parser_prod___AModule___init_amodule( variable7 /*ppackagedeclnode2*/, variable5 /*listnode4*/, variable6 /*listnode6*/); /*new AModule*/ - variable10 = variable11; - variable1 = variable10 /*pmodulenode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction7___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction7::init (src/parser//parser.nit:992,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction7].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction7].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction8___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction8::action (src/parser//parser.nit:996,2--1021:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable3 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable7 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1005,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable7 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable7 /*ppropdefnode5*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable8)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode6*/, variable7 /*ppropdefnode5*/) /*Array::add*/; - } - variable9 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable6 /*listnode6*/); /*new ATopClassdef*/ - variable8 = variable9; - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable8 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*pclassdefnode4*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable5 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode7*/, variable8 /*pclassdefnode4*/) /*Array::add*/; - } - variable10 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable4 /*listnode3*/, variable5 /*listnode7*/); /*new AModule*/ - variable9 = variable10; - variable1 = variable9 /*pmodulenode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction8___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction8::init (src/parser//parser.nit:1023,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction8].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction8].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction9___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction9::action (src/parser//parser.nit:1027,2--1062:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable4 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable8 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1037,6--38\n"); nit_exit(1);} - variable9 = variable2 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*listnode6*/==NIT_NULL) || VAL_ISA( variable9 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1039,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable8 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable8 /*ppropdefnode5*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode7*/, variable8 /*ppropdefnode5*/) /*Array::add*/; - } - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode6*/ == NIT_NULL /*null*/) || (( variable9 /*listnode6*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode6*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode7*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable7 = variable9 /*listnode6*/ /*listnode7=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode7*/, variable9 /*listnode6*/) /*Array::append*/; - } - } - variable11 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable7 /*listnode7*/); /*new ATopClassdef*/ - variable10 = variable11; - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode4*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable10 /*pclassdefnode4*/) /*Array::add*/; - } - variable12 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode3*/, variable6 /*listnode8*/); /*new AModule*/ - variable11 = variable12; - variable1 = variable11 /*pmodulenode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction9___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction9::init (src/parser//parser.nit:1064,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction9].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction9].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction10___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction10::action (src/parser//parser.nit:1068,2--1096:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable7 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1077,6--46\n"); nit_exit(1);} - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable3 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1080,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable9 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*ppropdefnode5*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode6*/, variable9 /*ppropdefnode5*/) /*Array::add*/; - } - variable11 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable8 /*listnode6*/); /*new ATopClassdef*/ - variable10 = variable11; - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode4*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode7*/, variable10 /*pclassdefnode4*/) /*Array::add*/; - } - variable12 = NEW_parser_prod___AModule___init_amodule( variable7 /*ppackagedeclnode2*/, variable5 /*listnode3*/, variable6 /*listnode7*/); /*new AModule*/ - variable11 = variable12; - variable1 = variable11 /*pmodulenode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction10___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction10::init (src/parser//parser.nit:1098,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction10].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction10].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction11___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction11::action (src/parser//parser.nit:1102,2--1140:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1112,6--46\n"); nit_exit(1);} - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable4 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1115,6--38\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*listnode6*/==NIT_NULL) || VAL_ISA( variable11 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1117,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode5*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable12)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode7*/, variable10 /*ppropdefnode5*/) /*Array::add*/; - } - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode6*/ == NIT_NULL /*null*/) || (( variable11 /*listnode6*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode6*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable12)) { /*if*/ - variable12 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode7*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable12)) { /*if*/ - variable9 = variable11 /*listnode6*/ /*listnode7=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode7*/, variable11 /*listnode6*/) /*Array::append*/; - } - } - variable13 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode7*/); /*new ATopClassdef*/ - variable12 = variable13; - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode4*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable12 /*pclassdefnode4*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode3*/, variable7 /*listnode8*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction11___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction11::init (src/parser//parser.nit:1142,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction11].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction11].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction12___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction12::action (src/parser//parser.nit:1146,2--1181:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*listnode3*/==NIT_NULL) || VAL_ISA( variable7 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1155,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode3*/ == NIT_NULL /*null*/) || (( variable7 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable5 = variable7 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode4*/, variable7 /*listnode3*/) /*Array::append*/; - } - } - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable3 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable9 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1165,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable9 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable9 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode7*/, variable9 /*ppropdefnode6*/) /*Array::add*/; - } - variable11 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable8 /*listnode7*/); /*new ATopClassdef*/ - variable10 = variable11; - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable10 /*pclassdefnode5*/) /*Array::add*/; - } - variable12 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode4*/, variable6 /*listnode8*/); /*new AModule*/ - variable11 = variable12; - variable1 = variable11 /*pmodulenode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction12___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction12::init (src/parser//parser.nit:1183,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction12].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction12].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction13___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction13::action (src/parser//parser.nit:1187,2--1232:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1197,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable6 = variable8 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*Array::append*/; - } - } - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable4 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1207,6--38\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*listnode7*/==NIT_NULL) || VAL_ISA( variable11 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1209,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable12)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode8*/, variable10 /*ppropdefnode6*/) /*Array::add*/; - } - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode7*/ == NIT_NULL /*null*/) || (( variable11 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable12)) { /*if*/ - variable12 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable12)) { /*if*/ - variable9 = variable11 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode8*/, variable11 /*listnode7*/) /*Array::append*/; - } - } - variable13 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode8*/); /*new ATopClassdef*/ - variable12 = variable13; - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode5*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode4*/, variable7 /*listnode9*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction13___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction13::init (src/parser//parser.nit:1234,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction13].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction13].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction14___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction14::action (src/parser//parser.nit:1238,2--1276:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1248,6--46\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1250,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable9 /*listnode3*/) /*Array::append*/; - } - } - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable11 = variable3 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1260,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable12)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode7*/, variable11 /*ppropdefnode6*/) /*Array::add*/; - } - variable13 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode7*/); /*new ATopClassdef*/ - variable12 = variable13; - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable12 /*pclassdefnode5*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode4*/, variable7 /*listnode8*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction14___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction14::init (src/parser//parser.nit:1278,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction14].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction14].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction15___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction15::action (src/parser//parser.nit:1282,2--1330:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1293,6--46\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1295,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable10 /*listnode3*/) /*Array::append*/; - } - } - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable12 = variable4 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1305,6--38\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*listnode7*/==NIT_NULL) || VAL_ISA( variable13 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1307,6--38\n"); nit_exit(1);} - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable14)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode8*/, variable12 /*ppropdefnode6*/) /*Array::add*/; - } - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode7*/ == NIT_NULL /*null*/) || (( variable13 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable13 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable14)) { /*if*/ - variable14 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable14)) { /*if*/ - variable11 = variable13 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode8*/, variable13 /*listnode7*/) /*Array::append*/; - } - } - variable15 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode8*/); /*new ATopClassdef*/ - variable14 = variable15; - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode5*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode4*/, variable8 /*listnode9*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction15___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction15::init (src/parser//parser.nit:1332,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction15].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction15].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction16___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction16::action (src/parser//parser.nit:1336,2--1371:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1345,6--38\n"); nit_exit(1);} - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable3 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable9 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1348,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable9 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable9 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode7*/, variable9 /*ppropdefnode6*/) /*Array::add*/; - } - variable11 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable8 /*listnode7*/); /*new ATopClassdef*/ - variable10 = variable11; - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable6 = variable7 /*listnode4*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode8*/, variable7 /*listnode4*/) /*Array::append*/; - } - } - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable10 /*pclassdefnode5*/) /*Array::add*/; - } - variable12 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode3*/, variable6 /*listnode8*/); /*new AModule*/ - variable11 = variable12; - variable1 = variable11 /*pmodulenode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction16___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction16::init (src/parser//parser.nit:1373,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction16].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction16].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction17___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction17::action (src/parser//parser.nit:1377,2--1422:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1387,6--38\n"); nit_exit(1);} - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable4 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1390,6--38\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*listnode7*/==NIT_NULL) || VAL_ISA( variable11 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1392,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable12)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode8*/, variable10 /*ppropdefnode6*/) /*Array::add*/; - } - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode7*/ == NIT_NULL /*null*/) || (( variable11 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable12)) { /*if*/ - variable12 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable12)) { /*if*/ - variable9 = variable11 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode8*/, variable11 /*listnode7*/) /*Array::append*/; - } - } - variable13 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode8*/); /*new ATopClassdef*/ - variable12 = variable13; - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable7 = variable8 /*listnode4*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode9*/, variable8 /*listnode4*/) /*Array::append*/; - } - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode5*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode3*/, variable7 /*listnode9*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction17___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction17::init (src/parser//parser.nit:1424,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction17].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction17].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction18___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction18::action (src/parser//parser.nit:1428,2--1466:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1438,6--46\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*listnode4*/==NIT_NULL) || VAL_ISA( variable9 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1440,6--38\n"); nit_exit(1);} - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable11 = variable3 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1443,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable12)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode7*/, variable11 /*ppropdefnode6*/) /*Array::add*/; - } - variable13 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode7*/); /*new ATopClassdef*/ - variable12 = variable13; - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode4*/ == NIT_NULL /*null*/) || (( variable9 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable7 = variable9 /*listnode4*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode8*/, variable9 /*listnode4*/) /*Array::append*/; - } - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable12 /*pclassdefnode5*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode3*/, variable7 /*listnode8*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction18___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction18::init (src/parser//parser.nit:1468,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction18].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction18].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction19___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction19::action (src/parser//parser.nit:1472,2--1520:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1483,6--46\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1485,6--38\n"); nit_exit(1);} - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable12 = variable4 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1488,6--38\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*listnode7*/==NIT_NULL) || VAL_ISA( variable13 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1490,6--38\n"); nit_exit(1);} - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable14)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode8*/, variable12 /*ppropdefnode6*/) /*Array::add*/; - } - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode7*/ == NIT_NULL /*null*/) || (( variable13 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable13 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable14)) { /*if*/ - variable14 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable14)) { /*if*/ - variable11 = variable13 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode8*/, variable13 /*listnode7*/) /*Array::append*/; - } - } - variable15 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode8*/); /*new ATopClassdef*/ - variable14 = variable15; - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable8 = variable10 /*listnode4*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode9*/, variable10 /*listnode4*/) /*Array::append*/; - } - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode5*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode3*/, variable8 /*listnode9*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction19___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction19::init (src/parser//parser.nit:1522,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction19].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction19].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction20___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction20::action (src/parser//parser.nit:1526,2--1571:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1536,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable6 = variable8 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*Array::append*/; - } - } - variable9 = variable4 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1545,6--38\n"); nit_exit(1);} - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable11 = variable3 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1548,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode7*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable12)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode8*/, variable11 /*ppropdefnode7*/) /*Array::add*/; - } - variable13 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode8*/); /*new ATopClassdef*/ - variable12 = variable13; - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable7 = variable9 /*listnode5*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode9*/, variable9 /*listnode5*/) /*Array::append*/; - } - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode6*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode6*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode4*/, variable7 /*listnode9*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction20___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction20::init (src/parser//parser.nit:1573,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction20].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction20].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction21___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction21::action (src/parser//parser.nit:1577,2--1632:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1588,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable7 = variable9 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*Array::append*/; - } - } - variable10 = variable5 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*listnode5*/==NIT_NULL) || VAL_ISA( variable10 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1597,6--38\n"); nit_exit(1);} - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable12 = variable4 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1600,6--38\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*listnode8*/==NIT_NULL) || VAL_ISA( variable13 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1602,6--38\n"); nit_exit(1);} - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode7*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable14)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode9*/, variable12 /*ppropdefnode7*/) /*Array::add*/; - } - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode8*/ == NIT_NULL /*null*/) || (( variable13 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable13 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable14)) { /*if*/ - variable14 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable14)) { /*if*/ - variable11 = variable13 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode9*/, variable13 /*listnode8*/) /*Array::append*/; - } - } - variable15 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode9*/); /*new ATopClassdef*/ - variable14 = variable15; - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode5*/ == NIT_NULL /*null*/) || (( variable10 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable8 = variable10 /*listnode5*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode10*/, variable10 /*listnode5*/) /*Array::append*/; - } - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode6*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable14 /*pclassdefnode6*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable7 /*listnode4*/, variable8 /*listnode10*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction21___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction21::init (src/parser//parser.nit:1634,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction21].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction21].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction22___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction22::action (src/parser//parser.nit:1638,2--1686:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1649,6--46\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1651,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable10 /*listnode3*/) /*Array::append*/; - } - } - variable11 = variable4 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*listnode5*/==NIT_NULL) || VAL_ISA( variable11 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1660,6--38\n"); nit_exit(1);} - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable13 = variable3 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1663,6--38\n"); nit_exit(1);} - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable13 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable13 /*ppropdefnode7*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable14)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable12 /*listnode8*/, variable13 /*ppropdefnode7*/) /*Array::add*/; - } - variable15 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable12 /*listnode8*/); /*new ATopClassdef*/ - variable14 = variable15; - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode5*/ == NIT_NULL /*null*/) || (( variable11 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable8 = variable11 /*listnode5*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode9*/, variable11 /*listnode5*/) /*Array::append*/; - } - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode6*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode6*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode4*/, variable8 /*listnode9*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction22___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction22::init (src/parser//parser.nit:1688,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction22].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction22].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction23___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction23::action (src/parser//parser.nit:1692,2--1750:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable7 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable10 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1704,6--46\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*listnode3*/==NIT_NULL) || VAL_ISA( variable11 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1706,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode3*/ == NIT_NULL /*null*/) || (( variable11 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable12)) { /*if*/ - variable12 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable12)) { /*if*/ - variable8 = variable11 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable11 /*listnode3*/) /*Array::append*/; - } - } - variable12 = variable5 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*listnode5*/==NIT_NULL) || VAL_ISA( variable12 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1715,6--38\n"); nit_exit(1);} - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable14 = variable4 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1718,6--38\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*listnode8*/==NIT_NULL) || VAL_ISA( variable15 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1720,6--38\n"); nit_exit(1);} - variable16 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable14 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable14 /*ppropdefnode7*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable16)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable13 /*listnode9*/, variable14 /*ppropdefnode7*/) /*Array::add*/; - } - variable16 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*listnode8*/ == NIT_NULL /*null*/) || (( variable15 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable15 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable15 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable16)) { /*if*/ - variable16 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable16)) { /*if*/ - variable13 = variable15 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode9*/, variable15 /*listnode8*/) /*Array::append*/; - } - } - variable17 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable13 /*listnode9*/); /*new ATopClassdef*/ - variable16 = variable17; - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode5*/ == NIT_NULL /*null*/) || (( variable12 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable12 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable17)) { /*if*/ - variable17 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable17)) { /*if*/ - variable9 = variable12 /*listnode5*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode10*/, variable12 /*listnode5*/) /*Array::append*/; - } - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode6*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable16 /*pclassdefnode6*/) /*Array::add*/; - } - variable18 = NEW_parser_prod___AModule___init_amodule( variable10 /*ppackagedeclnode2*/, variable8 /*listnode4*/, variable9 /*listnode10*/); /*new AModule*/ - variable17 = variable18; - variable1 = variable17 /*pmodulenode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction23___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction23::init (src/parser//parser.nit:1752,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction23].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction23].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction24___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction24::action (src/parser//parser.nit:1756,2--1773:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable2 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*pclassdefnode4*/==NIT_NULL) || VAL_ISA( variable5 /*pclassdefnode4*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1763,6--40\n"); nit_exit(1);} - variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable5 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable5 /*pclassdefnode4*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable6)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode5*/, variable5 /*pclassdefnode4*/) /*Array::add*/; - } - variable7 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable3 /*listnode3*/, variable4 /*listnode5*/); /*new AModule*/ - variable6 = variable7; - variable1 = variable6 /*pmodulenode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction24___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction24::init (src/parser//parser.nit:1775,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction24].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction24].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction25___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction25::action (src/parser//parser.nit:1779,2--1799:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1787,6--46\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*pclassdefnode4*/==NIT_NULL) || VAL_ISA( variable7 /*pclassdefnode4*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1789,6--40\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable7 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*pclassdefnode4*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable8)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode5*/, variable7 /*pclassdefnode4*/) /*Array::add*/; - } - variable9 = NEW_parser_prod___AModule___init_amodule( variable6 /*ppackagedeclnode2*/, variable4 /*listnode3*/, variable5 /*listnode5*/); /*new AModule*/ - variable8 = variable9; - variable1 = variable8 /*pmodulenode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction25___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction25::init (src/parser//parser.nit:1801,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction25].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction25].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction26___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction26::action (src/parser//parser.nit:1805,2--1832:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*listnode3*/==NIT_NULL) || VAL_ISA( variable6 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1813,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode3*/ == NIT_NULL /*null*/) || (( variable6 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable6 /*listnode3*/) /*Array::append*/; - } - } - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*pclassdefnode5*/==NIT_NULL) || VAL_ISA( variable7 /*pclassdefnode5*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1822,6--40\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable7 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable7 /*pclassdefnode5*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable8)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode6*/, variable7 /*pclassdefnode5*/) /*Array::add*/; - } - variable9 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable4 /*listnode4*/, variable5 /*listnode6*/); /*new AModule*/ - variable8 = variable9; - variable1 = variable8 /*pmodulenode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction26___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction26::init (src/parser//parser.nit:1834,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction26].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction26].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction27___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction27::action (src/parser//parser.nit:1838,2--1868:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable7 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1847,6--46\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1849,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode4*/, variable8 /*listnode3*/) /*Array::append*/; - } - } - variable9 = variable2 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pclassdefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*pclassdefnode5*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1858,6--40\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable9 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*pclassdefnode5*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode6*/, variable9 /*pclassdefnode5*/) /*Array::add*/; - } - variable11 = NEW_parser_prod___AModule___init_amodule( variable7 /*ppackagedeclnode2*/, variable5 /*listnode4*/, variable6 /*listnode6*/); /*new AModule*/ - variable10 = variable11; - variable1 = variable10 /*pmodulenode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction27___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction27::init (src/parser//parser.nit:1870,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction27].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction27].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction28___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction28::action (src/parser//parser.nit:1874,2--1901:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1882,6--38\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*pclassdefnode5*/==NIT_NULL) || VAL_ISA( variable7 /*pclassdefnode5*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1884,6--40\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable5 = variable6 /*listnode4*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode6*/, variable6 /*listnode4*/) /*Array::append*/; - } - } - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable7 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable7 /*pclassdefnode5*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable8)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode6*/, variable7 /*pclassdefnode5*/) /*Array::add*/; - } - variable9 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable4 /*listnode3*/, variable5 /*listnode6*/); /*new AModule*/ - variable8 = variable9; - variable1 = variable8 /*pmodulenode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction28___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction28::init (src/parser//parser.nit:1903,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction28].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction28].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction29___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction29::action (src/parser//parser.nit:1907,2--1937:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable7 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1916,6--46\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1918,6--38\n"); nit_exit(1);} - variable9 = variable2 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pclassdefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*pclassdefnode5*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1920,6--40\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable8 /*listnode4*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable8 /*listnode4*/) /*Array::append*/; - } - } - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable9 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*pclassdefnode5*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode6*/, variable9 /*pclassdefnode5*/) /*Array::add*/; - } - variable11 = NEW_parser_prod___AModule___init_amodule( variable7 /*ppackagedeclnode2*/, variable5 /*listnode3*/, variable6 /*listnode6*/); /*new AModule*/ - variable10 = variable11; - variable1 = variable10 /*pmodulenode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction29___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction29::init (src/parser//parser.nit:1939,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction29].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction29].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction30___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction30::action (src/parser//parser.nit:1943,2--1980:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*listnode3*/==NIT_NULL) || VAL_ISA( variable7 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1952,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode3*/ == NIT_NULL /*null*/) || (( variable7 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable5 = variable7 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode4*/, variable7 /*listnode3*/) /*Array::append*/; - } - } - variable8 = variable3 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*listnode5*/==NIT_NULL) || VAL_ISA( variable8 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1961,6--38\n"); nit_exit(1);} - variable9 = variable2 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pclassdefnode6*/==NIT_NULL) || VAL_ISA( variable9 /*pclassdefnode6*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1963,6--40\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode5*/ == NIT_NULL /*null*/) || (( variable8 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode7*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable8 /*listnode5*/ /*listnode7=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode7*/, variable8 /*listnode5*/) /*Array::append*/; - } - } - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable9 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable9 /*pclassdefnode6*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode7*/, variable9 /*pclassdefnode6*/) /*Array::add*/; - } - variable11 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode4*/, variable6 /*listnode7*/); /*new AModule*/ - variable10 = variable11; - variable1 = variable10 /*pmodulenode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction30___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction30::init (src/parser//parser.nit:1982,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction30].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction30].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction31___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction31::action (src/parser//parser.nit:1986,2--2026:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1996,6--46\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:1998,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable9 /*listnode3*/) /*Array::append*/; - } - } - variable10 = variable3 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*listnode5*/==NIT_NULL) || VAL_ISA( variable10 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2007,6--38\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*pclassdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*pclassdefnode6*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2009,6--40\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode5*/ == NIT_NULL /*null*/) || (( variable10 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable12)) { /*if*/ - variable12 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode7*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable12)) { /*if*/ - variable7 = variable10 /*listnode5*/ /*listnode7=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode7*/, variable10 /*listnode5*/) /*Array::append*/; - } - } - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode6*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable12)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode7*/, variable11 /*pclassdefnode6*/) /*Array::add*/; - } - variable13 = NEW_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode4*/, variable7 /*listnode7*/); /*new AModule*/ - variable12 = variable13; - variable1 = variable12 /*pmodulenode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction31___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction31::init (src/parser//parser.nit:2028,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction31].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction31].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction32___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction32::action (src/parser//parser.nit:2032,2--2063:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable4 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable8 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2042,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable8 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable8 /*ppropdefnode5*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode6*/, variable8 /*ppropdefnode5*/) /*Array::add*/; - } - variable10 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable7 /*listnode6*/); /*new ATopClassdef*/ - variable9 = variable10; - variable10 = variable2 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*pclassdefnode7*/==NIT_NULL) || VAL_ISA( variable10 /*pclassdefnode7*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2050,6--40\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable9 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*pclassdefnode4*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable9 /*pclassdefnode4*/) /*Array::add*/; - } - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode7*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode7*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode7*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable10 /*pclassdefnode7*/) /*Array::add*/; - } - variable12 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode3*/, variable6 /*listnode8*/); /*new AModule*/ - variable11 = variable12; - variable1 = variable11 /*pmodulenode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction32___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction32::init (src/parser//parser.nit:2065,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction32].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction32].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction33___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction33::action (src/parser//parser.nit:2069,2--2110:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable5 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2080,6--38\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*listnode6*/==NIT_NULL) || VAL_ISA( variable10 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2082,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable9 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*ppropdefnode5*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode7*/, variable9 /*ppropdefnode5*/) /*Array::add*/; - } - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode6*/ == NIT_NULL /*null*/) || (( variable10 /*listnode6*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode6*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode7*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode6*/ /*listnode7=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode7*/, variable10 /*listnode6*/) /*Array::append*/; - } - } - variable12 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable8 /*listnode7*/); /*new ATopClassdef*/ - variable11 = variable12; - variable12 = variable2 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable12 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2097,6--40\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode4*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable11 /*pclassdefnode4*/) /*Array::add*/; - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode8*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode3*/, variable7 /*listnode9*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction33___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction33::init (src/parser//parser.nit:2112,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction33].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction33].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction34___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction34::action (src/parser//parser.nit:2116,2--2150:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2126,6--46\n"); nit_exit(1);} - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable4 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2129,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode5*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode6*/, variable10 /*ppropdefnode5*/) /*Array::add*/; - } - variable12 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode6*/); /*new ATopClassdef*/ - variable11 = variable12; - variable12 = variable2 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pclassdefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*pclassdefnode7*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2137,6--40\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode4*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable11 /*pclassdefnode4*/) /*Array::add*/; - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode7*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode7*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable12 /*pclassdefnode7*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode3*/, variable7 /*listnode8*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction34___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction34::init (src/parser//parser.nit:2152,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction34].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction34].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction35___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction35::action (src/parser//parser.nit:2156,2--2200:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2167,6--46\n"); nit_exit(1);} - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable11 = variable5 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2170,6--38\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*listnode6*/==NIT_NULL) || VAL_ISA( variable12 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2172,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode5*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode7*/, variable11 /*ppropdefnode5*/) /*Array::add*/; - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode6*/ == NIT_NULL /*null*/) || (( variable12 /*listnode6*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable12 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode6*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode7*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable10 = variable12 /*listnode6*/ /*listnode7=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode7*/, variable12 /*listnode6*/) /*Array::append*/; - } - } - variable14 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode7*/); /*new ATopClassdef*/ - variable13 = variable14; - variable14 = variable2 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2187,6--40\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode4*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable13 /*pclassdefnode4*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode8*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode3*/, variable8 /*listnode9*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction35___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction35::init (src/parser//parser.nit:2202,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction35].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction35].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction36___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction36::action (src/parser//parser.nit:2206,2--2247:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2216,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable6 = variable8 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*Array::append*/; - } - } - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable4 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2226,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode7*/, variable10 /*ppropdefnode6*/) /*Array::add*/; - } - variable12 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode7*/); /*new ATopClassdef*/ - variable11 = variable12; - variable12 = variable2 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable12 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2234,6--40\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable11 /*pclassdefnode5*/) /*Array::add*/; - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode8*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode4*/, variable7 /*listnode9*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction36___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction36::init (src/parser//parser.nit:2249,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction36].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction36].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction37___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction37::action (src/parser//parser.nit:2253,2--2304:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2264,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable7 = variable9 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*Array::append*/; - } - } - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable11 = variable5 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2274,6--38\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*listnode7*/==NIT_NULL) || VAL_ISA( variable12 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2276,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode8*/, variable11 /*ppropdefnode6*/) /*Array::add*/; - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode7*/ == NIT_NULL /*null*/) || (( variable12 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable12 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable10 = variable12 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode8*/, variable12 /*listnode7*/) /*Array::append*/; - } - } - variable14 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode8*/); /*new ATopClassdef*/ - variable13 = variable14; - variable14 = variable2 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2291,6--40\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable13 /*pclassdefnode5*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable14 /*pclassdefnode9*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable7 /*listnode4*/, variable8 /*listnode10*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction37___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction37::init (src/parser//parser.nit:2306,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction37].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction37].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction38___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction38::action (src/parser//parser.nit:2310,2--2354:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2321,6--46\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2323,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable10 /*listnode3*/) /*Array::append*/; - } - } - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable12 = variable4 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2333,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable11 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode7*/, variable12 /*ppropdefnode6*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode7*/); /*new ATopClassdef*/ - variable13 = variable14; - variable14 = variable2 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2341,6--40\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable13 /*pclassdefnode5*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode8*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode4*/, variable8 /*listnode9*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction38___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction38::init (src/parser//parser.nit:2356,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction38].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction38].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction39___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction39::action (src/parser//parser.nit:2360,2--2414:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable7 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable10 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2372,6--46\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*listnode3*/==NIT_NULL) || VAL_ISA( variable11 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2374,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode3*/ == NIT_NULL /*null*/) || (( variable11 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable12)) { /*if*/ - variable12 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable12)) { /*if*/ - variable8 = variable11 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable11 /*listnode3*/) /*Array::append*/; - } - } - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable13 = variable5 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable13 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2384,6--38\n"); nit_exit(1);} - variable14 = variable3 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*listnode7*/==NIT_NULL) || VAL_ISA( variable14 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2386,6--38\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable13 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable13 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable12 /*listnode8*/, variable13 /*ppropdefnode6*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*listnode7*/ == NIT_NULL /*null*/) || (( variable14 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable14 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable14 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable12 = variable14 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode8*/, variable14 /*listnode7*/) /*Array::append*/; - } - } - variable16 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable12 /*listnode8*/); /*new ATopClassdef*/ - variable15 = variable16; - variable16 = variable2 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2401,6--40\n"); nit_exit(1);} - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable15 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable15 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable15 /*pclassdefnode5*/) /*Array::add*/; - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable16 /*pclassdefnode9*/) /*Array::add*/; - } - variable18 = NEW_parser_prod___AModule___init_amodule( variable10 /*ppackagedeclnode2*/, variable8 /*listnode4*/, variable9 /*listnode10*/); /*new AModule*/ - variable17 = variable18; - variable1 = variable17 /*pmodulenode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction39___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction39::init (src/parser//parser.nit:2416,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction39].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction39].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction40___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction40::action (src/parser//parser.nit:2420,2--2461:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2430,6--38\n"); nit_exit(1);} - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable4 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2433,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode7*/, variable10 /*ppropdefnode6*/) /*Array::add*/; - } - variable12 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode7*/); /*new ATopClassdef*/ - variable11 = variable12; - variable12 = variable2 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable12 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2441,6--40\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable7 = variable8 /*listnode4*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode9*/, variable8 /*listnode4*/) /*Array::append*/; - } - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable11 /*pclassdefnode5*/) /*Array::add*/; - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode8*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode3*/, variable7 /*listnode9*/); /*new AModule*/ - variable13 = variable14; - variable1 = variable13 /*pmodulenode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction40___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction40::init (src/parser//parser.nit:2463,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction40].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction40].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction41___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction41::action (src/parser//parser.nit:2467,2--2518:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*listnode4*/==NIT_NULL) || VAL_ISA( variable9 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2478,6--38\n"); nit_exit(1);} - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable11 = variable5 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2481,6--38\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*listnode7*/==NIT_NULL) || VAL_ISA( variable12 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2483,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode8*/, variable11 /*ppropdefnode6*/) /*Array::add*/; - } - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode7*/ == NIT_NULL /*null*/) || (( variable12 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable12 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable10 = variable12 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode8*/, variable12 /*listnode7*/) /*Array::append*/; - } - } - variable14 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode8*/); /*new ATopClassdef*/ - variable13 = variable14; - variable14 = variable2 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2498,6--40\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode4*/ == NIT_NULL /*null*/) || (( variable9 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable8 = variable9 /*listnode4*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode10*/, variable9 /*listnode4*/) /*Array::append*/; - } - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable13 /*pclassdefnode5*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable14 /*pclassdefnode9*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable7 /*listnode3*/, variable8 /*listnode10*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction41___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction41::init (src/parser//parser.nit:2520,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction41].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction41].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction42___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction42::action (src/parser//parser.nit:2524,2--2568:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2535,6--46\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2537,6--38\n"); nit_exit(1);} - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable12 = variable4 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2540,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable11 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode7*/, variable12 /*ppropdefnode6*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode7*/); /*new ATopClassdef*/ - variable13 = variable14; - variable14 = variable2 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2548,6--40\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable8 = variable10 /*listnode4*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode9*/, variable10 /*listnode4*/) /*Array::append*/; - } - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable13 /*pclassdefnode5*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode8*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode3*/, variable8 /*listnode9*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction42___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction42::init (src/parser//parser.nit:2570,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction42].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction42].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction43___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction43::action (src/parser//parser.nit:2574,2--2628:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable7 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable10 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2586,6--46\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*listnode4*/==NIT_NULL) || VAL_ISA( variable11 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2588,6--38\n"); nit_exit(1);} - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable13 = variable5 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable13 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2591,6--38\n"); nit_exit(1);} - variable14 = variable3 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*listnode7*/==NIT_NULL) || VAL_ISA( variable14 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2593,6--38\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable13 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable13 /*ppropdefnode6*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable12 /*listnode8*/, variable13 /*ppropdefnode6*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*listnode7*/ == NIT_NULL /*null*/) || (( variable14 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable14 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable14 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable12 = variable14 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode8*/, variable14 /*listnode7*/) /*Array::append*/; - } - } - variable16 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable12 /*listnode8*/); /*new ATopClassdef*/ - variable15 = variable16; - variable16 = variable2 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2608,6--40\n"); nit_exit(1);} - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode4*/ == NIT_NULL /*null*/) || (( variable11 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable17)) { /*if*/ - variable17 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable17)) { /*if*/ - variable9 = variable11 /*listnode4*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode10*/, variable11 /*listnode4*/) /*Array::append*/; - } - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable15 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable15 /*pclassdefnode5*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable15 /*pclassdefnode5*/) /*Array::add*/; - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable16 /*pclassdefnode9*/) /*Array::add*/; - } - variable18 = NEW_parser_prod___AModule___init_amodule( variable10 /*ppackagedeclnode2*/, variable8 /*listnode3*/, variable9 /*listnode10*/); /*new AModule*/ - variable17 = variable18; - variable1 = variable17 /*pmodulenode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction43___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction43::init (src/parser//parser.nit:2630,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction43].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction43].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction44___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction44::action (src/parser//parser.nit:2634,2--2685:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable6 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2645,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable7 = variable9 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*Array::append*/; - } - } - variable10 = variable5 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*listnode5*/==NIT_NULL) || VAL_ISA( variable10 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2654,6--38\n"); nit_exit(1);} - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable12 = variable4 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2657,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode7*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable13)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode8*/, variable12 /*ppropdefnode7*/) /*Array::add*/; - } - variable14 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode8*/); /*new ATopClassdef*/ - variable13 = variable14; - variable14 = variable2 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2665,6--40\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode5*/ == NIT_NULL /*null*/) || (( variable10 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable8 = variable10 /*listnode5*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode10*/, variable10 /*listnode5*/) /*Array::append*/; - } - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode6*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable13 /*pclassdefnode6*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable14 /*pclassdefnode9*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable7 /*listnode4*/, variable8 /*listnode10*/); /*new AModule*/ - variable15 = variable16; - variable1 = variable15 /*pmodulenode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction44___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction44::init (src/parser//parser.nit:2687,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction44].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction44].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction45___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction45::action (src/parser//parser.nit:2691,2--2752:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable7 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2703,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable10 /*listnode3*/) /*Array::append*/; - } - } - variable11 = variable6 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*listnode5*/==NIT_NULL) || VAL_ISA( variable11 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2712,6--38\n"); nit_exit(1);} - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable13 = variable5 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2715,6--38\n"); nit_exit(1);} - variable14 = variable3 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*listnode8*/==NIT_NULL) || VAL_ISA( variable14 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2717,6--38\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable13 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable13 /*ppropdefnode7*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable12 /*listnode9*/, variable13 /*ppropdefnode7*/) /*Array::add*/; - } - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*listnode8*/ == NIT_NULL /*null*/) || (( variable14 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable14 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable14 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable15)) { /*if*/ - variable15 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable15)) { /*if*/ - variable12 = variable14 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode9*/, variable14 /*listnode8*/) /*Array::append*/; - } - } - variable16 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable12 /*listnode9*/); /*new ATopClassdef*/ - variable15 = variable16; - variable16 = variable2 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*pclassdefnode10*/==NIT_NULL) || VAL_ISA( variable16 /*pclassdefnode10*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2732,6--41\n"); nit_exit(1);} - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode5*/ == NIT_NULL /*null*/) || (( variable11 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable17)) { /*if*/ - variable17 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode11*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode11*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable17)) { /*if*/ - variable9 = variable11 /*listnode5*/ /*listnode11=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode11*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode11*/, variable11 /*listnode5*/) /*Array::append*/; - } - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable15 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable15 /*pclassdefnode6*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode11*/, variable15 /*pclassdefnode6*/) /*Array::add*/; - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode10*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode10*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode10*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode11*/, variable16 /*pclassdefnode10*/) /*Array::add*/; - } - variable18 = NEW_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable8 /*listnode4*/, variable9 /*listnode11*/); /*new AModule*/ - variable17 = variable18; - variable1 = variable17 /*pmodulenode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction45___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction45::init (src/parser//parser.nit:2754,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction45].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction45].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction46___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction46::action (src/parser//parser.nit:2758,2--2812:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable7 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable10 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2770,6--46\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*listnode3*/==NIT_NULL) || VAL_ISA( variable11 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2772,6--38\n"); nit_exit(1);} - variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode3*/ == NIT_NULL /*null*/) || (( variable11 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable12)) { /*if*/ - variable12 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable12)) { /*if*/ - variable8 = variable11 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable11 /*listnode3*/) /*Array::append*/; - } - } - variable12 = variable5 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*listnode5*/==NIT_NULL) || VAL_ISA( variable12 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2781,6--38\n"); nit_exit(1);} - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable14 = variable4 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2784,6--38\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable14 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable14 /*ppropdefnode7*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable13 /*listnode8*/, variable14 /*ppropdefnode7*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable13 /*listnode8*/); /*new ATopClassdef*/ - variable15 = variable16; - variable16 = variable2 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2792,6--40\n"); nit_exit(1);} - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode5*/ == NIT_NULL /*null*/) || (( variable12 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable12 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable17)) { /*if*/ - variable17 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable17)) { /*if*/ - variable9 = variable12 /*listnode5*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode10*/, variable12 /*listnode5*/) /*Array::append*/; - } - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable15 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable15 /*pclassdefnode6*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable15 /*pclassdefnode6*/) /*Array::add*/; - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable16 /*pclassdefnode9*/) /*Array::add*/; - } - variable18 = NEW_parser_prod___AModule___init_amodule( variable10 /*ppackagedeclnode2*/, variable8 /*listnode4*/, variable9 /*listnode10*/); /*new AModule*/ - variable17 = variable18; - variable1 = variable17 /*pmodulenode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction46___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction46::init (src/parser//parser.nit:2814,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction46].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction46].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction47___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction47::action (src/parser//parser.nit:2818,2--2882:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable11 = variable8 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable11 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2831,6--46\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*listnode3*/==NIT_NULL) || VAL_ISA( variable12 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2833,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode3*/ == NIT_NULL /*null*/) || (( variable12 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable12 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable9 = variable12 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode4*/, variable12 /*listnode3*/) /*Array::append*/; - } - } - variable13 = variable6 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2842,6--38\n"); nit_exit(1);} - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable15 = variable5 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2845,6--38\n"); nit_exit(1);} - variable16 = variable3 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*listnode8*/==NIT_NULL) || VAL_ISA( variable16 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2847,6--38\n"); nit_exit(1);} - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable15 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable15 /*ppropdefnode7*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode9*/, variable15 /*ppropdefnode7*/) /*Array::add*/; - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*listnode8*/ == NIT_NULL /*null*/) || (( variable16 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable16 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable16 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable17)) { /*if*/ - variable17 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable17)) { /*if*/ - variable14 = variable16 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode9*/, variable16 /*listnode8*/) /*Array::append*/; - } - } - variable18 = NEW_parser_prod___ATopClassdef___init_atopclassdef( variable14 /*listnode9*/); /*new ATopClassdef*/ - variable17 = variable18; - variable18 = variable2 /*nodearraylist7*/; - variable19 = TAG_Bool(( variable18 /*pclassdefnode10*/==NIT_NULL) || VAL_ISA( variable18 /*pclassdefnode10*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2862,6--41\n"); nit_exit(1);} - variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable19)) { /*if*/ - variable19 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode11*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode11*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable19)) { /*if*/ - variable10 = variable13 /*listnode5*/ /*listnode11=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode11*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode11*/, variable13 /*listnode5*/) /*Array::append*/; - } - } - variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable17 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable17 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable17 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable17 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable17 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable17 /*pclassdefnode6*/, NIT_NULL /*null*/) /*ATopClassdef::==*/))))))); - if (UNTAG_Bool(variable19)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable10 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode11*/, variable17 /*pclassdefnode6*/) /*Array::add*/; - } - variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable18 /*pclassdefnode10*/ == NIT_NULL /*null*/) || (( variable18 /*pclassdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable18 /*pclassdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable18 /*pclassdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable18 /*pclassdefnode10*/,COLOR_kernel___Object_____eqeq))( variable18 /*pclassdefnode10*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable19)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable10 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode11*/, variable18 /*pclassdefnode10*/) /*Array::add*/; - } - variable20 = NEW_parser_prod___AModule___init_amodule( variable11 /*ppackagedeclnode2*/, variable9 /*listnode4*/, variable10 /*listnode11*/); /*new AModule*/ - variable19 = variable20; - variable1 = variable19 /*pmodulenode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction47___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction47::init (src/parser//parser.nit:2884,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction47].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction47].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction48___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction48::action (src/parser//parser.nit:2888,2--2908:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable7 = variable6 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2897,6--30\n"); nit_exit(1);} - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*tkwpackagenode3*/==NIT_NULL) || VAL_ISA( variable8 /*tkwpackagenode3*/, COLOR_TKwpackage, ID_TKwpackage)) /*cast TKwpackage*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2899,6--42\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2901,6--28\n"); nit_exit(1);} - variable11 = NEW_parser_prod___APackagedecl___init_apackagedecl( variable7 /*pdocnode2*/, variable8 /*tkwpackagenode3*/, variable9 /*tidnode4*/); /*new APackagedecl*/ - variable10 = variable11; - variable1 = variable10 /*ppackagedeclnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(1)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction48___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction48::init (src/parser//parser.nit:2910,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction48].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction48].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction49___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction49::action (src/parser//parser.nit:2914,2--2935:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable6 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*pvisibilitynode2*/==NIT_NULL) || VAL_ISA( variable8 /*pvisibilitynode2*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2924,6--44\n"); nit_exit(1);} - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*tkwimportnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwimportnode3*/, COLOR_TKwimport, ID_TKwimport)) /*cast TKwimport*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2926,6--40\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2928,6--28\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AImport___init_aimport( variable8 /*pvisibilitynode2*/, variable9 /*tkwimportnode3*/, variable10 /*tidnode4*/); /*new AImport*/ - variable11 = variable12; - variable1 = variable11 /*pimportnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(2)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction49___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction49::init (src/parser//parser.nit:2937,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction49].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction49].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction50___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction50::action (src/parser//parser.nit:2941,2--2962:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable6 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*pvisibilitynode2*/==NIT_NULL) || VAL_ISA( variable8 /*pvisibilitynode2*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2951,6--44\n"); nit_exit(1);} - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*tkwimportnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwimportnode3*/, COLOR_TKwimport, ID_TKwimport)) /*cast TKwimport*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2953,6--40\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*tkwendnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwendnode4*/, COLOR_TKwend, ID_TKwend)) /*cast TKwend*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2955,6--34\n"); nit_exit(1);} - variable12 = NEW_parser_prod___ANoImport___init_anoimport( variable8 /*pvisibilitynode2*/, variable9 /*tkwimportnode3*/, variable10 /*tkwendnode4*/); /*new ANoImport*/ - variable11 = variable12; - variable1 = variable11 /*pimportnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(2)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction50___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction50::init (src/parser//parser.nit:2964,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction50].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction50].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction51___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction51::action (src/parser//parser.nit:2968,2--2982:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*ppropdefnode2*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode2*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:2974,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ppropdefnode2*/ == NIT_NULL /*null*/) || (( variable4 /*ppropdefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ppropdefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*ppropdefnode2*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode3*/, variable4 /*ppropdefnode2*/) /*Array::add*/; - } - variable6 = NEW_parser_prod___AMainClassdef___init_amainclassdef( variable3 /*listnode3*/); /*new AMainClassdef*/ - variable5 = variable6; - variable1 = variable5 /*pclassdefnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(3)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction51___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction51::init (src/parser//parser.nit:2984,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction51].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction51].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction52___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction52::action (src/parser//parser.nit:2988,2--2993:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable1 = NIT_NULL /*null*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(3)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction52___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction52::init (src/parser//parser.nit:2995,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction52].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction52].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction53___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction53::action (src/parser//parser.nit:2999,2--3019:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3007,6--32\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pexprnode4*/ == NIT_NULL /*null*/) || (( variable6 /*pexprnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pexprnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*pexprnode4*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode5*/, variable6 /*pexprnode4*/) /*Array::add*/; - } - variable8 = NEW_parser_prod___ABlockExpr___init_ablockexpr( variable5 /*listnode5*/); /*new ABlockExpr*/ - variable7 = variable8; - variable9 = NEW_parser_prod___AMainMethPropdef___init_amainmethpropdef( NIT_NULL /*null*/, variable7 /*pexprnode3*/); /*new AMainMethPropdef*/ - variable8 = variable9; - variable1 = variable8 /*ppropdefnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(4)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction53___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction53::init (src/parser//parser.nit:3021,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction53].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction53].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction54___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction54::action (src/parser//parser.nit:3025,2--3055:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3034,6--32\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode5*/==NIT_NULL) || VAL_ISA( variable8 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3036,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode4*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode4*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode6*/, variable7 /*pexprnode4*/) /*Array::add*/; - } - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode5*/ == NIT_NULL /*null*/) || (( variable8 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable6 = variable8 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable8 /*listnode5*/) /*Array::append*/; - } - } - variable10 = NEW_parser_prod___ABlockExpr___init_ablockexpr( variable6 /*listnode6*/); /*new ABlockExpr*/ - variable9 = variable10; - variable11 = NEW_parser_prod___AMainMethPropdef___init_amainmethpropdef( NIT_NULL /*null*/, variable9 /*pexprnode3*/); /*new AMainMethPropdef*/ - variable10 = variable11; - variable1 = variable10 /*ppropdefnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(4)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction54___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction54::init (src/parser//parser.nit:3057,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction54].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction54].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction55___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction55::action (src/parser//parser.nit:3061,2--3093:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable12 = variable8 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3075,6--30\n"); nit_exit(1);} - variable13 = variable7 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3077,6--44\n"); nit_exit(1);} - variable14 = variable6 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable14 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3079,6--42\n"); nit_exit(1);} - variable15 = variable4 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3081,6--38\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AClassdef___init_aclassdef( variable12 /*pdocnode2*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode4*/, variable14 /*pclasskindnode5*/, variable15 /*tclassidnode6*/, variable9 /*listnode7*/, variable10 /*listnode8*/, variable11 /*listnode9*/); /*new AClassdef*/ - variable16 = variable17; - variable1 = variable16 /*pclassdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction55___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction55::init (src/parser//parser.nit:3095,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction55].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction55].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction56___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction56::action (src/parser//parser.nit:3099,2--3134:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable13 = variable9 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3114,6--30\n"); nit_exit(1);} - variable14 = variable8 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3116,6--38\n"); nit_exit(1);} - variable15 = variable7 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3118,6--44\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3120,6--42\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable17 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3122,6--38\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AClassdef___init_aclassdef( variable13 /*pdocnode2*/, variable14 /*tkwredefnode3*/, variable15 /*pvisibilitynode4*/, variable16 /*pclasskindnode5*/, variable17 /*tclassidnode6*/, variable10 /*listnode7*/, variable11 /*listnode8*/, variable12 /*listnode9*/); /*new AClassdef*/ - variable18 = variable19; - variable1 = variable18 /*pclassdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction56___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction56::init (src/parser//parser.nit:3136,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction56].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction56].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction57___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction57::action (src/parser//parser.nit:3140,2--3182:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable13 = variable9 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3155,6--30\n"); nit_exit(1);} - variable14 = variable8 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3157,6--44\n"); nit_exit(1);} - variable15 = variable7 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable15 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3159,6--42\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable16 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3161,6--38\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*listnode7*/==NIT_NULL) || VAL_ISA( variable17 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3163,6--38\n"); nit_exit(1);} - variable18 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable17 /*listnode7*/ == NIT_NULL /*null*/) || (( variable17 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable17 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable17 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable18)) { /*if*/ - variable18 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable18)) { /*if*/ - variable10 = variable17 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode8*/, variable17 /*listnode7*/) /*Array::append*/; - } - } - variable19 = NEW_parser_prod___AClassdef___init_aclassdef( variable13 /*pdocnode2*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode4*/, variable15 /*pclasskindnode5*/, variable16 /*tclassidnode6*/, variable10 /*listnode8*/, variable11 /*listnode9*/, variable12 /*listnode10*/); /*new AClassdef*/ - variable18 = variable19; - variable1 = variable18 /*pclassdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction57___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction57::init (src/parser//parser.nit:3184,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction57].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction57].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction58___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction58::action (src/parser//parser.nit:3188,2--3233:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable14 = variable10 /*nodearraylist1*/; - variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3204,6--30\n"); nit_exit(1);} - variable15 = variable9 /*nodearraylist2*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3206,6--38\n"); nit_exit(1);} - variable16 = variable8 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3208,6--44\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3210,6--42\n"); nit_exit(1);} - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3212,6--38\n"); nit_exit(1);} - variable19 = variable4 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*listnode7*/==NIT_NULL) || VAL_ISA( variable19 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3214,6--38\n"); nit_exit(1);} - variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode7*/ == NIT_NULL /*null*/) || (( variable19 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable19 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable20)) { /*if*/ - variable20 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable20)) { /*if*/ - variable11 = variable19 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode8*/, variable19 /*listnode7*/) /*Array::append*/; - } - } - variable21 = NEW_parser_prod___AClassdef___init_aclassdef( variable14 /*pdocnode2*/, variable15 /*tkwredefnode3*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable11 /*listnode8*/, variable12 /*listnode9*/, variable13 /*listnode10*/); /*new AClassdef*/ - variable20 = variable21; - variable1 = variable20 /*pclassdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction58___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction58::init (src/parser//parser.nit:3235,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction58].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction58].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction59___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction59::action (src/parser//parser.nit:3239,2--3281:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = NEW_array___Array___init(); /*new Array[Object]*/ - variable10 = variable11; - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable13 = variable9 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3254,6--30\n"); nit_exit(1);} - variable14 = variable8 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3256,6--44\n"); nit_exit(1);} - variable15 = variable7 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable15 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3258,6--42\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable16 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3260,6--38\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*listnode8*/==NIT_NULL) || VAL_ISA( variable17 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3262,6--38\n"); nit_exit(1);} - variable18 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable17 /*listnode8*/ == NIT_NULL /*null*/) || (( variable17 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable17 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable17 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable18)) { /*if*/ - variable18 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable18)) { /*if*/ - variable11 = variable17 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode9*/, variable17 /*listnode8*/) /*Array::append*/; - } - } - variable19 = NEW_parser_prod___AClassdef___init_aclassdef( variable13 /*pdocnode2*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode4*/, variable15 /*pclasskindnode5*/, variable16 /*tclassidnode6*/, variable10 /*listnode7*/, variable11 /*listnode9*/, variable12 /*listnode10*/); /*new AClassdef*/ - variable18 = variable19; - variable1 = variable18 /*pclassdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction59___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction59::init (src/parser//parser.nit:3283,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction59].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction59].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction60___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction60::action (src/parser//parser.nit:3287,2--3332:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable14 = variable10 /*nodearraylist1*/; - variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3303,6--30\n"); nit_exit(1);} - variable15 = variable9 /*nodearraylist2*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3305,6--38\n"); nit_exit(1);} - variable16 = variable8 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3307,6--44\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3309,6--42\n"); nit_exit(1);} - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3311,6--38\n"); nit_exit(1);} - variable19 = variable4 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*listnode8*/==NIT_NULL) || VAL_ISA( variable19 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3313,6--38\n"); nit_exit(1);} - variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode8*/ == NIT_NULL /*null*/) || (( variable19 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable19 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable20)) { /*if*/ - variable20 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable20)) { /*if*/ - variable12 = variable19 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode9*/, variable19 /*listnode8*/) /*Array::append*/; - } - } - variable21 = NEW_parser_prod___AClassdef___init_aclassdef( variable14 /*pdocnode2*/, variable15 /*tkwredefnode3*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable11 /*listnode7*/, variable12 /*listnode9*/, variable13 /*listnode10*/); /*new AClassdef*/ - variable20 = variable21; - variable1 = variable20 /*pclassdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction60___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction60::init (src/parser//parser.nit:3334,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction60].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction60].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction61___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction61::action (src/parser//parser.nit:3338,2--3390:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable14 = variable10 /*nodearraylist1*/; - variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3354,6--30\n"); nit_exit(1);} - variable15 = variable9 /*nodearraylist2*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3356,6--44\n"); nit_exit(1);} - variable16 = variable8 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3358,6--42\n"); nit_exit(1);} - variable17 = variable6 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable17 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3360,6--38\n"); nit_exit(1);} - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*listnode7*/==NIT_NULL) || VAL_ISA( variable18 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3362,6--38\n"); nit_exit(1);} - variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable18 /*listnode7*/ == NIT_NULL /*null*/) || (( variable18 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable18 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable18 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable19)) { /*if*/ - variable19 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable19)) { /*if*/ - variable11 = variable18 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode8*/, variable18 /*listnode7*/) /*Array::append*/; - } - } - variable19 = variable4 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*listnode9*/==NIT_NULL) || VAL_ISA( variable19 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3371,6--38\n"); nit_exit(1);} - variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode9*/ == NIT_NULL /*null*/) || (( variable19 /*listnode9*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable19 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode9*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable20)) { /*if*/ - variable20 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable20)) { /*if*/ - variable12 = variable19 /*listnode9*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode10*/, variable19 /*listnode9*/) /*Array::append*/; - } - } - variable21 = NEW_parser_prod___AClassdef___init_aclassdef( variable14 /*pdocnode2*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode4*/, variable16 /*pclasskindnode5*/, variable17 /*tclassidnode6*/, variable11 /*listnode8*/, variable12 /*listnode10*/, variable13 /*listnode11*/); /*new AClassdef*/ - variable20 = variable21; - variable1 = variable20 /*pclassdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction61___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction61::init (src/parser//parser.nit:3392,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction61].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction61].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction62___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction62::action (src/parser//parser.nit:3396,2--3451:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable15 = variable11 /*nodearraylist1*/; - variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3413,6--30\n"); nit_exit(1);} - variable16 = variable10 /*nodearraylist2*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3415,6--38\n"); nit_exit(1);} - variable17 = variable9 /*nodearraylist3*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3417,6--44\n"); nit_exit(1);} - variable18 = variable8 /*nodearraylist4*/; - variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3419,6--42\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3421,6--38\n"); nit_exit(1);} - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*listnode7*/==NIT_NULL) || VAL_ISA( variable20 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3423,6--38\n"); nit_exit(1);} - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode7*/ == NIT_NULL /*null*/) || (( variable20 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable21)) { /*if*/ - variable21 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable21)) { /*if*/ - variable12 = variable20 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode8*/, variable20 /*listnode7*/) /*Array::append*/; - } } - variable21 = variable4 /*nodearraylist8*/; - variable22 = TAG_Bool(( variable21 /*listnode9*/==NIT_NULL) || VAL_ISA( variable21 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3432,6--38\n"); nit_exit(1);} - variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode9*/ == NIT_NULL /*null*/) || (( variable21 /*listnode9*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable21 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode9*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable22)) { /*if*/ - variable22 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable22)) { /*if*/ - variable13 = variable21 /*listnode9*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode10*/, variable21 /*listnode9*/) /*Array::append*/; + label1: while(0); + stack_frame_head = fra.me.prev; + return; +} +void parser___ComputeProdLocationVisitor___init(val_t p0, int* init_table){ + int itpos2 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ComputeProdLocationVisitor].i; + struct {struct stack_frame_t me;} fra; + val_t tmp; + if (init_table[itpos2]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 944; + fra.me.meth = LOCATE_parser___ComputeProdLocationVisitor___init; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[0] = p0; + /* ./parser//parser.nit:944 */ + CALL_parser_prod___Visitor___init(fra.me.REG[0])(fra.me.REG[0], init_table); + stack_frame_head = fra.me.prev; + init_table[itpos2] = 1; + return; +} +void parser___ReduceAction___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me;} fra; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 949; + fra.me.meth = LOCATE_parser___ReduceAction___action; + fra.me.has_broke = 0; + fra.me.REG_size = 0; + /* ./parser//parser.nit:949 */ + nit_abort("Deferred method called", NULL, LOCATE_parser, 949); + stack_frame_head = fra.me.prev; + return; +} +val_t parser___ReduceAction___concat(val_t p0, val_t p1, val_t p2){ + struct {struct stack_frame_t me; val_t MORE_REG[2];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 950; + fra.me.meth = LOCATE_parser___ReduceAction___concat; + fra.me.has_broke = 0; + fra.me.REG_size = 3; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + fra.me.REG[2] = p2; + /* ./parser//parser.nit:952 */ + REGB0 = CALL_abstract_collection___Collection___is_empty(fra.me.REG[1])(fra.me.REG[1]); + if (UNTAG_Bool(REGB0)) { + fra.me.REG[0] = fra.me.REG[2]; + goto label1; + } + /* ./parser//parser.nit:953 */ + CALL_abstract_collection___Sequence___append(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + /* ./parser//parser.nit:954 */ + fra.me.REG[0] = fra.me.REG[1]; + goto label1; + label1: while(0); + stack_frame_head = fra.me.prev; + return fra.me.REG[0]; +} +void parser___ReduceAction___init(val_t p0, int* init_table){ + int itpos3 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction].i; + struct {struct stack_frame_t me;} fra; + val_t tmp; + if (init_table[itpos3]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 0; + fra.me.meth = LOCATE_parser___ReduceAction___init; + fra.me.has_broke = 0; + fra.me.REG_size = 0; + stack_frame_head = fra.me.prev; + init_table[itpos3] = 1; + return; +} +void parser___ReduceAction0___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 960; + fra.me.meth = LOCATE_parser___ReduceAction0___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:962 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:963 */ + fra.me.REG[3] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:964 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:965 */ + fra.me.REG[4] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[3], fra.me.REG[4]); + /* ./parser//parser.nit:970 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:971 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction0____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 971); + } + REGB0 = ATTR_parser___ReduceAction0____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction0___init(val_t p0, val_t p1, int* init_table){ + int itpos4 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction0].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos4]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 974; + fra.me.meth = LOCATE_parser___ReduceAction0___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:974 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction0____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos4] = 1; + return; +} +void parser___ReduceAction1___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 978; + fra.me.meth = LOCATE_parser___ReduceAction1___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:980 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:981 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:982 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:983 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:985 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 985); + } + /* ./parser//parser.nit:986 */ + fra.me.REG[5] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[3], fra.me.REG[4], fra.me.REG[5]); + /* ./parser//parser.nit:991 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:992 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction1____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 992); + } + REGB0 = ATTR_parser___ReduceAction1____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction1___init(val_t p0, val_t p1, int* init_table){ + int itpos5 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction1].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos5]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 995; + fra.me.meth = LOCATE_parser___ReduceAction1___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:995 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction1____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos5] = 1; + return; +} +void parser___ReduceAction2___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 999; + fra.me.meth = LOCATE_parser___ReduceAction2___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1001 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1002 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1003 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1004 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1006 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1006); + } + /* ./parser//parser.nit:1007 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:1008 */ + fra.me.REG[5] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[4], fra.me.REG[5]); + /* ./parser//parser.nit:1013 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:1014 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction2____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1014); + } + REGB0 = ATTR_parser___ReduceAction2____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction2___init(val_t p0, val_t p1, int* init_table){ + int itpos6 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction2].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos6]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1017; + fra.me.meth = LOCATE_parser___ReduceAction2___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1017 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction2____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos6] = 1; + return; +} +void parser___ReduceAction3___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1021; + fra.me.meth = LOCATE_parser___ReduceAction3___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1023 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1024 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1025 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1026 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1027 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1029 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1029); + } + /* ./parser//parser.nit:1031 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1031); + } + /* ./parser//parser.nit:1032 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:1033 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[4], fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1038 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1039 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction3____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1039); + } + REGB0 = ATTR_parser___ReduceAction3____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction3___init(val_t p0, val_t p1, int* init_table){ + int itpos7 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction3].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos7]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1042; + fra.me.meth = LOCATE_parser___ReduceAction3___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1042 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction3____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos7] = 1; + return; +} +void parser___ReduceAction4___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1046; + fra.me.meth = LOCATE_parser___ReduceAction4___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1048 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1049 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1050 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1051 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1053 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1053); + } + /* ./parser//parser.nit:1054 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:1055 */ + fra.me.REG[5] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[4], fra.me.REG[5]); + /* ./parser//parser.nit:1060 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:1061 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction4____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1061); + } + REGB0 = ATTR_parser___ReduceAction4____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction4___init(val_t p0, val_t p1, int* init_table){ + int itpos8 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction4].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos8]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1064; + fra.me.meth = LOCATE_parser___ReduceAction4___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1064 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction4____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos8] = 1; + return; +} +void parser___ReduceAction5___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1068; + fra.me.meth = LOCATE_parser___ReduceAction5___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1070 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1071 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1072 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1073 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1074 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1076 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1076); + } + /* ./parser//parser.nit:1078 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1078); + } + /* ./parser//parser.nit:1079 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:1080 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[4], fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1085 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1086 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction5____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1086); + } + REGB0 = ATTR_parser___ReduceAction5____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction5___init(val_t p0, val_t p1, int* init_table){ + int itpos9 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction5].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos9]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1089; + fra.me.meth = LOCATE_parser___ReduceAction5___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1089 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction5____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos9] = 1; + return; +} +void parser___ReduceAction6___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1093; + fra.me.meth = LOCATE_parser___ReduceAction6___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1095 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1096 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1097 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1098 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1099 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1101 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1101); + } + /* ./parser//parser.nit:1102 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:1104 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1104); + } + /* ./parser//parser.nit:1105 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:1106 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1111 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1112 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction6____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1112); + } + REGB0 = ATTR_parser___ReduceAction6____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction6___init(val_t p0, val_t p1, int* init_table){ + int itpos10 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction6].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos10]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1115; + fra.me.meth = LOCATE_parser___ReduceAction6___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1115 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction6____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos10] = 1; + return; +} +void parser___ReduceAction7___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1119; + fra.me.meth = LOCATE_parser___ReduceAction7___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1121 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1122 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1123 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1124 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1125 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1126 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1128 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1128); + } + /* ./parser//parser.nit:1130 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1130); + } + /* ./parser//parser.nit:1131 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:1133 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1133); + } + /* ./parser//parser.nit:1134 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[3]); + fra.me.REG[7] = fra.me.REG[3]; + /* ./parser//parser.nit:1135 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[5], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1140 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1141 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction7____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1141); + } + REGB0 = ATTR_parser___ReduceAction7____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction7___init(val_t p0, val_t p1, int* init_table){ + int itpos11 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction7].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos11]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1144; + fra.me.meth = LOCATE_parser___ReduceAction7___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1144 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction7____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos11] = 1; + return; +} +void parser___ReduceAction8___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1148; + fra.me.meth = LOCATE_parser___ReduceAction8___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1150 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1151 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1152 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1153 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1154 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1156 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1156); + } + /* ./parser//parser.nit:1157 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:1158 */ + fra.me.REG[6] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[6]); + /* ./parser//parser.nit:1161 */ + REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[6]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL); + REGB0 = REGB1; } } - variable23 = NEW_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, variable16 /*tkwredefnode3*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable12 /*listnode8*/, variable13 /*listnode10*/, variable14 /*listnode11*/); /*new AClassdef*/ - variable22 = variable23; - variable1 = variable22 /*pclassdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction62___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction62::init (src/parser//parser.nit:3453,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction62].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction62].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction63___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction63::action (src/parser//parser.nit:3457,2--3496:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = NEW_array___Array___init(); /*new Array[Object]*/ - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable14 = variable10 /*nodearraylist1*/; - variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3473,6--30\n"); nit_exit(1);} - variable15 = variable9 /*nodearraylist2*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3475,6--44\n"); nit_exit(1);} - variable16 = variable8 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3477,6--42\n"); nit_exit(1);} - variable17 = variable6 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable17 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3479,6--38\n"); nit_exit(1);} - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*ppropdefnode9*/==NIT_NULL) || VAL_ISA( variable18 /*ppropdefnode9*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3481,6--38\n"); nit_exit(1);} - variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable18 /*ppropdefnode9*/ == NIT_NULL /*null*/) || (( variable18 /*ppropdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable18 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable18 /*ppropdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable18 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))( variable18 /*ppropdefnode9*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable19)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable13 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable13 /*listnode10*/, variable18 /*ppropdefnode9*/) /*Array::add*/; - } - variable20 = NEW_parser_prod___AClassdef___init_aclassdef( variable14 /*pdocnode2*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode4*/, variable16 /*pclasskindnode5*/, variable17 /*tclassidnode6*/, variable11 /*listnode7*/, variable12 /*listnode8*/, variable13 /*listnode10*/); /*new AClassdef*/ - variable19 = variable20; - variable1 = variable19 /*pclassdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction63___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction63::init (src/parser//parser.nit:3498,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction63].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction63].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction64___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction64::action (src/parser//parser.nit:3502,2--3551:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable15 = variable11 /*nodearraylist1*/; - variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3519,6--30\n"); nit_exit(1);} - variable16 = variable10 /*nodearraylist2*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3521,6--44\n"); nit_exit(1);} - variable17 = variable9 /*nodearraylist3*/; - variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3523,6--42\n"); nit_exit(1);} - variable18 = variable7 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3525,6--38\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*ppropdefnode9*/==NIT_NULL) || VAL_ISA( variable19 /*ppropdefnode9*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3527,6--38\n"); nit_exit(1);} - variable20 = variable4 /*nodearraylist8*/; - variable21 = TAG_Bool(( variable20 /*listnode10*/==NIT_NULL) || VAL_ISA( variable20 /*listnode10*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3529,6--39\n"); nit_exit(1);} - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*ppropdefnode9*/ == NIT_NULL /*null*/) || (( variable19 /*ppropdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable19 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable19 /*ppropdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable19 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))( variable19 /*ppropdefnode9*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable21)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode11*/, variable19 /*ppropdefnode9*/) /*Array::add*/; - } - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode10*/ == NIT_NULL /*null*/) || (( variable20 /*listnode10*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable20 /*listnode10*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode10*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable21)) { /*if*/ - variable21 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode11*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable21)) { /*if*/ - variable14 = variable20 /*listnode10*/ /*listnode11=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode11*/, variable20 /*listnode10*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1162 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); + } + /* ./parser//parser.nit:1164 */ + fra.me.REG[5] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[4], fra.me.REG[5]); + /* ./parser//parser.nit:1169 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:1170 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction8____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1170); + } + REGB0 = ATTR_parser___ReduceAction8____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction8___init(val_t p0, val_t p1, int* init_table){ + int itpos12 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction8].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos12]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1173; + fra.me.meth = LOCATE_parser___ReduceAction8___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1173 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction8____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos12] = 1; + return; +} +void parser___ReduceAction9___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1177; + fra.me.meth = LOCATE_parser___ReduceAction9___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1179 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1180 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1181 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1182 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1183 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1185 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1185); + } + /* ./parser//parser.nit:1186 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1188 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1188); + } + /* ./parser//parser.nit:1189 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[3]); + fra.me.REG[7] = fra.me.REG[3]; + /* ./parser//parser.nit:1190 */ + fra.me.REG[7] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[7]); + /* ./parser//parser.nit:1193 */ + REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[7]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL); + REGB0 = REGB1; } } - variable22 = NEW_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable12 /*listnode7*/, variable13 /*listnode8*/, variable14 /*listnode11*/); /*new AClassdef*/ - variable21 = variable22; - variable1 = variable21 /*pclassdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction64___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction64::init (src/parser//parser.nit:3553,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction64].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction64].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction65___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction65::action (src/parser//parser.nit:3557,2--3599:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable15 = variable11 /*nodearraylist1*/; - variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3574,6--30\n"); nit_exit(1);} - variable16 = variable10 /*nodearraylist2*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3576,6--38\n"); nit_exit(1);} - variable17 = variable9 /*nodearraylist3*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3578,6--44\n"); nit_exit(1);} - variable18 = variable8 /*nodearraylist4*/; - variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3580,6--42\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3582,6--38\n"); nit_exit(1);} - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*ppropdefnode9*/==NIT_NULL) || VAL_ISA( variable20 /*ppropdefnode9*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3584,6--38\n"); nit_exit(1);} - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*ppropdefnode9*/ == NIT_NULL /*null*/) || (( variable20 /*ppropdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*ppropdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))( variable20 /*ppropdefnode9*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable21)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable14 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode10*/, variable20 /*ppropdefnode9*/) /*Array::add*/; - } - variable22 = NEW_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, variable16 /*tkwredefnode3*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable12 /*listnode7*/, variable13 /*listnode8*/, variable14 /*listnode10*/); /*new AClassdef*/ - variable21 = variable22; - variable1 = variable21 /*pclassdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction65___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction65::init (src/parser//parser.nit:3601,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction65].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction65].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction66___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction66::action (src/parser//parser.nit:3605,2--3657:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable16 = variable12 /*nodearraylist1*/; - variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3623,6--30\n"); nit_exit(1);} - variable17 = variable11 /*nodearraylist2*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3625,6--38\n"); nit_exit(1);} - variable18 = variable10 /*nodearraylist3*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3627,6--44\n"); nit_exit(1);} - variable19 = variable9 /*nodearraylist4*/; - variable20 = TAG_Bool(( variable19 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable19 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3629,6--42\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable20 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3631,6--38\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*ppropdefnode9*/==NIT_NULL) || VAL_ISA( variable21 /*ppropdefnode9*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3633,6--38\n"); nit_exit(1);} - variable22 = variable4 /*nodearraylist9*/; - variable23 = TAG_Bool(( variable22 /*listnode10*/==NIT_NULL) || VAL_ISA( variable22 /*listnode10*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3635,6--39\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*ppropdefnode9*/ == NIT_NULL /*null*/) || (( variable21 /*ppropdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*ppropdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))( variable21 /*ppropdefnode9*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable23)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode11*/, variable21 /*ppropdefnode9*/) /*Array::add*/; - } - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode10*/ == NIT_NULL /*null*/) || (( variable22 /*listnode10*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable22 /*listnode10*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode10*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable23)) { /*if*/ - variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode11*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable23)) { /*if*/ - variable15 = variable22 /*listnode10*/ /*listnode11=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode11*/, variable22 /*listnode10*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1194 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]); + } + /* ./parser//parser.nit:1196 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[4], fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1201 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1202 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction9____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1202); + } + REGB0 = ATTR_parser___ReduceAction9____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction9___init(val_t p0, val_t p1, int* init_table){ + int itpos13 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction9].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos13]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1205; + fra.me.meth = LOCATE_parser___ReduceAction9___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1205 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction9____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos13] = 1; + return; +} +void parser___ReduceAction10___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1209; + fra.me.meth = LOCATE_parser___ReduceAction10___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1211 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1212 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1213 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1214 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1215 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1217 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1217); + } + /* ./parser//parser.nit:1218 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:1219 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1221 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1221); + } + /* ./parser//parser.nit:1222 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:1223 */ + fra.me.REG[4] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[4]); + /* ./parser//parser.nit:1226 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable24 = NEW_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, variable17 /*tkwredefnode3*/, variable18 /*pvisibilitynode4*/, variable19 /*pclasskindnode5*/, variable20 /*tclassidnode6*/, variable13 /*listnode7*/, variable14 /*listnode8*/, variable15 /*listnode11*/); /*new AClassdef*/ - variable23 = variable24; - variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/; - variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction66___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction66::init (src/parser//parser.nit:3659,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction66].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction66].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction67___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction67::action (src/parser//parser.nit:3663,2--3712:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable15 = variable11 /*nodearraylist1*/; - variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3680,6--30\n"); nit_exit(1);} - variable16 = variable10 /*nodearraylist2*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3682,6--44\n"); nit_exit(1);} - variable17 = variable9 /*nodearraylist3*/; - variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3684,6--42\n"); nit_exit(1);} - variable18 = variable7 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3686,6--38\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*listnode7*/==NIT_NULL) || VAL_ISA( variable19 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3688,6--38\n"); nit_exit(1);} - variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode7*/ == NIT_NULL /*null*/) || (( variable19 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable19 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable20)) { /*if*/ - variable20 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable20)) { /*if*/ - variable12 = variable19 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode8*/, variable19 /*listnode7*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1227 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]); + } + /* ./parser//parser.nit:1229 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1234 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1235 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction10____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1235); + } + REGB0 = ATTR_parser___ReduceAction10____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction10___init(val_t p0, val_t p1, int* init_table){ + int itpos14 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction10].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos14]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1238; + fra.me.meth = LOCATE_parser___ReduceAction10___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1238 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction10____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos14] = 1; + return; +} +void parser___ReduceAction11___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1242; + fra.me.meth = LOCATE_parser___ReduceAction11___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1244 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1245 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1246 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1247 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1248 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1249 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1251 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1251); + } + /* ./parser//parser.nit:1253 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1253); + } + /* ./parser//parser.nit:1254 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:1255 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1257 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1257); + } + /* ./parser//parser.nit:1258 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:1259 */ + fra.me.REG[4] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[4]); + /* ./parser//parser.nit:1262 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable20 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3697,6--39\n"); nit_exit(1);} - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable20 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable20 /*ppropdefnode10*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable21)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode11*/, variable20 /*ppropdefnode10*/) /*Array::add*/; - } - variable22 = NEW_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable12 /*listnode8*/, variable13 /*listnode9*/, variable14 /*listnode11*/); /*new AClassdef*/ - variable21 = variable22; - variable1 = variable21 /*pclassdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction67___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction67::init (src/parser//parser.nit:3714,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction67].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction67].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction68___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction68::action (src/parser//parser.nit:3718,2--3777:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable16 = variable12 /*nodearraylist1*/; - variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3736,6--30\n"); nit_exit(1);} - variable17 = variable11 /*nodearraylist2*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3738,6--44\n"); nit_exit(1);} - variable18 = variable10 /*nodearraylist3*/; - variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3740,6--42\n"); nit_exit(1);} - variable19 = variable8 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3742,6--38\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*listnode7*/==NIT_NULL) || VAL_ISA( variable20 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3744,6--38\n"); nit_exit(1);} - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode7*/ == NIT_NULL /*null*/) || (( variable20 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable21)) { /*if*/ - variable21 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable21)) { /*if*/ - variable13 = variable20 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode8*/, variable20 /*listnode7*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1263 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[4]); + } + /* ./parser//parser.nit:1265 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[5], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1270 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1271 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction11____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1271); + } + REGB0 = ATTR_parser___ReduceAction11____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction11___init(val_t p0, val_t p1, int* init_table){ + int itpos15 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction11].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos15]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1274; + fra.me.meth = LOCATE_parser___ReduceAction11___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1274 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction11____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos15] = 1; + return; +} +void parser___ReduceAction12___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1278; + fra.me.meth = LOCATE_parser___ReduceAction12___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1280 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1281 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1282 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1283 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1284 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1286 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1286); + } + /* ./parser//parser.nit:1287 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1289 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1289); + } + /* ./parser//parser.nit:1290 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[3]); + fra.me.REG[7] = fra.me.REG[3]; + /* ./parser//parser.nit:1291 */ + fra.me.REG[7] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[7]); + /* ./parser//parser.nit:1294 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:1295 */ + REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[7]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL); + REGB0 = REGB1; } } - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable21 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3753,6--39\n"); nit_exit(1);} - variable22 = variable4 /*nodearraylist9*/; - variable23 = TAG_Bool(( variable22 /*listnode11*/==NIT_NULL) || VAL_ISA( variable22 /*listnode11*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3755,6--39\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable21 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable21 /*ppropdefnode10*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable23)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode12*/, variable21 /*ppropdefnode10*/) /*Array::add*/; - } - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode11*/ == NIT_NULL /*null*/) || (( variable22 /*listnode11*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable22 /*listnode11*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode11*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable23)) { /*if*/ - variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode12*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable23)) { /*if*/ - variable15 = variable22 /*listnode11*/ /*listnode12=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode12*/, variable22 /*listnode11*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1296 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]); + } + /* ./parser//parser.nit:1298 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1303 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1304 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction12____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1304); + } + REGB0 = ATTR_parser___ReduceAction12____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction12___init(val_t p0, val_t p1, int* init_table){ + int itpos16 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction12].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos16]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1307; + fra.me.meth = LOCATE_parser___ReduceAction12___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1307 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction12____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos16] = 1; + return; +} +void parser___ReduceAction13___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1311; + fra.me.meth = LOCATE_parser___ReduceAction13___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1313 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1314 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1315 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1316 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1317 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1318 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1320 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1320); + } + /* ./parser//parser.nit:1322 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1322); + } + /* ./parser//parser.nit:1323 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1325 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1325); + } + /* ./parser//parser.nit:1326 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[3]); + fra.me.REG[8] = fra.me.REG[3]; + /* ./parser//parser.nit:1327 */ + fra.me.REG[8] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[8]); + /* ./parser//parser.nit:1330 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[4]); + fra.me.REG[7] = fra.me.REG[4]; + /* ./parser//parser.nit:1331 */ + REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[8]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL); + REGB0 = REGB1; } } - variable24 = NEW_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable13 /*listnode8*/, variable14 /*listnode9*/, variable15 /*listnode12*/); /*new AClassdef*/ - variable23 = variable24; - variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/; - variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction68___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction68::init (src/parser//parser.nit:3779,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction68].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction68].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction69___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction69::action (src/parser//parser.nit:3783,2--3835:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable16 = variable12 /*nodearraylist1*/; - variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3801,6--30\n"); nit_exit(1);} - variable17 = variable11 /*nodearraylist2*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3803,6--38\n"); nit_exit(1);} - variable18 = variable10 /*nodearraylist3*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3805,6--44\n"); nit_exit(1);} - variable19 = variable9 /*nodearraylist4*/; - variable20 = TAG_Bool(( variable19 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable19 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3807,6--42\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable20 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3809,6--38\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*listnode7*/==NIT_NULL) || VAL_ISA( variable21 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3811,6--38\n"); nit_exit(1);} - variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode7*/ == NIT_NULL /*null*/) || (( variable21 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable21 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable22)) { /*if*/ - variable22 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable22)) { /*if*/ - variable13 = variable21 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode8*/, variable21 /*listnode7*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1332 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]); + } + /* ./parser//parser.nit:1334 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[5], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1339 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1340 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction13____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1340); + } + REGB0 = ATTR_parser___ReduceAction13____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction13___init(val_t p0, val_t p1, int* init_table){ + int itpos17 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction13].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos17]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1343; + fra.me.meth = LOCATE_parser___ReduceAction13___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1343 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction13____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos17] = 1; + return; +} +void parser___ReduceAction14___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1347; + fra.me.meth = LOCATE_parser___ReduceAction14___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1349 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1350 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1351 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1352 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1353 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1354 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1356 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1356); + } + /* ./parser//parser.nit:1357 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[6] = fra.me.REG[5]; + /* ./parser//parser.nit:1359 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1359); + } + /* ./parser//parser.nit:1360 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1362 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1362); + } + /* ./parser//parser.nit:1363 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:1364 */ + fra.me.REG[5] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[5]); + /* ./parser//parser.nit:1367 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[4]); + fra.me.REG[7] = fra.me.REG[4]; + /* ./parser//parser.nit:1368 */ + REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL); + REGB0 = REGB1; } } - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable22 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3820,6--39\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable22 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable22 /*ppropdefnode10*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable23)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode11*/, variable22 /*ppropdefnode10*/) /*Array::add*/; - } - variable24 = NEW_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, variable17 /*tkwredefnode3*/, variable18 /*pvisibilitynode4*/, variable19 /*pclasskindnode5*/, variable20 /*tclassidnode6*/, variable13 /*listnode8*/, variable14 /*listnode9*/, variable15 /*listnode11*/); /*new AClassdef*/ - variable23 = variable24; - variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/; - variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction69___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction69::init (src/parser//parser.nit:3837,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction69].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction69].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction70___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction70::action (src/parser//parser.nit:3841,2--3903:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable17 = NEW_array___Array___init(); /*new Array[Object]*/ - variable16 = variable17; - variable17 = variable13 /*nodearraylist1*/; - variable18 = TAG_Bool(( variable17 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable17 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3860,6--30\n"); nit_exit(1);} - variable18 = variable12 /*nodearraylist2*/; - variable19 = TAG_Bool(( variable18 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3862,6--38\n"); nit_exit(1);} - variable19 = variable11 /*nodearraylist3*/; - variable20 = TAG_Bool(( variable19 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3864,6--44\n"); nit_exit(1);} - variable20 = variable10 /*nodearraylist4*/; - variable21 = TAG_Bool(( variable20 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable20 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3866,6--42\n"); nit_exit(1);} - variable21 = variable8 /*nodearraylist6*/; - variable22 = TAG_Bool(( variable21 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable21 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3868,6--38\n"); nit_exit(1);} - variable22 = variable7 /*nodearraylist7*/; - variable23 = TAG_Bool(( variable22 /*listnode7*/==NIT_NULL) || VAL_ISA( variable22 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3870,6--38\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode7*/ == NIT_NULL /*null*/) || (( variable22 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable22 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable23)) { /*if*/ - variable23 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable23)) { /*if*/ - variable14 = variable22 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode8*/, variable22 /*listnode7*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1369 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[5]); + } + /* ./parser//parser.nit:1371 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1376 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1377 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction14____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1377); + } + REGB0 = ATTR_parser___ReduceAction14____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction14___init(val_t p0, val_t p1, int* init_table){ + int itpos18 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction14].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos18]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1380; + fra.me.meth = LOCATE_parser___ReduceAction14___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1380 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction14____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos18] = 1; + return; +} +void parser___ReduceAction15___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1384; + fra.me.meth = LOCATE_parser___ReduceAction15___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1386 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1387 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1388 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1389 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1390 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1391 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1392 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1394 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1394); + } + /* ./parser//parser.nit:1396 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1396); + } + /* ./parser//parser.nit:1397 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[5]); + fra.me.REG[7] = fra.me.REG[5]; + /* ./parser//parser.nit:1399 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1399); + } + /* ./parser//parser.nit:1400 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1402 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1402); + } + /* ./parser//parser.nit:1403 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:1404 */ + fra.me.REG[5] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[5]); + /* ./parser//parser.nit:1407 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[4]); + fra.me.REG[8] = fra.me.REG[4]; + /* ./parser//parser.nit:1408 */ + REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL); + REGB0 = REGB1; } } - variable23 = variable6 /*nodearraylist8*/; - variable24 = TAG_Bool(( variable23 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable23 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3879,6--39\n"); nit_exit(1);} - variable24 = variable4 /*nodearraylist10*/; - variable25 = TAG_Bool(( variable24 /*listnode11*/==NIT_NULL) || VAL_ISA( variable24 /*listnode11*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3881,6--39\n"); nit_exit(1);} - variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable23 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable23 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable23 /*ppropdefnode10*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable25)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable16 /*listnode12*/, variable23 /*ppropdefnode10*/) /*Array::add*/; - } - variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*listnode11*/ == NIT_NULL /*null*/) || (( variable24 /*listnode11*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable24 /*listnode11*/,COLOR_kernel___Object_____eqeq))( variable24 /*listnode11*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable25)) { /*if*/ - variable25 = ((array___AbstractArray___is_empty_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___Collection___is_empty))( variable16 /*listnode12*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable25)) { /*if*/ - variable16 = variable24 /*listnode11*/ /*listnode12=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___IndexedCollection___append))( variable16 /*listnode12*/, variable24 /*listnode11*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1409 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[5]); + } + /* ./parser//parser.nit:1411 */ + fra.me.REG[8] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[6], fra.me.REG[7], fra.me.REG[8]); + /* ./parser//parser.nit:1416 */ + fra.me.REG[2] = fra.me.REG[8]; + /* ./parser//parser.nit:1417 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction15____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1417); + } + REGB0 = ATTR_parser___ReduceAction15____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction15___init(val_t p0, val_t p1, int* init_table){ + int itpos19 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction15].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos19]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1420; + fra.me.meth = LOCATE_parser___ReduceAction15___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1420 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction15____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos19] = 1; + return; +} +void parser___ReduceAction16___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1424; + fra.me.meth = LOCATE_parser___ReduceAction16___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1426 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1427 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1428 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1429 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1431 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1431); + } + /* ./parser//parser.nit:1432 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable26 = NEW_parser_prod___AClassdef___init_aclassdef( variable17 /*pdocnode2*/, variable18 /*tkwredefnode3*/, variable19 /*pvisibilitynode4*/, variable20 /*pclasskindnode5*/, variable21 /*tclassidnode6*/, variable14 /*listnode8*/, variable15 /*listnode9*/, variable16 /*listnode12*/); /*new AClassdef*/ - variable25 = variable26; - variable1 = variable25 /*pclassdefnode1*/ /*node_list=*/; - variable26 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable26, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction70___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction70::init (src/parser//parser.nit:3905,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction70].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction70].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction71___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction71::action (src/parser//parser.nit:3909,2--3958:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = NEW_array___Array___init(); /*new Array[Object]*/ - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable15 = variable11 /*nodearraylist1*/; - variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3926,6--30\n"); nit_exit(1);} - variable16 = variable10 /*nodearraylist2*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3928,6--44\n"); nit_exit(1);} - variable17 = variable9 /*nodearraylist3*/; - variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3930,6--42\n"); nit_exit(1);} - variable18 = variable7 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3932,6--38\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*listnode8*/==NIT_NULL) || VAL_ISA( variable19 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3934,6--38\n"); nit_exit(1);} - variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode8*/ == NIT_NULL /*null*/) || (( variable19 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable19 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable20)) { /*if*/ - variable20 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable20)) { /*if*/ - variable13 = variable19 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode9*/, variable19 /*listnode8*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1433 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:1435 */ + fra.me.REG[5] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[4], fra.me.REG[5]); + /* ./parser//parser.nit:1440 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:1441 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction16____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1441); + } + REGB0 = ATTR_parser___ReduceAction16____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction16___init(val_t p0, val_t p1, int* init_table){ + int itpos20 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction16].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos20]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1444; + fra.me.meth = LOCATE_parser___ReduceAction16___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1444 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction16____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos20] = 1; + return; +} +void parser___ReduceAction17___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1448; + fra.me.meth = LOCATE_parser___ReduceAction17___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1450 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1451 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1452 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1453 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1454 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1456 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1456); + } + /* ./parser//parser.nit:1458 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1458); + } + /* ./parser//parser.nit:1459 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable20 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3943,6--39\n"); nit_exit(1);} - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable20 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable20 /*ppropdefnode10*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable21)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode11*/, variable20 /*ppropdefnode10*/) /*Array::add*/; - } - variable22 = NEW_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable12 /*listnode7*/, variable13 /*listnode9*/, variable14 /*listnode11*/); /*new AClassdef*/ - variable21 = variable22; - variable1 = variable21 /*pclassdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction71___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction71::init (src/parser//parser.nit:3960,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction71].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction71].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction72___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction72::action (src/parser//parser.nit:3964,2--4023:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable16 = variable12 /*nodearraylist1*/; - variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3982,6--30\n"); nit_exit(1);} - variable17 = variable11 /*nodearraylist2*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3984,6--44\n"); nit_exit(1);} - variable18 = variable10 /*nodearraylist3*/; - variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3986,6--42\n"); nit_exit(1);} - variable19 = variable8 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3988,6--38\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*listnode8*/==NIT_NULL) || VAL_ISA( variable20 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3990,6--38\n"); nit_exit(1);} - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode8*/ == NIT_NULL /*null*/) || (( variable20 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable20 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable21)) { /*if*/ - variable21 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable21)) { /*if*/ - variable14 = variable20 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode9*/, variable20 /*listnode8*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1460 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]); + } + /* ./parser//parser.nit:1462 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[4], fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1467 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1468 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction17____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1468); + } + REGB0 = ATTR_parser___ReduceAction17____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction17___init(val_t p0, val_t p1, int* init_table){ + int itpos21 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction17].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos21]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1471; + fra.me.meth = LOCATE_parser___ReduceAction17___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1471 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction17____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos21] = 1; + return; +} +void parser___ReduceAction18___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1475; + fra.me.meth = LOCATE_parser___ReduceAction18___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1477 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1478 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1479 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1480 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1481 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1483 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1483); + } + /* ./parser//parser.nit:1484 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:1486 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1486); + } + /* ./parser//parser.nit:1487 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable21 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:3999,6--39\n"); nit_exit(1);} - variable22 = variable4 /*nodearraylist9*/; - variable23 = TAG_Bool(( variable22 /*listnode11*/==NIT_NULL) || VAL_ISA( variable22 /*listnode11*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4001,6--39\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable21 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable21 /*ppropdefnode10*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable23)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode12*/, variable21 /*ppropdefnode10*/) /*Array::add*/; - } - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode11*/ == NIT_NULL /*null*/) || (( variable22 /*listnode11*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable22 /*listnode11*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode11*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable23)) { /*if*/ - variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode12*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable23)) { /*if*/ - variable15 = variable22 /*listnode11*/ /*listnode12=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode12*/, variable22 /*listnode11*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1488 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]); + } + /* ./parser//parser.nit:1490 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1495 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1496 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction18____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1496); + } + REGB0 = ATTR_parser___ReduceAction18____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction18___init(val_t p0, val_t p1, int* init_table){ + int itpos22 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction18].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos22]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1499; + fra.me.meth = LOCATE_parser___ReduceAction18___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1499 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction18____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos22] = 1; + return; +} +void parser___ReduceAction19___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1503; + fra.me.meth = LOCATE_parser___ReduceAction19___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1505 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1506 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1507 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1508 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1509 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1510 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1512 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1512); + } + /* ./parser//parser.nit:1514 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1514); + } + /* ./parser//parser.nit:1515 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:1517 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1517); + } + /* ./parser//parser.nit:1518 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable24 = NEW_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable13 /*listnode7*/, variable14 /*listnode9*/, variable15 /*listnode12*/); /*new AClassdef*/ - variable23 = variable24; - variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/; - variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction72___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction72::init (src/parser//parser.nit:4025,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction72].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction72].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction73___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction73::action (src/parser//parser.nit:4029,2--4081:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable16 = variable12 /*nodearraylist1*/; - variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4047,6--30\n"); nit_exit(1);} - variable17 = variable11 /*nodearraylist2*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4049,6--38\n"); nit_exit(1);} - variable18 = variable10 /*nodearraylist3*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4051,6--44\n"); nit_exit(1);} - variable19 = variable9 /*nodearraylist4*/; - variable20 = TAG_Bool(( variable19 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable19 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4053,6--42\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable20 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4055,6--38\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*listnode8*/==NIT_NULL) || VAL_ISA( variable21 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4057,6--38\n"); nit_exit(1);} - variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode8*/ == NIT_NULL /*null*/) || (( variable21 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable21 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable22)) { /*if*/ - variable22 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable22)) { /*if*/ - variable14 = variable21 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode9*/, variable21 /*listnode8*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1519 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]); + } + /* ./parser//parser.nit:1521 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[5], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1526 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1527 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction19____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1527); + } + REGB0 = ATTR_parser___ReduceAction19____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction19___init(val_t p0, val_t p1, int* init_table){ + int itpos23 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction19].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos23]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1530; + fra.me.meth = LOCATE_parser___ReduceAction19___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1530 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction19____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos23] = 1; + return; +} +void parser___ReduceAction20___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1534; + fra.me.meth = LOCATE_parser___ReduceAction20___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1536 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1537 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1538 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1539 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1540 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1542 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1542); + } + /* ./parser//parser.nit:1544 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1544); + } + /* ./parser//parser.nit:1545 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:1546 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable22 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4066,6--39\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable22 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable22 /*ppropdefnode10*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable23)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode11*/, variable22 /*ppropdefnode10*/) /*Array::add*/; - } - variable24 = NEW_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, variable17 /*tkwredefnode3*/, variable18 /*pvisibilitynode4*/, variable19 /*pclasskindnode5*/, variable20 /*tclassidnode6*/, variable13 /*listnode7*/, variable14 /*listnode9*/, variable15 /*listnode11*/); /*new AClassdef*/ - variable23 = variable24; - variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/; - variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction73___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction73::init (src/parser//parser.nit:4083,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction73].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction73].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction74___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction74::action (src/parser//parser.nit:4087,2--4149:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable17 = NEW_array___Array___init(); /*new Array[Object]*/ - variable16 = variable17; - variable17 = variable13 /*nodearraylist1*/; - variable18 = TAG_Bool(( variable17 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable17 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4106,6--30\n"); nit_exit(1);} - variable18 = variable12 /*nodearraylist2*/; - variable19 = TAG_Bool(( variable18 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4108,6--38\n"); nit_exit(1);} - variable19 = variable11 /*nodearraylist3*/; - variable20 = TAG_Bool(( variable19 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4110,6--44\n"); nit_exit(1);} - variable20 = variable10 /*nodearraylist4*/; - variable21 = TAG_Bool(( variable20 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable20 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4112,6--42\n"); nit_exit(1);} - variable21 = variable8 /*nodearraylist6*/; - variable22 = TAG_Bool(( variable21 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable21 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4114,6--38\n"); nit_exit(1);} - variable22 = variable7 /*nodearraylist7*/; - variable23 = TAG_Bool(( variable22 /*listnode8*/==NIT_NULL) || VAL_ISA( variable22 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4116,6--38\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode8*/ == NIT_NULL /*null*/) || (( variable22 /*listnode8*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable22 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode8*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable23)) { /*if*/ - variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode9*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable23)) { /*if*/ - variable15 = variable22 /*listnode8*/ /*listnode9=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode9*/, variable22 /*listnode8*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1547 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]); + } + /* ./parser//parser.nit:1549 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1554 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1555 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction20____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1555); + } + REGB0 = ATTR_parser___ReduceAction20____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction20___init(val_t p0, val_t p1, int* init_table){ + int itpos24 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction20].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos24]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1558; + fra.me.meth = LOCATE_parser___ReduceAction20___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1558 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction20____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos24] = 1; + return; +} +void parser___ReduceAction21___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1562; + fra.me.meth = LOCATE_parser___ReduceAction21___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1564 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1565 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1566 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1567 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1568 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1569 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1571 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1571); + } + /* ./parser//parser.nit:1573 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1573); + } + /* ./parser//parser.nit:1575 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1575); + } + /* ./parser//parser.nit:1576 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[4]); + fra.me.REG[7] = fra.me.REG[4]; + /* ./parser//parser.nit:1577 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable23 = variable6 /*nodearraylist8*/; - variable24 = TAG_Bool(( variable23 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable23 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4125,6--39\n"); nit_exit(1);} - variable24 = variable4 /*nodearraylist10*/; - variable25 = TAG_Bool(( variable24 /*listnode11*/==NIT_NULL) || VAL_ISA( variable24 /*listnode11*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4127,6--39\n"); nit_exit(1);} - variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable23 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable23 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable23 /*ppropdefnode10*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable25)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable16 /*listnode12*/, variable23 /*ppropdefnode10*/) /*Array::add*/; - } - variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*listnode11*/ == NIT_NULL /*null*/) || (( variable24 /*listnode11*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable24 /*listnode11*/,COLOR_kernel___Object_____eqeq))( variable24 /*listnode11*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable25)) { /*if*/ - variable25 = ((array___AbstractArray___is_empty_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___Collection___is_empty))( variable16 /*listnode12*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable25)) { /*if*/ - variable16 = variable24 /*listnode11*/ /*listnode12=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___IndexedCollection___append))( variable16 /*listnode12*/, variable24 /*listnode11*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1578 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]); + } + /* ./parser//parser.nit:1580 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[5], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1585 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1586 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction21____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1586); + } + REGB0 = ATTR_parser___ReduceAction21____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction21___init(val_t p0, val_t p1, int* init_table){ + int itpos25 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction21].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos25]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1589; + fra.me.meth = LOCATE_parser___ReduceAction21___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1589 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction21____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos25] = 1; + return; +} +void parser___ReduceAction22___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1593; + fra.me.meth = LOCATE_parser___ReduceAction22___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1595 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1596 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1597 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1598 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1599 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1600 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1602 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1602); + } + /* ./parser//parser.nit:1603 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[6] = fra.me.REG[5]; + /* ./parser//parser.nit:1605 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1605); + } + /* ./parser//parser.nit:1607 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1607); + } + /* ./parser//parser.nit:1608 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[4]); + fra.me.REG[7] = fra.me.REG[4]; + /* ./parser//parser.nit:1609 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable26 = NEW_parser_prod___AClassdef___init_aclassdef( variable17 /*pdocnode2*/, variable18 /*tkwredefnode3*/, variable19 /*pvisibilitynode4*/, variable20 /*pclasskindnode5*/, variable21 /*tclassidnode6*/, variable14 /*listnode7*/, variable15 /*listnode9*/, variable16 /*listnode12*/); /*new AClassdef*/ - variable25 = variable26; - variable1 = variable25 /*pclassdefnode1*/ /*node_list=*/; - variable26 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable26, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction74___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction74::init (src/parser//parser.nit:4151,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction74].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction74].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction75___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction75::action (src/parser//parser.nit:4155,2--4214:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable16 = variable12 /*nodearraylist1*/; - variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4173,6--30\n"); nit_exit(1);} - variable17 = variable11 /*nodearraylist2*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4175,6--44\n"); nit_exit(1);} - variable18 = variable10 /*nodearraylist3*/; - variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4177,6--42\n"); nit_exit(1);} - variable19 = variable8 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4179,6--38\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*listnode7*/==NIT_NULL) || VAL_ISA( variable20 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4181,6--38\n"); nit_exit(1);} - variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode7*/ == NIT_NULL /*null*/) || (( variable20 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable21)) { /*if*/ - variable21 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable21)) { /*if*/ - variable13 = variable20 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode8*/, variable20 /*listnode7*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1610 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]); + } + /* ./parser//parser.nit:1612 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1617 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1618 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction22____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1618); + } + REGB0 = ATTR_parser___ReduceAction22____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction22___init(val_t p0, val_t p1, int* init_table){ + int itpos26 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction22].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos26]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1621; + fra.me.meth = LOCATE_parser___ReduceAction22___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1621 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction22____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos26] = 1; + return; +} +void parser___ReduceAction23___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1625; + fra.me.meth = LOCATE_parser___ReduceAction23___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1627 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1628 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1629 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1630 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1631 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1632 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1633 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1635 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1635); + } + /* ./parser//parser.nit:1637 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1637); + } + /* ./parser//parser.nit:1638 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[5]); + fra.me.REG[7] = fra.me.REG[5]; + /* ./parser//parser.nit:1640 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1640); + } + /* ./parser//parser.nit:1642 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1642); + } + /* ./parser//parser.nit:1643 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[4]); + fra.me.REG[8] = fra.me.REG[4]; + /* ./parser//parser.nit:1644 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*listnode9*/==NIT_NULL) || VAL_ISA( variable21 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4190,6--38\n"); nit_exit(1);} - variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode9*/ == NIT_NULL /*null*/) || (( variable21 /*listnode9*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable21 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode9*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable22)) { /*if*/ - variable22 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable22)) { /*if*/ - variable14 = variable21 /*listnode9*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode10*/, variable21 /*listnode9*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1645 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[3]); + } + /* ./parser//parser.nit:1647 */ + fra.me.REG[8] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[6], fra.me.REG[7], fra.me.REG[8]); + /* ./parser//parser.nit:1652 */ + fra.me.REG[2] = fra.me.REG[8]; + /* ./parser//parser.nit:1653 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction23____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1653); + } + REGB0 = ATTR_parser___ReduceAction23____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction23___init(val_t p0, val_t p1, int* init_table){ + int itpos27 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction23].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos27]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1656; + fra.me.meth = LOCATE_parser___ReduceAction23___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1656 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction23____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos27] = 1; + return; +} +void parser___ReduceAction24___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1660; + fra.me.meth = LOCATE_parser___ReduceAction24___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1662 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1663 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1664 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1665 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1666 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1667 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1669 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1669); + } + /* ./parser//parser.nit:1670 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[4]); + fra.me.REG[7] = fra.me.REG[4]; + /* ./parser//parser.nit:1671 */ + fra.me.REG[7] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[7]); + /* ./parser//parser.nit:1675 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1675); + } + /* ./parser//parser.nit:1676 */ + REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[7]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL); + REGB0 = REGB1; } } - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*ppropdefnode11*/==NIT_NULL) || VAL_ISA( variable22 /*ppropdefnode11*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4199,6--39\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*ppropdefnode11*/ == NIT_NULL /*null*/) || (( variable22 /*ppropdefnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*ppropdefnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))( variable22 /*ppropdefnode11*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable23)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode12*/, variable22 /*ppropdefnode11*/) /*Array::add*/; - } - variable24 = NEW_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable13 /*listnode8*/, variable14 /*listnode10*/, variable15 /*listnode12*/); /*new AClassdef*/ - variable23 = variable24; - variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/; - variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction75___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction75::init (src/parser//parser.nit:4216,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction75].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction75].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction76___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction76::action (src/parser//parser.nit:4220,2--4289:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable17 = NEW_array___Array___init(); /*new Array[Object]*/ - variable16 = variable17; - variable17 = variable13 /*nodearraylist1*/; - variable18 = TAG_Bool(( variable17 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable17 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4239,6--30\n"); nit_exit(1);} - variable18 = variable12 /*nodearraylist2*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4241,6--44\n"); nit_exit(1);} - variable19 = variable11 /*nodearraylist3*/; - variable20 = TAG_Bool(( variable19 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable19 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4243,6--42\n"); nit_exit(1);} - variable20 = variable9 /*nodearraylist5*/; - variable21 = TAG_Bool(( variable20 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable20 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4245,6--38\n"); nit_exit(1);} - variable21 = variable8 /*nodearraylist6*/; - variable22 = TAG_Bool(( variable21 /*listnode7*/==NIT_NULL) || VAL_ISA( variable21 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4247,6--38\n"); nit_exit(1);} - variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode7*/ == NIT_NULL /*null*/) || (( variable21 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable21 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable22)) { /*if*/ - variable22 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable22)) { /*if*/ - variable14 = variable21 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode8*/, variable21 /*listnode7*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1677 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]); + } + /* ./parser//parser.nit:1679 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable22 = variable7 /*nodearraylist7*/; - variable23 = TAG_Bool(( variable22 /*listnode9*/==NIT_NULL) || VAL_ISA( variable22 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4256,6--38\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode9*/ == NIT_NULL /*null*/) || (( variable22 /*listnode9*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable22 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode9*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable23)) { /*if*/ - variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable23)) { /*if*/ - variable15 = variable22 /*listnode9*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode10*/, variable22 /*listnode9*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1680 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]); + } + /* ./parser//parser.nit:1682 */ + fra.me.REG[6] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:1687 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:1688 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction24____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1688); + } + REGB0 = ATTR_parser___ReduceAction24____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction24___init(val_t p0, val_t p1, int* init_table){ + int itpos28 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction24].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos28]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1691; + fra.me.meth = LOCATE_parser___ReduceAction24___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1691 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction24____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos28] = 1; + return; +} +void parser___ReduceAction25___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1695; + fra.me.meth = LOCATE_parser___ReduceAction25___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1697 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1698 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1699 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1700 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1701 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1702 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1704 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1704); + } + /* ./parser//parser.nit:1705 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1707 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1707); + } + /* ./parser//parser.nit:1708 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[4]); + fra.me.REG[8] = fra.me.REG[4]; + /* ./parser//parser.nit:1709 */ + fra.me.REG[8] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[8]); + /* ./parser//parser.nit:1713 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1713); + } + /* ./parser//parser.nit:1714 */ + REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[8]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL); + REGB0 = REGB1; } } - variable23 = variable6 /*nodearraylist8*/; - variable24 = TAG_Bool(( variable23 /*ppropdefnode11*/==NIT_NULL) || VAL_ISA( variable23 /*ppropdefnode11*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4265,6--39\n"); nit_exit(1);} - variable24 = variable4 /*nodearraylist10*/; - variable25 = TAG_Bool(( variable24 /*listnode12*/==NIT_NULL) || VAL_ISA( variable24 /*listnode12*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4267,6--39\n"); nit_exit(1);} - variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*ppropdefnode11*/ == NIT_NULL /*null*/) || (( variable23 /*ppropdefnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable23 /*ppropdefnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))( variable23 /*ppropdefnode11*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable25)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable16 /*listnode13*/,COLOR_abstract_collection___SimpleCollection___add))( variable16 /*listnode13*/, variable23 /*ppropdefnode11*/) /*Array::add*/; - } - variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*listnode12*/ == NIT_NULL /*null*/) || (( variable24 /*listnode12*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable24 /*listnode12*/,COLOR_kernel___Object_____eqeq))( variable24 /*listnode12*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable25)) { /*if*/ - variable25 = ((array___AbstractArray___is_empty_t)CALL( variable16 /*listnode13*/,COLOR_abstract_collection___Collection___is_empty))( variable16 /*listnode13*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable25)) { /*if*/ - variable16 = variable24 /*listnode12*/ /*listnode13=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable16 /*listnode13*/,COLOR_abstract_collection___IndexedCollection___append))( variable16 /*listnode13*/, variable24 /*listnode12*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1715 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]); + } + /* ./parser//parser.nit:1717 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable26 = NEW_parser_prod___AClassdef___init_aclassdef( variable17 /*pdocnode2*/, NIT_NULL /*null*/, variable18 /*pvisibilitynode4*/, variable19 /*pclasskindnode5*/, variable20 /*tclassidnode6*/, variable14 /*listnode8*/, variable15 /*listnode10*/, variable16 /*listnode13*/); /*new AClassdef*/ - variable25 = variable26; - variable1 = variable25 /*pclassdefnode1*/ /*node_list=*/; - variable26 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable26, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction76___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction76::init (src/parser//parser.nit:4291,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction76].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction76].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction77___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction77::action (src/parser//parser.nit:4295,2--4357:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable17 = NEW_array___Array___init(); /*new Array[Object]*/ - variable16 = variable17; - variable17 = variable13 /*nodearraylist1*/; - variable18 = TAG_Bool(( variable17 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable17 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4314,6--30\n"); nit_exit(1);} - variable18 = variable12 /*nodearraylist2*/; - variable19 = TAG_Bool(( variable18 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4316,6--38\n"); nit_exit(1);} - variable19 = variable11 /*nodearraylist3*/; - variable20 = TAG_Bool(( variable19 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4318,6--44\n"); nit_exit(1);} - variable20 = variable10 /*nodearraylist4*/; - variable21 = TAG_Bool(( variable20 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable20 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4320,6--42\n"); nit_exit(1);} - variable21 = variable8 /*nodearraylist6*/; - variable22 = TAG_Bool(( variable21 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable21 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4322,6--38\n"); nit_exit(1);} - variable22 = variable7 /*nodearraylist7*/; - variable23 = TAG_Bool(( variable22 /*listnode7*/==NIT_NULL) || VAL_ISA( variable22 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4324,6--38\n"); nit_exit(1);} - variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode7*/ == NIT_NULL /*null*/) || (( variable22 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable22 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable23)) { /*if*/ - variable23 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable23)) { /*if*/ - variable14 = variable22 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode8*/, variable22 /*listnode7*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1718 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]); + } + /* ./parser//parser.nit:1720 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[5], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1725 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1726 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction25____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1726); + } + REGB0 = ATTR_parser___ReduceAction25____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction25___init(val_t p0, val_t p1, int* init_table){ + int itpos29 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction25].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos29]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1729; + fra.me.meth = LOCATE_parser___ReduceAction25___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1729 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction25____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos29] = 1; + return; +} +void parser___ReduceAction26___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1733; + fra.me.meth = LOCATE_parser___ReduceAction26___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1735 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1736 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1737 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1738 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1739 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1740 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1742 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1742); + } + /* ./parser//parser.nit:1743 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[6] = fra.me.REG[5]; + /* ./parser//parser.nit:1744 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1746 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1746); + } + /* ./parser//parser.nit:1747 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:1748 */ + fra.me.REG[5] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[5]); + /* ./parser//parser.nit:1752 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1752); + } + /* ./parser//parser.nit:1753 */ + REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL); + REGB0 = REGB1; } } - variable23 = variable6 /*nodearraylist8*/; - variable24 = TAG_Bool(( variable23 /*listnode9*/==NIT_NULL) || VAL_ISA( variable23 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4333,6--38\n"); nit_exit(1);} - variable24 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*listnode9*/ == NIT_NULL /*null*/) || (( variable23 /*listnode9*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable23 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable23 /*listnode9*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable24)) { /*if*/ - variable24 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable24)) { /*if*/ - variable15 = variable23 /*listnode9*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode10*/, variable23 /*listnode9*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1754 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[5]); + } + /* ./parser//parser.nit:1756 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable24 = variable5 /*nodearraylist9*/; - variable25 = TAG_Bool(( variable24 /*ppropdefnode11*/==NIT_NULL) || VAL_ISA( variable24 /*ppropdefnode11*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4342,6--39\n"); nit_exit(1);} - variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*ppropdefnode11*/ == NIT_NULL /*null*/) || (( variable24 /*ppropdefnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable24 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable24 /*ppropdefnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable24 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))( variable24 /*ppropdefnode11*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable25)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable16 /*listnode12*/, variable24 /*ppropdefnode11*/) /*Array::add*/; - } - variable26 = NEW_parser_prod___AClassdef___init_aclassdef( variable17 /*pdocnode2*/, variable18 /*tkwredefnode3*/, variable19 /*pvisibilitynode4*/, variable20 /*pclasskindnode5*/, variable21 /*tclassidnode6*/, variable14 /*listnode8*/, variable15 /*listnode10*/, variable16 /*listnode12*/); /*new AClassdef*/ - variable25 = variable26; - variable1 = variable25 /*pclassdefnode1*/ /*node_list=*/; - variable26 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable26, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction77___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction77::init (src/parser//parser.nit:4359,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction77].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction77].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction78___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction78::action (src/parser//parser.nit:4363,2--4435:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - val_t variable27; - val_t variable28; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable15 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable14 = variable15; - variable16 = NEW_array___Array___init(); /*new Array[Object]*/ - variable15 = variable16; - variable17 = NEW_array___Array___init(); /*new Array[Object]*/ - variable16 = variable17; - variable18 = NEW_array___Array___init(); /*new Array[Object]*/ - variable17 = variable18; - variable18 = variable14 /*nodearraylist1*/; - variable19 = TAG_Bool(( variable18 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable18 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4383,6--30\n"); nit_exit(1);} - variable19 = variable13 /*nodearraylist2*/; - variable20 = TAG_Bool(( variable19 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4385,6--38\n"); nit_exit(1);} - variable20 = variable12 /*nodearraylist3*/; - variable21 = TAG_Bool(( variable20 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4387,6--44\n"); nit_exit(1);} - variable21 = variable11 /*nodearraylist4*/; - variable22 = TAG_Bool(( variable21 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable21 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4389,6--42\n"); nit_exit(1);} - variable22 = variable9 /*nodearraylist6*/; - variable23 = TAG_Bool(( variable22 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable22 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4391,6--38\n"); nit_exit(1);} - variable23 = variable8 /*nodearraylist7*/; - variable24 = TAG_Bool(( variable23 /*listnode7*/==NIT_NULL) || VAL_ISA( variable23 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4393,6--38\n"); nit_exit(1);} - variable24 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*listnode7*/ == NIT_NULL /*null*/) || (( variable23 /*listnode7*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable23 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable23 /*listnode7*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable24)) { /*if*/ - variable24 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode8*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable24)) { /*if*/ - variable15 = variable23 /*listnode7*/ /*listnode8=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode8*/, variable23 /*listnode7*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1757 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]); + } + /* ./parser//parser.nit:1759 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1764 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1765 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction26____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1765); + } + REGB0 = ATTR_parser___ReduceAction26____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction26___init(val_t p0, val_t p1, int* init_table){ + int itpos30 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction26].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos30]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1768; + fra.me.meth = LOCATE_parser___ReduceAction26___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1768 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction26____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos30] = 1; + return; +} +void parser___ReduceAction27___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1772; + fra.me.meth = LOCATE_parser___ReduceAction27___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1774 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1775 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1776 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1777 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1778 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1779 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1780 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1782 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1782); + } + /* ./parser//parser.nit:1784 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1784); + } + /* ./parser//parser.nit:1785 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[5]); + fra.me.REG[7] = fra.me.REG[5]; + /* ./parser//parser.nit:1786 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1788 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1788); + } + /* ./parser//parser.nit:1789 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:1790 */ + fra.me.REG[5] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[5]); + /* ./parser//parser.nit:1794 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1794); + } + /* ./parser//parser.nit:1795 */ + REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL); + REGB0 = REGB1; } } - variable24 = variable7 /*nodearraylist8*/; - variable25 = TAG_Bool(( variable24 /*listnode9*/==NIT_NULL) || VAL_ISA( variable24 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4402,6--38\n"); nit_exit(1);} - variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*listnode9*/ == NIT_NULL /*null*/) || (( variable24 /*listnode9*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable24 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable24 /*listnode9*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable25)) { /*if*/ - variable25 = ((array___AbstractArray___is_empty_t)CALL( variable16 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable16 /*listnode10*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable25)) { /*if*/ - variable16 = variable24 /*listnode9*/ /*listnode10=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable16 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable16 /*listnode10*/, variable24 /*listnode9*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1796 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[5]); + } + /* ./parser//parser.nit:1798 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable25 = variable6 /*nodearraylist9*/; - variable26 = TAG_Bool(( variable25 /*ppropdefnode11*/==NIT_NULL) || VAL_ISA( variable25 /*ppropdefnode11*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4411,6--39\n"); nit_exit(1);} - variable26 = variable4 /*nodearraylist11*/; - variable27 = TAG_Bool(( variable26 /*listnode12*/==NIT_NULL) || VAL_ISA( variable26 /*listnode12*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable27)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4413,6--39\n"); nit_exit(1);} - variable27 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable25 /*ppropdefnode11*/ == NIT_NULL /*null*/) || (( variable25 /*ppropdefnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable25 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable25 /*ppropdefnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable25 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))( variable25 /*ppropdefnode11*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable27)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable17 /*listnode13*/,COLOR_abstract_collection___SimpleCollection___add))( variable17 /*listnode13*/, variable25 /*ppropdefnode11*/) /*Array::add*/; - } - variable27 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable26 /*listnode12*/ == NIT_NULL /*null*/) || (( variable26 /*listnode12*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable26 /*listnode12*/,COLOR_kernel___Object_____eqeq))( variable26 /*listnode12*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable27)) { /*if*/ - variable27 = ((array___AbstractArray___is_empty_t)CALL( variable17 /*listnode13*/,COLOR_abstract_collection___Collection___is_empty))( variable17 /*listnode13*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable27)) { /*if*/ - variable17 = variable26 /*listnode12*/ /*listnode13=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable17 /*listnode13*/,COLOR_abstract_collection___IndexedCollection___append))( variable17 /*listnode13*/, variable26 /*listnode12*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1799 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[3]); + } + /* ./parser//parser.nit:1801 */ + fra.me.REG[8] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[6], fra.me.REG[7], fra.me.REG[8]); + /* ./parser//parser.nit:1806 */ + fra.me.REG[2] = fra.me.REG[8]; + /* ./parser//parser.nit:1807 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction27____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1807); + } + REGB0 = ATTR_parser___ReduceAction27____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction27___init(val_t p0, val_t p1, int* init_table){ + int itpos31 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction27].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos31]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1810; + fra.me.meth = LOCATE_parser___ReduceAction27___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1810 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction27____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos31] = 1; + return; +} +void parser___ReduceAction28___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1814; + fra.me.meth = LOCATE_parser___ReduceAction28___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1816 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1817 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1818 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1819 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1820 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1821 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1823 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1823); + } + /* ./parser//parser.nit:1824 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1826 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1826); + } + /* ./parser//parser.nit:1827 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[4]); + fra.me.REG[8] = fra.me.REG[4]; + /* ./parser//parser.nit:1828 */ + fra.me.REG[8] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[8]); + /* ./parser//parser.nit:1832 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1832); + } + /* ./parser//parser.nit:1833 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[5]); + fra.me.REG[7] = fra.me.REG[5]; + /* ./parser//parser.nit:1834 */ + REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[8]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL); + REGB0 = REGB1; } } - variable28 = NEW_parser_prod___AClassdef___init_aclassdef( variable18 /*pdocnode2*/, variable19 /*tkwredefnode3*/, variable20 /*pvisibilitynode4*/, variable21 /*pclasskindnode5*/, variable22 /*tclassidnode6*/, variable15 /*listnode8*/, variable16 /*listnode10*/, variable17 /*listnode13*/); /*new AClassdef*/ - variable27 = variable28; - variable1 = variable27 /*pclassdefnode1*/ /*node_list=*/; - variable28 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable28, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction78___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction78::init (src/parser//parser.nit:4437,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction78].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction78].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction79___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction79::action (src/parser//parser.nit:4441,2--4451:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwclassnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwclassnode2*/, COLOR_TKwclass, ID_TKwclass)) /*cast TKwclass*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4446,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AConcreteClasskind___init_aconcreteclasskind( variable3 /*tkwclassnode2*/); /*new AConcreteClasskind*/ - variable4 = variable5; - variable1 = variable4 /*pclasskindnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(6)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction79___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction79::init (src/parser//parser.nit:4453,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction79].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction79].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction80___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction80::action (src/parser//parser.nit:4457,2--4471:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwabstractnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwabstractnode2*/, COLOR_TKwabstract, ID_TKwabstract)) /*cast TKwabstract*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4463,6--44\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*tkwclassnode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwclassnode3*/, COLOR_TKwclass, ID_TKwclass)) /*cast TKwclass*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4465,6--38\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AAbstractClasskind___init_aabstractclasskind( variable4 /*tkwabstractnode2*/, variable5 /*tkwclassnode3*/); /*new AAbstractClasskind*/ - variable6 = variable7; - variable1 = variable6 /*pclasskindnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(6)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction80___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction80::init (src/parser//parser.nit:4473,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction80].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction80].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction81___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction81::action (src/parser//parser.nit:4477,2--4487:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwinterfacenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwinterfacenode2*/, COLOR_TKwinterface, ID_TKwinterface)) /*cast TKwinterface*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4482,6--46\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AInterfaceClasskind___init_ainterfaceclasskind( variable3 /*tkwinterfacenode2*/); /*new AInterfaceClasskind*/ - variable4 = variable5; - variable1 = variable4 /*pclasskindnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(6)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction81___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction81::init (src/parser//parser.nit:4489,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction81].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction81].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction82___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction82::action (src/parser//parser.nit:4493,2--4503:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwuniversalnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwuniversalnode2*/, COLOR_TKwuniversal, ID_TKwuniversal)) /*cast TKwuniversal*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4498,6--46\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AUniversalClasskind___init_auniversalclasskind( variable3 /*tkwuniversalnode2*/); /*new AUniversalClasskind*/ - variable4 = variable5; - variable1 = variable4 /*pclasskindnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(6)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction82___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction82::init (src/parser//parser.nit:4505,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction82].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction82].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction83___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction83::action (src/parser//parser.nit:4509,2--4524:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable4 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pformaldefnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pformaldefnode1*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4519,6--42\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pformaldefnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pformaldefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pformaldefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pformaldefnode1*/, NIT_NULL /*null*/) /*PFormaldef::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pformaldefnode1*/) /*Array::add*/; - } - variable1 = variable7 /*listnode2*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(7)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction83___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction83::init (src/parser//parser.nit:4526,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction83].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction83].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction84___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction84::action (src/parser//parser.nit:4530,2--4555:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pformaldefnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pformaldefnode1*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4541,6--42\n"); nit_exit(1);} - variable10 = variable4 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4543,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pformaldefnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pformaldefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pformaldefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pformaldefnode1*/, NIT_NULL /*null*/) /*PFormaldef::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pformaldefnode1*/) /*Array::add*/; - } - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1835 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]); + } + /* ./parser//parser.nit:1837 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable1 = variable8 /*listnode3*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(7)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction84___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction84::init (src/parser//parser.nit:4557,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction84].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction84].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction85___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction85::action (src/parser//parser.nit:4561,2--4570:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable2 /*nodearraylist3*/; - variable6 = TAG_Bool(( variable5 /*pformaldefnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pformaldefnode1*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4568,6--42\n"); nit_exit(1);} - variable1 = variable5 /*pformaldefnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(8)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction85___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction85::init (src/parser//parser.nit:4572,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction85].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction85].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction86___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction86::action (src/parser//parser.nit:4576,2--4587:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4581,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFormaldef___init_aformaldef( variable3 /*tclassidnode2*/, NIT_NULL /*null*/); /*new AFormaldef*/ - variable4 = variable5; - variable1 = variable4 /*pformaldefnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(9)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction86___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction86::init (src/parser//parser.nit:4589,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction86].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction86].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction87___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction87::action (src/parser//parser.nit:4593,2--4607:33)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4599,6--38\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4601,6--32\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AFormaldef___init_aformaldef( variable4 /*tclassidnode2*/, variable5 /*ptypenode3*/); /*new AFormaldef*/ - variable6 = variable7; - variable1 = variable6 /*pformaldefnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(9)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction87___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction87::init (src/parser//parser.nit:4609,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction87].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction87].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction88___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction88::action (src/parser//parser.nit:4613,2--4629:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable4 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*tkwspecialnode2*/==NIT_NULL) || VAL_ISA( variable6 /*tkwspecialnode2*/, COLOR_TKwspecial, ID_TKwspecial)) /*cast TKwspecial*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4621,6--42\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4623,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ASuperclass___init_asuperclass( variable6 /*tkwspecialnode2*/, variable7 /*ptypenode3*/); /*new ASuperclass*/ - variable8 = variable9; - variable1 = variable8 /*psuperclassnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(10)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction88___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction88::init (src/parser//parser.nit:4631,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction88].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction88].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction89___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction89::action (src/parser//parser.nit:4635,2--4643:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*ppropdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode1*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4641,6--38\n"); nit_exit(1);} - variable1 = variable4 /*ppropdefnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(11)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction89___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction89::init (src/parser//parser.nit:4645,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction89].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction89].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction90___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction90::action (src/parser//parser.nit:4649,2--4690:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4659,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4661,6--44\n"); nit_exit(1);} - variable11 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable9 /*tkwreadablenode5*/); /*new AReadAble*/ - variable10 = variable11; - variable11 = variable5 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable11 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4667,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable11 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable12 = variable13; - variable13 = variable4 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4673,6--45\n"); nit_exit(1);} - variable14 = variable3 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4675,6--37\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4677,6--37\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, variable10 /*pablenode3*/, variable12 /*pablenode6*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode10*/, variable14 /*tkwattrnode11*/, variable15 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction90___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction90::init (src/parser//parser.nit:4692,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction90].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction90].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction91___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction91::action (src/parser//parser.nit:4696,2--4740:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4707,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4709,6--44\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/ - variable11 = variable12; - variable12 = variable6 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4715,6--38\n"); nit_exit(1);} - variable13 = variable5 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4717,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AWriteAble___init_awriteable( variable12 /*tkwredefnode7*/, variable13 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable14 = variable15; - variable15 = variable4 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4723,6--45\n"); nit_exit(1);} - variable16 = variable3 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4725,6--37\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist7*/; - variable18 = TAG_Bool(( variable17 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4727,6--37\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable11 /*pablenode3*/, variable14 /*pablenode6*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode10*/, variable16 /*tkwattrnode11*/, variable17 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction91___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction91::init (src/parser//parser.nit:4742,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction91].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction91].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction92___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction92::action (src/parser//parser.nit:4746,2--4780:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable7 = variable6 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4755,6--30\n"); nit_exit(1);} - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable8 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4757,6--44\n"); nit_exit(1);} - variable10 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable8 /*tkwreadablenode5*/); /*new AReadAble*/ - variable9 = variable10; - variable10 = variable4 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4763,6--44\n"); nit_exit(1);} - variable11 = variable3 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable11 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4765,6--36\n"); nit_exit(1);} - variable12 = variable2 /*nodearraylist5*/; - variable13 = TAG_Bool(( variable12 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable12 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4767,6--37\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable7 /*pdocnode2*/, variable9 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode8*/, variable11 /*tkwattrnode9*/, variable12 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable13 = variable14; - variable1 = variable13 /*ppropdefnode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction92___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction92::init (src/parser//parser.nit:4782,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction92].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction92].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction93___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction93::action (src/parser//parser.nit:4786,2--4830:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4797,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4799,6--38\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4801,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AReadAble___init_areadable( variable10 /*tkwredefnode4*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/ - variable12 = variable13; - variable13 = variable5 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4807,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable13 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable14 = variable15; - variable15 = variable4 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4813,6--45\n"); nit_exit(1);} - variable16 = variable3 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4815,6--37\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist7*/; - variable18 = TAG_Bool(( variable17 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4817,6--37\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable12 /*pablenode3*/, variable14 /*pablenode6*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode10*/, variable16 /*tkwattrnode11*/, variable17 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction93___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction93::init (src/parser//parser.nit:4832,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction93].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction93].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction94___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction94::action (src/parser//parser.nit:4836,2--4883:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4848,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4850,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4852,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AReadAble___init_areadable( variable11 /*tkwredefnode4*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/ - variable13 = variable14; - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4858,6--38\n"); nit_exit(1);} - variable15 = variable5 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4860,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AWriteAble___init_awriteable( variable14 /*tkwredefnode7*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable16 = variable17; - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4866,6--45\n"); nit_exit(1);} - variable18 = variable3 /*nodearraylist7*/; - variable19 = TAG_Bool(( variable18 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4868,6--37\n"); nit_exit(1);} - variable19 = variable2 /*nodearraylist8*/; - variable20 = TAG_Bool(( variable19 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4870,6--37\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable13 /*pablenode3*/, variable16 /*pablenode6*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode10*/, variable18 /*tkwattrnode11*/, variable19 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable20 = variable21; - variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction94___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction94::init (src/parser//parser.nit:4885,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction94].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction94].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction95___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction95::action (src/parser//parser.nit:4889,2--4926:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4899,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable9 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4901,6--38\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4903,6--44\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AReadAble___init_areadable( variable9 /*tkwredefnode4*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/ - variable11 = variable12; - variable12 = variable4 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4909,6--44\n"); nit_exit(1);} - variable13 = variable3 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4911,6--36\n"); nit_exit(1);} - variable14 = variable2 /*nodearraylist6*/; - variable15 = TAG_Bool(( variable14 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4913,6--37\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, variable11 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable12 /*pvisibilitynode8*/, variable13 /*tkwattrnode9*/, variable14 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable15 = variable16; - variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction95___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction95::init (src/parser//parser.nit:4928,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction95].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction95].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction96___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction96::action (src/parser//parser.nit:4932,2--4966:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable7 = variable6 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4941,6--30\n"); nit_exit(1);} - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable8 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4943,6--44\n"); nit_exit(1);} - variable10 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable8 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable9 = variable10; - variable10 = variable4 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4949,6--44\n"); nit_exit(1);} - variable11 = variable3 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable11 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4951,6--36\n"); nit_exit(1);} - variable12 = variable2 /*nodearraylist5*/; - variable13 = TAG_Bool(( variable12 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable12 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4953,6--37\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable7 /*pdocnode2*/, NIT_NULL /*null*/, variable9 /*pablenode4*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode8*/, variable11 /*tkwattrnode9*/, variable12 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable13 = variable14; - variable1 = variable13 /*ppropdefnode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction96___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction96::init (src/parser//parser.nit:4968,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction96].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction96].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction97___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction97::action (src/parser//parser.nit:4972,2--5009:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4982,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4984,6--38\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable10 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4986,6--44\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AWriteAble___init_awriteable( variable9 /*tkwredefnode5*/, variable10 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable11 = variable12; - variable12 = variable4 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4992,6--44\n"); nit_exit(1);} - variable13 = variable3 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4994,6--36\n"); nit_exit(1);} - variable14 = variable2 /*nodearraylist6*/; - variable15 = TAG_Bool(( variable14 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:4996,6--37\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pablenode4*/, NIT_NULL /*null*/, variable12 /*pvisibilitynode8*/, variable13 /*tkwattrnode9*/, variable14 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable15 = variable16; - variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction97___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction97::init (src/parser//parser.nit:5011,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction97].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction97].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction98___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction98::action (src/parser//parser.nit:5015,2--5042:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5023,6--30\n"); nit_exit(1);} - variable7 = variable4 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable7 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5025,6--44\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable8 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5027,6--36\n"); nit_exit(1);} - variable9 = variable2 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable9 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5029,6--36\n"); nit_exit(1);} - variable11 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable6 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable7 /*pvisibilitynode6*/, variable8 /*tkwattrnode7*/, variable9 /*tattridnode8*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable10 = variable11; - variable1 = variable10 /*ppropdefnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction98___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction98::init (src/parser//parser.nit:5044,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction98].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction98].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction99___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction99::action (src/parser//parser.nit:5048,2--5092:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5059,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5061,6--44\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/ - variable11 = variable12; - variable12 = variable6 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5067,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable12 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable13 = variable14; - variable14 = variable5 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5073,6--38\n"); nit_exit(1);} - variable15 = variable4 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5075,6--45\n"); nit_exit(1);} - variable16 = variable3 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5077,6--37\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist7*/; - variable18 = TAG_Bool(( variable17 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5079,6--37\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable11 /*pablenode3*/, variable13 /*pablenode6*/, variable14 /*tkwredefnode9*/, variable15 /*pvisibilitynode10*/, variable16 /*tkwattrnode11*/, variable17 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction99___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction99::init (src/parser//parser.nit:5094,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction99].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction99].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction100___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction100::action (src/parser//parser.nit:5098,2--5145:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5110,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5112,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/ - variable12 = variable13; - variable13 = variable7 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5118,6--38\n"); nit_exit(1);} - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5120,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AWriteAble___init_awriteable( variable13 /*tkwredefnode7*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable15 = variable16; - variable16 = variable5 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5126,6--38\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5128,6--45\n"); nit_exit(1);} - variable18 = variable3 /*nodearraylist7*/; - variable19 = TAG_Bool(( variable18 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5130,6--37\n"); nit_exit(1);} - variable19 = variable2 /*nodearraylist8*/; - variable20 = TAG_Bool(( variable19 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5132,6--37\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable12 /*pablenode3*/, variable15 /*pablenode6*/, variable16 /*tkwredefnode9*/, variable17 /*pvisibilitynode10*/, variable18 /*tkwattrnode11*/, variable19 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable20 = variable21; - variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction100___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction100::init (src/parser//parser.nit:5147,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction100].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction100].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction101___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction101::action (src/parser//parser.nit:5151,2--5188:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5161,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5163,6--44\n"); nit_exit(1);} - variable11 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable9 /*tkwreadablenode5*/); /*new AReadAble*/ - variable10 = variable11; - variable11 = variable5 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5169,6--38\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5171,6--44\n"); nit_exit(1);} - variable13 = variable3 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5173,6--36\n"); nit_exit(1);} - variable14 = variable2 /*nodearraylist6*/; - variable15 = TAG_Bool(( variable14 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5175,6--37\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, variable10 /*pablenode3*/, NIT_NULL /*null*/, variable11 /*tkwredefnode7*/, variable12 /*pvisibilitynode8*/, variable13 /*tkwattrnode9*/, variable14 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable15 = variable16; - variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction101___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction101::init (src/parser//parser.nit:5190,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction101].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction101].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction102___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction102::action (src/parser//parser.nit:5194,2--5241:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5206,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5208,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5210,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AReadAble___init_areadable( variable11 /*tkwredefnode4*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/ - variable13 = variable14; - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5216,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable15 = variable16; - variable16 = variable5 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5222,6--38\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5224,6--45\n"); nit_exit(1);} - variable18 = variable3 /*nodearraylist7*/; - variable19 = TAG_Bool(( variable18 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5226,6--37\n"); nit_exit(1);} - variable19 = variable2 /*nodearraylist8*/; - variable20 = TAG_Bool(( variable19 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5228,6--37\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable13 /*pablenode3*/, variable15 /*pablenode6*/, variable16 /*tkwredefnode9*/, variable17 /*pvisibilitynode10*/, variable18 /*tkwattrnode11*/, variable19 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable20 = variable21; - variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction102___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction102::init (src/parser//parser.nit:5243,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction102].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction102].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction103___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction103::action (src/parser//parser.nit:5247,2--5297:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5260,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5262,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5264,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AReadAble___init_areadable( variable12 /*tkwredefnode4*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/ - variable14 = variable15; - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5270,6--38\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5272,6--44\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AWriteAble___init_awriteable( variable15 /*tkwredefnode7*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable17 = variable18; - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5278,6--38\n"); nit_exit(1);} - variable19 = variable4 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5280,6--45\n"); nit_exit(1);} - variable20 = variable3 /*nodearraylist8*/; - variable21 = TAG_Bool(( variable20 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable20 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5282,6--37\n"); nit_exit(1);} - variable21 = variable2 /*nodearraylist9*/; - variable22 = TAG_Bool(( variable21 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable21 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5284,6--37\n"); nit_exit(1);} - variable23 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable14 /*pablenode3*/, variable17 /*pablenode6*/, variable18 /*tkwredefnode9*/, variable19 /*pvisibilitynode10*/, variable20 /*tkwattrnode11*/, variable21 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable22 = variable23; - variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction103___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction103::init (src/parser//parser.nit:5299,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction103].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction103].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction104___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction104::action (src/parser//parser.nit:5303,2--5343:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5314,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5316,6--38\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5318,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AReadAble___init_areadable( variable10 /*tkwredefnode4*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/ - variable12 = variable13; - variable13 = variable5 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5324,6--38\n"); nit_exit(1);} - variable14 = variable4 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5326,6--44\n"); nit_exit(1);} - variable15 = variable3 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5328,6--36\n"); nit_exit(1);} - variable16 = variable2 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5330,6--37\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable12 /*pablenode3*/, NIT_NULL /*null*/, variable13 /*tkwredefnode7*/, variable14 /*pvisibilitynode8*/, variable15 /*tkwattrnode9*/, variable16 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction104___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction104::init (src/parser//parser.nit:5345,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction104].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction104].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction105___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction105::action (src/parser//parser.nit:5349,2--5386:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5359,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable9 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5361,6--44\n"); nit_exit(1);} - variable11 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable9 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable10 = variable11; - variable11 = variable5 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5367,6--38\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5369,6--44\n"); nit_exit(1);} - variable13 = variable3 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5371,6--36\n"); nit_exit(1);} - variable14 = variable2 /*nodearraylist6*/; - variable15 = TAG_Bool(( variable14 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5373,6--37\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pablenode4*/, variable11 /*tkwredefnode7*/, variable12 /*pvisibilitynode8*/, variable13 /*tkwattrnode9*/, variable14 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable15 = variable16; - variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction105___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction105::init (src/parser//parser.nit:5388,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction105].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction105].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction106___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction106::action (src/parser//parser.nit:5392,2--5432:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5403,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5405,6--38\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable11 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5407,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AWriteAble___init_awriteable( variable10 /*tkwredefnode5*/, variable11 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable12 = variable13; - variable13 = variable5 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5413,6--38\n"); nit_exit(1);} - variable14 = variable4 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5415,6--44\n"); nit_exit(1);} - variable15 = variable3 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5417,6--36\n"); nit_exit(1);} - variable16 = variable2 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5419,6--37\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pablenode4*/, variable13 /*tkwredefnode7*/, variable14 /*pvisibilitynode8*/, variable15 /*tkwattrnode9*/, variable16 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction106___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction106::init (src/parser//parser.nit:5434,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction106].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction106].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction107___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction107::action (src/parser//parser.nit:5438,2--5468:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable7 = variable6 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5447,6--30\n"); nit_exit(1);} - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable8 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5449,6--38\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable9 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5451,6--44\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable10 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5453,6--36\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist5*/; - variable12 = TAG_Bool(( variable11 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable11 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5455,6--36\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable7 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable8 /*tkwredefnode5*/, variable9 /*pvisibilitynode6*/, variable10 /*tkwattrnode7*/, variable11 /*tattridnode8*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable12 = variable13; - variable1 = variable12 /*ppropdefnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction107___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction107::init (src/parser//parser.nit:5470,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction107].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction107].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction108___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction108::action (src/parser//parser.nit:5474,2--5518:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5485,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5487,6--44\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/ - variable11 = variable12; - variable12 = variable6 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5493,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable12 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable13 = variable14; - variable14 = variable5 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5499,6--45\n"); nit_exit(1);} - variable15 = variable4 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5501,6--37\n"); nit_exit(1);} - variable16 = variable3 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5503,6--37\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist7*/; - variable18 = TAG_Bool(( variable17 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable17 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5505,6--33\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable11 /*pablenode3*/, variable13 /*pablenode6*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode10*/, variable15 /*tkwattrnode11*/, variable16 /*tattridnode12*/, variable17 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction108___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction108::init (src/parser//parser.nit:5520,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction108].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction108].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction109___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction109::action (src/parser//parser.nit:5524,2--5571:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5536,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5538,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/ - variable12 = variable13; - variable13 = variable7 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5544,6--38\n"); nit_exit(1);} - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5546,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AWriteAble___init_awriteable( variable13 /*tkwredefnode7*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable15 = variable16; - variable16 = variable5 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5552,6--45\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5554,6--37\n"); nit_exit(1);} - variable18 = variable3 /*nodearraylist7*/; - variable19 = TAG_Bool(( variable18 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5556,6--37\n"); nit_exit(1);} - variable19 = variable2 /*nodearraylist8*/; - variable20 = TAG_Bool(( variable19 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5558,6--33\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable12 /*pablenode3*/, variable15 /*pablenode6*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode10*/, variable17 /*tkwattrnode11*/, variable18 /*tattridnode12*/, variable19 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable20 = variable21; - variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction109___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction109::init (src/parser//parser.nit:5573,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction109].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction109].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction110___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction110::action (src/parser//parser.nit:5577,2--5614:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5587,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5589,6--44\n"); nit_exit(1);} - variable11 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable9 /*tkwreadablenode5*/); /*new AReadAble*/ - variable10 = variable11; - variable11 = variable5 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5595,6--44\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable12 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5597,6--36\n"); nit_exit(1);} - variable13 = variable3 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable13 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5599,6--37\n"); nit_exit(1);} - variable14 = variable2 /*nodearraylist6*/; - variable15 = TAG_Bool(( variable14 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5601,6--33\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, variable10 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode8*/, variable12 /*tkwattrnode9*/, variable13 /*tattridnode10*/, variable14 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable15 = variable16; - variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction110___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction110::init (src/parser//parser.nit:5616,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction110].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction110].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction111___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction111::action (src/parser//parser.nit:5620,2--5667:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5632,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5634,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5636,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AReadAble___init_areadable( variable11 /*tkwredefnode4*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/ - variable13 = variable14; - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5642,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable15 = variable16; - variable16 = variable5 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5648,6--45\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5650,6--37\n"); nit_exit(1);} - variable18 = variable3 /*nodearraylist7*/; - variable19 = TAG_Bool(( variable18 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5652,6--37\n"); nit_exit(1);} - variable19 = variable2 /*nodearraylist8*/; - variable20 = TAG_Bool(( variable19 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5654,6--33\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable13 /*pablenode3*/, variable15 /*pablenode6*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode10*/, variable17 /*tkwattrnode11*/, variable18 /*tattridnode12*/, variable19 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable20 = variable21; - variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction111___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction111::init (src/parser//parser.nit:5669,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction111].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction111].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction112___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction112::action (src/parser//parser.nit:5673,2--5723:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5686,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5688,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5690,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AReadAble___init_areadable( variable12 /*tkwredefnode4*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/ - variable14 = variable15; - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5696,6--38\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5698,6--44\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AWriteAble___init_awriteable( variable15 /*tkwredefnode7*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable17 = variable18; - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5704,6--45\n"); nit_exit(1);} - variable19 = variable4 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5706,6--37\n"); nit_exit(1);} - variable20 = variable3 /*nodearraylist8*/; - variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5708,6--37\n"); nit_exit(1);} - variable21 = variable2 /*nodearraylist9*/; - variable22 = TAG_Bool(( variable21 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5710,6--33\n"); nit_exit(1);} - variable23 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable14 /*pablenode3*/, variable17 /*pablenode6*/, NIT_NULL /*null*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, variable21 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable22 = variable23; - variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction112___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction112::init (src/parser//parser.nit:5725,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction112].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction112].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction113___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction113::action (src/parser//parser.nit:5729,2--5769:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5740,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5742,6--38\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5744,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AReadAble___init_areadable( variable10 /*tkwredefnode4*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/ - variable12 = variable13; - variable13 = variable5 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5750,6--44\n"); nit_exit(1);} - variable14 = variable4 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5752,6--36\n"); nit_exit(1);} - variable15 = variable3 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5754,6--37\n"); nit_exit(1);} - variable16 = variable2 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5756,6--33\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable12 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, variable16 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction113___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction113::init (src/parser//parser.nit:5771,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction113].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction113].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction114___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction114::action (src/parser//parser.nit:5775,2--5812:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5785,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable9 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5787,6--44\n"); nit_exit(1);} - variable11 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable9 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable10 = variable11; - variable11 = variable5 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5793,6--44\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable12 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5795,6--36\n"); nit_exit(1);} - variable13 = variable3 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable13 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5797,6--37\n"); nit_exit(1);} - variable14 = variable2 /*nodearraylist6*/; - variable15 = TAG_Bool(( variable14 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5799,6--33\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pablenode4*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode8*/, variable12 /*tkwattrnode9*/, variable13 /*tattridnode10*/, variable14 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable15 = variable16; - variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction114___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction114::init (src/parser//parser.nit:5814,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction114].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction114].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction115___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction115::action (src/parser//parser.nit:5818,2--5858:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5829,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5831,6--38\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable11 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5833,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AWriteAble___init_awriteable( variable10 /*tkwredefnode5*/, variable11 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable12 = variable13; - variable13 = variable5 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5839,6--44\n"); nit_exit(1);} - variable14 = variable4 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5841,6--36\n"); nit_exit(1);} - variable15 = variable3 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5843,6--37\n"); nit_exit(1);} - variable16 = variable2 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5845,6--33\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pablenode4*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, variable16 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction115___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction115::init (src/parser//parser.nit:5860,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction115].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction115].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction116___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction116::action (src/parser//parser.nit:5864,2--5894:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable7 = variable6 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5873,6--30\n"); nit_exit(1);} - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable8 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5875,6--44\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable9 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5877,6--36\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable10 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5879,6--36\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist5*/; - variable12 = TAG_Bool(( variable11 /*ptypenode9*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode9*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5881,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable7 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable8 /*pvisibilitynode6*/, variable9 /*tkwattrnode7*/, variable10 /*tattridnode8*/, variable11 /*ptypenode9*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable12 = variable13; - variable1 = variable12 /*ppropdefnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction116___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction116::init (src/parser//parser.nit:5896,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction116].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction116].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction117___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction117::action (src/parser//parser.nit:5900,2--5947:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5912,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5914,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/ - variable12 = variable13; - variable13 = variable7 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5920,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable13 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable14 = variable15; - variable15 = variable6 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5926,6--38\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5928,6--45\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5930,6--37\n"); nit_exit(1);} - variable18 = variable3 /*nodearraylist7*/; - variable19 = TAG_Bool(( variable18 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5932,6--37\n"); nit_exit(1);} - variable19 = variable2 /*nodearraylist8*/; - variable20 = TAG_Bool(( variable19 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5934,6--33\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable12 /*pablenode3*/, variable14 /*pablenode6*/, variable15 /*tkwredefnode9*/, variable16 /*pvisibilitynode10*/, variable17 /*tkwattrnode11*/, variable18 /*tattridnode12*/, variable19 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable20 = variable21; - variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction117___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction117::init (src/parser//parser.nit:5949,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction117].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction117].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction118___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction118::action (src/parser//parser.nit:5953,2--6003:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5966,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5968,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/ - variable13 = variable14; - variable14 = variable8 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5974,6--38\n"); nit_exit(1);} - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5976,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AWriteAble___init_awriteable( variable14 /*tkwredefnode7*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable16 = variable17; - variable17 = variable6 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5982,6--38\n"); nit_exit(1);} - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5984,6--45\n"); nit_exit(1);} - variable19 = variable4 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5986,6--37\n"); nit_exit(1);} - variable20 = variable3 /*nodearraylist8*/; - variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5988,6--37\n"); nit_exit(1);} - variable21 = variable2 /*nodearraylist9*/; - variable22 = TAG_Bool(( variable21 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:5990,6--33\n"); nit_exit(1);} - variable23 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable13 /*pablenode3*/, variable16 /*pablenode6*/, variable17 /*tkwredefnode9*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, variable21 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable22 = variable23; - variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction118___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction118::init (src/parser//parser.nit:6005,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction118].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction118].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction119___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction119::action (src/parser//parser.nit:6009,2--6049:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6020,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6022,6--44\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/ - variable11 = variable12; - variable12 = variable6 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6028,6--38\n"); nit_exit(1);} - variable13 = variable5 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6030,6--44\n"); nit_exit(1);} - variable14 = variable4 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6032,6--36\n"); nit_exit(1);} - variable15 = variable3 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6034,6--37\n"); nit_exit(1);} - variable16 = variable2 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6036,6--33\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable11 /*pablenode3*/, NIT_NULL /*null*/, variable12 /*tkwredefnode7*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, variable16 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction119___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction119::init (src/parser//parser.nit:6051,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction119].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction119].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction120___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction120::action (src/parser//parser.nit:6055,2--6105:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6068,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6070,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6072,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AReadAble___init_areadable( variable12 /*tkwredefnode4*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/ - variable14 = variable15; - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6078,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable16 = variable17; - variable17 = variable6 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6084,6--38\n"); nit_exit(1);} - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6086,6--45\n"); nit_exit(1);} - variable19 = variable4 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6088,6--37\n"); nit_exit(1);} - variable20 = variable3 /*nodearraylist8*/; - variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6090,6--37\n"); nit_exit(1);} - variable21 = variable2 /*nodearraylist9*/; - variable22 = TAG_Bool(( variable21 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6092,6--33\n"); nit_exit(1);} - variable23 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable14 /*pablenode3*/, variable16 /*pablenode6*/, variable17 /*tkwredefnode9*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, variable21 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable22 = variable23; - variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction120___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction120::init (src/parser//parser.nit:6107,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction120].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction120].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction121___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction121::action (src/parser//parser.nit:6111,2--6164:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6125,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6127,6--38\n"); nit_exit(1);} - variable14 = variable9 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6129,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AReadAble___init_areadable( variable13 /*tkwredefnode4*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/ - variable15 = variable16; - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6135,6--38\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6137,6--44\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AWriteAble___init_awriteable( variable16 /*tkwredefnode7*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable18 = variable19; - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6143,6--38\n"); nit_exit(1);} - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6145,6--45\n"); nit_exit(1);} - variable21 = variable4 /*nodearraylist8*/; - variable22 = TAG_Bool(( variable21 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable21 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6147,6--37\n"); nit_exit(1);} - variable22 = variable3 /*nodearraylist9*/; - variable23 = TAG_Bool(( variable22 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable22 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6149,6--37\n"); nit_exit(1);} - variable23 = variable2 /*nodearraylist10*/; - variable24 = TAG_Bool(( variable23 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable23 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6151,6--33\n"); nit_exit(1);} - variable25 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable15 /*pablenode3*/, variable18 /*pablenode6*/, variable19 /*tkwredefnode9*/, variable20 /*pvisibilitynode10*/, variable21 /*tkwattrnode11*/, variable22 /*tattridnode12*/, variable23 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable24 = variable25; - variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/; - variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction121___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction121::init (src/parser//parser.nit:6166,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction121].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction121].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction122___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction122::action (src/parser//parser.nit:6170,2--6213:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6182,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6184,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6186,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AReadAble___init_areadable( variable11 /*tkwredefnode4*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/ - variable13 = variable14; - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6192,6--38\n"); nit_exit(1);} - variable15 = variable5 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6194,6--44\n"); nit_exit(1);} - variable16 = variable4 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6196,6--36\n"); nit_exit(1);} - variable17 = variable3 /*nodearraylist7*/; - variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6198,6--37\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist8*/; - variable19 = TAG_Bool(( variable18 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable18 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6200,6--33\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable13 /*pablenode3*/, NIT_NULL /*null*/, variable14 /*tkwredefnode7*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, variable18 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction122___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction122::init (src/parser//parser.nit:6215,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction122].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction122].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction123___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction123::action (src/parser//parser.nit:6219,2--6259:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6230,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable10 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6232,6--44\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable10 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable11 = variable12; - variable12 = variable6 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6238,6--38\n"); nit_exit(1);} - variable13 = variable5 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6240,6--44\n"); nit_exit(1);} - variable14 = variable4 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6242,6--36\n"); nit_exit(1);} - variable15 = variable3 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6244,6--37\n"); nit_exit(1);} - variable16 = variable2 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6246,6--33\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pablenode4*/, variable12 /*tkwredefnode7*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, variable16 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction123___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction123::init (src/parser//parser.nit:6261,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction123].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction123].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction124___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction124::action (src/parser//parser.nit:6265,2--6308:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6277,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6279,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6281,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AWriteAble___init_awriteable( variable11 /*tkwredefnode5*/, variable12 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable13 = variable14; - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6287,6--38\n"); nit_exit(1);} - variable15 = variable5 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6289,6--44\n"); nit_exit(1);} - variable16 = variable4 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6291,6--36\n"); nit_exit(1);} - variable17 = variable3 /*nodearraylist7*/; - variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6293,6--37\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist8*/; - variable19 = TAG_Bool(( variable18 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable18 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6295,6--33\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable13 /*pablenode4*/, variable14 /*tkwredefnode7*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, variable18 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction124___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction124::init (src/parser//parser.nit:6310,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction124].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction124].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction125___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction125::action (src/parser//parser.nit:6314,2--6347:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6324,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6326,6--38\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6328,6--44\n"); nit_exit(1);} - variable11 = variable4 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable11 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6330,6--36\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist5*/; - variable13 = TAG_Bool(( variable12 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable12 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6332,6--36\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist6*/; - variable14 = TAG_Bool(( variable13 /*ptypenode9*/==NIT_NULL) || VAL_ISA( variable13 /*ptypenode9*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6334,6--32\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable9 /*tkwredefnode5*/, variable10 /*pvisibilitynode6*/, variable11 /*tkwattrnode7*/, variable12 /*tattridnode8*/, variable13 /*ptypenode9*/, NIT_NULL /*null*/); /*new AAttrPropdef*/ - variable14 = variable15; - variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction125___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction125::init (src/parser//parser.nit:6349,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction125].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction125].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction126___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction126::action (src/parser//parser.nit:6353,2--6399:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6366,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6368,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/ - variable13 = variable14; - variable14 = variable8 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6374,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable15 = variable16; - variable16 = variable7 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6380,6--45\n"); nit_exit(1);} - variable17 = variable6 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6382,6--37\n"); nit_exit(1);} - variable18 = variable5 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6384,6--37\n"); nit_exit(1);} - variable19 = variable2 /*nodearraylist9*/; - variable20 = TAG_Bool(( variable19 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable19 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6386,6--33\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable13 /*pablenode3*/, variable15 /*pablenode6*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode10*/, variable17 /*tkwattrnode11*/, variable18 /*tattridnode12*/, NIT_NULL /*null*/, variable19 /*pexprnode14*/); /*new AAttrPropdef*/ - variable20 = variable21; - variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/; - variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction126___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction126::init (src/parser//parser.nit:6401,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction126].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction126].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction127___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction127::action (src/parser//parser.nit:6405,2--6454:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6419,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6421,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/ - variable14 = variable15; - variable15 = variable9 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6427,6--38\n"); nit_exit(1);} - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6429,6--44\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AWriteAble___init_awriteable( variable15 /*tkwredefnode7*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable17 = variable18; - variable18 = variable7 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6435,6--45\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6437,6--37\n"); nit_exit(1);} - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6439,6--37\n"); nit_exit(1);} - variable21 = variable2 /*nodearraylist10*/; - variable22 = TAG_Bool(( variable21 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable21 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6441,6--33\n"); nit_exit(1);} - variable23 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable14 /*pablenode3*/, variable17 /*pablenode6*/, NIT_NULL /*null*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, NIT_NULL /*null*/, variable21 /*pexprnode14*/); /*new AAttrPropdef*/ - variable22 = variable23; - variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction127___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction127::init (src/parser//parser.nit:6456,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction127].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction127].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction128___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction128::action (src/parser//parser.nit:6460,2--6499:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6472,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6474,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/ - variable12 = variable13; - variable13 = variable7 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6480,6--44\n"); nit_exit(1);} - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6482,6--36\n"); nit_exit(1);} - variable15 = variable5 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6484,6--37\n"); nit_exit(1);} - variable16 = variable2 /*nodearraylist8*/; - variable17 = TAG_Bool(( variable16 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6486,6--33\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable12 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, NIT_NULL /*null*/, variable16 /*pexprnode12*/); /*new AAttrPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction128___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction128::init (src/parser//parser.nit:6501,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction128].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction128].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction129___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction129::action (src/parser//parser.nit:6505,2--6554:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6519,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6521,6--38\n"); nit_exit(1);} - variable14 = variable9 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6523,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AReadAble___init_areadable( variable13 /*tkwredefnode4*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/ - variable15 = variable16; - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6529,6--44\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable17 = variable18; - variable18 = variable7 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6535,6--45\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6537,6--37\n"); nit_exit(1);} - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6539,6--37\n"); nit_exit(1);} - variable21 = variable2 /*nodearraylist10*/; - variable22 = TAG_Bool(( variable21 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable21 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6541,6--33\n"); nit_exit(1);} - variable23 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable15 /*pablenode3*/, variable17 /*pablenode6*/, NIT_NULL /*null*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, NIT_NULL /*null*/, variable21 /*pexprnode14*/); /*new AAttrPropdef*/ - variable22 = variable23; - variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction129___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction129::init (src/parser//parser.nit:6556,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction129].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction129].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction130___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction130::action (src/parser//parser.nit:6560,2--6612:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6575,6--30\n"); nit_exit(1);} - variable14 = variable11 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6577,6--38\n"); nit_exit(1);} - variable15 = variable10 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6579,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AReadAble___init_areadable( variable14 /*tkwredefnode4*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/ - variable16 = variable17; - variable17 = variable9 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6585,6--38\n"); nit_exit(1);} - variable18 = variable8 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable18 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6587,6--44\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AWriteAble___init_awriteable( variable17 /*tkwredefnode7*/, variable18 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable19 = variable20; - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6593,6--45\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable21 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6595,6--37\n"); nit_exit(1);} - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable22 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6597,6--37\n"); nit_exit(1);} - variable23 = variable2 /*nodearraylist11*/; - variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6599,6--33\n"); nit_exit(1);} - variable25 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable16 /*pablenode3*/, variable19 /*pablenode6*/, NIT_NULL /*null*/, variable20 /*pvisibilitynode10*/, variable21 /*tkwattrnode11*/, variable22 /*tattridnode12*/, NIT_NULL /*null*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/ - variable24 = variable25; - variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/; - variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction130___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction130::init (src/parser//parser.nit:6614,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction130].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction130].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction131___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction131::action (src/parser//parser.nit:6618,2--6660:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6631,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6633,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6635,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AReadAble___init_areadable( variable12 /*tkwredefnode4*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/ - variable14 = variable15; - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6641,6--44\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6643,6--36\n"); nit_exit(1);} - variable17 = variable5 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6645,6--37\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist9*/; - variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6647,6--33\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable14 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, NIT_NULL /*null*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction131___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction131::init (src/parser//parser.nit:6662,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction131].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction131].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction132___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction132::action (src/parser//parser.nit:6666,2--6705:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6678,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable11 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6680,6--44\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable11 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable12 = variable13; - variable13 = variable7 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6686,6--44\n"); nit_exit(1);} - variable14 = variable6 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6688,6--36\n"); nit_exit(1);} - variable15 = variable5 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6690,6--37\n"); nit_exit(1);} - variable16 = variable2 /*nodearraylist8*/; - variable17 = TAG_Bool(( variable16 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6692,6--33\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pablenode4*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, NIT_NULL /*null*/, variable16 /*pexprnode12*/); /*new AAttrPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction132___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction132::init (src/parser//parser.nit:6707,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction132].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction132].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction133___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction133::action (src/parser//parser.nit:6711,2--6753:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6724,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6726,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6728,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AWriteAble___init_awriteable( variable12 /*tkwredefnode5*/, variable13 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable14 = variable15; - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6734,6--44\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6736,6--36\n"); nit_exit(1);} - variable17 = variable5 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6738,6--37\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist9*/; - variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6740,6--33\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable14 /*pablenode4*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, NIT_NULL /*null*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction133___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction133::init (src/parser//parser.nit:6755,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction133].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction133].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction134___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction134::action (src/parser//parser.nit:6759,2--6791:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6770,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6772,6--44\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable11 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6774,6--36\n"); nit_exit(1);} - variable12 = variable5 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable12 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6776,6--36\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist7*/; - variable14 = TAG_Bool(( variable13 /*pexprnode10*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode10*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6778,6--33\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode6*/, variable11 /*tkwattrnode7*/, variable12 /*tattridnode8*/, NIT_NULL /*null*/, variable13 /*pexprnode10*/); /*new AAttrPropdef*/ - variable14 = variable15; - variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction134___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction134::init (src/parser//parser.nit:6793,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction134].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction134].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction135___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction135::action (src/parser//parser.nit:6797,2--6846:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6811,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6813,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/ - variable14 = variable15; - variable15 = variable9 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6819,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable16 = variable17; - variable17 = variable8 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6825,6--38\n"); nit_exit(1);} - variable18 = variable7 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6827,6--45\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6829,6--37\n"); nit_exit(1);} - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6831,6--37\n"); nit_exit(1);} - variable21 = variable2 /*nodearraylist10*/; - variable22 = TAG_Bool(( variable21 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable21 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6833,6--33\n"); nit_exit(1);} - variable23 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable14 /*pablenode3*/, variable16 /*pablenode6*/, variable17 /*tkwredefnode9*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, NIT_NULL /*null*/, variable21 /*pexprnode14*/); /*new AAttrPropdef*/ - variable22 = variable23; - variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction135___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction135::init (src/parser//parser.nit:6848,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction135].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction135].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction136___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction136::action (src/parser//parser.nit:6852,2--6904:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6867,6--30\n"); nit_exit(1);} - variable14 = variable11 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6869,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/ - variable15 = variable16; - variable16 = variable10 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6875,6--38\n"); nit_exit(1);} - variable17 = variable9 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6877,6--44\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AWriteAble___init_awriteable( variable16 /*tkwredefnode7*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable18 = variable19; - variable19 = variable8 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6883,6--38\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6885,6--45\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable21 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6887,6--37\n"); nit_exit(1);} - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable22 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6889,6--37\n"); nit_exit(1);} - variable23 = variable2 /*nodearraylist11*/; - variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6891,6--33\n"); nit_exit(1);} - variable25 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable15 /*pablenode3*/, variable18 /*pablenode6*/, variable19 /*tkwredefnode9*/, variable20 /*pvisibilitynode10*/, variable21 /*tkwattrnode11*/, variable22 /*tattridnode12*/, NIT_NULL /*null*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/ - variable24 = variable25; - variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/; - variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction136___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction136::init (src/parser//parser.nit:6906,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction136].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction136].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction137___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction137::action (src/parser//parser.nit:6910,2--6952:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6923,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6925,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/ - variable13 = variable14; - variable14 = variable8 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6931,6--38\n"); nit_exit(1);} - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6933,6--44\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6935,6--36\n"); nit_exit(1);} - variable17 = variable5 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6937,6--37\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist9*/; - variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6939,6--33\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable13 /*pablenode3*/, NIT_NULL /*null*/, variable14 /*tkwredefnode7*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, NIT_NULL /*null*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction137___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction137::init (src/parser//parser.nit:6954,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction137].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction137].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction138___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction138::action (src/parser//parser.nit:6958,2--7010:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6973,6--30\n"); nit_exit(1);} - variable14 = variable11 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6975,6--38\n"); nit_exit(1);} - variable15 = variable10 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6977,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AReadAble___init_areadable( variable14 /*tkwredefnode4*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/ - variable16 = variable17; - variable17 = variable9 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6983,6--44\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable18 = variable19; - variable19 = variable8 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6989,6--38\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6991,6--45\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable21 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6993,6--37\n"); nit_exit(1);} - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable22 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6995,6--37\n"); nit_exit(1);} - variable23 = variable2 /*nodearraylist11*/; - variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:6997,6--33\n"); nit_exit(1);} - variable25 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable16 /*pablenode3*/, variable18 /*pablenode6*/, variable19 /*tkwredefnode9*/, variable20 /*pvisibilitynode10*/, variable21 /*tkwattrnode11*/, variable22 /*tattridnode12*/, NIT_NULL /*null*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/ - variable24 = variable25; - variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/; - variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction138___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction138::init (src/parser//parser.nit:7012,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction138].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction138].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction139___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction139::action (src/parser//parser.nit:7016,2--7071:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - val_t variable27; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable14 = variable13 /*nodearraylist1*/; - variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7032,6--30\n"); nit_exit(1);} - variable15 = variable12 /*nodearraylist2*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7034,6--38\n"); nit_exit(1);} - variable16 = variable11 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable16 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7036,6--44\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AReadAble___init_areadable( variable15 /*tkwredefnode4*/, variable16 /*tkwreadablenode5*/); /*new AReadAble*/ - variable17 = variable18; - variable18 = variable10 /*nodearraylist4*/; - variable19 = TAG_Bool(( variable18 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7042,6--38\n"); nit_exit(1);} - variable19 = variable9 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable19 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7044,6--44\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AWriteAble___init_awriteable( variable18 /*tkwredefnode7*/, variable19 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable20 = variable21; - variable21 = variable8 /*nodearraylist6*/; - variable22 = TAG_Bool(( variable21 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable21 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7050,6--38\n"); nit_exit(1);} - variable22 = variable7 /*nodearraylist7*/; - variable23 = TAG_Bool(( variable22 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable22 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7052,6--45\n"); nit_exit(1);} - variable23 = variable6 /*nodearraylist8*/; - variable24 = TAG_Bool(( variable23 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable23 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7054,6--37\n"); nit_exit(1);} - variable24 = variable5 /*nodearraylist9*/; - variable25 = TAG_Bool(( variable24 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable24 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7056,6--37\n"); nit_exit(1);} - variable25 = variable2 /*nodearraylist12*/; - variable26 = TAG_Bool(( variable25 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable25 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7058,6--33\n"); nit_exit(1);} - variable27 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable14 /*pdocnode2*/, variable17 /*pablenode3*/, variable20 /*pablenode6*/, variable21 /*tkwredefnode9*/, variable22 /*pvisibilitynode10*/, variable23 /*tkwattrnode11*/, variable24 /*tattridnode12*/, NIT_NULL /*null*/, variable25 /*pexprnode14*/); /*new AAttrPropdef*/ - variable26 = variable27; - variable1 = variable26 /*ppropdefnode1*/ /*node_list=*/; - variable27 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable27, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction139___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction139::init (src/parser//parser.nit:7073,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction139].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction139].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction140___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction140::action (src/parser//parser.nit:7077,2--7122:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7091,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7093,6--38\n"); nit_exit(1);} - variable14 = variable9 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7095,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AReadAble___init_areadable( variable13 /*tkwredefnode4*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/ - variable15 = variable16; - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7101,6--38\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7103,6--44\n"); nit_exit(1);} - variable18 = variable6 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7105,6--36\n"); nit_exit(1);} - variable19 = variable5 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7107,6--37\n"); nit_exit(1);} - variable20 = variable2 /*nodearraylist10*/; - variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7109,6--33\n"); nit_exit(1);} - variable22 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable15 /*pablenode3*/, NIT_NULL /*null*/, variable16 /*tkwredefnode7*/, variable17 /*pvisibilitynode8*/, variable18 /*tkwattrnode9*/, variable19 /*tattridnode10*/, NIT_NULL /*null*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/ - variable21 = variable22; - variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction140___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction140::init (src/parser//parser.nit:7124,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction140].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction140].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction141___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction141::action (src/parser//parser.nit:7128,2--7170:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7141,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7143,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable12 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable13 = variable14; - variable14 = variable8 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7149,6--38\n"); nit_exit(1);} - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7151,6--44\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7153,6--36\n"); nit_exit(1);} - variable17 = variable5 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7155,6--37\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist9*/; - variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7157,6--33\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable13 /*pablenode4*/, variable14 /*tkwredefnode7*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, NIT_NULL /*null*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction141___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction141::init (src/parser//parser.nit:7172,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction141].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction141].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction142___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction142::action (src/parser//parser.nit:7176,2--7221:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7190,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7192,6--38\n"); nit_exit(1);} - variable14 = variable9 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7194,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AWriteAble___init_awriteable( variable13 /*tkwredefnode5*/, variable14 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable15 = variable16; - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7200,6--38\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7202,6--44\n"); nit_exit(1);} - variable18 = variable6 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7204,6--36\n"); nit_exit(1);} - variable19 = variable5 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7206,6--37\n"); nit_exit(1);} - variable20 = variable2 /*nodearraylist10*/; - variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7208,6--33\n"); nit_exit(1);} - variable22 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, NIT_NULL /*null*/, variable15 /*pablenode4*/, variable16 /*tkwredefnode7*/, variable17 /*pvisibilitynode8*/, variable18 /*tkwattrnode9*/, variable19 /*tattridnode10*/, NIT_NULL /*null*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/ - variable21 = variable22; - variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction142___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction142::init (src/parser//parser.nit:7223,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction142].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction142].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction143___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction143::action (src/parser//parser.nit:7227,2--7262:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7239,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7241,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7243,6--44\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7245,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7247,6--36\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist8*/; - variable16 = TAG_Bool(( variable15 /*pexprnode10*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode10*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7249,6--33\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable11 /*tkwredefnode5*/, variable12 /*pvisibilitynode6*/, variable13 /*tkwattrnode7*/, variable14 /*tattridnode8*/, NIT_NULL /*null*/, variable15 /*pexprnode10*/); /*new AAttrPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction143___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction143::init (src/parser//parser.nit:7264,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction143].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction143].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction144___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction144::action (src/parser//parser.nit:7268,2--7317:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7282,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7284,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/ - variable14 = variable15; - variable15 = variable9 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7290,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable16 = variable17; - variable17 = variable8 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7296,6--45\n"); nit_exit(1);} - variable18 = variable7 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7298,6--37\n"); nit_exit(1);} - variable19 = variable6 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7300,6--37\n"); nit_exit(1);} - variable20 = variable5 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable20 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7302,6--33\n"); nit_exit(1);} - variable21 = variable2 /*nodearraylist10*/; - variable22 = TAG_Bool(( variable21 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable21 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7304,6--33\n"); nit_exit(1);} - variable23 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable14 /*pablenode3*/, variable16 /*pablenode6*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode10*/, variable18 /*tkwattrnode11*/, variable19 /*tattridnode12*/, variable20 /*ptypenode13*/, variable21 /*pexprnode14*/); /*new AAttrPropdef*/ - variable22 = variable23; - variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/; - variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction144___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction144::init (src/parser//parser.nit:7319,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction144].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction144].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction145___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction145::action (src/parser//parser.nit:7323,2--7375:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7338,6--30\n"); nit_exit(1);} - variable14 = variable11 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7340,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/ - variable15 = variable16; - variable16 = variable10 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7346,6--38\n"); nit_exit(1);} - variable17 = variable9 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7348,6--44\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AWriteAble___init_awriteable( variable16 /*tkwredefnode7*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable18 = variable19; - variable19 = variable8 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7354,6--45\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable20 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7356,6--37\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable21 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7358,6--37\n"); nit_exit(1);} - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable22 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7360,6--33\n"); nit_exit(1);} - variable23 = variable2 /*nodearraylist11*/; - variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7362,6--33\n"); nit_exit(1);} - variable25 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable15 /*pablenode3*/, variable18 /*pablenode6*/, NIT_NULL /*null*/, variable19 /*pvisibilitynode10*/, variable20 /*tkwattrnode11*/, variable21 /*tattridnode12*/, variable22 /*ptypenode13*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/ - variable24 = variable25; - variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/; - variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction145___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction145::init (src/parser//parser.nit:7377,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction145].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction145].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction146___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction146::action (src/parser//parser.nit:7381,2--7423:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7394,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7396,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/ - variable13 = variable14; - variable14 = variable8 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7402,6--44\n"); nit_exit(1);} - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7404,6--36\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7406,6--37\n"); nit_exit(1);} - variable17 = variable5 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable17 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7408,6--33\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist9*/; - variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7410,6--33\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable13 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode8*/, variable15 /*tkwattrnode9*/, variable16 /*tattridnode10*/, variable17 /*ptypenode11*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction146___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction146::init (src/parser//parser.nit:7425,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction146].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction146].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction147___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction147::action (src/parser//parser.nit:7429,2--7481:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7444,6--30\n"); nit_exit(1);} - variable14 = variable11 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7446,6--38\n"); nit_exit(1);} - variable15 = variable10 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7448,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AReadAble___init_areadable( variable14 /*tkwredefnode4*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/ - variable16 = variable17; - variable17 = variable9 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7454,6--44\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable18 = variable19; - variable19 = variable8 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7460,6--45\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable20 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7462,6--37\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable21 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7464,6--37\n"); nit_exit(1);} - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable22 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7466,6--33\n"); nit_exit(1);} - variable23 = variable2 /*nodearraylist11*/; - variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7468,6--33\n"); nit_exit(1);} - variable25 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable16 /*pablenode3*/, variable18 /*pablenode6*/, NIT_NULL /*null*/, variable19 /*pvisibilitynode10*/, variable20 /*tkwattrnode11*/, variable21 /*tattridnode12*/, variable22 /*ptypenode13*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/ - variable24 = variable25; - variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/; - variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction147___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction147::init (src/parser//parser.nit:7483,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction147].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction147].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction148___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction148::action (src/parser//parser.nit:7487,2--7542:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - val_t variable27; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable14 = variable13 /*nodearraylist1*/; - variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7503,6--30\n"); nit_exit(1);} - variable15 = variable12 /*nodearraylist2*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7505,6--38\n"); nit_exit(1);} - variable16 = variable11 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable16 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7507,6--44\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AReadAble___init_areadable( variable15 /*tkwredefnode4*/, variable16 /*tkwreadablenode5*/); /*new AReadAble*/ - variable17 = variable18; - variable18 = variable10 /*nodearraylist4*/; - variable19 = TAG_Bool(( variable18 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7513,6--38\n"); nit_exit(1);} - variable19 = variable9 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable19 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7515,6--44\n"); nit_exit(1);} - variable21 = NEW_parser_prod___AWriteAble___init_awriteable( variable18 /*tkwredefnode7*/, variable19 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable20 = variable21; - variable21 = variable8 /*nodearraylist6*/; - variable22 = TAG_Bool(( variable21 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable21 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7521,6--45\n"); nit_exit(1);} - variable22 = variable7 /*nodearraylist7*/; - variable23 = TAG_Bool(( variable22 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable22 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7523,6--37\n"); nit_exit(1);} - variable23 = variable6 /*nodearraylist8*/; - variable24 = TAG_Bool(( variable23 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable23 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7525,6--37\n"); nit_exit(1);} - variable24 = variable5 /*nodearraylist9*/; - variable25 = TAG_Bool(( variable24 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable24 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7527,6--33\n"); nit_exit(1);} - variable25 = variable2 /*nodearraylist12*/; - variable26 = TAG_Bool(( variable25 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable25 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7529,6--33\n"); nit_exit(1);} - variable27 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable14 /*pdocnode2*/, variable17 /*pablenode3*/, variable20 /*pablenode6*/, NIT_NULL /*null*/, variable21 /*pvisibilitynode10*/, variable22 /*tkwattrnode11*/, variable23 /*tattridnode12*/, variable24 /*ptypenode13*/, variable25 /*pexprnode14*/); /*new AAttrPropdef*/ - variable26 = variable27; - variable1 = variable26 /*ppropdefnode1*/ /*node_list=*/; - variable27 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable27, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction148___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction148::init (src/parser//parser.nit:7544,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction148].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction148].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction149___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction149::action (src/parser//parser.nit:7548,2--7593:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7562,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7564,6--38\n"); nit_exit(1);} - variable14 = variable9 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7566,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AReadAble___init_areadable( variable13 /*tkwredefnode4*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/ - variable15 = variable16; - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7572,6--44\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7574,6--36\n"); nit_exit(1);} - variable18 = variable6 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7576,6--37\n"); nit_exit(1);} - variable19 = variable5 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7578,6--33\n"); nit_exit(1);} - variable20 = variable2 /*nodearraylist10*/; - variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7580,6--33\n"); nit_exit(1);} - variable22 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable15 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode8*/, variable17 /*tkwattrnode9*/, variable18 /*tattridnode10*/, variable19 /*ptypenode11*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/ - variable21 = variable22; - variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction149___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction149::init (src/parser//parser.nit:7595,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction149].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction149].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction150___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction150::action (src/parser//parser.nit:7599,2--7641:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7612,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7614,6--44\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable12 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable13 = variable14; - variable14 = variable8 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7620,6--44\n"); nit_exit(1);} - variable15 = variable7 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7622,6--36\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7624,6--37\n"); nit_exit(1);} - variable17 = variable5 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable17 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7626,6--33\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist9*/; - variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7628,6--33\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable13 /*pablenode4*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode8*/, variable15 /*tkwattrnode9*/, variable16 /*tattridnode10*/, variable17 /*ptypenode11*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction150___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction150::init (src/parser//parser.nit:7643,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction150].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction150].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction151___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction151::action (src/parser//parser.nit:7647,2--7692:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7661,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7663,6--38\n"); nit_exit(1);} - variable14 = variable9 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7665,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AWriteAble___init_awriteable( variable13 /*tkwredefnode5*/, variable14 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable15 = variable16; - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7671,6--44\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7673,6--36\n"); nit_exit(1);} - variable18 = variable6 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7675,6--37\n"); nit_exit(1);} - variable19 = variable5 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7677,6--33\n"); nit_exit(1);} - variable20 = variable2 /*nodearraylist10*/; - variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7679,6--33\n"); nit_exit(1);} - variable22 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, NIT_NULL /*null*/, variable15 /*pablenode4*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode8*/, variable17 /*tkwattrnode9*/, variable18 /*tattridnode10*/, variable19 /*ptypenode11*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/ - variable21 = variable22; - variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction151___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction151::init (src/parser//parser.nit:7694,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction151].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction151].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction152___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction152::action (src/parser//parser.nit:7698,2--7733:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7710,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7712,6--44\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable12 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7714,6--36\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable13 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7716,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*ptypenode9*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode9*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7718,6--32\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist8*/; - variable16 = TAG_Bool(( variable15 /*pexprnode10*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode10*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7720,6--33\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode6*/, variable12 /*tkwattrnode7*/, variable13 /*tattridnode8*/, variable14 /*ptypenode9*/, variable15 /*pexprnode10*/); /*new AAttrPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction152___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction152::init (src/parser//parser.nit:7735,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction152].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction152].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction153___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction153::action (src/parser//parser.nit:7739,2--7791:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7754,6--30\n"); nit_exit(1);} - variable14 = variable11 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7756,6--44\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/ - variable15 = variable16; - variable16 = variable10 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7762,6--44\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable17 = variable18; - variable18 = variable9 /*nodearraylist4*/; - variable19 = TAG_Bool(( variable18 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7768,6--38\n"); nit_exit(1);} - variable19 = variable8 /*nodearraylist5*/; - variable20 = TAG_Bool(( variable19 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7770,6--45\n"); nit_exit(1);} - variable20 = variable7 /*nodearraylist6*/; - variable21 = TAG_Bool(( variable20 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable20 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7772,6--37\n"); nit_exit(1);} - variable21 = variable6 /*nodearraylist7*/; - variable22 = TAG_Bool(( variable21 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable21 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7774,6--37\n"); nit_exit(1);} - variable22 = variable5 /*nodearraylist8*/; - variable23 = TAG_Bool(( variable22 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable22 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7776,6--33\n"); nit_exit(1);} - variable23 = variable2 /*nodearraylist11*/; - variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7778,6--33\n"); nit_exit(1);} - variable25 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable15 /*pablenode3*/, variable17 /*pablenode6*/, variable18 /*tkwredefnode9*/, variable19 /*pvisibilitynode10*/, variable20 /*tkwattrnode11*/, variable21 /*tattridnode12*/, variable22 /*ptypenode13*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/ - variable24 = variable25; - variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/; - variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction153___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction153::init (src/parser//parser.nit:7793,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction153].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction153].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction154___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction154::action (src/parser//parser.nit:7797,2--7852:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - val_t variable27; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable14 = variable13 /*nodearraylist1*/; - variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7813,6--30\n"); nit_exit(1);} - variable15 = variable12 /*nodearraylist2*/; - variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7815,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/ - variable16 = variable17; - variable17 = variable11 /*nodearraylist3*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7821,6--38\n"); nit_exit(1);} - variable18 = variable10 /*nodearraylist4*/; - variable19 = TAG_Bool(( variable18 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable18 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7823,6--44\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AWriteAble___init_awriteable( variable17 /*tkwredefnode7*/, variable18 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable19 = variable20; - variable20 = variable9 /*nodearraylist5*/; - variable21 = TAG_Bool(( variable20 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable20 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7829,6--38\n"); nit_exit(1);} - variable21 = variable8 /*nodearraylist6*/; - variable22 = TAG_Bool(( variable21 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable21 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7831,6--45\n"); nit_exit(1);} - variable22 = variable7 /*nodearraylist7*/; - variable23 = TAG_Bool(( variable22 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable22 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7833,6--37\n"); nit_exit(1);} - variable23 = variable6 /*nodearraylist8*/; - variable24 = TAG_Bool(( variable23 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable23 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7835,6--37\n"); nit_exit(1);} - variable24 = variable5 /*nodearraylist9*/; - variable25 = TAG_Bool(( variable24 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable24 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7837,6--33\n"); nit_exit(1);} - variable25 = variable2 /*nodearraylist12*/; - variable26 = TAG_Bool(( variable25 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable25 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7839,6--33\n"); nit_exit(1);} - variable27 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable14 /*pdocnode2*/, variable16 /*pablenode3*/, variable19 /*pablenode6*/, variable20 /*tkwredefnode9*/, variable21 /*pvisibilitynode10*/, variable22 /*tkwattrnode11*/, variable23 /*tattridnode12*/, variable24 /*ptypenode13*/, variable25 /*pexprnode14*/); /*new AAttrPropdef*/ - variable26 = variable27; - variable1 = variable26 /*ppropdefnode1*/ /*node_list=*/; - variable27 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable27, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction154___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction154::init (src/parser//parser.nit:7854,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction154].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction154].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction155___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction155::action (src/parser//parser.nit:7858,2--7903:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7872,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7874,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/ - variable14 = variable15; - variable15 = variable9 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7880,6--38\n"); nit_exit(1);} - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7882,6--44\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7884,6--36\n"); nit_exit(1);} - variable18 = variable6 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7886,6--37\n"); nit_exit(1);} - variable19 = variable5 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7888,6--33\n"); nit_exit(1);} - variable20 = variable2 /*nodearraylist10*/; - variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7890,6--33\n"); nit_exit(1);} - variable22 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable14 /*pablenode3*/, NIT_NULL /*null*/, variable15 /*tkwredefnode7*/, variable16 /*pvisibilitynode8*/, variable17 /*tkwattrnode9*/, variable18 /*tattridnode10*/, variable19 /*ptypenode11*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/ - variable21 = variable22; - variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction155___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction155::init (src/parser//parser.nit:7905,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction155].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction155].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction156___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction156::action (src/parser//parser.nit:7909,2--7964:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - val_t variable27; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable14 = variable13 /*nodearraylist1*/; - variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7925,6--30\n"); nit_exit(1);} - variable15 = variable12 /*nodearraylist2*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7927,6--38\n"); nit_exit(1);} - variable16 = variable11 /*nodearraylist3*/; - variable17 = TAG_Bool(( variable16 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable16 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7929,6--44\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AReadAble___init_areadable( variable15 /*tkwredefnode4*/, variable16 /*tkwreadablenode5*/); /*new AReadAble*/ - variable17 = variable18; - variable18 = variable10 /*nodearraylist4*/; - variable19 = TAG_Bool(( variable18 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable18 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7935,6--44\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable18 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable19 = variable20; - variable20 = variable9 /*nodearraylist5*/; - variable21 = TAG_Bool(( variable20 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable20 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7941,6--38\n"); nit_exit(1);} - variable21 = variable8 /*nodearraylist6*/; - variable22 = TAG_Bool(( variable21 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable21 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7943,6--45\n"); nit_exit(1);} - variable22 = variable7 /*nodearraylist7*/; - variable23 = TAG_Bool(( variable22 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable22 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7945,6--37\n"); nit_exit(1);} - variable23 = variable6 /*nodearraylist8*/; - variable24 = TAG_Bool(( variable23 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable23 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7947,6--37\n"); nit_exit(1);} - variable24 = variable5 /*nodearraylist9*/; - variable25 = TAG_Bool(( variable24 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable24 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7949,6--33\n"); nit_exit(1);} - variable25 = variable2 /*nodearraylist12*/; - variable26 = TAG_Bool(( variable25 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable25 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7951,6--33\n"); nit_exit(1);} - variable27 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable14 /*pdocnode2*/, variable17 /*pablenode3*/, variable19 /*pablenode6*/, variable20 /*tkwredefnode9*/, variable21 /*pvisibilitynode10*/, variable22 /*tkwattrnode11*/, variable23 /*tattridnode12*/, variable24 /*ptypenode13*/, variable25 /*pexprnode14*/); /*new AAttrPropdef*/ - variable26 = variable27; - variable1 = variable26 /*ppropdefnode1*/ /*node_list=*/; - variable27 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable27, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction156___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction156::init (src/parser//parser.nit:7966,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction156].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction156].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction157___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction157::action (src/parser//parser.nit:7970,2--8028:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - val_t variable25; - val_t variable26; - val_t variable27; - val_t variable28; - val_t variable29; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable13 = variable14; - variable15 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable14 = variable15; - variable15 = variable14 /*nodearraylist1*/; - variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7987,6--30\n"); nit_exit(1);} - variable16 = variable13 /*nodearraylist2*/; - variable17 = TAG_Bool(( variable16 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7989,6--38\n"); nit_exit(1);} - variable17 = variable12 /*nodearraylist3*/; - variable18 = TAG_Bool(( variable17 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable17 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7991,6--44\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AReadAble___init_areadable( variable16 /*tkwredefnode4*/, variable17 /*tkwreadablenode5*/); /*new AReadAble*/ - variable18 = variable19; - variable19 = variable11 /*nodearraylist4*/; - variable20 = TAG_Bool(( variable19 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7997,6--38\n"); nit_exit(1);} - variable20 = variable10 /*nodearraylist5*/; - variable21 = TAG_Bool(( variable20 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable20 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:7999,6--44\n"); nit_exit(1);} - variable22 = NEW_parser_prod___AWriteAble___init_awriteable( variable19 /*tkwredefnode7*/, variable20 /*tkwwritablenode8*/); /*new AWriteAble*/ - variable21 = variable22; - variable22 = variable9 /*nodearraylist6*/; - variable23 = TAG_Bool(( variable22 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable22 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8005,6--38\n"); nit_exit(1);} - variable23 = variable8 /*nodearraylist7*/; - variable24 = TAG_Bool(( variable23 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable23 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8007,6--45\n"); nit_exit(1);} - variable24 = variable7 /*nodearraylist8*/; - variable25 = TAG_Bool(( variable24 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable24 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8009,6--37\n"); nit_exit(1);} - variable25 = variable6 /*nodearraylist9*/; - variable26 = TAG_Bool(( variable25 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable25 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8011,6--37\n"); nit_exit(1);} - variable26 = variable5 /*nodearraylist10*/; - variable27 = TAG_Bool(( variable26 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable26 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable27)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8013,6--33\n"); nit_exit(1);} - variable27 = variable2 /*nodearraylist13*/; - variable28 = TAG_Bool(( variable27 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable27 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable28)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8015,6--33\n"); nit_exit(1);} - variable29 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable15 /*pdocnode2*/, variable18 /*pablenode3*/, variable21 /*pablenode6*/, variable22 /*tkwredefnode9*/, variable23 /*pvisibilitynode10*/, variable24 /*tkwattrnode11*/, variable25 /*tattridnode12*/, variable26 /*ptypenode13*/, variable27 /*pexprnode14*/); /*new AAttrPropdef*/ - variable28 = variable29; - variable1 = variable28 /*ppropdefnode1*/ /*node_list=*/; - variable29 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable29, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction157___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction157::init (src/parser//parser.nit:8030,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction157].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction157].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction158___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction158::action (src/parser//parser.nit:8034,2--8082:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8049,6--30\n"); nit_exit(1);} - variable14 = variable11 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8051,6--38\n"); nit_exit(1);} - variable15 = variable10 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8053,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AReadAble___init_areadable( variable14 /*tkwredefnode4*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/ - variable16 = variable17; - variable17 = variable9 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8059,6--38\n"); nit_exit(1);} - variable18 = variable8 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8061,6--44\n"); nit_exit(1);} - variable19 = variable7 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8063,6--36\n"); nit_exit(1);} - variable20 = variable6 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8065,6--37\n"); nit_exit(1);} - variable21 = variable5 /*nodearraylist8*/; - variable22 = TAG_Bool(( variable21 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8067,6--33\n"); nit_exit(1);} - variable22 = variable2 /*nodearraylist11*/; - variable23 = TAG_Bool(( variable22 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable22 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8069,6--33\n"); nit_exit(1);} - variable24 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable16 /*pablenode3*/, NIT_NULL /*null*/, variable17 /*tkwredefnode7*/, variable18 /*pvisibilitynode8*/, variable19 /*tkwattrnode9*/, variable20 /*tattridnode10*/, variable21 /*ptypenode11*/, variable22 /*pexprnode12*/); /*new AAttrPropdef*/ - variable23 = variable24; - variable1 = variable23 /*ppropdefnode1*/ /*node_list=*/; - variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction158___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction158::init (src/parser//parser.nit:8084,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction158].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction158].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction159___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction159::action (src/parser//parser.nit:8088,2--8133:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8102,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8104,6--44\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable13 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable14 = variable15; - variable15 = variable9 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8110,6--38\n"); nit_exit(1);} - variable16 = variable8 /*nodearraylist4*/; - variable17 = TAG_Bool(( variable16 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8112,6--44\n"); nit_exit(1);} - variable17 = variable7 /*nodearraylist5*/; - variable18 = TAG_Bool(( variable17 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8114,6--36\n"); nit_exit(1);} - variable18 = variable6 /*nodearraylist6*/; - variable19 = TAG_Bool(( variable18 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8116,6--37\n"); nit_exit(1);} - variable19 = variable5 /*nodearraylist7*/; - variable20 = TAG_Bool(( variable19 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8118,6--33\n"); nit_exit(1);} - variable20 = variable2 /*nodearraylist10*/; - variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8120,6--33\n"); nit_exit(1);} - variable22 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, NIT_NULL /*null*/, variable14 /*pablenode4*/, variable15 /*tkwredefnode7*/, variable16 /*pvisibilitynode8*/, variable17 /*tkwattrnode9*/, variable18 /*tattridnode10*/, variable19 /*ptypenode11*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/ - variable21 = variable22; - variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/; - variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction159___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction159::init (src/parser//parser.nit:8135,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction159].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction159].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction160___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction160::action (src/parser//parser.nit:8139,2--8187:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - val_t variable21; - val_t variable22; - val_t variable23; - val_t variable24; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8154,6--30\n"); nit_exit(1);} - variable14 = variable11 /*nodearraylist2*/; - variable15 = TAG_Bool(( variable14 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8156,6--38\n"); nit_exit(1);} - variable15 = variable10 /*nodearraylist3*/; - variable16 = TAG_Bool(( variable15 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8158,6--44\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AWriteAble___init_awriteable( variable14 /*tkwredefnode5*/, variable15 /*tkwwritablenode6*/); /*new AWriteAble*/ - variable16 = variable17; - variable17 = variable9 /*nodearraylist4*/; - variable18 = TAG_Bool(( variable17 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8164,6--38\n"); nit_exit(1);} - variable18 = variable8 /*nodearraylist5*/; - variable19 = TAG_Bool(( variable18 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8166,6--44\n"); nit_exit(1);} - variable19 = variable7 /*nodearraylist6*/; - variable20 = TAG_Bool(( variable19 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8168,6--36\n"); nit_exit(1);} - variable20 = variable6 /*nodearraylist7*/; - variable21 = TAG_Bool(( variable20 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8170,6--37\n"); nit_exit(1);} - variable21 = variable5 /*nodearraylist8*/; - variable22 = TAG_Bool(( variable21 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8172,6--33\n"); nit_exit(1);} - variable22 = variable2 /*nodearraylist11*/; - variable23 = TAG_Bool(( variable22 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable22 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8174,6--33\n"); nit_exit(1);} - variable24 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, NIT_NULL /*null*/, variable16 /*pablenode4*/, variable17 /*tkwredefnode7*/, variable18 /*pvisibilitynode8*/, variable19 /*tkwattrnode9*/, variable20 /*tattridnode10*/, variable21 /*ptypenode11*/, variable22 /*pexprnode12*/); /*new AAttrPropdef*/ - variable23 = variable24; - variable1 = variable23 /*ppropdefnode1*/ /*node_list=*/; - variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction160___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction160::init (src/parser//parser.nit:8189,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction160].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction160].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction161___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction161::action (src/parser//parser.nit:8193,2--8231:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8206,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8208,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8210,6--44\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8212,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8214,6--36\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*ptypenode9*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode9*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8216,6--32\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*pexprnode10*/==NIT_NULL) || VAL_ISA( variable17 /*pexprnode10*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8218,6--33\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable12 /*tkwredefnode5*/, variable13 /*pvisibilitynode6*/, variable14 /*tkwattrnode7*/, variable15 /*tattridnode8*/, variable16 /*ptypenode9*/, variable17 /*pexprnode10*/); /*new AAttrPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction161___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction161::init (src/parser//parser.nit:8233,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction161].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction161].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction162___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction162::action (src/parser//parser.nit:8237,2--8266:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8248,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8250,6--44\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8252,6--36\n"); nit_exit(1);} - variable12 = variable5 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8254,6--36\n"); nit_exit(1);} - variable13 = variable4 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8256,6--42\n"); nit_exit(1);} - variable15 = NEW_parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwmethnode5*/, variable12 /*pmethidnode6*/, variable13 /*psignaturenode7*/); /*new ADeferredMethPropdef*/ - variable14 = variable15; - variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction162___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction162::init (src/parser//parser.nit:8268,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction162].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction162].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction163___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction163::action (src/parser//parser.nit:8272,2--8304:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8284,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8286,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8288,6--44\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8290,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8292,6--36\n"); nit_exit(1);} - variable15 = variable4 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8294,6--42\n"); nit_exit(1);} - variable17 = NEW_parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/); /*new ADeferredMethPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction163___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction163::init (src/parser//parser.nit:8306,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction163].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction163].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction164___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction164::action (src/parser//parser.nit:8310,2--8339:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8321,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8323,6--44\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8325,6--36\n"); nit_exit(1);} - variable12 = variable5 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8327,6--36\n"); nit_exit(1);} - variable13 = variable4 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8329,6--42\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AInternMethPropdef___init_ainternmethpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwmethnode5*/, variable12 /*pmethidnode6*/, variable13 /*psignaturenode7*/); /*new AInternMethPropdef*/ - variable14 = variable15; - variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction164___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction164::init (src/parser//parser.nit:8341,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction164].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction164].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction165___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction165::action (src/parser//parser.nit:8345,2--8377:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8357,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8359,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8361,6--44\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8363,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8365,6--36\n"); nit_exit(1);} - variable15 = variable4 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8367,6--42\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AInternMethPropdef___init_ainternmethpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/); /*new AInternMethPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction165___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction165::init (src/parser//parser.nit:8379,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction165].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction165].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction166___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction166::action (src/parser//parser.nit:8383,2--8413:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8394,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8396,6--44\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8398,6--36\n"); nit_exit(1);} - variable12 = variable5 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8400,6--36\n"); nit_exit(1);} - variable13 = variable4 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8402,6--42\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwmethnode5*/, variable12 /*pmethidnode6*/, variable13 /*psignaturenode7*/, NIT_NULL /*null*/); /*new AExternMethPropdef*/ - variable14 = variable15; - variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction166___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction166::init (src/parser//parser.nit:8415,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction166].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction166].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction167___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction167::action (src/parser//parser.nit:8419,2--8452:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8431,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8433,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8435,6--44\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8437,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8439,6--36\n"); nit_exit(1);} - variable15 = variable4 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8441,6--42\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/, NIT_NULL /*null*/); /*new AExternMethPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction167___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction167::init (src/parser//parser.nit:8454,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction167].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction167].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction168___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction168::action (src/parser//parser.nit:8458,2--8491:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8470,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8472,6--44\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8474,6--36\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8476,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8478,6--42\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist8*/; - variable16 = TAG_Bool(( variable15 /*tstringnode8*/==NIT_NULL) || VAL_ISA( variable15 /*tstringnode8*/, COLOR_TString, ID_TString)) /*cast TString*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8480,6--36\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwmethnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*tstringnode8*/); /*new AExternMethPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction168___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction168::init (src/parser//parser.nit:8493,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction168].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction168].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction169___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction169::action (src/parser//parser.nit:8497,2--8533:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8510,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8512,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8514,6--44\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8516,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8518,6--36\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8520,6--42\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*tstringnode8*/==NIT_NULL) || VAL_ISA( variable17 /*tstringnode8*/, COLOR_TString, ID_TString)) /*cast TString*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8522,6--36\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwmethnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*tstringnode8*/); /*new AExternMethPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction169___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction169::init (src/parser//parser.nit:8535,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction169].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction169].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction170___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction170::action (src/parser//parser.nit:8539,2--8572:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8551,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8553,6--44\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8555,6--36\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8557,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8559,6--42\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist8*/; - variable16 = TAG_Bool(( variable15 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8561,6--32\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwmethnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*pexprnode8*/); /*new AConcreteMethPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction170___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction170::init (src/parser//parser.nit:8574,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction170].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction170].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction171___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction171::action (src/parser//parser.nit:8578,2--8614:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8591,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8593,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8595,6--44\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8597,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8599,6--36\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8601,6--42\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable17 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8603,6--32\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwmethnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*pexprnode8*/); /*new AConcreteMethPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction171___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction171::init (src/parser//parser.nit:8616,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction171].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction171].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction172___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction172::action (src/parser//parser.nit:8620,2--8654:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8633,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8635,6--44\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8637,6--36\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8639,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8641,6--42\n"); nit_exit(1);} - variable16 = variable3 /*nodearraylist8*/; - variable17 = TAG_Bool(( variable16 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8643,6--32\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/, variable16 /*pexprnode8*/); /*new AConcreteMethPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction172___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction172::init (src/parser//parser.nit:8656,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction172].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction172].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction173___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction173::action (src/parser//parser.nit:8660,2--8697:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8674,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8676,6--38\n"); nit_exit(1);} - variable14 = variable9 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8678,6--44\n"); nit_exit(1);} - variable15 = variable8 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8680,6--36\n"); nit_exit(1);} - variable16 = variable7 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable16 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8682,6--36\n"); nit_exit(1);} - variable17 = variable6 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable17 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8684,6--42\n"); nit_exit(1);} - variable18 = variable3 /*nodearraylist9*/; - variable19 = TAG_Bool(( variable18 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8686,6--32\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable12 /*pdocnode2*/, variable13 /*tkwredefnode3*/, variable14 /*pvisibilitynode4*/, variable15 /*tkwmethnode5*/, variable16 /*pmethidnode6*/, variable17 /*psignaturenode7*/, variable18 /*pexprnode8*/); /*new AConcreteMethPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction173___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction173::init (src/parser//parser.nit:8699,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction173].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction173].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction174___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction174::action (src/parser//parser.nit:8703,2--8733:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8714,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8716,6--44\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8718,6--36\n"); nit_exit(1);} - variable12 = variable5 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable12 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8720,6--42\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist7*/; - variable14 = TAG_Bool(( variable13 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8722,6--32\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwinitnode5*/, NIT_NULL /*null*/, variable12 /*psignaturenode7*/, variable13 /*pexprnode8*/); /*new AConcreteInitPropdef*/ - variable14 = variable15; - variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction174___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction174::init (src/parser//parser.nit:8735,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction174].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction174].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction175___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction175::action (src/parser//parser.nit:8739,2--8772:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8751,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8753,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8755,6--44\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8757,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8759,6--42\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist8*/; - variable16 = TAG_Bool(( variable15 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8761,6--32\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwinitnode5*/, NIT_NULL /*null*/, variable14 /*psignaturenode7*/, variable15 /*pexprnode8*/); /*new AConcreteInitPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction175___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction175::init (src/parser//parser.nit:8774,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction175].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction175].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction176___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction176::action (src/parser//parser.nit:8778,2--8811:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8790,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8792,6--44\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8794,6--36\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8796,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8798,6--42\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist8*/; - variable16 = TAG_Bool(( variable15 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8800,6--32\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwinitnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*pexprnode8*/); /*new AConcreteInitPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction176___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction176::init (src/parser//parser.nit:8813,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction176].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction176].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction177___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction177::action (src/parser//parser.nit:8817,2--8853:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8830,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8832,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8834,6--44\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8836,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8838,6--36\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8840,6--42\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable17 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8842,6--32\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwinitnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*pexprnode8*/); /*new AConcreteInitPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction177___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction177::init (src/parser//parser.nit:8855,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction177].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction177].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction178___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction178::action (src/parser//parser.nit:8859,2--8890:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8871,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8873,6--44\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8875,6--36\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8877,6--42\n"); nit_exit(1);} - variable14 = variable3 /*nodearraylist7*/; - variable15 = TAG_Bool(( variable14 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8879,6--32\n"); nit_exit(1);} - variable16 = NEW_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwinitnode5*/, NIT_NULL /*null*/, variable13 /*psignaturenode7*/, variable14 /*pexprnode8*/); /*new AConcreteInitPropdef*/ - variable15 = variable16; - variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction178___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction178::init (src/parser//parser.nit:8892,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction178].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction178].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction179___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction179::action (src/parser//parser.nit:8896,2--8930:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8909,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8911,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8913,6--44\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8915,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8917,6--42\n"); nit_exit(1);} - variable16 = variable3 /*nodearraylist8*/; - variable17 = TAG_Bool(( variable16 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8919,6--32\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwinitnode5*/, NIT_NULL /*null*/, variable15 /*psignaturenode7*/, variable16 /*pexprnode8*/); /*new AConcreteInitPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction179___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction179::init (src/parser//parser.nit:8932,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction179].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction179].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction180___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction180::action (src/parser//parser.nit:8936,2--8970:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8949,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8951,6--44\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8953,6--36\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8955,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8957,6--42\n"); nit_exit(1);} - variable16 = variable3 /*nodearraylist8*/; - variable17 = TAG_Bool(( variable16 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8959,6--32\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwinitnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/, variable16 /*pexprnode8*/); /*new AConcreteInitPropdef*/ - variable17 = variable18; - variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction180___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction180::init (src/parser//parser.nit:8972,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction180].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction180].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction181___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction181::action (src/parser//parser.nit:8976,2--9013:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8990,6--30\n"); nit_exit(1);} - variable13 = variable10 /*nodearraylist2*/; - variable14 = TAG_Bool(( variable13 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8992,6--38\n"); nit_exit(1);} - variable14 = variable9 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8994,6--44\n"); nit_exit(1);} - variable15 = variable8 /*nodearraylist4*/; - variable16 = TAG_Bool(( variable15 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8996,6--36\n"); nit_exit(1);} - variable16 = variable7 /*nodearraylist5*/; - variable17 = TAG_Bool(( variable16 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable16 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:8998,6--36\n"); nit_exit(1);} - variable17 = variable6 /*nodearraylist6*/; - variable18 = TAG_Bool(( variable17 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable17 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9000,6--42\n"); nit_exit(1);} - variable18 = variable3 /*nodearraylist9*/; - variable19 = TAG_Bool(( variable18 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9002,6--32\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable12 /*pdocnode2*/, variable13 /*tkwredefnode3*/, variable14 /*pvisibilitynode4*/, variable15 /*tkwinitnode5*/, variable16 /*pmethidnode6*/, variable17 /*psignaturenode7*/, variable18 /*pexprnode8*/); /*new AConcreteInitPropdef*/ - variable19 = variable20; - variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction181___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction181::init (src/parser//parser.nit:9015,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction181].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction181].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction182___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction182::action (src/parser//parser.nit:9019,2--9046:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable7 = variable6 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9028,6--30\n"); nit_exit(1);} - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable8 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9030,6--44\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*tkwtypenode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwtypenode5*/, COLOR_TKwtype, ID_TKwtype)) /*cast TKwtype*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9032,6--36\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable10 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9034,6--38\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist5*/; - variable12 = TAG_Bool(( variable11 /*ptypenode7*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode7*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9036,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___ATypePropdef___init_atypepropdef( variable7 /*pdocnode2*/, NIT_NULL /*null*/, variable8 /*pvisibilitynode4*/, variable9 /*tkwtypenode5*/, variable10 /*tclassidnode6*/, variable11 /*ptypenode7*/); /*new ATypePropdef*/ - variable12 = variable13; - variable1 = variable12 /*ppropdefnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction182___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction182::init (src/parser//parser.nit:9048,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction182].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction182].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction183___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction183::action (src/parser//parser.nit:9052,2--9082:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9062,6--30\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9064,6--38\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9066,6--44\n"); nit_exit(1);} - variable11 = variable4 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*tkwtypenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwtypenode5*/, COLOR_TKwtype, ID_TKwtype)) /*cast TKwtype*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9068,6--36\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist5*/; - variable13 = TAG_Bool(( variable12 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9070,6--38\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist6*/; - variable14 = TAG_Bool(( variable13 /*ptypenode7*/==NIT_NULL) || VAL_ISA( variable13 /*ptypenode7*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9072,6--32\n"); nit_exit(1);} - variable15 = NEW_parser_prod___ATypePropdef___init_atypepropdef( variable8 /*pdocnode2*/, variable9 /*tkwredefnode3*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwtypenode5*/, variable12 /*tclassidnode6*/, variable13 /*ptypenode7*/); /*new ATypePropdef*/ - variable14 = variable15; - variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction183___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction183::init (src/parser//parser.nit:9084,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction183].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction183].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction184___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction184::action (src/parser//parser.nit:9088,2--9096:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*ppropdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode1*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9094,6--38\n"); nit_exit(1);} - variable1 = variable4 /*ppropdefnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(13)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction184___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction184::init (src/parser//parser.nit:9098,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction184].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction184].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction185___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction185::action (src/parser//parser.nit:9102,2--9132:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9113,6--30\n"); nit_exit(1);} - variable10 = variable7 /*nodearraylist2*/; - variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9115,6--44\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9117,6--36\n"); nit_exit(1);} - variable12 = variable5 /*nodearraylist4*/; - variable13 = TAG_Bool(( variable12 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9119,6--36\n"); nit_exit(1);} - variable13 = variable4 /*nodearraylist5*/; - variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9121,6--42\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwmethnode5*/, variable12 /*pmethidnode6*/, variable13 /*psignaturenode7*/, NIT_NULL /*null*/); /*new AExternMethPropdef*/ - variable14 = variable15; - variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction185___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction185::init (src/parser//parser.nit:9134,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction185].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction185].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction186___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction186::action (src/parser//parser.nit:9138,2--9171:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9150,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9152,6--38\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9154,6--44\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9156,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9158,6--36\n"); nit_exit(1);} - variable15 = variable4 /*nodearraylist6*/; - variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9160,6--42\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/, NIT_NULL /*null*/); /*new AExternMethPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction186___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction186::init (src/parser//parser.nit:9173,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction186].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction186].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction187___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction187::action (src/parser//parser.nit:9177,2--9210:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9189,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9191,6--44\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9193,6--36\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9195,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9197,6--42\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist8*/; - variable16 = TAG_Bool(( variable15 /*tstringnode8*/==NIT_NULL) || VAL_ISA( variable15 /*tstringnode8*/, COLOR_TString, ID_TString)) /*cast TString*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9199,6--36\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwmethnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*tstringnode8*/); /*new AExternMethPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction187___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction187::init (src/parser//parser.nit:9212,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction187].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction187].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction188___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction188::action (src/parser//parser.nit:9216,2--9252:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9229,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9231,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9233,6--44\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9235,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9237,6--36\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9239,6--42\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*tstringnode8*/==NIT_NULL) || VAL_ISA( variable17 /*tstringnode8*/, COLOR_TString, ID_TString)) /*cast TString*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9241,6--36\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwmethnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*tstringnode8*/); /*new AExternMethPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction188___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction188::init (src/parser//parser.nit:9254,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction188].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction188].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction189___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction189::action (src/parser//parser.nit:9258,2--9291:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9270,6--30\n"); nit_exit(1);} - variable11 = variable8 /*nodearraylist2*/; - variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9272,6--44\n"); nit_exit(1);} - variable12 = variable7 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9274,6--36\n"); nit_exit(1);} - variable13 = variable6 /*nodearraylist4*/; - variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9276,6--36\n"); nit_exit(1);} - variable14 = variable5 /*nodearraylist5*/; - variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9278,6--42\n"); nit_exit(1);} - variable15 = variable2 /*nodearraylist8*/; - variable16 = TAG_Bool(( variable15 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9280,6--32\n"); nit_exit(1);} - variable17 = NEW_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwmethnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*pexprnode8*/); /*new AConcreteMethPropdef*/ - variable16 = variable17; - variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/; - variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction189___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction189::init (src/parser//parser.nit:9293,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction189].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction189].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction190___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction190::action (src/parser//parser.nit:9297,2--9333:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9310,6--30\n"); nit_exit(1);} - variable12 = variable9 /*nodearraylist2*/; - variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9312,6--38\n"); nit_exit(1);} - variable13 = variable8 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9314,6--44\n"); nit_exit(1);} - variable14 = variable7 /*nodearraylist4*/; - variable15 = TAG_Bool(( variable14 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9316,6--36\n"); nit_exit(1);} - variable15 = variable6 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9318,6--36\n"); nit_exit(1);} - variable16 = variable5 /*nodearraylist6*/; - variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9320,6--42\n"); nit_exit(1);} - variable17 = variable2 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable17 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9322,6--32\n"); nit_exit(1);} - variable19 = NEW_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwmethnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*pexprnode8*/); /*new AConcreteMethPropdef*/ - variable18 = variable19; - variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/; - variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction190___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction190::init (src/parser//parser.nit:9335,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction190].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction190].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction191___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction191::action (src/parser//parser.nit:9339,2--9345:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = NEW_parser_prod___APublicVisibility___init_apublicvisibility(); /*new APublicVisibility*/ - variable2 = variable3; - variable1 = variable2 /*pvisibilitynode1*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(15)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction191___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction191::init (src/parser//parser.nit:9347,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction191].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction191].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction192___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction192::action (src/parser//parser.nit:9351,2--9362:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwprivatenode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwprivatenode2*/, COLOR_TKwprivate, ID_TKwprivate)) /*cast TKwprivate*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9357,6--42\n"); nit_exit(1);} - variable6 = NEW_parser_prod___APrivateVisibility___init_aprivatevisibility( variable4 /*tkwprivatenode2*/); /*new APrivateVisibility*/ - variable5 = variable6; - variable1 = variable5 /*pvisibilitynode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(15)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction192___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction192::init (src/parser//parser.nit:9364,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction192].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction192].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction193___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction193::action (src/parser//parser.nit:9368,2--9379:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwprotectednode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwprotectednode2*/, COLOR_TKwprotected, ID_TKwprotected)) /*cast TKwprotected*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9374,6--46\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AProtectedVisibility___init_aprotectedvisibility( variable4 /*tkwprotectednode2*/); /*new AProtectedVisibility*/ - variable5 = variable6; - variable1 = variable5 /*pvisibilitynode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(15)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction193___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction193::init (src/parser//parser.nit:9381,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction193].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction193].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction194___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction194::action (src/parser//parser.nit:9385,2--9396:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwintrudenode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwintrudenode2*/, COLOR_TKwintrude, ID_TKwintrude)) /*cast TKwintrude*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9391,6--42\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AIntrudeVisibility___init_aintrudevisibility( variable4 /*tkwintrudenode2*/); /*new AIntrudeVisibility*/ - variable5 = variable6; - variable1 = variable5 /*pvisibilitynode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(15)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction194___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction194::init (src/parser//parser.nit:9398,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction194].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction194].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction195___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction195::action (src/parser//parser.nit:9402,2--9412:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9407,6--28\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AIdMethid___init_aidmethid( variable3 /*tidnode2*/); /*new AIdMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction195___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction195::init (src/parser//parser.nit:9414,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction195].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction195].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction196___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction196::action (src/parser//parser.nit:9418,2--9428:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tplusnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tplusnode2*/, COLOR_TPlus, ID_TPlus)) /*cast TPlus*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9423,6--32\n"); nit_exit(1);} - variable5 = NEW_parser_prod___APlusMethid___init_aplusmethid( variable3 /*tplusnode2*/); /*new APlusMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction196___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction196::init (src/parser//parser.nit:9430,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction196].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction196].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction197___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction197::action (src/parser//parser.nit:9434,2--9444:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9439,6--34\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AMinusMethid___init_aminusmethid( variable3 /*tminusnode2*/); /*new AMinusMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction197___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction197::init (src/parser//parser.nit:9446,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction197].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction197].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction198___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction198::action (src/parser//parser.nit:9450,2--9460:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tstarnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstarnode2*/, COLOR_TStar, ID_TStar)) /*cast TStar*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9455,6--32\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AStarMethid___init_astarmethid( variable3 /*tstarnode2*/); /*new AStarMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction198___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction198::init (src/parser//parser.nit:9462,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction198].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction198].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction199___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction199::action (src/parser//parser.nit:9466,2--9476:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tslashnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tslashnode2*/, COLOR_TSlash, ID_TSlash)) /*cast TSlash*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9471,6--34\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ASlashMethid___init_aslashmethid( variable3 /*tslashnode2*/); /*new ASlashMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction199___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction199::init (src/parser//parser.nit:9478,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction199].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction199].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction200___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction200::action (src/parser//parser.nit:9482,2--9492:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tpercentnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tpercentnode2*/, COLOR_TPercent, ID_TPercent)) /*cast TPercent*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9487,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___APercentMethid___init_apercentmethid( variable3 /*tpercentnode2*/); /*new APercentMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction200___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction200::init (src/parser//parser.nit:9494,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction200].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction200].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction201___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction201::action (src/parser//parser.nit:9498,2--9508:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*teqnode2*/==NIT_NULL) || VAL_ISA( variable3 /*teqnode2*/, COLOR_TEq, ID_TEq)) /*cast TEq*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9503,6--28\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AEqMethid___init_aeqmethid( variable3 /*teqnode2*/); /*new AEqMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction201___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction201::init (src/parser//parser.nit:9510,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction201].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction201].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction202___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction202::action (src/parser//parser.nit:9514,2--9524:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tnenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnenode2*/, COLOR_TNe, ID_TNe)) /*cast TNe*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9519,6--28\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ANeMethid___init_anemethid( variable3 /*tnenode2*/); /*new ANeMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction202___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction202::init (src/parser//parser.nit:9526,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction202].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction202].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction203___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction203::action (src/parser//parser.nit:9530,2--9540:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tlenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tlenode2*/, COLOR_TLe, ID_TLe)) /*cast TLe*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9535,6--28\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ALeMethid___init_alemethid( variable3 /*tlenode2*/); /*new ALeMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction203___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction203::init (src/parser//parser.nit:9542,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction203].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction203].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction204___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction204::action (src/parser//parser.nit:9546,2--9556:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tgenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tgenode2*/, COLOR_TGe, ID_TGe)) /*cast TGe*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9551,6--28\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AGeMethid___init_agemethid( variable3 /*tgenode2*/); /*new AGeMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction204___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction204::init (src/parser//parser.nit:9558,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction204].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction204].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction205___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction205::action (src/parser//parser.nit:9562,2--9572:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tltnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tltnode2*/, COLOR_TLt, ID_TLt)) /*cast TLt*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9567,6--28\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ALtMethid___init_altmethid( variable3 /*tltnode2*/); /*new ALtMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction205___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction205::init (src/parser//parser.nit:9574,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction205].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction205].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction206___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction206::action (src/parser//parser.nit:9578,2--9588:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tgtnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tgtnode2*/, COLOR_TGt, ID_TGt)) /*cast TGt*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9583,6--28\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AGtMethid___init_agtmethid( variable3 /*tgtnode2*/); /*new AGtMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction206___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction206::init (src/parser//parser.nit:9590,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction206].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction206].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction207___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction207::action (src/parser//parser.nit:9594,2--9608:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tobranode2*/==NIT_NULL) || VAL_ISA( variable4 /*tobranode2*/, COLOR_TObra, ID_TObra)) /*cast TObra*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9600,6--32\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*tcbranode3*/==NIT_NULL) || VAL_ISA( variable5 /*tcbranode3*/, COLOR_TCbra, ID_TCbra)) /*cast TCbra*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9602,6--32\n"); nit_exit(1);} - variable7 = NEW_parser_prod___ABraMethid___init_abramethid( variable4 /*tobranode2*/, variable5 /*tcbranode3*/); /*new ABraMethid*/ - variable6 = variable7; - variable1 = variable6 /*pmethidnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction207___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction207::init (src/parser//parser.nit:9610,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction207].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction207].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction208___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction208::action (src/parser//parser.nit:9614,2--9624:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tstarshipnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstarshipnode2*/, COLOR_TStarship, ID_TStarship)) /*cast TStarship*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9619,6--40\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AStarshipMethid___init_astarshipmethid( variable3 /*tstarshipnode2*/); /*new AStarshipMethid*/ - variable4 = variable5; - variable1 = variable4 /*pmethidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction208___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction208::init (src/parser//parser.nit:9626,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction208].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction208].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction209___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction209::action (src/parser//parser.nit:9630,2--9644:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9636,6--28\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*tassignnode3*/==NIT_NULL) || VAL_ISA( variable5 /*tassignnode3*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9638,6--36\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AAssignMethid___init_aassignmethid( variable4 /*tidnode2*/, variable5 /*tassignnode3*/); /*new AAssignMethid*/ - variable6 = variable7; - variable1 = variable6 /*pmethidnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction209___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction209::init (src/parser//parser.nit:9646,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction209].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction209].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction210___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction210::action (src/parser//parser.nit:9650,2--9668:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tobranode2*/==NIT_NULL) || VAL_ISA( variable5 /*tobranode2*/, COLOR_TObra, ID_TObra)) /*cast TObra*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9657,6--32\n"); nit_exit(1);} - variable6 = variable3 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*tcbranode3*/==NIT_NULL) || VAL_ISA( variable6 /*tcbranode3*/, COLOR_TCbra, ID_TCbra)) /*cast TCbra*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9659,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist3*/; - variable8 = TAG_Bool(( variable7 /*tassignnode4*/==NIT_NULL) || VAL_ISA( variable7 /*tassignnode4*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9661,6--36\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ABraassignMethid___init_abraassignmethid( variable5 /*tobranode2*/, variable6 /*tcbranode3*/, variable7 /*tassignnode4*/); /*new ABraassignMethid*/ - variable8 = variable9; - variable1 = variable8 /*pmethidnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction210___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction210::init (src/parser//parser.nit:9670,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction210].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction210].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction211___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction211::action (src/parser//parser.nit:9674,2--9683:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = NEW_array___Array___init(); /*new Array[Object]*/ - variable2 = variable3; - variable4 = NEW_parser_prod___ASignature___init_asignature( variable2 /*listnode2*/, NIT_NULL /*null*/); /*new ASignature*/ - variable3 = variable4; - variable1 = variable3 /*psignaturenode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(17)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction211___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction211::init (src/parser//parser.nit:9685,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction211].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction211].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction212___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction212::action (src/parser//parser.nit:9689,2--9708:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*listnode2*/==NIT_NULL) || VAL_ISA( variable4 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9695,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode2*/ == NIT_NULL /*null*/) || (( variable4 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable5)) { /*if*/ - variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable5)) { /*if*/ - variable3 = variable4 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode3*/, variable4 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1838 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]); + } + /* ./parser//parser.nit:1840 */ + fra.me.REG[7] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:1845 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:1846 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction28____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1846); + } + REGB0 = ATTR_parser___ReduceAction28____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction28___init(val_t p0, val_t p1, int* init_table){ + int itpos32 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction28].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos32]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1849; + fra.me.meth = LOCATE_parser___ReduceAction28___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1849 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction28____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos32] = 1; + return; +} +void parser___ReduceAction29___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1853; + fra.me.meth = LOCATE_parser___ReduceAction29___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1855 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1856 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1857 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1858 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1859 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1860 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1861 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1863 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1863); + } + /* ./parser//parser.nit:1865 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1865); + } + /* ./parser//parser.nit:1866 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1868 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1868); + } + /* ./parser//parser.nit:1869 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[9], fra.me.REG[4]); + fra.me.REG[9] = fra.me.REG[4]; + /* ./parser//parser.nit:1870 */ + fra.me.REG[9] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[9]); + /* ./parser//parser.nit:1874 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1874); + } + /* ./parser//parser.nit:1875 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[5]); + fra.me.REG[8] = fra.me.REG[5]; + /* ./parser//parser.nit:1876 */ + REGB0 = TAG_Bool(fra.me.REG[9]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[9]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[9])(fra.me.REG[9], NIT_NULL); + REGB0 = REGB1; } } - variable6 = NEW_parser_prod___ASignature___init_asignature( variable3 /*listnode3*/, NIT_NULL /*null*/); /*new ASignature*/ - variable5 = variable6; - variable1 = variable5 /*psignaturenode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(17)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction212___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction212::init (src/parser//parser.nit:9710,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction212].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction212].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction213___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction213::action (src/parser//parser.nit:9714,2--9726:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable4 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9720,6--32\n"); nit_exit(1);} - variable6 = NEW_parser_prod___ASignature___init_asignature( variable3 /*listnode2*/, variable4 /*ptypenode3*/); /*new ASignature*/ - variable5 = variable6; - variable1 = variable5 /*psignaturenode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(17)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction213___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction213::init (src/parser//parser.nit:9728,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction213].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction213].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction214___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction214::action (src/parser//parser.nit:9732,2--9754:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode2*/==NIT_NULL) || VAL_ISA( variable5 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9739,6--38\n"); nit_exit(1);} - variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode2*/ == NIT_NULL /*null*/) || (( variable5 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable6)) { /*if*/ - variable6 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable6)) { /*if*/ - variable4 = variable5 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1877 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[9]); + } + /* ./parser//parser.nit:1879 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable6 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9748,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___ASignature___init_asignature( variable4 /*listnode3*/, variable6 /*ptypenode4*/); /*new ASignature*/ - variable7 = variable8; - variable1 = variable7 /*psignaturenode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(17)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction214___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction214::init (src/parser//parser.nit:9756,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction214].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction214].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction215___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction215::action (src/parser//parser.nit:9760,2--9775:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable4 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pparamnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pparamnode1*/, COLOR_PParam, ID_PParam)) /*cast PParam*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9770,6--34\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pparamnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pparamnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pparamnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pparamnode1*/, NIT_NULL /*null*/) /*PParam::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pparamnode1*/) /*Array::add*/; - } - variable1 = variable7 /*listnode2*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(18)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction215___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction215::init (src/parser//parser.nit:9777,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction215].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction215].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction216___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction216::action (src/parser//parser.nit:9781,2--9806:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pparamnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pparamnode1*/, COLOR_PParam, ID_PParam)) /*cast PParam*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9792,6--34\n"); nit_exit(1);} - variable10 = variable4 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9794,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pparamnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pparamnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pparamnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pparamnode1*/, NIT_NULL /*null*/) /*PParam::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pparamnode1*/) /*Array::add*/; - } - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1880 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[3]); + } + /* ./parser//parser.nit:1882 */ + fra.me.REG[8] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[6], fra.me.REG[7], fra.me.REG[8]); + /* ./parser//parser.nit:1887 */ + fra.me.REG[2] = fra.me.REG[8]; + /* ./parser//parser.nit:1888 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction29____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1888); + } + REGB0 = ATTR_parser___ReduceAction29____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction29___init(val_t p0, val_t p1, int* init_table){ + int itpos33 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction29].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos33]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1891; + fra.me.meth = LOCATE_parser___ReduceAction29___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1891 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction29____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos33] = 1; + return; +} +void parser___ReduceAction30___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1895; + fra.me.meth = LOCATE_parser___ReduceAction30___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1897 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1898 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1899 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1900 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1901 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1902 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1903 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1905 */ + REGB0 = TAG_Bool((fra.me.REG[6]!=NIT_NULL) && VAL_ISA(fra.me.REG[6], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1905); + } + /* ./parser//parser.nit:1906 */ + fra.me.REG[6] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[6]); + fra.me.REG[7] = fra.me.REG[6]; + /* ./parser//parser.nit:1908 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1908); + } + /* ./parser//parser.nit:1909 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1911 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1911); + } + /* ./parser//parser.nit:1912 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:1913 */ + fra.me.REG[6] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[6]); + /* ./parser//parser.nit:1917 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1917); + } + /* ./parser//parser.nit:1918 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[5]); + fra.me.REG[8] = fra.me.REG[5]; + /* ./parser//parser.nit:1919 */ + REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[6]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL); + REGB0 = REGB1; } } - variable1 = variable8 /*listnode3*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(18)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction216___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction216::init (src/parser//parser.nit:9808,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction216].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction216].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction217___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction217::action (src/parser//parser.nit:9812,2--9820:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable1 = variable5 /*listnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(18)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction217___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction217::init (src/parser//parser.nit:9822,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction217].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction217].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction218___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction218::action (src/parser//parser.nit:9826,2--9835:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable2 /*nodearraylist3*/; - variable6 = TAG_Bool(( variable5 /*pparamnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pparamnode1*/, COLOR_PParam, ID_PParam)) /*cast PParam*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9833,6--34\n"); nit_exit(1);} - variable1 = variable5 /*pparamnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(19)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction218___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction218::init (src/parser//parser.nit:9837,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction218].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction218].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction219___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction219::action (src/parser//parser.nit:9841,2--9853:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9846,6--28\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AParam___init_aparam( variable3 /*tidnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AParam*/ - variable4 = variable5; - variable1 = variable4 /*pparamnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(20)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction219___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction219::init (src/parser//parser.nit:9855,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction219].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction219].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction220___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction220::action (src/parser//parser.nit:9859,2--9874:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9865,6--28\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9867,6--32\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AParam___init_aparam( variable4 /*tidnode2*/, variable5 /*ptypenode3*/, NIT_NULL /*null*/); /*new AParam*/ - variable6 = variable7; - variable1 = variable6 /*pparamnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(20)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction220___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction220::init (src/parser//parser.nit:9876,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction220].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction220].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction221___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction221::action (src/parser//parser.nit:9880,2--9898:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9887,6--28\n"); nit_exit(1);} - variable6 = variable3 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable6 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9889,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist3*/; - variable8 = TAG_Bool(( variable7 /*tdotdotdotnode4*/==NIT_NULL) || VAL_ISA( variable7 /*tdotdotdotnode4*/, COLOR_TDotdotdot, ID_TDotdotdot)) /*cast TDotdotdot*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9891,6--42\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AParam___init_aparam( variable5 /*tidnode2*/, variable6 /*ptypenode3*/, variable7 /*tdotdotdotnode4*/); /*new AParam*/ - variable8 = variable9; - variable1 = variable8 /*pparamnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(20)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction221___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction221::init (src/parser//parser.nit:9900,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction221].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction221].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction222___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction222::action (src/parser//parser.nit:9904,2--9916:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9910,6--38\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AType___init_atype( variable4 /*tclassidnode2*/, variable3 /*listnode3*/); /*new AType*/ - variable5 = variable6; - variable1 = variable5 /*ptypenode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(21)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction222___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction222::init (src/parser//parser.nit:9918,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction222].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction222].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction223___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction223::action (src/parser//parser.nit:9922,2--9948:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable7 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable9 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9933,6--38\n"); nit_exit(1);} - variable10 = variable4 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9935,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable10 /*listnode3*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1920 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[6]); + } + /* ./parser//parser.nit:1922 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable12 = NEW_parser_prod___AType___init_atype( variable9 /*tclassidnode2*/, variable8 /*listnode4*/); /*new AType*/ - variable11 = variable12; - variable1 = variable11 /*ptypenode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(21)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction223___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction223::init (src/parser//parser.nit:9950,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction223].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction223].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction224___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction224::action (src/parser//parser.nit:9954,2--9965:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable4 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9960,6--32\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ptypenode1*/ == NIT_NULL /*null*/) || (( variable4 /*ptypenode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ptypenode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*ptypenode1*/, NIT_NULL /*null*/) /*PType::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*ptypenode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(22)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction224___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction224::init (src/parser//parser.nit:9967,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction224].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction224].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction225___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction225::action (src/parser//parser.nit:9971,2--9992:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9978,6--32\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode2*/==NIT_NULL) || VAL_ISA( variable6 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:9980,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*ptypenode1*/ == NIT_NULL /*null*/) || (( variable5 /*ptypenode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*ptypenode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*ptypenode1*/, NIT_NULL /*null*/) /*PType::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable5 /*ptypenode1*/) /*Array::add*/; - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode2*/ == NIT_NULL /*null*/) || (( variable6 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable6 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1923 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[3]); + } + /* ./parser//parser.nit:1925 */ + fra.me.REG[8] = NEW_AModule_parser_prod___AModule___init_amodule(NIT_NULL, fra.me.REG[7], fra.me.REG[8]); + /* ./parser//parser.nit:1930 */ + fra.me.REG[2] = fra.me.REG[8]; + /* ./parser//parser.nit:1931 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction30____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1931); + } + REGB0 = ATTR_parser___ReduceAction30____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction30___init(val_t p0, val_t p1, int* init_table){ + int itpos34 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction30].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos34]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1934; + fra.me.meth = LOCATE_parser___ReduceAction30___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1934 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction30____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos34] = 1; + return; +} +void parser___ReduceAction31___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1938; + fra.me.meth = LOCATE_parser___ReduceAction31___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1940 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1941 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1942 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1943 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1944 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1945 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1946 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1947 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1949 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AModuledecl, ID_AModuledecl)) /*cast nullable AModuledecl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1949); + } + /* ./parser//parser.nit:1951 */ + REGB0 = TAG_Bool((fra.me.REG[6]!=NIT_NULL) && VAL_ISA(fra.me.REG[6], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1951); + } + /* ./parser//parser.nit:1952 */ + fra.me.REG[6] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[6]); + fra.me.REG[8] = fra.me.REG[6]; + /* ./parser//parser.nit:1954 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1954); + } + /* ./parser//parser.nit:1955 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:1957 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1957); + } + /* ./parser//parser.nit:1958 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:1959 */ + fra.me.REG[6] = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef(fra.me.REG[6]); + /* ./parser//parser.nit:1963 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AClassdef, ID_AClassdef)) /*cast nullable AClassdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1963); + } + /* ./parser//parser.nit:1964 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[9], fra.me.REG[5]); + fra.me.REG[9] = fra.me.REG[5]; + /* ./parser//parser.nit:1965 */ + REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[6]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL); + REGB0 = REGB1; } } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(22)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction225___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction225::init (src/parser//parser.nit:9994,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction225].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction225].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction226___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction226::action (src/parser//parser.nit:9998,2--10007:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable2 /*nodearraylist3*/; - variable6 = TAG_Bool(( variable5 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10005,6--32\n"); nit_exit(1);} - variable1 = variable5 /*ptypenode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(23)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction226___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction226::init (src/parser//parser.nit:10009,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction226].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction226].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction227___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction227::action (src/parser//parser.nit:10013,2--10022:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable2 /*nodearraylist3*/; - variable6 = TAG_Bool(( variable5 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10020,6--32\n"); nit_exit(1);} - variable1 = variable5 /*ptypenode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(24)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction227___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction227::init (src/parser//parser.nit:10024,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction227].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction227].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction228___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction228::action (src/parser//parser.nit:10028,2--10035:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10033,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction228___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction228::init (src/parser//parser.nit:10037,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction228].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction228].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction229___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction229::action (src/parser//parser.nit:10041,2--10058:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10050,6--32\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode2*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable8)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable7 /*pexprnode2*/) /*Array::add*/; - } - variable9 = NEW_parser_prod___ABlockExpr___init_ablockexpr( variable6 /*listnode3*/); /*new ABlockExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction229___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction229::init (src/parser//parser.nit:10060,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction229].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction229].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction230___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction230::action (src/parser//parser.nit:10064,2--10091:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10074,6--32\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10076,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode2*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode4*/, variable8 /*pexprnode2*/) /*Array::add*/; - } - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable7 = variable9 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1966 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[9])(fra.me.REG[9], fra.me.REG[6]); + } + /* ./parser//parser.nit:1968 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable11 = NEW_parser_prod___ABlockExpr___init_ablockexpr( variable7 /*listnode4*/); /*new ABlockExpr*/ - variable10 = variable11; - variable1 = variable10 /*pexprnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction230___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction230::init (src/parser//parser.nit:10093,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction230].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction230].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction231___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction231::action (src/parser//parser.nit:10097,2--10103:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable1 = NIT_NULL /*null*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction231___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction231::init (src/parser//parser.nit:10105,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction231].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction231].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction232___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction232::action (src/parser//parser.nit:10109,2--10114:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable1 = NIT_NULL /*null*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction232___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction232::init (src/parser//parser.nit:10116,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction232].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction232].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction233___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction233::action (src/parser//parser.nit:10120,2--10128:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable2 /*nodearraylist2*/; - variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10126,6--32\n"); nit_exit(1);} - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(26)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction233___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction233::init (src/parser//parser.nit:10130,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction233].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction233].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction234___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction234::action (src/parser//parser.nit:10134,2--10141:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10139,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction234___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction234::init (src/parser//parser.nit:10143,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction234].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction234].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction235___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction235::action (src/parser//parser.nit:10147,2--10154:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10152,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction235___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction235::init (src/parser//parser.nit:10156,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction235].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction235].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction236___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction236::action (src/parser//parser.nit:10160,2--10171:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwreturnnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwreturnnode2*/, COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10165,6--40\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AReturnExpr___init_areturnexpr( variable3 /*tkwreturnnode2*/, NIT_NULL /*null*/); /*new AReturnExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction236___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction236::init (src/parser//parser.nit:10173,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction236].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction236].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction237___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction237::action (src/parser//parser.nit:10177,2--10191:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwreturnnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwreturnnode2*/, COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10183,6--40\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10185,6--32\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AReturnExpr___init_areturnexpr( variable4 /*tkwreturnnode2*/, variable5 /*pexprnode3*/); /*new AReturnExpr*/ - variable6 = variable7; - variable1 = variable6 /*pexprnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction237___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction237::init (src/parser//parser.nit:10193,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction237].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction237].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction238___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction238::action (src/parser//parser.nit:10197,2--10207:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwbreaknode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwbreaknode2*/, COLOR_TKwbreak, ID_TKwbreak)) /*cast TKwbreak*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10202,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ABreakExpr___init_abreakexpr( variable3 /*tkwbreaknode2*/); /*new ABreakExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction238___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction238::init (src/parser//parser.nit:10209,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction238].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction238].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction239___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction239::action (src/parser//parser.nit:10213,2--10223:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwabortnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwabortnode2*/, COLOR_TKwabort, ID_TKwabort)) /*cast TKwabort*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10218,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AAbortExpr___init_aabortexpr( variable3 /*tkwabortnode2*/); /*new AAbortExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction239___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction239::init (src/parser//parser.nit:10225,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction239].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction239].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction240___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction240::action (src/parser//parser.nit:10229,2--10239:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwcontinuenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwcontinuenode2*/, COLOR_TKwcontinue, ID_TKwcontinue)) /*cast TKwcontinue*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10234,6--44\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AContinueExpr___init_acontinueexpr( variable3 /*tkwcontinuenode2*/); /*new AContinueExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction240___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction240::init (src/parser//parser.nit:10241,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction240].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction240].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction241___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction241::action (src/parser//parser.nit:10245,2--10252:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10250,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction241___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction241::init (src/parser//parser.nit:10254,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction241].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction241].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction242___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction242::action (src/parser//parser.nit:10258,2--10265:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10263,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction242___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction242::init (src/parser//parser.nit:10267,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction242].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction242].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction243___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction243::action (src/parser//parser.nit:10271,2--10278:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10276,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction243___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction243::init (src/parser//parser.nit:10280,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction243].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction243].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction244___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction244::action (src/parser//parser.nit:10284,2--10291:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10289,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction244___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction244::init (src/parser//parser.nit:10293,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction244].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction244].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction245___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction245::action (src/parser//parser.nit:10297,2--10304:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10302,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction245___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction245::init (src/parser//parser.nit:10306,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction245].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction245].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction246___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction246::action (src/parser//parser.nit:10310,2--10338:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10320,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10322,6--28\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10324,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:1969 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[9])(fra.me.REG[9], fra.me.REG[3]); + } + /* ./parser//parser.nit:1971 */ + fra.me.REG[9] = NEW_AModule_parser_prod___AModule___init_amodule(fra.me.REG[7], fra.me.REG[8], fra.me.REG[9]); + /* ./parser//parser.nit:1976 */ + fra.me.REG[2] = fra.me.REG[9]; + /* ./parser//parser.nit:1977 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction31____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 1977); + } + REGB0 = ATTR_parser___ReduceAction31____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction31___init(val_t p0, val_t p1, int* init_table){ + int itpos35 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction31].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos35]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1980; + fra.me.meth = LOCATE_parser___ReduceAction31___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:1980 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction31____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos35] = 1; + return; +} +void parser___ReduceAction32___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 1984; + fra.me.meth = LOCATE_parser___ReduceAction32___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:1986 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:1987 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1988 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1989 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1990 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1991 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:1993 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1993); + } + /* ./parser//parser.nit:1995 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwmodule, ID_TKwmodule)) /*cast nullable TKwmodule*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1995); + } + /* ./parser//parser.nit:1997 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 1997); + } + /* ./parser//parser.nit:1998 */ + fra.me.REG[3] = NEW_AModuledecl_parser_prod___AModuledecl___init_amoduledecl(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:2003 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2004 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction32____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2004); + } + REGB0 = ATTR_parser___ReduceAction32____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction32___init(val_t p0, val_t p1, int* init_table){ + int itpos36 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction32].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos36]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2007; + fra.me.meth = LOCATE_parser___ReduceAction32___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2007 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction32____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos36] = 1; + return; +} +void parser___ReduceAction33___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2011; + fra.me.meth = LOCATE_parser___ReduceAction33___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2013 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2014 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2015 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2016 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2017 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2018 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2019 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2021 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2021); + } + /* ./parser//parser.nit:2023 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwimport, ID_TKwimport)) /*cast nullable TKwimport*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2023); + } + /* ./parser//parser.nit:2025 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2025); + } + /* ./parser//parser.nit:2026 */ + fra.me.REG[3] = NEW_AStdImport_parser_prod___AStdImport___init_astdimport(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:2031 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2032 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction33____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2032); + } + REGB0 = ATTR_parser___ReduceAction33____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction33___init(val_t p0, val_t p1, int* init_table){ + int itpos37 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction33].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos37]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2035; + fra.me.meth = LOCATE_parser___ReduceAction33___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2035 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction33____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos37] = 1; + return; +} +void parser___ReduceAction34___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2039; + fra.me.meth = LOCATE_parser___ReduceAction34___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2041 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2042 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2043 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2044 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2045 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2046 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2047 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2049 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2049); + } + /* ./parser//parser.nit:2051 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwimport, ID_TKwimport)) /*cast nullable TKwimport*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2051); + } + /* ./parser//parser.nit:2053 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwend, ID_TKwend)) /*cast nullable TKwend*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2053); + } + /* ./parser//parser.nit:2054 */ + fra.me.REG[3] = NEW_ANoImport_parser_prod___ANoImport___init_anoimport(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:2059 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2060 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction34____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2060); + } + REGB0 = ATTR_parser___ReduceAction34____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction34___init(val_t p0, val_t p1, int* init_table){ + int itpos38 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction34].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos38]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2063; + fra.me.meth = LOCATE_parser___ReduceAction34___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2063 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction34____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos38] = 1; + return; +} +void parser___ReduceAction35___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2067; + fra.me.meth = LOCATE_parser___ReduceAction35___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2069 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2070 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2071 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2073 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_APropdef, ID_APropdef)) /*cast nullable APropdef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2073); + } + /* ./parser//parser.nit:2074 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable12 = NEW_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction246___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction246::init (src/parser//parser.nit:10340,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction246].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction246].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction247___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction247::action (src/parser//parser.nit:10344,2--10369:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10353,6--28\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10355,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:2075 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:2077 */ + fra.me.REG[4] = NEW_AMainClassdef_parser_prod___AMainClassdef___init_amainclassdef(fra.me.REG[4]); + /* ./parser//parser.nit:2080 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:2081 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction35____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2081); + } + REGB0 = ATTR_parser___ReduceAction35____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction35___init(val_t p0, val_t p1, int* init_table){ + int itpos39 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction35].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos39]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2084; + fra.me.meth = LOCATE_parser___ReduceAction35___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2084 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction35____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos39] = 1; + return; +} +void parser___ReduceAction36___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2088; + fra.me.meth = LOCATE_parser___ReduceAction36___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2090 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2091 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2092 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2093 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction36____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2093); + } + REGB0 = ATTR_parser___ReduceAction36____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction36___init(val_t p0, val_t p1, int* init_table){ + int itpos40 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction36].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos40]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2096; + fra.me.meth = LOCATE_parser___ReduceAction36___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2096 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction36____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos40] = 1; + return; +} +void parser___ReduceAction37___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2100; + fra.me.meth = LOCATE_parser___ReduceAction37___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2102 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2103 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2104 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2106 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2106); + } + /* ./parser//parser.nit:2107 */ + fra.me.REG[3] = NEW_AMainMethPropdef_parser_prod___AMainMethPropdef___init_amainmethpropdef(NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:2111 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2112 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction37____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2112); + } + REGB0 = ATTR_parser___ReduceAction37____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction37___init(val_t p0, val_t p1, int* init_table){ + int itpos41 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction37].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos41]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2115; + fra.me.meth = LOCATE_parser___ReduceAction37___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2115 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction37____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos41] = 1; + return; +} +void parser___ReduceAction39___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2119; + fra.me.meth = LOCATE_parser___ReduceAction39___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2121 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2122 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2123 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2124 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2125 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2126 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2127 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2128 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2129 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2130 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2131 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2133 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2133); + } + /* ./parser//parser.nit:2135 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2135); + } + /* ./parser//parser.nit:2137 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2137); + } + /* ./parser//parser.nit:2139 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2139); + } + /* ./parser//parser.nit:2140 */ + fra.me.REG[9] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[6], NIT_NULL, fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], fra.me.REG[7], fra.me.REG[8], fra.me.REG[9]); + /* ./parser//parser.nit:2150 */ + fra.me.REG[2] = fra.me.REG[9]; + /* ./parser//parser.nit:2151 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction39____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2151); + } + REGB0 = ATTR_parser___ReduceAction39____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction39___init(val_t p0, val_t p1, int* init_table){ + int itpos42 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction39].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos42]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2154; + fra.me.meth = LOCATE_parser___ReduceAction39___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2154 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction39____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos42] = 1; + return; +} +void parser___ReduceAction40___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2158; + fra.me.meth = LOCATE_parser___ReduceAction40___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2160 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2161 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2162 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2163 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2164 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2165 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2166 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2167 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2168 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2169 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2170 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2171 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2173 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2173); + } + /* ./parser//parser.nit:2175 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2175); + } + /* ./parser//parser.nit:2177 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2177); + } + /* ./parser//parser.nit:2179 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2179); + } + /* ./parser//parser.nit:2181 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2181); + } + /* ./parser//parser.nit:2182 */ + fra.me.REG[10] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], fra.me.REG[8], fra.me.REG[9], fra.me.REG[10]); + /* ./parser//parser.nit:2192 */ + fra.me.REG[2] = fra.me.REG[10]; + /* ./parser//parser.nit:2193 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction40____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2193); + } + REGB0 = ATTR_parser___ReduceAction40____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction40___init(val_t p0, val_t p1, int* init_table){ + int itpos43 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction40].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos43]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2196; + fra.me.meth = LOCATE_parser___ReduceAction40___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2196 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction40____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos43] = 1; + return; +} +void parser___ReduceAction41___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2200; + fra.me.meth = LOCATE_parser___ReduceAction41___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2202 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2203 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2204 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2205 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2206 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2207 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2208 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2209 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2210 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2211 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2212 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2213 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2215 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2215); + } + /* ./parser//parser.nit:2217 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2217); + } + /* ./parser//parser.nit:2219 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2219); + } + /* ./parser//parser.nit:2221 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2221); + } + /* ./parser//parser.nit:2223 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2223); + } + /* ./parser//parser.nit:2224 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[3]); + fra.me.REG[8] = fra.me.REG[3]; + /* ./parser//parser.nit:2225 */ + fra.me.REG[10] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[8], fra.me.REG[9], fra.me.REG[10]); + /* ./parser//parser.nit:2235 */ + fra.me.REG[2] = fra.me.REG[10]; + /* ./parser//parser.nit:2236 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction41____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2236); + } + REGB0 = ATTR_parser___ReduceAction41____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction41___init(val_t p0, val_t p1, int* init_table){ + int itpos44 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction41].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos44]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2239; + fra.me.meth = LOCATE_parser___ReduceAction41___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2239 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction41____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos44] = 1; + return; +} +void parser___ReduceAction42___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[11];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2243; + fra.me.meth = LOCATE_parser___ReduceAction42___action; + fra.me.has_broke = 0; + fra.me.REG_size = 12; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2245 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2246 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2247 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2248 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2249 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2250 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2251 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2252 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2253 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2254 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2255 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2256 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2257 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2259 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2259); + } + /* ./parser//parser.nit:2261 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2261); + } + /* ./parser//parser.nit:2263 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2263); + } + /* ./parser//parser.nit:2265 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2265); + } + /* ./parser//parser.nit:2267 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2267); + } + /* ./parser//parser.nit:2269 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2269); + } + /* ./parser//parser.nit:2270 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[9], fra.me.REG[3]); + fra.me.REG[9] = fra.me.REG[3]; + /* ./parser//parser.nit:2271 */ + fra.me.REG[11] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[9], fra.me.REG[10], fra.me.REG[11]); + /* ./parser//parser.nit:2281 */ + fra.me.REG[2] = fra.me.REG[11]; + /* ./parser//parser.nit:2282 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction42____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2282); + } + REGB0 = ATTR_parser___ReduceAction42____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction42___init(val_t p0, val_t p1, int* init_table){ + int itpos45 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction42].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos45]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2285; + fra.me.meth = LOCATE_parser___ReduceAction42___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2285 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction42____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos45] = 1; + return; +} +void parser___ReduceAction43___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2289; + fra.me.meth = LOCATE_parser___ReduceAction43___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2291 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2292 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2293 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2294 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2295 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2296 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2297 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2298 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2299 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2300 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2301 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2302 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2304 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2304); + } + /* ./parser//parser.nit:2306 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2306); + } + /* ./parser//parser.nit:2308 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2308); + } + /* ./parser//parser.nit:2310 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2310); + } + /* ./parser//parser.nit:2312 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2312); + } + /* ./parser//parser.nit:2313 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[9], fra.me.REG[3]); + fra.me.REG[9] = fra.me.REG[3]; + /* ./parser//parser.nit:2314 */ + fra.me.REG[10] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[8], fra.me.REG[9], fra.me.REG[10]); + /* ./parser//parser.nit:2324 */ + fra.me.REG[2] = fra.me.REG[10]; + /* ./parser//parser.nit:2325 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction43____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2325); + } + REGB0 = ATTR_parser___ReduceAction43____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction43___init(val_t p0, val_t p1, int* init_table){ + int itpos46 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction43].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos46]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2328; + fra.me.meth = LOCATE_parser___ReduceAction43___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2328 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction43____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos46] = 1; + return; +} +void parser___ReduceAction44___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[11];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2332; + fra.me.meth = LOCATE_parser___ReduceAction44___action; + fra.me.has_broke = 0; + fra.me.REG_size = 12; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2334 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2335 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2336 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2337 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2338 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2339 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2340 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2341 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2342 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2343 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2344 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2345 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2346 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2348 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2348); + } + /* ./parser//parser.nit:2350 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2350); + } + /* ./parser//parser.nit:2352 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2352); + } + /* ./parser//parser.nit:2354 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2354); + } + /* ./parser//parser.nit:2356 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2356); + } + /* ./parser//parser.nit:2358 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2358); + } + /* ./parser//parser.nit:2359 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[10], fra.me.REG[3]); + fra.me.REG[10] = fra.me.REG[3]; + /* ./parser//parser.nit:2360 */ + fra.me.REG[11] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[9], fra.me.REG[10], fra.me.REG[11]); + /* ./parser//parser.nit:2370 */ + fra.me.REG[2] = fra.me.REG[11]; + /* ./parser//parser.nit:2371 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction44____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2371); + } + REGB0 = ATTR_parser___ReduceAction44____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction44___init(val_t p0, val_t p1, int* init_table){ + int itpos47 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction44].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos47]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2374; + fra.me.meth = LOCATE_parser___ReduceAction44___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2374 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction44____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos47] = 1; + return; +} +void parser___ReduceAction45___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[11];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2378; + fra.me.meth = LOCATE_parser___ReduceAction45___action; + fra.me.has_broke = 0; + fra.me.REG_size = 12; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2380 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2381 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2382 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2383 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2384 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2385 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2386 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2387 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2388 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2389 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2390 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2391 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2392 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2394 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2394); + } + /* ./parser//parser.nit:2396 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2396); + } + /* ./parser//parser.nit:2398 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2398); + } + /* ./parser//parser.nit:2400 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2400); + } + /* ./parser//parser.nit:2402 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2402); + } + /* ./parser//parser.nit:2403 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[9], fra.me.REG[4]); + fra.me.REG[9] = fra.me.REG[4]; + /* ./parser//parser.nit:2405 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2405); + } + /* ./parser//parser.nit:2406 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[10], fra.me.REG[3]); + fra.me.REG[10] = fra.me.REG[3]; + /* ./parser//parser.nit:2407 */ + fra.me.REG[11] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[9], fra.me.REG[10], fra.me.REG[11]); + /* ./parser//parser.nit:2417 */ + fra.me.REG[2] = fra.me.REG[11]; + /* ./parser//parser.nit:2418 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction45____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2418); + } + REGB0 = ATTR_parser___ReduceAction45____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction45___init(val_t p0, val_t p1, int* init_table){ + int itpos48 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction45].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos48]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2421; + fra.me.meth = LOCATE_parser___ReduceAction45___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2421 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction45____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos48] = 1; + return; +} +void parser___ReduceAction46___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[12];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2425; + fra.me.meth = LOCATE_parser___ReduceAction46___action; + fra.me.has_broke = 0; + fra.me.REG_size = 13; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[12] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2427 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2428 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2429 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2430 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2431 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2432 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2433 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2434 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2435 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2436 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2437 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2438 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2439 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2440 */ + fra.me.REG[12] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2442 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2442); + } + /* ./parser//parser.nit:2444 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2444); + } + /* ./parser//parser.nit:2446 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2446); + } + /* ./parser//parser.nit:2448 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2448); + } + /* ./parser//parser.nit:2450 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2450); + } + /* ./parser//parser.nit:2452 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2452); + } + /* ./parser//parser.nit:2453 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[10], fra.me.REG[4]); + fra.me.REG[10] = fra.me.REG[4]; + /* ./parser//parser.nit:2455 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2455); + } + /* ./parser//parser.nit:2456 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[11], fra.me.REG[3]); + fra.me.REG[11] = fra.me.REG[3]; + /* ./parser//parser.nit:2457 */ + fra.me.REG[12] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[10], fra.me.REG[11], fra.me.REG[12]); + /* ./parser//parser.nit:2467 */ + fra.me.REG[2] = fra.me.REG[12]; + /* ./parser//parser.nit:2468 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction46____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2468); + } + REGB0 = ATTR_parser___ReduceAction46____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction46___init(val_t p0, val_t p1, int* init_table){ + int itpos49 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction46].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos49]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2471; + fra.me.meth = LOCATE_parser___ReduceAction46___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2471 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction46____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos49] = 1; + return; +} +void parser___ReduceAction47___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2475; + fra.me.meth = LOCATE_parser___ReduceAction47___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2477 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2478 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2479 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2480 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2481 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2482 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2483 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2484 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2485 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2486 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2487 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2488 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2490 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2490); + } + /* ./parser//parser.nit:2492 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2492); + } + /* ./parser//parser.nit:2494 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2494); + } + /* ./parser//parser.nit:2496 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2496); + } + /* ./parser//parser.nit:2498 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2498); + } + /* ./parser//parser.nit:2499 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[10], fra.me.REG[3]); + fra.me.REG[10] = fra.me.REG[3]; + /* ./parser//parser.nit:2500 */ + fra.me.REG[10] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[8], fra.me.REG[9], fra.me.REG[10]); + /* ./parser//parser.nit:2510 */ + fra.me.REG[2] = fra.me.REG[10]; + /* ./parser//parser.nit:2511 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction47____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2511); + } + REGB0 = ATTR_parser___ReduceAction47____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction47___init(val_t p0, val_t p1, int* init_table){ + int itpos50 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction47].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos50]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2514; + fra.me.meth = LOCATE_parser___ReduceAction47___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2514 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction47____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos50] = 1; + return; +} +void parser___ReduceAction48___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[11];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2518; + fra.me.meth = LOCATE_parser___ReduceAction48___action; + fra.me.has_broke = 0; + fra.me.REG_size = 12; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2520 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2521 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2522 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2523 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2524 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2525 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2526 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2527 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2528 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2529 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2530 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2531 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2532 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2534 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2534); + } + /* ./parser//parser.nit:2536 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2536); + } + /* ./parser//parser.nit:2538 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2538); + } + /* ./parser//parser.nit:2540 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2540); + } + /* ./parser//parser.nit:2542 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2542); + } + /* ./parser//parser.nit:2544 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2544); + } + /* ./parser//parser.nit:2545 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[11], fra.me.REG[3]); + fra.me.REG[11] = fra.me.REG[3]; + /* ./parser//parser.nit:2546 */ + fra.me.REG[11] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[9], fra.me.REG[10], fra.me.REG[11]); + /* ./parser//parser.nit:2556 */ + fra.me.REG[2] = fra.me.REG[11]; + /* ./parser//parser.nit:2557 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction48____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2557); + } + REGB0 = ATTR_parser___ReduceAction48____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction48___init(val_t p0, val_t p1, int* init_table){ + int itpos51 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction48].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos51]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2560; + fra.me.meth = LOCATE_parser___ReduceAction48___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2560 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction48____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos51] = 1; + return; +} +void parser___ReduceAction49___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[11];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2564; + fra.me.meth = LOCATE_parser___ReduceAction49___action; + fra.me.has_broke = 0; + fra.me.REG_size = 12; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2566 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2567 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2568 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2569 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2570 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2571 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2572 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2573 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2574 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2575 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2576 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2577 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2578 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2580 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2580); + } + /* ./parser//parser.nit:2582 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2582); + } + /* ./parser//parser.nit:2584 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2584); + } + /* ./parser//parser.nit:2586 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2586); + } + /* ./parser//parser.nit:2588 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2588); + } + /* ./parser//parser.nit:2589 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[9], fra.me.REG[4]); + fra.me.REG[9] = fra.me.REG[4]; + /* ./parser//parser.nit:2591 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2591); + } + /* ./parser//parser.nit:2592 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[11], fra.me.REG[3]); + fra.me.REG[11] = fra.me.REG[3]; + /* ./parser//parser.nit:2593 */ + fra.me.REG[11] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[9], fra.me.REG[10], fra.me.REG[11]); + /* ./parser//parser.nit:2603 */ + fra.me.REG[2] = fra.me.REG[11]; + /* ./parser//parser.nit:2604 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction49____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2604); + } + REGB0 = ATTR_parser___ReduceAction49____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction49___init(val_t p0, val_t p1, int* init_table){ + int itpos52 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction49].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos52]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2607; + fra.me.meth = LOCATE_parser___ReduceAction49___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2607 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction49____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos52] = 1; + return; +} +void parser___ReduceAction50___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[12];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2611; + fra.me.meth = LOCATE_parser___ReduceAction50___action; + fra.me.has_broke = 0; + fra.me.REG_size = 13; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[12] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2613 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2614 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2615 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2616 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2617 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2618 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2619 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2620 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2621 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2622 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2623 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2624 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2625 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2626 */ + fra.me.REG[12] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2628 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2628); + } + /* ./parser//parser.nit:2630 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2630); + } + /* ./parser//parser.nit:2632 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2632); + } + /* ./parser//parser.nit:2634 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2634); + } + /* ./parser//parser.nit:2636 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2636); + } + /* ./parser//parser.nit:2638 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2638); + } + /* ./parser//parser.nit:2639 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[10], fra.me.REG[4]); + fra.me.REG[10] = fra.me.REG[4]; + /* ./parser//parser.nit:2641 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2641); + } + /* ./parser//parser.nit:2642 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[12], fra.me.REG[3]); + fra.me.REG[12] = fra.me.REG[3]; + /* ./parser//parser.nit:2643 */ + fra.me.REG[12] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[10], fra.me.REG[11], fra.me.REG[12]); + /* ./parser//parser.nit:2653 */ + fra.me.REG[2] = fra.me.REG[12]; + /* ./parser//parser.nit:2654 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction50____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2654); + } + REGB0 = ATTR_parser___ReduceAction50____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction50___init(val_t p0, val_t p1, int* init_table){ + int itpos53 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction50].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos53]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2657; + fra.me.meth = LOCATE_parser___ReduceAction50___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2657 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction50____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos53] = 1; + return; +} +void parser___ReduceAction51___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[11];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2661; + fra.me.meth = LOCATE_parser___ReduceAction51___action; + fra.me.has_broke = 0; + fra.me.REG_size = 12; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2663 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2664 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2665 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2666 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2667 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2668 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2669 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2670 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2671 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2672 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2673 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2674 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2675 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2677 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2677); + } + /* ./parser//parser.nit:2679 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2679); + } + /* ./parser//parser.nit:2681 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2681); + } + /* ./parser//parser.nit:2683 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2683); + } + /* ./parser//parser.nit:2685 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2685); + } + /* ./parser//parser.nit:2686 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[10], fra.me.REG[4]); + fra.me.REG[10] = fra.me.REG[4]; + /* ./parser//parser.nit:2688 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2688); + } + /* ./parser//parser.nit:2689 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[11], fra.me.REG[3]); + fra.me.REG[11] = fra.me.REG[3]; + /* ./parser//parser.nit:2690 */ + fra.me.REG[11] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[9], fra.me.REG[10], fra.me.REG[11]); + /* ./parser//parser.nit:2700 */ + fra.me.REG[2] = fra.me.REG[11]; + /* ./parser//parser.nit:2701 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction51____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2701); + } + REGB0 = ATTR_parser___ReduceAction51____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction51___init(val_t p0, val_t p1, int* init_table){ + int itpos54 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction51].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos54]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2704; + fra.me.meth = LOCATE_parser___ReduceAction51___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2704 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction51____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos54] = 1; + return; +} +void parser___ReduceAction52___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[12];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2708; + fra.me.meth = LOCATE_parser___ReduceAction52___action; + fra.me.has_broke = 0; + fra.me.REG_size = 13; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[12] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2710 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2711 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2712 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2713 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2714 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2715 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2716 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2717 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2718 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2719 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2720 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2721 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2722 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2723 */ + fra.me.REG[12] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2725 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2725); + } + /* ./parser//parser.nit:2727 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2727); + } + /* ./parser//parser.nit:2729 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2729); + } + /* ./parser//parser.nit:2731 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2731); + } + /* ./parser//parser.nit:2733 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2733); + } + /* ./parser//parser.nit:2735 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2735); + } + /* ./parser//parser.nit:2736 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[11], fra.me.REG[4]); + fra.me.REG[11] = fra.me.REG[4]; + /* ./parser//parser.nit:2738 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2738); + } + /* ./parser//parser.nit:2739 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[12], fra.me.REG[3]); + fra.me.REG[12] = fra.me.REG[3]; + /* ./parser//parser.nit:2740 */ + fra.me.REG[12] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[10], fra.me.REG[11], fra.me.REG[12]); + /* ./parser//parser.nit:2750 */ + fra.me.REG[2] = fra.me.REG[12]; + /* ./parser//parser.nit:2751 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction52____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2751); + } + REGB0 = ATTR_parser___ReduceAction52____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction52___init(val_t p0, val_t p1, int* init_table){ + int itpos55 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction52].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos55]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2754; + fra.me.meth = LOCATE_parser___ReduceAction52___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2754 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction52____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos55] = 1; + return; +} +void parser___ReduceAction53___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[12];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2758; + fra.me.meth = LOCATE_parser___ReduceAction53___action; + fra.me.has_broke = 0; + fra.me.REG_size = 13; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[12] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2760 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2761 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2762 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2763 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2764 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2765 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2766 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2767 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2768 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2769 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2770 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2771 */ + fra.me.REG[10] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2772 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2773 */ + fra.me.REG[12] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2775 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2775); + } + /* ./parser//parser.nit:2777 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2777); + } + /* ./parser//parser.nit:2779 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2779); + } + /* ./parser//parser.nit:2781 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2781); + } + /* ./parser//parser.nit:2783 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2783); + } + /* ./parser//parser.nit:2784 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[10], fra.me.REG[5]); + fra.me.REG[10] = fra.me.REG[5]; + /* ./parser//parser.nit:2786 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2786); + } + /* ./parser//parser.nit:2787 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[11], fra.me.REG[4]); + fra.me.REG[11] = fra.me.REG[4]; + /* ./parser//parser.nit:2789 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2789); + } + /* ./parser//parser.nit:2790 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[12], fra.me.REG[3]); + fra.me.REG[12] = fra.me.REG[3]; + /* ./parser//parser.nit:2791 */ + fra.me.REG[12] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[9], NIT_NULL, fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[10], fra.me.REG[11], fra.me.REG[12]); + /* ./parser//parser.nit:2801 */ + fra.me.REG[2] = fra.me.REG[12]; + /* ./parser//parser.nit:2802 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction53____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2802); + } + REGB0 = ATTR_parser___ReduceAction53____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction53___init(val_t p0, val_t p1, int* init_table){ + int itpos56 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction53].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos56]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2805; + fra.me.meth = LOCATE_parser___ReduceAction53___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2805 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction53____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos56] = 1; + return; +} +void parser___ReduceAction54___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[13];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2809; + fra.me.meth = LOCATE_parser___ReduceAction54___action; + fra.me.has_broke = 0; + fra.me.REG_size = 14; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[12] = NIT_NULL; + fra.me.REG[13] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2811 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2812 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2813 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2814 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2815 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2816 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2817 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2818 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2819 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2820 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2821 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2822 */ + fra.me.REG[10] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2823 */ + fra.me.REG[11] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2824 */ + fra.me.REG[12] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2825 */ + fra.me.REG[13] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2827 */ + REGB0 = TAG_Bool((fra.me.REG[10]==NIT_NULL) || VAL_ISA(fra.me.REG[10], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2827); + } + /* ./parser//parser.nit:2829 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2829); + } + /* ./parser//parser.nit:2831 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2831); + } + /* ./parser//parser.nit:2833 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AClasskind, ID_AClasskind)) /*cast nullable AClasskind*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2833); + } + /* ./parser//parser.nit:2835 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2835); + } + /* ./parser//parser.nit:2837 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2837); + } + /* ./parser//parser.nit:2838 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[11], fra.me.REG[5]); + fra.me.REG[11] = fra.me.REG[5]; + /* ./parser//parser.nit:2840 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2840); + } + /* ./parser//parser.nit:2841 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[12], fra.me.REG[4]); + fra.me.REG[12] = fra.me.REG[4]; + /* ./parser//parser.nit:2843 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2843); + } + /* ./parser//parser.nit:2844 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[13], fra.me.REG[3]); + fra.me.REG[13] = fra.me.REG[3]; + /* ./parser//parser.nit:2845 */ + fra.me.REG[13] = NEW_AStdClassdef_parser_prod___AStdClassdef___init_astdclassdef(fra.me.REG[10], fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[11], fra.me.REG[12], fra.me.REG[13]); + /* ./parser//parser.nit:2855 */ + fra.me.REG[2] = fra.me.REG[13]; + /* ./parser//parser.nit:2856 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction54____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2856); + } + REGB0 = ATTR_parser___ReduceAction54____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction54___init(val_t p0, val_t p1, int* init_table){ + int itpos57 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction54].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos57]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2859; + fra.me.meth = LOCATE_parser___ReduceAction54___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2859 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction54____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos57] = 1; + return; +} +void parser___ReduceAction55___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2863; + fra.me.meth = LOCATE_parser___ReduceAction55___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2865 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2866 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2868 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwclass, ID_TKwclass)) /*cast nullable TKwclass*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2868); + } + /* ./parser//parser.nit:2869 */ + fra.me.REG[3] = NEW_AConcreteClasskind_parser_prod___AConcreteClasskind___init_aconcreteclasskind(fra.me.REG[3]); + /* ./parser//parser.nit:2872 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2873 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction55____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2873); + } + REGB0 = ATTR_parser___ReduceAction55____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction55___init(val_t p0, val_t p1, int* init_table){ + int itpos58 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction55].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos58]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2876; + fra.me.meth = LOCATE_parser___ReduceAction55___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2876 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction55____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos58] = 1; + return; +} +void parser___ReduceAction56___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2880; + fra.me.meth = LOCATE_parser___ReduceAction56___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2882 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2883 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2884 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2886 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwabstract, ID_TKwabstract)) /*cast nullable TKwabstract*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2886); + } + /* ./parser//parser.nit:2888 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwclass, ID_TKwclass)) /*cast nullable TKwclass*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2888); + } + /* ./parser//parser.nit:2889 */ + fra.me.REG[3] = NEW_AAbstractClasskind_parser_prod___AAbstractClasskind___init_aabstractclasskind(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:2893 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2894 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction56____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2894); + } + REGB0 = ATTR_parser___ReduceAction56____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction56___init(val_t p0, val_t p1, int* init_table){ + int itpos59 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction56].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos59]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2897; + fra.me.meth = LOCATE_parser___ReduceAction56___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2897 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction56____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos59] = 1; + return; +} +void parser___ReduceAction57___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2901; + fra.me.meth = LOCATE_parser___ReduceAction57___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2903 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2904 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2906 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwinterface, ID_TKwinterface)) /*cast nullable TKwinterface*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2906); + } + /* ./parser//parser.nit:2907 */ + fra.me.REG[3] = NEW_AInterfaceClasskind_parser_prod___AInterfaceClasskind___init_ainterfaceclasskind(fra.me.REG[3]); + /* ./parser//parser.nit:2910 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2911 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction57____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2911); + } + REGB0 = ATTR_parser___ReduceAction57____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction57___init(val_t p0, val_t p1, int* init_table){ + int itpos60 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction57].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos60]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2914; + fra.me.meth = LOCATE_parser___ReduceAction57___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2914 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction57____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos60] = 1; + return; +} +void parser___ReduceAction58___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2918; + fra.me.meth = LOCATE_parser___ReduceAction58___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2920 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2921 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2923 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwenum, ID_TKwenum)) /*cast nullable TKwenum*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2923); + } + /* ./parser//parser.nit:2924 */ + fra.me.REG[3] = NEW_AEnumClasskind_parser_prod___AEnumClasskind___init_aenumclasskind(fra.me.REG[3]); + /* ./parser//parser.nit:2927 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2928 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction58____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2928); + } + REGB0 = ATTR_parser___ReduceAction58____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction58___init(val_t p0, val_t p1, int* init_table){ + int itpos61 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction58].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos61]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2931; + fra.me.meth = LOCATE_parser___ReduceAction58___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2931 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction58____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos61] = 1; + return; +} +void parser___ReduceAction59___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2935; + fra.me.meth = LOCATE_parser___ReduceAction59___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2937 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2938 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2939 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2940 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2941 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2942 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2943 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2945 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable9 = NEW_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction247___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction247::init (src/parser//parser.nit:10371,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction247].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction247].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction248___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction248::action (src/parser//parser.nit:10375,2--10398:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10382,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10384,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:2946 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:2948 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:2949 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction59____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2949); + } + REGB0 = ATTR_parser___ReduceAction59____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction59___init(val_t p0, val_t p1, int* init_table){ + int itpos62 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction59].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos62]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2952; + fra.me.meth = LOCATE_parser___ReduceAction59___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2952 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction59____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos62] = 1; + return; +} +void parser___ReduceAction60___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2956; + fra.me.meth = LOCATE_parser___ReduceAction60___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2958 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2959 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2960 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2961 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2962 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2963 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2964 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2965 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:2968 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 2968); + } + /* ./parser//parser.nit:2969 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable8 = NEW_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction248___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction248::init (src/parser//parser.nit:10400,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction248].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction248].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction249___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction249::action (src/parser//parser.nit:10404,2--10430:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10412,6--42\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10414,6--38\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10416,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:2970 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]); + } + /* ./parser//parser.nit:2972 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:2973 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:2974 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction60____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2974); + } + REGB0 = ATTR_parser___ReduceAction60____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction60___init(val_t p0, val_t p1, int* init_table){ + int itpos63 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction60].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos63]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2977; + fra.me.meth = LOCATE_parser___ReduceAction60___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2977 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction60____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos63] = 1; + return; +} +void parser___ReduceAction61___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2981; + fra.me.meth = LOCATE_parser___ReduceAction61___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2983 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2984 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2985 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2986 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:2988 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:2989 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction61____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 2989); + } + REGB0 = ATTR_parser___ReduceAction61____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction61___init(val_t p0, val_t p1, int* init_table){ + int itpos64 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction61].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos64]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2992; + fra.me.meth = LOCATE_parser___ReduceAction61___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:2992 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction61____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos64] = 1; + return; +} +void parser___ReduceAction62___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 2996; + fra.me.meth = LOCATE_parser___ReduceAction62___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:2998 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:2999 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3001 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3001); + } + /* ./parser//parser.nit:3002 */ + fra.me.REG[3] = NEW_AFormaldef_parser_prod___AFormaldef___init_aformaldef(fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:3006 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3007 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction62____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3007); + } + REGB0 = ATTR_parser___ReduceAction62____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction62___init(val_t p0, val_t p1, int* init_table){ + int itpos65 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction62].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos65]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3010; + fra.me.meth = LOCATE_parser___ReduceAction62___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3010 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction62____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos65] = 1; + return; +} +void parser___ReduceAction63___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3014; + fra.me.meth = LOCATE_parser___ReduceAction63___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3016 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3017 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3018 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3020 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3020); + } + /* ./parser//parser.nit:3022 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3022); + } + /* ./parser//parser.nit:3023 */ + fra.me.REG[3] = NEW_AFormaldef_parser_prod___AFormaldef___init_aformaldef(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3027 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3028 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction63____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3028); + } + REGB0 = ATTR_parser___ReduceAction63____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction63___init(val_t p0, val_t p1, int* init_table){ + int itpos66 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction63].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos66]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3031; + fra.me.meth = LOCATE_parser___ReduceAction63___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3031 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction63____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos66] = 1; + return; +} +void parser___ReduceAction64___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3035; + fra.me.meth = LOCATE_parser___ReduceAction64___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3037 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3038 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3039 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3040 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3041 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3043 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwspecial, ID_TKwspecial)) /*cast nullable TKwspecial*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3043); + } + /* ./parser//parser.nit:3045 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3045); + } + /* ./parser//parser.nit:3046 */ + fra.me.REG[3] = NEW_ASuperclass_parser_prod___ASuperclass___init_asuperclass(fra.me.REG[4], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:3051 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3052 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction64____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3052); + } + REGB0 = ATTR_parser___ReduceAction64____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction64___init(val_t p0, val_t p1, int* init_table){ + int itpos67 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction64].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos67]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3055; + fra.me.meth = LOCATE_parser___ReduceAction64___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3055 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction64____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos67] = 1; + return; +} +void parser___ReduceAction65___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3059; + fra.me.meth = LOCATE_parser___ReduceAction65___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3061 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3062 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3063 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3064 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3065 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3067 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwsuper, ID_TKwsuper)) /*cast nullable TKwsuper*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3067); + } + /* ./parser//parser.nit:3069 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3069); + } + /* ./parser//parser.nit:3070 */ + fra.me.REG[3] = NEW_ASuperclass_parser_prod___ASuperclass___init_asuperclass(NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3075 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3076 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction65____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3076); + } + REGB0 = ATTR_parser___ReduceAction65____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction65___init(val_t p0, val_t p1, int* init_table){ + int itpos68 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction65].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos68]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3079; + fra.me.meth = LOCATE_parser___ReduceAction65___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3079 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction65____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos68] = 1; + return; +} +void parser___ReduceAction66___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3083; + fra.me.meth = LOCATE_parser___ReduceAction66___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3085 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3086 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3087 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3089 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3090 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction66____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3090); + } + REGB0 = ATTR_parser___ReduceAction66____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction66___init(val_t p0, val_t p1, int* init_table){ + int itpos69 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction66].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos69]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3093; + fra.me.meth = LOCATE_parser___ReduceAction66___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3093 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction66____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos69] = 1; + return; +} +void parser___ReduceAction67___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3097; + fra.me.meth = LOCATE_parser___ReduceAction67___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3099 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3100 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3101 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3102 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3103 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3104 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3105 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3106 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3108 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3108); + } + /* ./parser//parser.nit:3110 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3110); + } + /* ./parser//parser.nit:3112 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3112); + } + /* ./parser//parser.nit:3114 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3114); + } + /* ./parser//parser.nit:3116 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3116); + } + /* ./parser//parser.nit:3118 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3118); + } + /* ./parser//parser.nit:3119 */ + fra.me.REG[3] = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3128 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3129 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction67____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3129); + } + REGB0 = ATTR_parser___ReduceAction67____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction67___init(val_t p0, val_t p1, int* init_table){ + int itpos70 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction67].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos70]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3132; + fra.me.meth = LOCATE_parser___ReduceAction67___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3132 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction67____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos70] = 1; + return; +} +void parser___ReduceAction68___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3136; + fra.me.meth = LOCATE_parser___ReduceAction68___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3138 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3139 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3140 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3141 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3142 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3143 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3144 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3145 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3146 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3148 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3148); + } + /* ./parser//parser.nit:3150 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3150); + } + /* ./parser//parser.nit:3152 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3152); + } + /* ./parser//parser.nit:3154 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3154); + } + /* ./parser//parser.nit:3156 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3156); + } + /* ./parser//parser.nit:3158 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3158); + } + /* ./parser//parser.nit:3160 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3160); + } + /* ./parser//parser.nit:3161 */ + fra.me.REG[3] = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3170 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3171 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction68____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3171); + } + REGB0 = ATTR_parser___ReduceAction68____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction68___init(val_t p0, val_t p1, int* init_table){ + int itpos71 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction68].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos71]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3174; + fra.me.meth = LOCATE_parser___ReduceAction68___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3174 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction68____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos71] = 1; + return; +} +void parser___ReduceAction69___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3178; + fra.me.meth = LOCATE_parser___ReduceAction69___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3180 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3181 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3182 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3183 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3184 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3185 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3186 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3187 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3188 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3190 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3190); + } + /* ./parser//parser.nit:3192 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3192); + } + /* ./parser//parser.nit:3194 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3194); + } + /* ./parser//parser.nit:3196 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3196); + } + /* ./parser//parser.nit:3198 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3198); + } + /* ./parser//parser.nit:3200 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3200); + } + /* ./parser//parser.nit:3201 */ + fra.me.REG[3] = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3210 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3211 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction69____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3211); + } + REGB0 = ATTR_parser___ReduceAction69____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction69___init(val_t p0, val_t p1, int* init_table){ + int itpos72 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction69].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos72]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3214; + fra.me.meth = LOCATE_parser___ReduceAction69___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3214 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction69____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos72] = 1; + return; +} +void parser___ReduceAction70___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3218; + fra.me.meth = LOCATE_parser___ReduceAction70___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3220 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3221 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3222 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3223 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3224 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3225 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3226 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3227 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3228 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3229 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3231 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3231); + } + /* ./parser//parser.nit:3233 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3233); + } + /* ./parser//parser.nit:3235 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3235); + } + /* ./parser//parser.nit:3237 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3237); + } + /* ./parser//parser.nit:3239 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3239); + } + /* ./parser//parser.nit:3241 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3241); + } + /* ./parser//parser.nit:3243 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3243); + } + /* ./parser//parser.nit:3244 */ + fra.me.REG[3] = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3253 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3254 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction70____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3254); + } + REGB0 = ATTR_parser___ReduceAction70____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction70___init(val_t p0, val_t p1, int* init_table){ + int itpos73 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction70].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos73]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3257; + fra.me.meth = LOCATE_parser___ReduceAction70___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3257 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction70____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos73] = 1; + return; +} +void parser___ReduceAction71___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3261; + fra.me.meth = LOCATE_parser___ReduceAction71___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3263 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3264 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3265 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3266 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3267 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3268 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3269 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3270 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3271 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3273 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3273); + } + /* ./parser//parser.nit:3275 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3275); + } + /* ./parser//parser.nit:3277 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3277); + } + /* ./parser//parser.nit:3279 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3279); + } + /* ./parser//parser.nit:3281 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3281); + } + /* ./parser//parser.nit:3283 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3283); + } + /* ./parser//parser.nit:3284 */ + fra.me.REG[3] = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3293 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3294 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction71____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3294); + } + REGB0 = ATTR_parser___ReduceAction71____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction71___init(val_t p0, val_t p1, int* init_table){ + int itpos74 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction71].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos74]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3297; + fra.me.meth = LOCATE_parser___ReduceAction71___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3297 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction71____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos74] = 1; + return; +} +void parser___ReduceAction72___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3301; + fra.me.meth = LOCATE_parser___ReduceAction72___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3303 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3304 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3305 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3306 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3307 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3308 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3309 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3310 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3311 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3312 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3314 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3314); + } + /* ./parser//parser.nit:3316 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3316); + } + /* ./parser//parser.nit:3318 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3318); + } + /* ./parser//parser.nit:3320 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3320); + } + /* ./parser//parser.nit:3322 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3322); + } + /* ./parser//parser.nit:3324 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3324); + } + /* ./parser//parser.nit:3326 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3326); + } + /* ./parser//parser.nit:3327 */ + fra.me.REG[3] = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3336 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3337 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction72____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3337); + } + REGB0 = ATTR_parser___ReduceAction72____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction72___init(val_t p0, val_t p1, int* init_table){ + int itpos75 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction72].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos75]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3340; + fra.me.meth = LOCATE_parser___ReduceAction72___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3340 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction72____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos75] = 1; + return; +} +void parser___ReduceAction73___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3344; + fra.me.meth = LOCATE_parser___ReduceAction73___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3346 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3347 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3348 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3349 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3350 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3351 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3352 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3353 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3355 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3355); + } + /* ./parser//parser.nit:3357 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3357); + } + /* ./parser//parser.nit:3359 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3359); + } + /* ./parser//parser.nit:3361 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3361); + } + /* ./parser//parser.nit:3363 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3363); + } + /* ./parser//parser.nit:3364 */ + fra.me.REG[3] = NEW_ADeferredMethPropdef_parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3372 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3373 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction73____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3373); + } + REGB0 = ATTR_parser___ReduceAction73____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction73___init(val_t p0, val_t p1, int* init_table){ + int itpos76 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction73].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos76]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3376; + fra.me.meth = LOCATE_parser___ReduceAction73___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3376 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction73____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos76] = 1; + return; +} +void parser___ReduceAction74___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3380; + fra.me.meth = LOCATE_parser___ReduceAction74___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3382 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3383 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3384 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3385 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3386 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3387 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3388 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3389 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3390 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3392 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3392); + } + /* ./parser//parser.nit:3394 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3394); + } + /* ./parser//parser.nit:3396 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3396); + } + /* ./parser//parser.nit:3398 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3398); + } + /* ./parser//parser.nit:3400 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3400); + } + /* ./parser//parser.nit:3402 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3402); + } + /* ./parser//parser.nit:3403 */ + fra.me.REG[3] = NEW_ADeferredMethPropdef_parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3411 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3412 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction74____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3412); + } + REGB0 = ATTR_parser___ReduceAction74____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction74___init(val_t p0, val_t p1, int* init_table){ + int itpos77 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction74].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos77]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3415; + fra.me.meth = LOCATE_parser___ReduceAction74___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3415 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction74____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos77] = 1; + return; +} +void parser___ReduceAction75___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3419; + fra.me.meth = LOCATE_parser___ReduceAction75___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3421 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3422 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3423 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3424 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3425 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3426 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3427 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3428 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3430 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3430); + } + /* ./parser//parser.nit:3432 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3432); + } + /* ./parser//parser.nit:3434 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3434); + } + /* ./parser//parser.nit:3436 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3436); + } + /* ./parser//parser.nit:3438 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3438); + } + /* ./parser//parser.nit:3439 */ + fra.me.REG[3] = NEW_AInternMethPropdef_parser_prod___AInternMethPropdef___init_ainternmethpropdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3447 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3448 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction75____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3448); + } + REGB0 = ATTR_parser___ReduceAction75____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction75___init(val_t p0, val_t p1, int* init_table){ + int itpos78 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction75].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos78]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3451; + fra.me.meth = LOCATE_parser___ReduceAction75___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3451 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction75____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos78] = 1; + return; +} +void parser___ReduceAction76___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3455; + fra.me.meth = LOCATE_parser___ReduceAction76___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3457 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3458 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3459 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3460 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3461 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3462 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3463 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3464 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3465 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3467 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3467); + } + /* ./parser//parser.nit:3469 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3469); + } + /* ./parser//parser.nit:3471 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3471); + } + /* ./parser//parser.nit:3473 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3473); + } + /* ./parser//parser.nit:3475 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3475); + } + /* ./parser//parser.nit:3477 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3477); + } + /* ./parser//parser.nit:3478 */ + fra.me.REG[3] = NEW_AInternMethPropdef_parser_prod___AInternMethPropdef___init_ainternmethpropdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3486 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3487 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction76____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3487); + } + REGB0 = ATTR_parser___ReduceAction76____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction76___init(val_t p0, val_t p1, int* init_table){ + int itpos79 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction76].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos79]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3490; + fra.me.meth = LOCATE_parser___ReduceAction76___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3490 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction76____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos79] = 1; + return; +} +void parser___ReduceAction77___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3494; + fra.me.meth = LOCATE_parser___ReduceAction77___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3496 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3497 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3498 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3499 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3500 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3501 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3502 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3503 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3505 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3505); + } + /* ./parser//parser.nit:3507 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3507); + } + /* ./parser//parser.nit:3509 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3509); + } + /* ./parser//parser.nit:3511 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3511); + } + /* ./parser//parser.nit:3513 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3513); + } + /* ./parser//parser.nit:3514 */ + fra.me.REG[3] = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:3523 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3524 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction77____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3524); + } + REGB0 = ATTR_parser___ReduceAction77____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction77___init(val_t p0, val_t p1, int* init_table){ + int itpos80 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction77].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos80]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3527; + fra.me.meth = LOCATE_parser___ReduceAction77___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3527 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction77____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos80] = 1; + return; +} +void parser___ReduceAction78___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3531; + fra.me.meth = LOCATE_parser___ReduceAction78___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3533 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3534 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3535 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3536 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3537 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3538 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3539 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3540 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3541 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3543 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3543); + } + /* ./parser//parser.nit:3545 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3545); + } + /* ./parser//parser.nit:3547 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3547); + } + /* ./parser//parser.nit:3549 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3549); + } + /* ./parser//parser.nit:3551 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3551); + } + /* ./parser//parser.nit:3553 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3553); + } + /* ./parser//parser.nit:3554 */ + fra.me.REG[3] = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:3563 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3564 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction78____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3564); + } + REGB0 = ATTR_parser___ReduceAction78____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction78___init(val_t p0, val_t p1, int* init_table){ + int itpos81 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction78].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos81]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3567; + fra.me.meth = LOCATE_parser___ReduceAction78___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3567 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction78____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos81] = 1; + return; +} +void parser___ReduceAction79___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3571; + fra.me.meth = LOCATE_parser___ReduceAction79___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3573 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3574 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3575 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3576 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3577 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3578 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3579 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3580 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3581 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3583 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3583); + } + /* ./parser//parser.nit:3585 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3585); + } + /* ./parser//parser.nit:3587 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3587); + } + /* ./parser//parser.nit:3589 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3589); + } + /* ./parser//parser.nit:3591 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3591); + } + /* ./parser//parser.nit:3593 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TString, ID_TString)) /*cast nullable TString*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3593); + } + /* ./parser//parser.nit:3594 */ + fra.me.REG[3] = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3603 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3604 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction79____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3604); + } + REGB0 = ATTR_parser___ReduceAction79____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction79___init(val_t p0, val_t p1, int* init_table){ + int itpos82 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction79].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos82]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3607; + fra.me.meth = LOCATE_parser___ReduceAction79___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3607 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction79____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos82] = 1; + return; +} +void parser___ReduceAction80___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3611; + fra.me.meth = LOCATE_parser___ReduceAction80___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3613 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3614 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3615 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3616 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3617 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3618 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3619 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3620 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3621 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3622 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3624 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3624); + } + /* ./parser//parser.nit:3626 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3626); + } + /* ./parser//parser.nit:3628 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3628); + } + /* ./parser//parser.nit:3630 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwmeth, ID_TKwmeth)) /*cast nullable TKwmeth*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3630); + } + /* ./parser//parser.nit:3632 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3632); + } + /* ./parser//parser.nit:3634 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3634); + } + /* ./parser//parser.nit:3636 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TString, ID_TString)) /*cast nullable TString*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3636); + } + /* ./parser//parser.nit:3637 */ + fra.me.REG[3] = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:3646 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3647 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction80____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3647); + } + REGB0 = ATTR_parser___ReduceAction80____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction80___init(val_t p0, val_t p1, int* init_table){ + int itpos83 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction80].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos83]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3650; + fra.me.meth = LOCATE_parser___ReduceAction80___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3650 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction80____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos83] = 1; + return; +} +void parser___ReduceAction81___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3654; + fra.me.meth = LOCATE_parser___ReduceAction81___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3656 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3657 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3658 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3659 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3660 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3662 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3662); + } + /* ./parser//parser.nit:3664 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3664); + } + /* ./parser//parser.nit:3666 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3666); + } + /* ./parser//parser.nit:3668 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3668); + } + /* ./parser//parser.nit:3669 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[6], NIT_NULL, NIT_NULL, NIT_NULL, fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:3681 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3682 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction81____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3682); + } + REGB0 = ATTR_parser___ReduceAction81____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction81___init(val_t p0, val_t p1, int* init_table){ + int itpos84 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction81].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos84]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3685; + fra.me.meth = LOCATE_parser___ReduceAction81___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3685 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction81____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos84] = 1; + return; +} +void parser___ReduceAction82___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3689; + fra.me.meth = LOCATE_parser___ReduceAction82___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3691 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3692 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3693 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3694 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3695 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3696 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3698 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3698); + } + /* ./parser//parser.nit:3700 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3700); + } + /* ./parser//parser.nit:3702 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3702); + } + /* ./parser//parser.nit:3704 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3704); + } + /* ./parser//parser.nit:3706 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3706); + } + /* ./parser//parser.nit:3707 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], NIT_NULL, NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:3719 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3720 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction82____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3720); + } + REGB0 = ATTR_parser___ReduceAction82____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction82___init(val_t p0, val_t p1, int* init_table){ + int itpos85 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction82].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos85]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3723; + fra.me.meth = LOCATE_parser___ReduceAction82___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3723 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction82____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos85] = 1; + return; +} +void parser___ReduceAction83___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3727; + fra.me.meth = LOCATE_parser___ReduceAction83___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3729 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3730 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3731 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3732 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3733 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3734 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3736 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3736); + } + /* ./parser//parser.nit:3738 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3738); + } + /* ./parser//parser.nit:3740 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3740); + } + /* ./parser//parser.nit:3742 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3742); + } + /* ./parser//parser.nit:3744 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3744); + } + /* ./parser//parser.nit:3745 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], fra.me.REG[6], NIT_NULL, NIT_NULL, fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:3757 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3758 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction83____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3758); + } + REGB0 = ATTR_parser___ReduceAction83____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction83___init(val_t p0, val_t p1, int* init_table){ + int itpos86 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction83].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos86]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3761; + fra.me.meth = LOCATE_parser___ReduceAction83___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3761 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction83____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos86] = 1; + return; +} +void parser___ReduceAction84___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3765; + fra.me.meth = LOCATE_parser___ReduceAction84___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3767 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3768 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3769 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3770 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3771 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3772 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3773 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3775 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3775); + } + /* ./parser//parser.nit:3777 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3777); + } + /* ./parser//parser.nit:3779 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3779); + } + /* ./parser//parser.nit:3781 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3781); + } + /* ./parser//parser.nit:3783 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3783); + } + /* ./parser//parser.nit:3785 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3785); + } + /* ./parser//parser.nit:3786 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:3798 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3799 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction84____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3799); + } + REGB0 = ATTR_parser___ReduceAction84____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction84___init(val_t p0, val_t p1, int* init_table){ + int itpos87 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction84].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos87]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3802; + fra.me.meth = LOCATE_parser___ReduceAction84___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3802 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction84____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos87] = 1; + return; +} +void parser___ReduceAction85___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3806; + fra.me.meth = LOCATE_parser___ReduceAction85___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3808 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3809 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3810 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3811 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3812 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3813 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3815 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3815); + } + /* ./parser//parser.nit:3817 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3817); + } + /* ./parser//parser.nit:3819 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3819); + } + /* ./parser//parser.nit:3821 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3821); + } + /* ./parser//parser.nit:3823 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3823); + } + /* ./parser//parser.nit:3824 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], NIT_NULL, fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:3836 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3837 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction85____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3837); + } + REGB0 = ATTR_parser___ReduceAction85____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction85___init(val_t p0, val_t p1, int* init_table){ + int itpos88 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction85].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos88]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3840; + fra.me.meth = LOCATE_parser___ReduceAction85___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3840 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction85____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos88] = 1; + return; +} +void parser___ReduceAction86___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3844; + fra.me.meth = LOCATE_parser___ReduceAction86___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3846 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3847 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3848 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3849 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3850 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3851 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3852 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3854 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3854); + } + /* ./parser//parser.nit:3856 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3856); + } + /* ./parser//parser.nit:3858 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3858); + } + /* ./parser//parser.nit:3860 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3860); + } + /* ./parser//parser.nit:3862 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3862); + } + /* ./parser//parser.nit:3864 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3864); + } + /* ./parser//parser.nit:3865 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:3877 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3878 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction86____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3878); + } + REGB0 = ATTR_parser___ReduceAction86____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction86___init(val_t p0, val_t p1, int* init_table){ + int itpos89 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction86].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos89]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3881; + fra.me.meth = LOCATE_parser___ReduceAction86___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3881 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction86____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos89] = 1; + return; +} +void parser___ReduceAction87___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3885; + fra.me.meth = LOCATE_parser___ReduceAction87___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3887 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3888 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3889 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3890 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3891 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3892 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3893 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3895 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3895); + } + /* ./parser//parser.nit:3897 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3897); + } + /* ./parser//parser.nit:3899 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3899); + } + /* ./parser//parser.nit:3901 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3901); + } + /* ./parser//parser.nit:3903 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3903); + } + /* ./parser//parser.nit:3905 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3905); + } + /* ./parser//parser.nit:3906 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], NIT_NULL, fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:3918 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3919 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction87____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3919); + } + REGB0 = ATTR_parser___ReduceAction87____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction87___init(val_t p0, val_t p1, int* init_table){ + int itpos90 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction87].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos90]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3922; + fra.me.meth = LOCATE_parser___ReduceAction87___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3922 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction87____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos90] = 1; + return; +} +void parser___ReduceAction88___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3926; + fra.me.meth = LOCATE_parser___ReduceAction88___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3928 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3929 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3930 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3931 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3932 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3933 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3934 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3935 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3937 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3937); + } + /* ./parser//parser.nit:3939 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3939); + } + /* ./parser//parser.nit:3941 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3941); + } + /* ./parser//parser.nit:3943 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3943); + } + /* ./parser//parser.nit:3945 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3945); + } + /* ./parser//parser.nit:3947 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3947); + } + /* ./parser//parser.nit:3949 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3949); + } + /* ./parser//parser.nit:3950 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:3962 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:3963 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction88____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 3963); + } + REGB0 = ATTR_parser___ReduceAction88____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction88___init(val_t p0, val_t p1, int* init_table){ + int itpos91 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction88].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos91]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3966; + fra.me.meth = LOCATE_parser___ReduceAction88___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:3966 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction88____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos91] = 1; + return; +} +void parser___ReduceAction89___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 3970; + fra.me.meth = LOCATE_parser___ReduceAction89___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:3972 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:3973 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3974 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3975 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3976 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3977 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:3979 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3979); + } + /* ./parser//parser.nit:3981 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3981); + } + /* ./parser//parser.nit:3983 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3983); + } + /* ./parser//parser.nit:3985 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3985); + } + /* ./parser//parser.nit:3987 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 3987); + } + /* ./parser//parser.nit:3988 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], NIT_NULL, NIT_NULL, NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:4000 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4001 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction89____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4001); + } + REGB0 = ATTR_parser___ReduceAction89____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction89___init(val_t p0, val_t p1, int* init_table){ + int itpos92 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction89].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos92]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4004; + fra.me.meth = LOCATE_parser___ReduceAction89___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4004 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction89____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos92] = 1; + return; +} +void parser___ReduceAction90___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4008; + fra.me.meth = LOCATE_parser___ReduceAction90___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4010 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4011 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4012 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4013 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4014 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4015 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4016 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4018 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4018); + } + /* ./parser//parser.nit:4020 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4020); + } + /* ./parser//parser.nit:4022 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4022); + } + /* ./parser//parser.nit:4024 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4024); + } + /* ./parser//parser.nit:4026 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4026); + } + /* ./parser//parser.nit:4028 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4028); + } + /* ./parser//parser.nit:4029 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:4041 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4042 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction90____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4042); + } + REGB0 = ATTR_parser___ReduceAction90____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction90___init(val_t p0, val_t p1, int* init_table){ + int itpos93 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction90].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos93]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4045; + fra.me.meth = LOCATE_parser___ReduceAction90___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4045 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction90____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos93] = 1; + return; +} +void parser___ReduceAction91___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4049; + fra.me.meth = LOCATE_parser___ReduceAction91___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4051 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4052 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4053 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4054 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4055 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4056 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4057 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4059 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4059); + } + /* ./parser//parser.nit:4061 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4061); + } + /* ./parser//parser.nit:4063 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4063); + } + /* ./parser//parser.nit:4065 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4065); + } + /* ./parser//parser.nit:4067 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4067); + } + /* ./parser//parser.nit:4069 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4069); + } + /* ./parser//parser.nit:4070 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], fra.me.REG[7], NIT_NULL, NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:4082 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4083 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction91____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4083); + } + REGB0 = ATTR_parser___ReduceAction91____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction91___init(val_t p0, val_t p1, int* init_table){ + int itpos94 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction91].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos94]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4086; + fra.me.meth = LOCATE_parser___ReduceAction91___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4086 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction91____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos94] = 1; + return; +} +void parser___ReduceAction92___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4090; + fra.me.meth = LOCATE_parser___ReduceAction92___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4092 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4093 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4094 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4095 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4096 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4097 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4098 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4099 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4101 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4101); + } + /* ./parser//parser.nit:4103 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4103); + } + /* ./parser//parser.nit:4105 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4105); + } + /* ./parser//parser.nit:4107 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4107); + } + /* ./parser//parser.nit:4109 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4109); + } + /* ./parser//parser.nit:4111 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4111); + } + /* ./parser//parser.nit:4113 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4113); + } + /* ./parser//parser.nit:4114 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:4126 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4127 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction92____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4127); + } + REGB0 = ATTR_parser___ReduceAction92____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction92___init(val_t p0, val_t p1, int* init_table){ + int itpos95 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction92].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos95]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4130; + fra.me.meth = LOCATE_parser___ReduceAction92___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4130 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction92____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos95] = 1; + return; +} +void parser___ReduceAction93___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4134; + fra.me.meth = LOCATE_parser___ReduceAction93___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4136 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4137 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4138 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4139 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4140 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4141 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4142 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4144 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4144); + } + /* ./parser//parser.nit:4146 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4146); + } + /* ./parser//parser.nit:4148 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4148); + } + /* ./parser//parser.nit:4150 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4150); + } + /* ./parser//parser.nit:4152 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4152); + } + /* ./parser//parser.nit:4154 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4154); + } + /* ./parser//parser.nit:4155 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:4167 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4168 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction93____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4168); + } + REGB0 = ATTR_parser___ReduceAction93____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction93___init(val_t p0, val_t p1, int* init_table){ + int itpos96 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction93].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos96]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4171; + fra.me.meth = LOCATE_parser___ReduceAction93___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4171 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction93____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos96] = 1; + return; +} +void parser___ReduceAction94___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4175; + fra.me.meth = LOCATE_parser___ReduceAction94___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4177 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4178 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4179 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4180 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4181 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4182 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4183 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4184 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4186 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4186); + } + /* ./parser//parser.nit:4188 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4188); + } + /* ./parser//parser.nit:4190 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4190); + } + /* ./parser//parser.nit:4192 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4192); + } + /* ./parser//parser.nit:4194 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4194); + } + /* ./parser//parser.nit:4196 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4196); + } + /* ./parser//parser.nit:4198 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4198); + } + /* ./parser//parser.nit:4199 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], NIT_NULL, fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:4211 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4212 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction94____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4212); + } + REGB0 = ATTR_parser___ReduceAction94____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction94___init(val_t p0, val_t p1, int* init_table){ + int itpos97 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction94].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos97]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4215; + fra.me.meth = LOCATE_parser___ReduceAction94___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4215 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction94____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos97] = 1; + return; +} +void parser___ReduceAction95___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4219; + fra.me.meth = LOCATE_parser___ReduceAction95___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4221 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4222 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4223 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4224 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4225 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4226 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4227 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4228 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4230 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4230); + } + /* ./parser//parser.nit:4232 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4232); + } + /* ./parser//parser.nit:4234 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4234); + } + /* ./parser//parser.nit:4236 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4236); + } + /* ./parser//parser.nit:4238 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4238); + } + /* ./parser//parser.nit:4240 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4240); + } + /* ./parser//parser.nit:4242 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4242); + } + /* ./parser//parser.nit:4243 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:4255 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4256 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction95____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4256); + } + REGB0 = ATTR_parser___ReduceAction95____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction95___init(val_t p0, val_t p1, int* init_table){ + int itpos98 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction95].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos98]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4259; + fra.me.meth = LOCATE_parser___ReduceAction95___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4259 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction95____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos98] = 1; + return; +} +void parser___ReduceAction96___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4263; + fra.me.meth = LOCATE_parser___ReduceAction96___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4265 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4266 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4267 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4268 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4269 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4270 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4271 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4272 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4273 */ + fra.me.REG[10] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4275 */ + REGB0 = TAG_Bool((fra.me.REG[10]==NIT_NULL) || VAL_ISA(fra.me.REG[10], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4275); + } + /* ./parser//parser.nit:4277 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4277); + } + /* ./parser//parser.nit:4279 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4279); + } + /* ./parser//parser.nit:4281 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4281); + } + /* ./parser//parser.nit:4283 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4283); + } + /* ./parser//parser.nit:4285 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4285); + } + /* ./parser//parser.nit:4287 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4287); + } + /* ./parser//parser.nit:4289 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4289); + } + /* ./parser//parser.nit:4290 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[10], fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:4302 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4303 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction96____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4303); + } + REGB0 = ATTR_parser___ReduceAction96____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction96___init(val_t p0, val_t p1, int* init_table){ + int itpos99 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction96].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos99]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4306; + fra.me.meth = LOCATE_parser___ReduceAction96___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4306 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction96____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos99] = 1; + return; +} +void parser___ReduceAction97___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4310; + fra.me.meth = LOCATE_parser___ReduceAction97___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4312 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4313 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4314 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4315 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4316 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4317 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4318 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4319 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4321 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4321); + } + /* ./parser//parser.nit:4323 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4323); + } + /* ./parser//parser.nit:4325 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4325); + } + /* ./parser//parser.nit:4327 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4327); + } + /* ./parser//parser.nit:4329 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4329); + } + /* ./parser//parser.nit:4330 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], NIT_NULL, NIT_NULL, NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:4342 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4343 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction97____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4343); + } + REGB0 = ATTR_parser___ReduceAction97____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction97___init(val_t p0, val_t p1, int* init_table){ + int itpos100 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction97].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos100]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4346; + fra.me.meth = LOCATE_parser___ReduceAction97___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4346 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction97____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos100] = 1; + return; +} +void parser___ReduceAction98___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4350; + fra.me.meth = LOCATE_parser___ReduceAction98___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4352 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4353 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4354 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4355 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4356 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4357 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4358 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4359 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4360 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4362 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4362); + } + /* ./parser//parser.nit:4364 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4364); + } + /* ./parser//parser.nit:4366 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4366); + } + /* ./parser//parser.nit:4368 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4368); + } + /* ./parser//parser.nit:4370 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4370); + } + /* ./parser//parser.nit:4372 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4372); + } + /* ./parser//parser.nit:4373 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:4385 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4386 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction98____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4386); + } + REGB0 = ATTR_parser___ReduceAction98____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction98___init(val_t p0, val_t p1, int* init_table){ + int itpos101 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction98].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos101]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4389; + fra.me.meth = LOCATE_parser___ReduceAction98___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4389 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction98____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos101] = 1; + return; +} +void parser___ReduceAction99___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4393; + fra.me.meth = LOCATE_parser___ReduceAction99___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4395 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4396 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4397 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4398 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4399 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4400 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4401 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4402 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4403 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4405 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4405); + } + /* ./parser//parser.nit:4407 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4407); + } + /* ./parser//parser.nit:4409 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4409); + } + /* ./parser//parser.nit:4411 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4411); + } + /* ./parser//parser.nit:4413 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4413); + } + /* ./parser//parser.nit:4415 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4415); + } + /* ./parser//parser.nit:4416 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], fra.me.REG[7], NIT_NULL, NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:4428 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4429 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction99____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4429); + } + REGB0 = ATTR_parser___ReduceAction99____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction99___init(val_t p0, val_t p1, int* init_table){ + int itpos102 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction99].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos102]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4432; + fra.me.meth = LOCATE_parser___ReduceAction99___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4432 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction99____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos102] = 1; + return; +} +void parser___ReduceAction100___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4436; + fra.me.meth = LOCATE_parser___ReduceAction100___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4438 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4439 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4440 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4441 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4442 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4443 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4444 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4445 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4446 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4447 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4449 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4449); + } + /* ./parser//parser.nit:4451 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4451); + } + /* ./parser//parser.nit:4453 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4453); + } + /* ./parser//parser.nit:4455 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4455); + } + /* ./parser//parser.nit:4457 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4457); + } + /* ./parser//parser.nit:4459 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4459); + } + /* ./parser//parser.nit:4461 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4461); + } + /* ./parser//parser.nit:4462 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:4474 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4475 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction100____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4475); + } + REGB0 = ATTR_parser___ReduceAction100____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction100___init(val_t p0, val_t p1, int* init_table){ + int itpos103 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction100].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos103]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4478; + fra.me.meth = LOCATE_parser___ReduceAction100___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4478 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction100____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos103] = 1; + return; +} +void parser___ReduceAction101___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4482; + fra.me.meth = LOCATE_parser___ReduceAction101___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4484 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4485 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4486 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4487 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4488 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4489 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4490 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4491 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4492 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4494 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4494); + } + /* ./parser//parser.nit:4496 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4496); + } + /* ./parser//parser.nit:4498 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4498); + } + /* ./parser//parser.nit:4500 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4500); + } + /* ./parser//parser.nit:4502 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4502); + } + /* ./parser//parser.nit:4504 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4504); + } + /* ./parser//parser.nit:4505 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:4517 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4518 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction101____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4518); + } + REGB0 = ATTR_parser___ReduceAction101____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction101___init(val_t p0, val_t p1, int* init_table){ + int itpos104 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction101].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos104]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4521; + fra.me.meth = LOCATE_parser___ReduceAction101___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4521 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction101____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos104] = 1; + return; +} +void parser___ReduceAction102___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4525; + fra.me.meth = LOCATE_parser___ReduceAction102___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4527 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4528 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4529 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4530 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4531 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4532 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4533 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4534 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4535 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4536 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4538 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4538); + } + /* ./parser//parser.nit:4540 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4540); + } + /* ./parser//parser.nit:4542 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4542); + } + /* ./parser//parser.nit:4544 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4544); + } + /* ./parser//parser.nit:4546 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4546); + } + /* ./parser//parser.nit:4548 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4548); + } + /* ./parser//parser.nit:4550 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4550); + } + /* ./parser//parser.nit:4551 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], NIT_NULL, fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:4563 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4564 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction102____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4564); + } + REGB0 = ATTR_parser___ReduceAction102____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction102___init(val_t p0, val_t p1, int* init_table){ + int itpos105 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction102].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos105]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4567; + fra.me.meth = LOCATE_parser___ReduceAction102___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4567 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction102____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos105] = 1; + return; +} +void parser___ReduceAction103___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4571; + fra.me.meth = LOCATE_parser___ReduceAction103___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4573 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4574 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4575 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4576 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4577 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4578 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4579 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4580 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4581 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4582 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4584 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4584); + } + /* ./parser//parser.nit:4586 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4586); + } + /* ./parser//parser.nit:4588 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4588); + } + /* ./parser//parser.nit:4590 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4590); + } + /* ./parser//parser.nit:4592 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4592); + } + /* ./parser//parser.nit:4594 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4594); + } + /* ./parser//parser.nit:4596 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4596); + } + /* ./parser//parser.nit:4597 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:4609 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4610 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction103____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4610); + } + REGB0 = ATTR_parser___ReduceAction103____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction103___init(val_t p0, val_t p1, int* init_table){ + int itpos106 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction103].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos106]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4613; + fra.me.meth = LOCATE_parser___ReduceAction103___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4613 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction103____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos106] = 1; + return; +} +void parser___ReduceAction104___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4617; + fra.me.meth = LOCATE_parser___ReduceAction104___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4619 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4620 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4621 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4622 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4623 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4624 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4625 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4626 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4627 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4628 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4629 */ + fra.me.REG[10] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4631 */ + REGB0 = TAG_Bool((fra.me.REG[10]==NIT_NULL) || VAL_ISA(fra.me.REG[10], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4631); + } + /* ./parser//parser.nit:4633 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4633); + } + /* ./parser//parser.nit:4635 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4635); + } + /* ./parser//parser.nit:4637 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4637); + } + /* ./parser//parser.nit:4639 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4639); + } + /* ./parser//parser.nit:4641 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4641); + } + /* ./parser//parser.nit:4643 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4643); + } + /* ./parser//parser.nit:4645 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4645); + } + /* ./parser//parser.nit:4646 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[10], fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:4658 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4659 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction104____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4659); + } + REGB0 = ATTR_parser___ReduceAction104____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction104___init(val_t p0, val_t p1, int* init_table){ + int itpos107 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction104].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos107]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4662; + fra.me.meth = LOCATE_parser___ReduceAction104___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4662 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction104____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos107] = 1; + return; +} +void parser___ReduceAction105___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4666; + fra.me.meth = LOCATE_parser___ReduceAction105___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4668 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4669 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4670 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4671 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4672 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4673 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4674 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4675 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4676 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4678 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4678); + } + /* ./parser//parser.nit:4680 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4680); + } + /* ./parser//parser.nit:4682 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4682); + } + /* ./parser//parser.nit:4684 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4684); + } + /* ./parser//parser.nit:4686 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4686); + } + /* ./parser//parser.nit:4688 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4688); + } + /* ./parser//parser.nit:4689 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, NIT_NULL, NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:4701 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4702 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction105____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4702); + } + REGB0 = ATTR_parser___ReduceAction105____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction105___init(val_t p0, val_t p1, int* init_table){ + int itpos108 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction105].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos108]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4705; + fra.me.meth = LOCATE_parser___ReduceAction105___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4705 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction105____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos108] = 1; + return; +} +void parser___ReduceAction106___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4709; + fra.me.meth = LOCATE_parser___ReduceAction106___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4711 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4712 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4713 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4714 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4715 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4716 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4717 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4718 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4719 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4720 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4722 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4722); + } + /* ./parser//parser.nit:4724 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4724); + } + /* ./parser//parser.nit:4726 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4726); + } + /* ./parser//parser.nit:4728 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4728); + } + /* ./parser//parser.nit:4730 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4730); + } + /* ./parser//parser.nit:4732 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4732); + } + /* ./parser//parser.nit:4734 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4734); + } + /* ./parser//parser.nit:4735 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], NIT_NULL, NIT_NULL, fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:4747 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4748 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction106____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4748); + } + REGB0 = ATTR_parser___ReduceAction106____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction106___init(val_t p0, val_t p1, int* init_table){ + int itpos109 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction106].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos109]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4751; + fra.me.meth = LOCATE_parser___ReduceAction106___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4751 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction106____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos109] = 1; + return; +} +void parser___ReduceAction107___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4755; + fra.me.meth = LOCATE_parser___ReduceAction107___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4757 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4758 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4759 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4760 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4761 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4762 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4763 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4764 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4765 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4766 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4768 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4768); + } + /* ./parser//parser.nit:4770 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4770); + } + /* ./parser//parser.nit:4772 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4772); + } + /* ./parser//parser.nit:4774 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4774); + } + /* ./parser//parser.nit:4776 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4776); + } + /* ./parser//parser.nit:4778 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4778); + } + /* ./parser//parser.nit:4780 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4780); + } + /* ./parser//parser.nit:4781 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], fra.me.REG[8], NIT_NULL, NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:4793 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4794 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction107____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4794); + } + REGB0 = ATTR_parser___ReduceAction107____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction107___init(val_t p0, val_t p1, int* init_table){ + int itpos110 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction107].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos110]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4797; + fra.me.meth = LOCATE_parser___ReduceAction107___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4797 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction107____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos110] = 1; + return; +} +void parser___ReduceAction108___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4801; + fra.me.meth = LOCATE_parser___ReduceAction108___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4803 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4804 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4805 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4806 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4807 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4808 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4809 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4810 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4811 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4812 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4813 */ + fra.me.REG[10] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4815 */ + REGB0 = TAG_Bool((fra.me.REG[10]==NIT_NULL) || VAL_ISA(fra.me.REG[10], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4815); + } + /* ./parser//parser.nit:4817 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4817); + } + /* ./parser//parser.nit:4819 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4819); + } + /* ./parser//parser.nit:4821 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4821); + } + /* ./parser//parser.nit:4823 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4823); + } + /* ./parser//parser.nit:4825 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4825); + } + /* ./parser//parser.nit:4827 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4827); + } + /* ./parser//parser.nit:4829 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4829); + } + /* ./parser//parser.nit:4830 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[10], fra.me.REG[9], NIT_NULL, fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:4842 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4843 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction108____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4843); + } + REGB0 = ATTR_parser___ReduceAction108____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction108___init(val_t p0, val_t p1, int* init_table){ + int itpos111 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction108].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos111]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4846; + fra.me.meth = LOCATE_parser___ReduceAction108___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4846 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction108____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos111] = 1; + return; +} +void parser___ReduceAction109___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4850; + fra.me.meth = LOCATE_parser___ReduceAction109___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4852 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4853 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4854 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4855 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4856 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4857 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4858 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4859 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4860 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4861 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4863 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4863); + } + /* ./parser//parser.nit:4865 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4865); + } + /* ./parser//parser.nit:4867 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4867); + } + /* ./parser//parser.nit:4869 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4869); + } + /* ./parser//parser.nit:4871 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4871); + } + /* ./parser//parser.nit:4873 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4873); + } + /* ./parser//parser.nit:4875 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4875); + } + /* ./parser//parser.nit:4876 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], NIT_NULL, fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:4888 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4889 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction109____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4889); + } + REGB0 = ATTR_parser___ReduceAction109____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction109___init(val_t p0, val_t p1, int* init_table){ + int itpos112 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction109].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos112]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4892; + fra.me.meth = LOCATE_parser___ReduceAction109___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4892 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction109____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos112] = 1; + return; +} +void parser___ReduceAction110___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4896; + fra.me.meth = LOCATE_parser___ReduceAction110___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4898 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4899 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4900 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4901 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4902 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4903 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4904 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4905 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4906 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4907 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4908 */ + fra.me.REG[10] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4910 */ + REGB0 = TAG_Bool((fra.me.REG[10]==NIT_NULL) || VAL_ISA(fra.me.REG[10], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4910); + } + /* ./parser//parser.nit:4912 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4912); + } + /* ./parser//parser.nit:4914 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4914); + } + /* ./parser//parser.nit:4916 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4916); + } + /* ./parser//parser.nit:4918 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4918); + } + /* ./parser//parser.nit:4920 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4920); + } + /* ./parser//parser.nit:4922 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4922); + } + /* ./parser//parser.nit:4924 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4924); + } + /* ./parser//parser.nit:4925 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[10], NIT_NULL, fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:4937 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4938 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction110____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4938); + } + REGB0 = ATTR_parser___ReduceAction110____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction110___init(val_t p0, val_t p1, int* init_table){ + int itpos113 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction110].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos113]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4941; + fra.me.meth = LOCATE_parser___ReduceAction110___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4941 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction110____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos113] = 1; + return; +} +void parser___ReduceAction111___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4945; + fra.me.meth = LOCATE_parser___ReduceAction111___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4947 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4948 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4949 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4950 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4951 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4952 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4953 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4954 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4955 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4956 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4957 */ + fra.me.REG[10] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4959 */ + REGB0 = TAG_Bool((fra.me.REG[10]==NIT_NULL) || VAL_ISA(fra.me.REG[10], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4959); + } + /* ./parser//parser.nit:4961 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4961); + } + /* ./parser//parser.nit:4963 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4963); + } + /* ./parser//parser.nit:4965 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4965); + } + /* ./parser//parser.nit:4967 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4967); + } + /* ./parser//parser.nit:4969 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4969); + } + /* ./parser//parser.nit:4971 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4971); + } + /* ./parser//parser.nit:4973 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 4973); + } + /* ./parser//parser.nit:4974 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[10], fra.me.REG[9], fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:4986 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:4987 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction111____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 4987); + } + REGB0 = ATTR_parser___ReduceAction111____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction111___init(val_t p0, val_t p1, int* init_table){ + int itpos114 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction111].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos114]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4990; + fra.me.meth = LOCATE_parser___ReduceAction111___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:4990 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction111____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos114] = 1; + return; +} +void parser___ReduceAction112___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[11];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 4994; + fra.me.meth = LOCATE_parser___ReduceAction112___action; + fra.me.has_broke = 0; + fra.me.REG_size = 12; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[11] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:4996 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:4997 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4998 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:4999 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5000 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5001 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5002 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5003 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5004 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5005 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5006 */ + fra.me.REG[10] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5007 */ + fra.me.REG[11] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5009 */ + REGB0 = TAG_Bool((fra.me.REG[11]==NIT_NULL) || VAL_ISA(fra.me.REG[11], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5009); + } + /* ./parser//parser.nit:5011 */ + REGB0 = TAG_Bool((fra.me.REG[10]==NIT_NULL) || VAL_ISA(fra.me.REG[10], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5011); + } + /* ./parser//parser.nit:5013 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5013); + } + /* ./parser//parser.nit:5015 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5015); + } + /* ./parser//parser.nit:5017 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5017); + } + /* ./parser//parser.nit:5019 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5019); + } + /* ./parser//parser.nit:5021 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5021); + } + /* ./parser//parser.nit:5023 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5023); + } + /* ./parser//parser.nit:5025 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5025); + } + /* ./parser//parser.nit:5026 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[11], fra.me.REG[10], fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5038 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5039 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction112____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5039); + } + REGB0 = ATTR_parser___ReduceAction112____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction112___init(val_t p0, val_t p1, int* init_table){ + int itpos115 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction112].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos115]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5042; + fra.me.meth = LOCATE_parser___ReduceAction112___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5042 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction112____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos115] = 1; + return; +} +void parser___ReduceAction113___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5046; + fra.me.meth = LOCATE_parser___ReduceAction113___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5048 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5049 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5050 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5051 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5052 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5054 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5054); + } + /* ./parser//parser.nit:5056 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5056); + } + /* ./parser//parser.nit:5058 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5058); + } + /* ./parser//parser.nit:5060 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5060); + } + /* ./parser//parser.nit:5061 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[6], NIT_NULL, NIT_NULL, NIT_NULL, fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:5073 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5074 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction113____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5074); + } + REGB0 = ATTR_parser___ReduceAction113____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction113___init(val_t p0, val_t p1, int* init_table){ + int itpos116 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction113].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos116]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5077; + fra.me.meth = LOCATE_parser___ReduceAction113___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5077 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction113____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos116] = 1; + return; +} +void parser___ReduceAction114___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5081; + fra.me.meth = LOCATE_parser___ReduceAction114___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5083 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5084 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5085 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5086 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5087 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5088 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5090 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5090); + } + /* ./parser//parser.nit:5092 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5092); + } + /* ./parser//parser.nit:5094 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5094); + } + /* ./parser//parser.nit:5096 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5096); + } + /* ./parser//parser.nit:5098 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5098); + } + /* ./parser//parser.nit:5099 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], NIT_NULL, NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:5111 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5112 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction114____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5112); + } + REGB0 = ATTR_parser___ReduceAction114____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction114___init(val_t p0, val_t p1, int* init_table){ + int itpos117 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction114].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos117]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5115; + fra.me.meth = LOCATE_parser___ReduceAction114___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5115 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction114____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos117] = 1; + return; +} +void parser___ReduceAction115___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5119; + fra.me.meth = LOCATE_parser___ReduceAction115___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5121 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5122 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5123 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5124 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5125 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5126 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5128 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5128); + } + /* ./parser//parser.nit:5130 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5130); + } + /* ./parser//parser.nit:5132 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5132); + } + /* ./parser//parser.nit:5134 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5134); + } + /* ./parser//parser.nit:5136 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5136); + } + /* ./parser//parser.nit:5137 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], NIT_NULL, NIT_NULL, NIT_NULL, fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:5149 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5150 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction115____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5150); + } + REGB0 = ATTR_parser___ReduceAction115____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction115___init(val_t p0, val_t p1, int* init_table){ + int itpos118 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction115].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos118]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5153; + fra.me.meth = LOCATE_parser___ReduceAction115___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5153 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction115____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos118] = 1; + return; +} +void parser___ReduceAction116___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5157; + fra.me.meth = LOCATE_parser___ReduceAction116___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5159 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5160 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5161 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5162 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5163 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5164 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5165 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5167 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5167); + } + /* ./parser//parser.nit:5169 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5169); + } + /* ./parser//parser.nit:5171 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5171); + } + /* ./parser//parser.nit:5173 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5173); + } + /* ./parser//parser.nit:5175 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5175); + } + /* ./parser//parser.nit:5177 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5177); + } + /* ./parser//parser.nit:5178 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:5190 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5191 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction116____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5191); + } + REGB0 = ATTR_parser___ReduceAction116____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction116___init(val_t p0, val_t p1, int* init_table){ + int itpos119 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction116].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos119]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5194; + fra.me.meth = LOCATE_parser___ReduceAction116___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5194 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction116____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos119] = 1; + return; +} +void parser___ReduceAction117___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5198; + fra.me.meth = LOCATE_parser___ReduceAction117___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5200 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5201 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5202 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5203 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5204 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5205 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5207 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5207); + } + /* ./parser//parser.nit:5209 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5209); + } + /* ./parser//parser.nit:5211 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5211); + } + /* ./parser//parser.nit:5213 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5213); + } + /* ./parser//parser.nit:5215 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5215); + } + /* ./parser//parser.nit:5216 */ + fra.me.REG[4] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], NIT_NULL, fra.me.REG[3], NIT_NULL, fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:5228 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:5229 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction117____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5229); + } + REGB0 = ATTR_parser___ReduceAction117____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction117___init(val_t p0, val_t p1, int* init_table){ + int itpos120 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction117].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos120]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5232; + fra.me.meth = LOCATE_parser___ReduceAction117___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5232 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction117____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos120] = 1; + return; +} +void parser___ReduceAction118___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5236; + fra.me.meth = LOCATE_parser___ReduceAction118___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5238 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5239 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5240 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5241 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5242 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5243 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5244 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5246 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5246); + } + /* ./parser//parser.nit:5248 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5248); + } + /* ./parser//parser.nit:5250 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5250); + } + /* ./parser//parser.nit:5252 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5252); + } + /* ./parser//parser.nit:5254 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5254); + } + /* ./parser//parser.nit:5256 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5256); + } + /* ./parser//parser.nit:5257 */ + fra.me.REG[4] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[3], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:5269 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:5270 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction118____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5270); + } + REGB0 = ATTR_parser___ReduceAction118____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction118___init(val_t p0, val_t p1, int* init_table){ + int itpos121 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction118].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos121]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5273; + fra.me.meth = LOCATE_parser___ReduceAction118___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5273 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction118____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos121] = 1; + return; +} +void parser___ReduceAction119___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5277; + fra.me.meth = LOCATE_parser___ReduceAction119___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5279 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5280 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5281 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5282 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5283 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5284 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5285 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5287 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5287); + } + /* ./parser//parser.nit:5289 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5289); + } + /* ./parser//parser.nit:5291 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5291); + } + /* ./parser//parser.nit:5293 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5293); + } + /* ./parser//parser.nit:5295 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5295); + } + /* ./parser//parser.nit:5297 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5297); + } + /* ./parser//parser.nit:5298 */ + fra.me.REG[4] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[3], NIT_NULL, fra.me.REG[7], fra.me.REG[6], NIT_NULL, fra.me.REG[5], fra.me.REG[4], NIT_NULL); + /* ./parser//parser.nit:5310 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:5311 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction119____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5311); + } + REGB0 = ATTR_parser___ReduceAction119____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction119___init(val_t p0, val_t p1, int* init_table){ + int itpos122 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction119].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos122]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5314; + fra.me.meth = LOCATE_parser___ReduceAction119___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5314 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction119____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos122] = 1; + return; +} +void parser___ReduceAction120___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5318; + fra.me.meth = LOCATE_parser___ReduceAction120___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5320 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5321 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5322 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5323 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5324 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5325 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5326 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5327 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5329 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5329); + } + /* ./parser//parser.nit:5331 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5331); + } + /* ./parser//parser.nit:5333 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5333); + } + /* ./parser//parser.nit:5335 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5335); + } + /* ./parser//parser.nit:5337 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5337); + } + /* ./parser//parser.nit:5339 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5339); + } + /* ./parser//parser.nit:5341 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5341); + } + /* ./parser//parser.nit:5342 */ + fra.me.REG[4] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], NIT_NULL, fra.me.REG[3], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], NIT_NULL, fra.me.REG[5], fra.me.REG[4], NIT_NULL); + /* ./parser//parser.nit:5354 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:5355 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction120____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5355); + } + REGB0 = ATTR_parser___ReduceAction120____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction120___init(val_t p0, val_t p1, int* init_table){ + int itpos123 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction120].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos123]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5358; + fra.me.meth = LOCATE_parser___ReduceAction120___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5358 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction120____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos123] = 1; + return; +} +void parser___ReduceAction121___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5362; + fra.me.meth = LOCATE_parser___ReduceAction121___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5364 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5365 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5366 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5367 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5368 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5369 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5370 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5371 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5373 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5373); + } + /* ./parser//parser.nit:5375 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5375); + } + /* ./parser//parser.nit:5377 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5377); + } + /* ./parser//parser.nit:5379 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5379); + } + /* ./parser//parser.nit:5381 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5381); + } + /* ./parser//parser.nit:5382 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[7], NIT_NULL, NIT_NULL, NIT_NULL, fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:5394 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5395 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction121____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5395); + } + REGB0 = ATTR_parser___ReduceAction121____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction121___init(val_t p0, val_t p1, int* init_table){ + int itpos124 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction121].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos124]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5398; + fra.me.meth = LOCATE_parser___ReduceAction121___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5398 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction121____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos124] = 1; + return; +} +void parser___ReduceAction122___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5402; + fra.me.meth = LOCATE_parser___ReduceAction122___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5404 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5405 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5406 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5407 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5408 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5409 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5410 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5411 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5412 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5414 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5414); + } + /* ./parser//parser.nit:5416 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5416); + } + /* ./parser//parser.nit:5418 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5418); + } + /* ./parser//parser.nit:5420 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5420); + } + /* ./parser//parser.nit:5422 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5422); + } + /* ./parser//parser.nit:5424 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5424); + } + /* ./parser//parser.nit:5425 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:5437 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5438 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction122____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5438); + } + REGB0 = ATTR_parser___ReduceAction122____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction122___init(val_t p0, val_t p1, int* init_table){ + int itpos125 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction122].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos125]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5441; + fra.me.meth = LOCATE_parser___ReduceAction122___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5441 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction122____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos125] = 1; + return; +} +void parser___ReduceAction123___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5445; + fra.me.meth = LOCATE_parser___ReduceAction123___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5447 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5448 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5449 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5450 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5451 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5452 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5453 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5454 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5455 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5457 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5457); + } + /* ./parser//parser.nit:5459 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5459); + } + /* ./parser//parser.nit:5461 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5461); + } + /* ./parser//parser.nit:5463 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5463); + } + /* ./parser//parser.nit:5465 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5465); + } + /* ./parser//parser.nit:5467 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5467); + } + /* ./parser//parser.nit:5468 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, NIT_NULL, NIT_NULL, fra.me.REG[7], fra.me.REG[6], NIT_NULL, fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5480 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5481 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction123____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5481); + } + REGB0 = ATTR_parser___ReduceAction123____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction123___init(val_t p0, val_t p1, int* init_table){ + int itpos126 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction123].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos126]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5484; + fra.me.meth = LOCATE_parser___ReduceAction123___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5484 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction123____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos126] = 1; + return; +} +void parser___ReduceAction124___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5488; + fra.me.meth = LOCATE_parser___ReduceAction124___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5490 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5491 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5492 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5493 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5494 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5495 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5496 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5497 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5498 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5499 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5501 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5501); + } + /* ./parser//parser.nit:5503 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5503); + } + /* ./parser//parser.nit:5505 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5505); + } + /* ./parser//parser.nit:5507 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5507); + } + /* ./parser//parser.nit:5509 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5509); + } + /* ./parser//parser.nit:5511 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5511); + } + /* ./parser//parser.nit:5513 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5513); + } + /* ./parser//parser.nit:5514 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], NIT_NULL, NIT_NULL, fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], NIT_NULL, fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5526 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5527 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction124____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5527); + } + REGB0 = ATTR_parser___ReduceAction124____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction124___init(val_t p0, val_t p1, int* init_table){ + int itpos127 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction124].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos127]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5530; + fra.me.meth = LOCATE_parser___ReduceAction124___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5530 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction124____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos127] = 1; + return; +} +void parser___ReduceAction125___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5534; + fra.me.meth = LOCATE_parser___ReduceAction125___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5536 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5537 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5538 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5539 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5540 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5541 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5542 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5543 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5544 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5546 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5546); + } + /* ./parser//parser.nit:5548 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5548); + } + /* ./parser//parser.nit:5550 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5550); + } + /* ./parser//parser.nit:5552 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5552); + } + /* ./parser//parser.nit:5554 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5554); + } + /* ./parser//parser.nit:5556 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5556); + } + /* ./parser//parser.nit:5557 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[4], NIT_NULL, fra.me.REG[7], fra.me.REG[6], NIT_NULL, fra.me.REG[5], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:5569 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5570 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction125____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5570); + } + REGB0 = ATTR_parser___ReduceAction125____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction125___init(val_t p0, val_t p1, int* init_table){ + int itpos128 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction125].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos128]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5573; + fra.me.meth = LOCATE_parser___ReduceAction125___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5573 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction125____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos128] = 1; + return; +} +void parser___ReduceAction126___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5577; + fra.me.meth = LOCATE_parser___ReduceAction126___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5579 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5580 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5581 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5582 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5583 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5584 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5585 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5586 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5587 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5588 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5590 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5590); + } + /* ./parser//parser.nit:5592 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5592); + } + /* ./parser//parser.nit:5594 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5594); + } + /* ./parser//parser.nit:5596 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5596); + } + /* ./parser//parser.nit:5598 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5598); + } + /* ./parser//parser.nit:5600 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5600); + } + /* ./parser//parser.nit:5602 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5602); + } + /* ./parser//parser.nit:5603 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], NIT_NULL, fra.me.REG[4], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], NIT_NULL, fra.me.REG[5], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:5615 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5616 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction126____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5616); + } + REGB0 = ATTR_parser___ReduceAction126____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction126___init(val_t p0, val_t p1, int* init_table){ + int itpos129 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction126].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos129]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5619; + fra.me.meth = LOCATE_parser___ReduceAction126___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5619 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction126____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos129] = 1; + return; +} +void parser___ReduceAction127___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5623; + fra.me.meth = LOCATE_parser___ReduceAction127___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5625 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5626 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5627 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5628 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5629 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5630 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5631 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5632 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5633 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5634 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5636 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5636); + } + /* ./parser//parser.nit:5638 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5638); + } + /* ./parser//parser.nit:5640 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5640); + } + /* ./parser//parser.nit:5642 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5642); + } + /* ./parser//parser.nit:5644 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5644); + } + /* ./parser//parser.nit:5646 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5646); + } + /* ./parser//parser.nit:5648 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5648); + } + /* ./parser//parser.nit:5649 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[9], NIT_NULL, fra.me.REG[4], NIT_NULL, fra.me.REG[8], fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[3]); + /* ./parser//parser.nit:5661 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5662 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction127____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5662); + } + REGB0 = ATTR_parser___ReduceAction127____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction127___init(val_t p0, val_t p1, int* init_table){ + int itpos130 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction127].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos130]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5665; + fra.me.meth = LOCATE_parser___ReduceAction127___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5665 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction127____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos130] = 1; + return; +} +void parser___ReduceAction128___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[10];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5669; + fra.me.meth = LOCATE_parser___ReduceAction128___action; + fra.me.has_broke = 0; + fra.me.REG_size = 11; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[10] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5671 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5672 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5673 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5674 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5675 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5676 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5677 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5678 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5679 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5680 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5681 */ + fra.me.REG[10] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5683 */ + REGB0 = TAG_Bool((fra.me.REG[10]==NIT_NULL) || VAL_ISA(fra.me.REG[10], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5683); + } + /* ./parser//parser.nit:5685 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAble, ID_AAble)) /*cast nullable AAble*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5685); + } + /* ./parser//parser.nit:5687 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5687); + } + /* ./parser//parser.nit:5689 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5689); + } + /* ./parser//parser.nit:5691 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5691); + } + /* ./parser//parser.nit:5693 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5693); + } + /* ./parser//parser.nit:5695 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5695); + } + /* ./parser//parser.nit:5697 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5697); + } + /* ./parser//parser.nit:5698 */ + fra.me.REG[3] = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef(fra.me.REG[10], NIT_NULL, fra.me.REG[4], fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[3]); + /* ./parser//parser.nit:5710 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5711 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction128____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5711); + } + REGB0 = ATTR_parser___ReduceAction128____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction128___init(val_t p0, val_t p1, int* init_table){ + int itpos131 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction128].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos131]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5714; + fra.me.meth = LOCATE_parser___ReduceAction128___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5714 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction128____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos131] = 1; + return; +} +void parser___ReduceAction129___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5718; + fra.me.meth = LOCATE_parser___ReduceAction129___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5720 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5721 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5722 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5723 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5724 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5725 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5726 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5728 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5728); + } + /* ./parser//parser.nit:5730 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5730); + } + /* ./parser//parser.nit:5732 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5732); + } + /* ./parser//parser.nit:5734 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5734); + } + /* ./parser//parser.nit:5736 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5736); + } + /* ./parser//parser.nit:5737 */ + fra.me.REG[3] = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5746 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5747 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction129____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5747); + } + REGB0 = ATTR_parser___ReduceAction129____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction129___init(val_t p0, val_t p1, int* init_table){ + int itpos132 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction129].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos132]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5750; + fra.me.meth = LOCATE_parser___ReduceAction129___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5750 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction129____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos132] = 1; + return; +} +void parser___ReduceAction130___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5754; + fra.me.meth = LOCATE_parser___ReduceAction130___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5756 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5757 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5758 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5759 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5760 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5761 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5762 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5763 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5765 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5765); + } + /* ./parser//parser.nit:5767 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5767); + } + /* ./parser//parser.nit:5769 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5769); + } + /* ./parser//parser.nit:5771 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5771); + } + /* ./parser//parser.nit:5773 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5773); + } + /* ./parser//parser.nit:5775 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5775); + } + /* ./parser//parser.nit:5776 */ + fra.me.REG[3] = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5785 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5786 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction130____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5786); + } + REGB0 = ATTR_parser___ReduceAction130____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction130___init(val_t p0, val_t p1, int* init_table){ + int itpos133 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction130].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos133]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5789; + fra.me.meth = LOCATE_parser___ReduceAction130___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5789 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction130____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos133] = 1; + return; +} +void parser___ReduceAction131___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5793; + fra.me.meth = LOCATE_parser___ReduceAction131___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5795 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5796 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5797 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5798 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5799 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5800 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5801 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5802 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5804 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5804); + } + /* ./parser//parser.nit:5806 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5806); + } + /* ./parser//parser.nit:5808 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5808); + } + /* ./parser//parser.nit:5810 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5810); + } + /* ./parser//parser.nit:5812 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5812); + } + /* ./parser//parser.nit:5814 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5814); + } + /* ./parser//parser.nit:5815 */ + fra.me.REG[3] = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5824 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5825 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction131____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5825); + } + REGB0 = ATTR_parser___ReduceAction131____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction131___init(val_t p0, val_t p1, int* init_table){ + int itpos134 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction131].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos134]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5828; + fra.me.meth = LOCATE_parser___ReduceAction131___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5828 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction131____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos134] = 1; + return; +} +void parser___ReduceAction132___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5832; + fra.me.meth = LOCATE_parser___ReduceAction132___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5834 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5835 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5836 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5837 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5838 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5839 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5840 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5841 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5842 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5844 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5844); + } + /* ./parser//parser.nit:5846 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5846); + } + /* ./parser//parser.nit:5848 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5848); + } + /* ./parser//parser.nit:5850 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5850); + } + /* ./parser//parser.nit:5852 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5852); + } + /* ./parser//parser.nit:5854 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5854); + } + /* ./parser//parser.nit:5856 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5856); + } + /* ./parser//parser.nit:5857 */ + fra.me.REG[3] = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5866 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5867 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction132____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5867); + } + REGB0 = ATTR_parser___ReduceAction132____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction132___init(val_t p0, val_t p1, int* init_table){ + int itpos135 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction132].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos135]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5870; + fra.me.meth = LOCATE_parser___ReduceAction132___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5870 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction132____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos135] = 1; + return; +} +void parser___ReduceAction133___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5874; + fra.me.meth = LOCATE_parser___ReduceAction133___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5876 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5877 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5878 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5879 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5880 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5881 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5882 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5883 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5885 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5885); + } + /* ./parser//parser.nit:5887 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5887); + } + /* ./parser//parser.nit:5889 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5889); + } + /* ./parser//parser.nit:5891 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5891); + } + /* ./parser//parser.nit:5893 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5893); + } + /* ./parser//parser.nit:5894 */ + fra.me.REG[3] = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5903 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5904 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction133____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5904); + } + REGB0 = ATTR_parser___ReduceAction133____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction133___init(val_t p0, val_t p1, int* init_table){ + int itpos136 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction133].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos136]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5907; + fra.me.meth = LOCATE_parser___ReduceAction133___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5907 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction133____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos136] = 1; + return; +} +void parser___ReduceAction134___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5911; + fra.me.meth = LOCATE_parser___ReduceAction134___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5913 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5914 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5915 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5916 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5917 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5918 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5919 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5920 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5921 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5923 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5923); + } + /* ./parser//parser.nit:5925 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5925); + } + /* ./parser//parser.nit:5927 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5927); + } + /* ./parser//parser.nit:5929 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5929); + } + /* ./parser//parser.nit:5931 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5931); + } + /* ./parser//parser.nit:5933 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5933); + } + /* ./parser//parser.nit:5934 */ + fra.me.REG[3] = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5943 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5944 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction134____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5944); + } + REGB0 = ATTR_parser___ReduceAction134____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction134___init(val_t p0, val_t p1, int* init_table){ + int itpos137 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction134].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos137]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5947; + fra.me.meth = LOCATE_parser___ReduceAction134___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5947 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction134____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos137] = 1; + return; +} +void parser___ReduceAction135___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5951; + fra.me.meth = LOCATE_parser___ReduceAction135___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5953 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5954 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5955 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5956 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5957 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5958 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5959 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5960 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5961 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5963 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5963); + } + /* ./parser//parser.nit:5965 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5965); + } + /* ./parser//parser.nit:5967 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5967); + } + /* ./parser//parser.nit:5969 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5969); + } + /* ./parser//parser.nit:5971 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5971); + } + /* ./parser//parser.nit:5973 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 5973); + } + /* ./parser//parser.nit:5974 */ + fra.me.REG[3] = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(fra.me.REG[8], NIT_NULL, fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:5983 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:5984 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction135____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 5984); + } + REGB0 = ATTR_parser___ReduceAction135____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction135___init(val_t p0, val_t p1, int* init_table){ + int itpos138 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction135].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos138]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5987; + fra.me.meth = LOCATE_parser___ReduceAction135___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:5987 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction135____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos138] = 1; + return; +} +void parser___ReduceAction136___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 5991; + fra.me.meth = LOCATE_parser___ReduceAction136___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:5993 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:5994 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5995 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5996 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5997 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5998 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:5999 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6000 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6001 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6002 */ + fra.me.REG[9] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6004 */ + REGB0 = TAG_Bool((fra.me.REG[9]==NIT_NULL) || VAL_ISA(fra.me.REG[9], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6004); + } + /* ./parser//parser.nit:6006 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6006); + } + /* ./parser//parser.nit:6008 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6008); + } + /* ./parser//parser.nit:6010 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6010); + } + /* ./parser//parser.nit:6012 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AMethid, ID_AMethid)) /*cast nullable AMethid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6012); + } + /* ./parser//parser.nit:6014 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6014); + } + /* ./parser//parser.nit:6016 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6016); + } + /* ./parser//parser.nit:6017 */ + fra.me.REG[3] = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(fra.me.REG[9], fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6026 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6027 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction136____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6027); + } + REGB0 = ATTR_parser___ReduceAction136____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction136___init(val_t p0, val_t p1, int* init_table){ + int itpos139 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction136].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos139]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6030; + fra.me.meth = LOCATE_parser___ReduceAction136___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6030 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction136____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos139] = 1; + return; +} +void parser___ReduceAction137___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6034; + fra.me.meth = LOCATE_parser___ReduceAction137___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6036 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6037 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6038 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6039 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6040 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6041 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6043 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6043); + } + /* ./parser//parser.nit:6045 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6045); + } + /* ./parser//parser.nit:6047 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwtype, ID_TKwtype)) /*cast nullable TKwtype*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6047); + } + /* ./parser//parser.nit:6049 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6049); + } + /* ./parser//parser.nit:6051 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6051); + } + /* ./parser//parser.nit:6052 */ + fra.me.REG[3] = NEW_ATypePropdef_parser_prod___ATypePropdef___init_atypepropdef(fra.me.REG[7], NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6060 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6061 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction137____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6061); + } + REGB0 = ATTR_parser___ReduceAction137____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction137___init(val_t p0, val_t p1, int* init_table){ + int itpos140 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction137].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos140]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6064; + fra.me.meth = LOCATE_parser___ReduceAction137___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6064 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction137____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos140] = 1; + return; +} +void parser___ReduceAction138___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6068; + fra.me.meth = LOCATE_parser___ReduceAction138___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6070 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6071 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6072 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6073 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6074 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6075 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6076 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6078 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_ADoc, ID_ADoc)) /*cast nullable ADoc*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6078); + } + /* ./parser//parser.nit:6080 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6080); + } + /* ./parser//parser.nit:6082 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6082); + } + /* ./parser//parser.nit:6084 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwtype, ID_TKwtype)) /*cast nullable TKwtype*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6084); + } + /* ./parser//parser.nit:6086 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6086); + } + /* ./parser//parser.nit:6088 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6088); + } + /* ./parser//parser.nit:6089 */ + fra.me.REG[3] = NEW_ATypePropdef_parser_prod___ATypePropdef___init_atypepropdef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6097 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6098 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction138____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6098); + } + REGB0 = ATTR_parser___ReduceAction138____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction138___init(val_t p0, val_t p1, int* init_table){ + int itpos141 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction138].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos141]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6101; + fra.me.meth = LOCATE_parser___ReduceAction138___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6101 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction138____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos141] = 1; + return; +} +void parser___ReduceAction139___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6105; + fra.me.meth = LOCATE_parser___ReduceAction139___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6107 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6108 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6110 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwreadable, ID_TKwreadable)) /*cast nullable TKwreadable*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6110); + } + /* ./parser//parser.nit:6111 */ + fra.me.REG[3] = NEW_AReadAble_parser_prod___AReadAble___init_areadable(NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:6115 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6116 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction139____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6116); + } + REGB0 = ATTR_parser___ReduceAction139____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction139___init(val_t p0, val_t p1, int* init_table){ + int itpos142 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction139].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos142]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6119; + fra.me.meth = LOCATE_parser___ReduceAction139___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6119 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction139____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos142] = 1; + return; +} +void parser___ReduceAction140___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6123; + fra.me.meth = LOCATE_parser___ReduceAction140___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6125 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6126 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6127 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6129 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6129); + } + /* ./parser//parser.nit:6131 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwreadable, ID_TKwreadable)) /*cast nullable TKwreadable*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6131); + } + /* ./parser//parser.nit:6132 */ + fra.me.REG[3] = NEW_AReadAble_parser_prod___AReadAble___init_areadable(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6136 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6137 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction140____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6137); + } + REGB0 = ATTR_parser___ReduceAction140____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction140___init(val_t p0, val_t p1, int* init_table){ + int itpos143 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction140].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos143]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6140; + fra.me.meth = LOCATE_parser___ReduceAction140___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6140 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction140____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos143] = 1; + return; +} +void parser___ReduceAction141___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6144; + fra.me.meth = LOCATE_parser___ReduceAction141___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6146 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6147 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6149 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwwritable, ID_TKwwritable)) /*cast nullable TKwwritable*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6149); + } + /* ./parser//parser.nit:6150 */ + fra.me.REG[3] = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable(NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:6155 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6156 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction141____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6156); + } + REGB0 = ATTR_parser___ReduceAction141____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction141___init(val_t p0, val_t p1, int* init_table){ + int itpos144 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction141].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos144]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6159; + fra.me.meth = LOCATE_parser___ReduceAction141___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6159 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction141____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos144] = 1; + return; +} +void parser___ReduceAction142___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6163; + fra.me.meth = LOCATE_parser___ReduceAction142___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6165 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6166 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6167 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6169 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6169); + } + /* ./parser//parser.nit:6171 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwwritable, ID_TKwwritable)) /*cast nullable TKwwritable*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6171); + } + /* ./parser//parser.nit:6172 */ + fra.me.REG[3] = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable(fra.me.REG[4], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:6177 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6178 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction142____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6178); + } + REGB0 = ATTR_parser___ReduceAction142____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction142___init(val_t p0, val_t p1, int* init_table){ + int itpos145 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction142].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos145]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6181; + fra.me.meth = LOCATE_parser___ReduceAction142___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6181 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction142____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos145] = 1; + return; +} +void parser___ReduceAction143___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6185; + fra.me.meth = LOCATE_parser___ReduceAction143___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6187 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6188 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6189 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6191 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6191); + } + /* ./parser//parser.nit:6193 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwwritable, ID_TKwwritable)) /*cast nullable TKwwritable*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6193); + } + /* ./parser//parser.nit:6194 */ + fra.me.REG[3] = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable(NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6199 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6200 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction143____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6200); + } + REGB0 = ATTR_parser___ReduceAction143____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction143___init(val_t p0, val_t p1, int* init_table){ + int itpos146 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction143].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos146]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6203; + fra.me.meth = LOCATE_parser___ReduceAction143___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6203 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction143____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos146] = 1; + return; +} +void parser___ReduceAction144___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6207; + fra.me.meth = LOCATE_parser___ReduceAction144___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6209 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6210 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6211 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6212 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6214 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwredef, ID_TKwredef)) /*cast nullable TKwredef*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6214); + } + /* ./parser//parser.nit:6216 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AVisibility, ID_AVisibility)) /*cast nullable AVisibility*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6216); + } + /* ./parser//parser.nit:6218 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwwritable, ID_TKwwritable)) /*cast nullable TKwwritable*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6218); + } + /* ./parser//parser.nit:6219 */ + fra.me.REG[3] = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6224 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6225 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction144____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6225); + } + REGB0 = ATTR_parser___ReduceAction144____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction144___init(val_t p0, val_t p1, int* init_table){ + int itpos147 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction144].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos147]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6228; + fra.me.meth = LOCATE_parser___ReduceAction144___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6228 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction144____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos147] = 1; + return; +} +void parser___ReduceAction145___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6232; + fra.me.meth = LOCATE_parser___ReduceAction145___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6234 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6235 */ + fra.me.REG[3] = NEW_APublicVisibility_parser_prod___APublicVisibility___init_apublicvisibility(); + /* ./parser//parser.nit:6237 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6238 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction145____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6238); + } + REGB0 = ATTR_parser___ReduceAction145____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction145___init(val_t p0, val_t p1, int* init_table){ + int itpos148 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction145].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos148]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6241; + fra.me.meth = LOCATE_parser___ReduceAction145___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6241 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction145____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos148] = 1; + return; +} +void parser___ReduceAction146___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6245; + fra.me.meth = LOCATE_parser___ReduceAction146___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6247 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6248 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6249 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6251 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwprivate, ID_TKwprivate)) /*cast nullable TKwprivate*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6251); + } + /* ./parser//parser.nit:6252 */ + fra.me.REG[3] = NEW_APrivateVisibility_parser_prod___APrivateVisibility___init_aprivatevisibility(fra.me.REG[3]); + /* ./parser//parser.nit:6255 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6256 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction146____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6256); + } + REGB0 = ATTR_parser___ReduceAction146____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction146___init(val_t p0, val_t p1, int* init_table){ + int itpos149 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction146].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos149]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6259; + fra.me.meth = LOCATE_parser___ReduceAction146___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6259 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction146____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos149] = 1; + return; +} +void parser___ReduceAction147___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6263; + fra.me.meth = LOCATE_parser___ReduceAction147___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6265 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6266 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6267 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6269 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwprotected, ID_TKwprotected)) /*cast nullable TKwprotected*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6269); + } + /* ./parser//parser.nit:6270 */ + fra.me.REG[3] = NEW_AProtectedVisibility_parser_prod___AProtectedVisibility___init_aprotectedvisibility(fra.me.REG[3]); + /* ./parser//parser.nit:6273 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6274 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction147____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6274); + } + REGB0 = ATTR_parser___ReduceAction147____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction147___init(val_t p0, val_t p1, int* init_table){ + int itpos150 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction147].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos150]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6277; + fra.me.meth = LOCATE_parser___ReduceAction147___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6277 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction147____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos150] = 1; + return; +} +void parser___ReduceAction148___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6281; + fra.me.meth = LOCATE_parser___ReduceAction148___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6283 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6284 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6285 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6287 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwintrude, ID_TKwintrude)) /*cast nullable TKwintrude*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6287); + } + /* ./parser//parser.nit:6288 */ + fra.me.REG[3] = NEW_AIntrudeVisibility_parser_prod___AIntrudeVisibility___init_aintrudevisibility(fra.me.REG[3]); + /* ./parser//parser.nit:6291 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6292 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction148____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6292); + } + REGB0 = ATTR_parser___ReduceAction148____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction148___init(val_t p0, val_t p1, int* init_table){ + int itpos151 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction148].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos151]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6295; + fra.me.meth = LOCATE_parser___ReduceAction148___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6295 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction148____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos151] = 1; + return; +} +void parser___ReduceAction149___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6299; + fra.me.meth = LOCATE_parser___ReduceAction149___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6301 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6302 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6304 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6304); + } + /* ./parser//parser.nit:6305 */ + fra.me.REG[3] = NEW_AIdMethid_parser_prod___AIdMethid___init_aidmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6308 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6309 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction149____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6309); + } + REGB0 = ATTR_parser___ReduceAction149____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction149___init(val_t p0, val_t p1, int* init_table){ + int itpos152 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction149].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos152]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6312; + fra.me.meth = LOCATE_parser___ReduceAction149___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6312 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction149____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos152] = 1; + return; +} +void parser___ReduceAction150___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6316; + fra.me.meth = LOCATE_parser___ReduceAction150___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6318 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6319 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6321 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TPlus, ID_TPlus)) /*cast nullable TPlus*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6321); + } + /* ./parser//parser.nit:6322 */ + fra.me.REG[3] = NEW_APlusMethid_parser_prod___APlusMethid___init_aplusmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6325 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6326 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction150____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6326); + } + REGB0 = ATTR_parser___ReduceAction150____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction150___init(val_t p0, val_t p1, int* init_table){ + int itpos153 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction150].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos153]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6329; + fra.me.meth = LOCATE_parser___ReduceAction150___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6329 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction150____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos153] = 1; + return; +} +void parser___ReduceAction151___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6333; + fra.me.meth = LOCATE_parser___ReduceAction151___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6335 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6336 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6338 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TMinus, ID_TMinus)) /*cast nullable TMinus*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6338); + } + /* ./parser//parser.nit:6339 */ + fra.me.REG[3] = NEW_AMinusMethid_parser_prod___AMinusMethid___init_aminusmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6342 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6343 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction151____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6343); + } + REGB0 = ATTR_parser___ReduceAction151____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction151___init(val_t p0, val_t p1, int* init_table){ + int itpos154 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction151].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos154]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6346; + fra.me.meth = LOCATE_parser___ReduceAction151___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6346 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction151____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos154] = 1; + return; +} +void parser___ReduceAction152___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6350; + fra.me.meth = LOCATE_parser___ReduceAction152___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6352 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6353 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6355 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TStar, ID_TStar)) /*cast nullable TStar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6355); + } + /* ./parser//parser.nit:6356 */ + fra.me.REG[3] = NEW_AStarMethid_parser_prod___AStarMethid___init_astarmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6359 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6360 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction152____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6360); + } + REGB0 = ATTR_parser___ReduceAction152____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction152___init(val_t p0, val_t p1, int* init_table){ + int itpos155 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction152].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos155]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6363; + fra.me.meth = LOCATE_parser___ReduceAction152___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6363 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction152____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos155] = 1; + return; +} +void parser___ReduceAction153___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6367; + fra.me.meth = LOCATE_parser___ReduceAction153___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6369 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6370 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6372 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TSlash, ID_TSlash)) /*cast nullable TSlash*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6372); + } + /* ./parser//parser.nit:6373 */ + fra.me.REG[3] = NEW_ASlashMethid_parser_prod___ASlashMethid___init_aslashmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6376 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6377 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction153____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6377); + } + REGB0 = ATTR_parser___ReduceAction153____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction153___init(val_t p0, val_t p1, int* init_table){ + int itpos156 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction153].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos156]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6380; + fra.me.meth = LOCATE_parser___ReduceAction153___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6380 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction153____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos156] = 1; + return; +} +void parser___ReduceAction154___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6384; + fra.me.meth = LOCATE_parser___ReduceAction154___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6386 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6387 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6389 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TPercent, ID_TPercent)) /*cast nullable TPercent*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6389); + } + /* ./parser//parser.nit:6390 */ + fra.me.REG[3] = NEW_APercentMethid_parser_prod___APercentMethid___init_apercentmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6393 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6394 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction154____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6394); + } + REGB0 = ATTR_parser___ReduceAction154____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction154___init(val_t p0, val_t p1, int* init_table){ + int itpos157 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction154].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos157]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6397; + fra.me.meth = LOCATE_parser___ReduceAction154___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6397 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction154____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos157] = 1; + return; +} +void parser___ReduceAction155___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6401; + fra.me.meth = LOCATE_parser___ReduceAction155___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6403 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6404 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6406 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TEq, ID_TEq)) /*cast nullable TEq*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6406); + } + /* ./parser//parser.nit:6407 */ + fra.me.REG[3] = NEW_AEqMethid_parser_prod___AEqMethid___init_aeqmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6410 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6411 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction155____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6411); + } + REGB0 = ATTR_parser___ReduceAction155____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction155___init(val_t p0, val_t p1, int* init_table){ + int itpos158 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction155].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos158]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6414; + fra.me.meth = LOCATE_parser___ReduceAction155___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6414 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction155____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos158] = 1; + return; +} +void parser___ReduceAction156___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6418; + fra.me.meth = LOCATE_parser___ReduceAction156___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6420 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6421 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6423 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TNe, ID_TNe)) /*cast nullable TNe*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6423); + } + /* ./parser//parser.nit:6424 */ + fra.me.REG[3] = NEW_ANeMethid_parser_prod___ANeMethid___init_anemethid(fra.me.REG[3]); + /* ./parser//parser.nit:6427 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6428 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction156____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6428); + } + REGB0 = ATTR_parser___ReduceAction156____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction156___init(val_t p0, val_t p1, int* init_table){ + int itpos159 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction156].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos159]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6431; + fra.me.meth = LOCATE_parser___ReduceAction156___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6431 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction156____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos159] = 1; + return; +} +void parser___ReduceAction157___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6435; + fra.me.meth = LOCATE_parser___ReduceAction157___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6437 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6438 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6440 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TLe, ID_TLe)) /*cast nullable TLe*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6440); + } + /* ./parser//parser.nit:6441 */ + fra.me.REG[3] = NEW_ALeMethid_parser_prod___ALeMethid___init_alemethid(fra.me.REG[3]); + /* ./parser//parser.nit:6444 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6445 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction157____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6445); + } + REGB0 = ATTR_parser___ReduceAction157____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction157___init(val_t p0, val_t p1, int* init_table){ + int itpos160 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction157].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos160]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6448; + fra.me.meth = LOCATE_parser___ReduceAction157___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6448 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction157____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos160] = 1; + return; +} +void parser___ReduceAction158___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6452; + fra.me.meth = LOCATE_parser___ReduceAction158___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6454 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6455 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6457 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TGe, ID_TGe)) /*cast nullable TGe*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6457); + } + /* ./parser//parser.nit:6458 */ + fra.me.REG[3] = NEW_AGeMethid_parser_prod___AGeMethid___init_agemethid(fra.me.REG[3]); + /* ./parser//parser.nit:6461 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6462 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction158____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6462); + } + REGB0 = ATTR_parser___ReduceAction158____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction158___init(val_t p0, val_t p1, int* init_table){ + int itpos161 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction158].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos161]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6465; + fra.me.meth = LOCATE_parser___ReduceAction158___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6465 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction158____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos161] = 1; + return; +} +void parser___ReduceAction159___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6469; + fra.me.meth = LOCATE_parser___ReduceAction159___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6471 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6472 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6474 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TLt, ID_TLt)) /*cast nullable TLt*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6474); + } + /* ./parser//parser.nit:6475 */ + fra.me.REG[3] = NEW_ALtMethid_parser_prod___ALtMethid___init_altmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6478 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6479 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction159____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6479); + } + REGB0 = ATTR_parser___ReduceAction159____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction159___init(val_t p0, val_t p1, int* init_table){ + int itpos162 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction159].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos162]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6482; + fra.me.meth = LOCATE_parser___ReduceAction159___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6482 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction159____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos162] = 1; + return; +} +void parser___ReduceAction160___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6486; + fra.me.meth = LOCATE_parser___ReduceAction160___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6488 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6489 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6491 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TGt, ID_TGt)) /*cast nullable TGt*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6491); + } + /* ./parser//parser.nit:6492 */ + fra.me.REG[3] = NEW_AGtMethid_parser_prod___AGtMethid___init_agtmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6495 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6496 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction160____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6496); + } + REGB0 = ATTR_parser___ReduceAction160____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction160___init(val_t p0, val_t p1, int* init_table){ + int itpos163 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction160].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos163]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6499; + fra.me.meth = LOCATE_parser___ReduceAction160___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6499 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction160____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos163] = 1; + return; +} +void parser___ReduceAction161___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6503; + fra.me.meth = LOCATE_parser___ReduceAction161___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6505 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6506 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6508 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TLl, ID_TLl)) /*cast nullable TLl*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6508); + } + /* ./parser//parser.nit:6509 */ + fra.me.REG[3] = NEW_ALlMethid_parser_prod___ALlMethid___init_allmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6512 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6513 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction161____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6513); + } + REGB0 = ATTR_parser___ReduceAction161____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction161___init(val_t p0, val_t p1, int* init_table){ + int itpos164 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction161].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos164]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6516; + fra.me.meth = LOCATE_parser___ReduceAction161___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6516 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction161____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos164] = 1; + return; +} +void parser___ReduceAction162___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6520; + fra.me.meth = LOCATE_parser___ReduceAction162___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6522 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6523 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6525 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TGg, ID_TGg)) /*cast nullable TGg*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6525); + } + /* ./parser//parser.nit:6526 */ + fra.me.REG[3] = NEW_AGgMethid_parser_prod___AGgMethid___init_aggmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6529 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6530 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction162____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6530); + } + REGB0 = ATTR_parser___ReduceAction162____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction162___init(val_t p0, val_t p1, int* init_table){ + int itpos165 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction162].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos165]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6533; + fra.me.meth = LOCATE_parser___ReduceAction162___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6533 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction162____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos165] = 1; + return; +} +void parser___ReduceAction163___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6537; + fra.me.meth = LOCATE_parser___ReduceAction163___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6539 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6540 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6541 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6543 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TObra, ID_TObra)) /*cast nullable TObra*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6543); + } + /* ./parser//parser.nit:6545 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TCbra, ID_TCbra)) /*cast nullable TCbra*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6545); + } + /* ./parser//parser.nit:6546 */ + fra.me.REG[3] = NEW_ABraMethid_parser_prod___ABraMethid___init_abramethid(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6550 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6551 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction163____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6551); + } + REGB0 = ATTR_parser___ReduceAction163____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction163___init(val_t p0, val_t p1, int* init_table){ + int itpos166 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction163].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos166]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6554; + fra.me.meth = LOCATE_parser___ReduceAction163___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6554 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction163____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos166] = 1; + return; +} +void parser___ReduceAction164___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6558; + fra.me.meth = LOCATE_parser___ReduceAction164___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6560 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6561 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6563 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TStarship, ID_TStarship)) /*cast nullable TStarship*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6563); + } + /* ./parser//parser.nit:6564 */ + fra.me.REG[3] = NEW_AStarshipMethid_parser_prod___AStarshipMethid___init_astarshipmethid(fra.me.REG[3]); + /* ./parser//parser.nit:6567 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6568 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction164____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6568); + } + REGB0 = ATTR_parser___ReduceAction164____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction164___init(val_t p0, val_t p1, int* init_table){ + int itpos167 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction164].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos167]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6571; + fra.me.meth = LOCATE_parser___ReduceAction164___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6571 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction164____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos167] = 1; + return; +} +void parser___ReduceAction165___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6575; + fra.me.meth = LOCATE_parser___ReduceAction165___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6577 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6578 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6579 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6581 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6581); + } + /* ./parser//parser.nit:6583 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6583); + } + /* ./parser//parser.nit:6584 */ + fra.me.REG[3] = NEW_AAssignMethid_parser_prod___AAssignMethid___init_aassignmethid(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6588 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6589 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction165____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6589); + } + REGB0 = ATTR_parser___ReduceAction165____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction165___init(val_t p0, val_t p1, int* init_table){ + int itpos168 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction165].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos168]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6592; + fra.me.meth = LOCATE_parser___ReduceAction165___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6592 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction165____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos168] = 1; + return; +} +void parser___ReduceAction166___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6596; + fra.me.meth = LOCATE_parser___ReduceAction166___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6598 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6599 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6600 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6601 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6603 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TObra, ID_TObra)) /*cast nullable TObra*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6603); + } + /* ./parser//parser.nit:6605 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TCbra, ID_TCbra)) /*cast nullable TCbra*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6605); + } + /* ./parser//parser.nit:6607 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6607); + } + /* ./parser//parser.nit:6608 */ + fra.me.REG[3] = NEW_ABraassignMethid_parser_prod___ABraassignMethid___init_abraassignmethid(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:6613 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6614 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction166____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6614); + } + REGB0 = ATTR_parser___ReduceAction166____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction166___init(val_t p0, val_t p1, int* init_table){ + int itpos169 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction166].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos169]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6617; + fra.me.meth = LOCATE_parser___ReduceAction166___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6617 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction166____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos169] = 1; + return; +} +void parser___ReduceAction167___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6621; + fra.me.meth = LOCATE_parser___ReduceAction167___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6623 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6624 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6625 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6626 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6627 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6629 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6629); + } + /* ./parser//parser.nit:6631 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6631); + } + /* ./parser//parser.nit:6632 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:6633 */ + fra.me.REG[6] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6]); + /* ./parser//parser.nit:6638 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:6639 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction167____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6639); + } + REGB0 = ATTR_parser___ReduceAction167____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction167___init(val_t p0, val_t p1, int* init_table){ + int itpos170 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction167].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos170]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6642; + fra.me.meth = LOCATE_parser___ReduceAction167___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6642 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction167____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos170] = 1; + return; +} +void parser___ReduceAction168___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6646; + fra.me.meth = LOCATE_parser___ReduceAction168___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6648 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6649 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6650 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6651 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6652 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6653 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6655 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6655); + } + /* ./parser//parser.nit:6656 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[6] = fra.me.REG[5]; + /* ./parser//parser.nit:6658 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6658); + } + /* ./parser//parser.nit:6660 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6660); + } + /* ./parser//parser.nit:6661 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[3]); + fra.me.REG[7] = fra.me.REG[3]; + /* ./parser//parser.nit:6662 */ + fra.me.REG[7] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[6], fra.me.REG[4], fra.me.REG[7]); + /* ./parser//parser.nit:6667 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:6668 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction168____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6668); + } + REGB0 = ATTR_parser___ReduceAction168____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction168___init(val_t p0, val_t p1, int* init_table){ + int itpos171 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction168].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos171]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6671; + fra.me.meth = LOCATE_parser___ReduceAction168___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6671 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction168____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos171] = 1; + return; +} +void parser___ReduceAction169___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6675; + fra.me.meth = LOCATE_parser___ReduceAction169___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6677 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6678 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6679 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6680 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6681 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6683 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6683); + } + /* ./parser//parser.nit:6684 */ + fra.me.REG[5] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[4], fra.me.REG[3], fra.me.REG[5]); + /* ./parser//parser.nit:6689 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:6690 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction169____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6690); + } + REGB0 = ATTR_parser___ReduceAction169____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction169___init(val_t p0, val_t p1, int* init_table){ + int itpos172 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction169].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos172]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6693; + fra.me.meth = LOCATE_parser___ReduceAction169___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6693 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction169____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos172] = 1; + return; +} +void parser___ReduceAction170___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6697; + fra.me.meth = LOCATE_parser___ReduceAction170___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6699 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6700 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6701 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6702 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6703 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6704 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6706 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6706); + } + /* ./parser//parser.nit:6707 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:6709 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6709); + } + /* ./parser//parser.nit:6710 */ + fra.me.REG[6] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[5], fra.me.REG[3], fra.me.REG[6]); + /* ./parser//parser.nit:6715 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:6716 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction170____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6716); + } + REGB0 = ATTR_parser___ReduceAction170____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction170___init(val_t p0, val_t p1, int* init_table){ + int itpos173 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction170].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos173]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6719; + fra.me.meth = LOCATE_parser___ReduceAction170___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6719 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction170____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos173] = 1; + return; +} +void parser___ReduceAction171___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6723; + fra.me.meth = LOCATE_parser___ReduceAction171___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6725 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6726 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6727 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6728 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6730 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6730); + } + /* ./parser//parser.nit:6731 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:6732 */ + fra.me.REG[5] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[4], NIT_NULL, fra.me.REG[5]); + /* ./parser//parser.nit:6737 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:6738 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction171____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6738); + } + REGB0 = ATTR_parser___ReduceAction171____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction171___init(val_t p0, val_t p1, int* init_table){ + int itpos174 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction171].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos174]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6741; + fra.me.meth = LOCATE_parser___ReduceAction171___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6741 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction171____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos174] = 1; + return; +} +void parser___ReduceAction172___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6745; + fra.me.meth = LOCATE_parser___ReduceAction172___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6747 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6748 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6749 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6750 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6751 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6753 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6753); + } + /* ./parser//parser.nit:6754 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:6756 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6756); + } + /* ./parser//parser.nit:6757 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:6758 */ + fra.me.REG[6] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[5], NIT_NULL, fra.me.REG[6]); + /* ./parser//parser.nit:6763 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:6764 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction172____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6764); + } + REGB0 = ATTR_parser___ReduceAction172____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction172___init(val_t p0, val_t p1, int* init_table){ + int itpos175 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction172].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos175]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6767; + fra.me.meth = LOCATE_parser___ReduceAction172___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6767 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction172____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos175] = 1; + return; +} +void parser___ReduceAction173___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6771; + fra.me.meth = LOCATE_parser___ReduceAction173___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6773 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6774 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6775 */ + fra.me.REG[3] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6776 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6777 */ + fra.me.REG[4] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[3], NIT_NULL, fra.me.REG[4]); + /* ./parser//parser.nit:6782 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:6783 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction173____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6783); + } + REGB0 = ATTR_parser___ReduceAction173____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction173___init(val_t p0, val_t p1, int* init_table){ + int itpos176 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction173].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos176]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6786; + fra.me.meth = LOCATE_parser___ReduceAction173___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6786 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction173____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos176] = 1; + return; +} +void parser___ReduceAction174___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6790; + fra.me.meth = LOCATE_parser___ReduceAction174___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6792 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6793 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6794 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6795 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6796 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6798 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6798); + } + /* ./parser//parser.nit:6799 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:6800 */ + fra.me.REG[5] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[4], NIT_NULL, fra.me.REG[5]); + /* ./parser//parser.nit:6805 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:6806 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction174____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6806); + } + REGB0 = ATTR_parser___ReduceAction174____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction174___init(val_t p0, val_t p1, int* init_table){ + int itpos177 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction174].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos177]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6809; + fra.me.meth = LOCATE_parser___ReduceAction174___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6809 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction174____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos177] = 1; + return; +} +void parser___ReduceAction175___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6813; + fra.me.meth = LOCATE_parser___ReduceAction175___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6815 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6816 */ + fra.me.REG[3] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6817 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6818 */ + fra.me.REG[4] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[3], NIT_NULL, fra.me.REG[4]); + /* ./parser//parser.nit:6823 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:6824 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction175____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6824); + } + REGB0 = ATTR_parser___ReduceAction175____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction175___init(val_t p0, val_t p1, int* init_table){ + int itpos178 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction175].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos178]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6827; + fra.me.meth = LOCATE_parser___ReduceAction175___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6827 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction175____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos178] = 1; + return; +} +void parser___ReduceAction176___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6831; + fra.me.meth = LOCATE_parser___ReduceAction176___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6833 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6834 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6835 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6836 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6838 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6838); + } + /* ./parser//parser.nit:6839 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:6840 */ + fra.me.REG[5] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[4], NIT_NULL, fra.me.REG[5]); + /* ./parser//parser.nit:6845 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:6846 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction176____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6846); + } + REGB0 = ATTR_parser___ReduceAction176____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction176___init(val_t p0, val_t p1, int* init_table){ + int itpos179 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction176].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos179]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6849; + fra.me.meth = LOCATE_parser___ReduceAction176___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6849 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction176____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos179] = 1; + return; +} +void parser___ReduceAction177___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6853; + fra.me.meth = LOCATE_parser___ReduceAction177___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6855 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6856 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6857 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6858 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6860 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6860); + } + /* ./parser//parser.nit:6861 */ + fra.me.REG[5] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[4], fra.me.REG[3], fra.me.REG[5]); + /* ./parser//parser.nit:6866 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:6867 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction177____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6867); + } + REGB0 = ATTR_parser___ReduceAction177____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction177___init(val_t p0, val_t p1, int* init_table){ + int itpos180 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction177].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos180]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6870; + fra.me.meth = LOCATE_parser___ReduceAction177___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6870 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction177____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos180] = 1; + return; +} +void parser___ReduceAction178___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6874; + fra.me.meth = LOCATE_parser___ReduceAction178___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6876 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6877 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6878 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6879 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6880 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6882 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6882); + } + /* ./parser//parser.nit:6883 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:6885 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6885); + } + /* ./parser//parser.nit:6886 */ + fra.me.REG[6] = NEW_ASignature_parser_prod___ASignature___init_asignature(fra.me.REG[5], fra.me.REG[3], fra.me.REG[6]); + /* ./parser//parser.nit:6891 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:6892 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction178____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6892); + } + REGB0 = ATTR_parser___ReduceAction178____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction178___init(val_t p0, val_t p1, int* init_table){ + int itpos181 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction178].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos181]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6895; + fra.me.meth = LOCATE_parser___ReduceAction178___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6895 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction178____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos181] = 1; + return; +} +void parser___ReduceAction179___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6899; + fra.me.meth = LOCATE_parser___ReduceAction179___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6901 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6902 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6903 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6904 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6905 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6906 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6907 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6909 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable10 = NEW_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction249___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction249::init (src/parser//parser.nit:10432,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction249].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction249].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction250___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction250::action (src/parser//parser.nit:10436,2--10464:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10446,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10448,6--36\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10450,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:6910 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:6912 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:6913 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction179____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6913); + } + REGB0 = ATTR_parser___ReduceAction179____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction179___init(val_t p0, val_t p1, int* init_table){ + int itpos182 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction179].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos182]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6916; + fra.me.meth = LOCATE_parser___ReduceAction179___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6916 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction179____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos182] = 1; + return; +} +void parser___ReduceAction180___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6920; + fra.me.meth = LOCATE_parser___ReduceAction180___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6922 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6923 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6924 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6925 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6926 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6927 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6928 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6929 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6932 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6932); + } + /* ./parser//parser.nit:6933 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable12 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction250___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction250::init (src/parser//parser.nit:10466,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction250].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction250].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction251___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction251::action (src/parser//parser.nit:10470,2--10495:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10479,6--36\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10481,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:6934 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]); + } + /* ./parser//parser.nit:6936 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:6937 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:6938 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction180____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6938); + } + REGB0 = ATTR_parser___ReduceAction180____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction180___init(val_t p0, val_t p1, int* init_table){ + int itpos183 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction180].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos183]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6941; + fra.me.meth = LOCATE_parser___ReduceAction180___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6941 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction180____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos183] = 1; + return; +} +void parser___ReduceAction181___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6945; + fra.me.meth = LOCATE_parser___ReduceAction181___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6947 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6948 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6949 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6950 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6951 */ + fra.me.REG[3] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:6952 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6953 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction181____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6953); + } + REGB0 = ATTR_parser___ReduceAction181____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction181___init(val_t p0, val_t p1, int* init_table){ + int itpos184 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction181].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos184]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6956; + fra.me.meth = LOCATE_parser___ReduceAction181___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6956 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction181____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos184] = 1; + return; +} +void parser___ReduceAction182___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6960; + fra.me.meth = LOCATE_parser___ReduceAction182___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6962 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6963 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6964 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6965 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6967 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6968 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction182____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6968); + } + REGB0 = ATTR_parser___ReduceAction182____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction182___init(val_t p0, val_t p1, int* init_table){ + int itpos185 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction182].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos185]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6971; + fra.me.meth = LOCATE_parser___ReduceAction182___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6971 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction182____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos185] = 1; + return; +} +void parser___ReduceAction183___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6975; + fra.me.meth = LOCATE_parser___ReduceAction183___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6977 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6978 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6980 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 6980); + } + /* ./parser//parser.nit:6981 */ + fra.me.REG[3] = NEW_AParam_parser_prod___AParam___init_aparam(fra.me.REG[3], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:6986 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:6987 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction183____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 6987); + } + REGB0 = ATTR_parser___ReduceAction183____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction183___init(val_t p0, val_t p1, int* init_table){ + int itpos186 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction183].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos186]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6990; + fra.me.meth = LOCATE_parser___ReduceAction183___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:6990 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction183____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos186] = 1; + return; +} +void parser___ReduceAction184___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 6994; + fra.me.meth = LOCATE_parser___ReduceAction184___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:6996 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:6997 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:6998 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7000 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7000); + } + /* ./parser//parser.nit:7002 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7002); + } + /* ./parser//parser.nit:7003 */ + fra.me.REG[3] = NEW_AParam_parser_prod___AParam___init_aparam(fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:7008 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7009 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction184____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7009); + } + REGB0 = ATTR_parser___ReduceAction184____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction184___init(val_t p0, val_t p1, int* init_table){ + int itpos187 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction184].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos187]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7012; + fra.me.meth = LOCATE_parser___ReduceAction184___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7012 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction184____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos187] = 1; + return; +} +void parser___ReduceAction185___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7016; + fra.me.meth = LOCATE_parser___ReduceAction185___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7018 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7019 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7020 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7021 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7023 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7023); + } + /* ./parser//parser.nit:7025 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7025); + } + /* ./parser//parser.nit:7027 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TDotdotdot, ID_TDotdotdot)) /*cast nullable TDotdotdot*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7027); + } + /* ./parser//parser.nit:7028 */ + fra.me.REG[3] = NEW_AParam_parser_prod___AParam___init_aparam(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:7033 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7034 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction185____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7034); + } + REGB0 = ATTR_parser___ReduceAction185____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction185___init(val_t p0, val_t p1, int* init_table){ + int itpos188 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction185].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos188]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7037; + fra.me.meth = LOCATE_parser___ReduceAction185___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7037 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction185____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos188] = 1; + return; +} +void parser___ReduceAction186___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7041; + fra.me.meth = LOCATE_parser___ReduceAction186___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7043 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7044 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7045 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7046 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7048 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7048); + } + /* ./parser//parser.nit:7049 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:7050 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:7051 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction186____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7051); + } + REGB0 = ATTR_parser___ReduceAction186____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction186___init(val_t p0, val_t p1, int* init_table){ + int itpos189 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction186].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos189]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7054; + fra.me.meth = LOCATE_parser___ReduceAction186___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7054 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction186____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos189] = 1; + return; +} +void parser___ReduceAction187___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7058; + fra.me.meth = LOCATE_parser___ReduceAction187___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7060 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7061 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7062 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7063 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7064 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7066 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7066); + } + /* ./parser//parser.nit:7068 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7068); + } + /* ./parser//parser.nit:7070 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7070); + } + /* ./parser//parser.nit:7071 */ + fra.me.REG[3] = NEW_AClosureDecl_parser_prod___AClosureDecl___init_aclosuredecl(NIT_NULL, fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:7078 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7079 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction187____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7079); + } + REGB0 = ATTR_parser___ReduceAction187____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction187___init(val_t p0, val_t p1, int* init_table){ + int itpos190 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction187].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos190]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7082; + fra.me.meth = LOCATE_parser___ReduceAction187___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7082 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction187____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos190] = 1; + return; +} +void parser___ReduceAction188___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7086; + fra.me.meth = LOCATE_parser___ReduceAction188___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7088 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7089 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7090 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7091 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7092 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7093 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7095 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwbreak, ID_TKwbreak)) /*cast nullable TKwbreak*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7095); + } + /* ./parser//parser.nit:7097 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7097); + } + /* ./parser//parser.nit:7099 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7099); + } + /* ./parser//parser.nit:7101 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7101); + } + /* ./parser//parser.nit:7102 */ + fra.me.REG[3] = NEW_AClosureDecl_parser_prod___AClosureDecl___init_aclosuredecl(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:7109 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7110 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction188____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7110); + } + REGB0 = ATTR_parser___ReduceAction188____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction188___init(val_t p0, val_t p1, int* init_table){ + int itpos191 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction188].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos191]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7113; + fra.me.meth = LOCATE_parser___ReduceAction188___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7113 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction188____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos191] = 1; + return; +} +void parser___ReduceAction189___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7117; + fra.me.meth = LOCATE_parser___ReduceAction189___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7119 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7120 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7121 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7122 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7123 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7124 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7125 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7127 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7127); + } + /* ./parser//parser.nit:7129 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7129); + } + /* ./parser//parser.nit:7131 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7131); + } + /* ./parser//parser.nit:7133 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7133); + } + /* ./parser//parser.nit:7134 */ + fra.me.REG[3] = NEW_AClosureDecl_parser_prod___AClosureDecl___init_aclosuredecl(NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:7141 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7142 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction189____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7142); + } + REGB0 = ATTR_parser___ReduceAction189____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction189___init(val_t p0, val_t p1, int* init_table){ + int itpos192 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction189].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos192]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7145; + fra.me.meth = LOCATE_parser___ReduceAction189___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7145 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction189____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos192] = 1; + return; +} +void parser___ReduceAction190___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7149; + fra.me.meth = LOCATE_parser___ReduceAction190___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7151 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7152 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7153 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7154 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7155 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7156 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7157 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7158 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7160 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwbreak, ID_TKwbreak)) /*cast nullable TKwbreak*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7160); + } + /* ./parser//parser.nit:7162 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7162); + } + /* ./parser//parser.nit:7164 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7164); + } + /* ./parser//parser.nit:7166 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7166); + } + /* ./parser//parser.nit:7168 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7168); + } + /* ./parser//parser.nit:7169 */ + fra.me.REG[3] = NEW_AClosureDecl_parser_prod___AClosureDecl___init_aclosuredecl(fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:7176 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7177 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction190____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7177); + } + REGB0 = ATTR_parser___ReduceAction190____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction190___init(val_t p0, val_t p1, int* init_table){ + int itpos193 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction190].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos193]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7180; + fra.me.meth = LOCATE_parser___ReduceAction190___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7180 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction190____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos193] = 1; + return; +} +void parser___ReduceAction191___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7184; + fra.me.meth = LOCATE_parser___ReduceAction191___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7186 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7187 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7188 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7189 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7190 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7191 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7192 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7193 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7195 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7195); + } + /* ./parser//parser.nit:7197 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7197); + } + /* ./parser//parser.nit:7199 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7199); + } + /* ./parser//parser.nit:7201 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7201); + } + /* ./parser//parser.nit:7202 */ + fra.me.REG[3] = NEW_AClosureDecl_parser_prod___AClosureDecl___init_aclosuredecl(NIT_NULL, fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:7209 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7210 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction191____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7210); + } + REGB0 = ATTR_parser___ReduceAction191____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction191___init(val_t p0, val_t p1, int* init_table){ + int itpos194 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction191].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos194]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7213; + fra.me.meth = LOCATE_parser___ReduceAction191___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7213 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction191____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos194] = 1; + return; +} +void parser___ReduceAction192___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7217; + fra.me.meth = LOCATE_parser___ReduceAction192___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7219 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7220 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7221 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7222 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7223 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7224 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7225 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7226 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7227 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7229 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwbreak, ID_TKwbreak)) /*cast nullable TKwbreak*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7229); + } + /* ./parser//parser.nit:7231 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7231); + } + /* ./parser//parser.nit:7233 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7233); + } + /* ./parser//parser.nit:7235 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ASignature, ID_ASignature)) /*cast nullable ASignature*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7235); + } + /* ./parser//parser.nit:7237 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7237); + } + /* ./parser//parser.nit:7238 */ + fra.me.REG[3] = NEW_AClosureDecl_parser_prod___AClosureDecl___init_aclosuredecl(fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:7245 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7246 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction192____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7246); + } + REGB0 = ATTR_parser___ReduceAction192____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction192___init(val_t p0, val_t p1, int* init_table){ + int itpos195 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction192].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos195]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7249; + fra.me.meth = LOCATE_parser___ReduceAction192___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7249 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction192____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos195] = 1; + return; +} +void parser___ReduceAction193___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7253; + fra.me.meth = LOCATE_parser___ReduceAction193___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7255 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7256 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7258 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7258); + } + /* ./parser//parser.nit:7259 */ + fra.me.REG[3] = NEW_AReturnExpr_parser_prod___AReturnExpr___init_areturnexpr(NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:7263 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7264 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction193____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7264); + } + REGB0 = ATTR_parser___ReduceAction193____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction193___init(val_t p0, val_t p1, int* init_table){ + int itpos196 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction193].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos196]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7267; + fra.me.meth = LOCATE_parser___ReduceAction193___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7267 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction193____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos196] = 1; + return; +} +void parser___ReduceAction194___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7271; + fra.me.meth = LOCATE_parser___ReduceAction194___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7273 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7274 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7275 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7277 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7277); + } + /* ./parser//parser.nit:7278 */ + fra.me.REG[4] = NEW_AType_parser_prod___AType___init_atype(NIT_NULL, fra.me.REG[3], fra.me.REG[4]); + /* ./parser//parser.nit:7283 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:7284 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction194____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7284); + } + REGB0 = ATTR_parser___ReduceAction194____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction194___init(val_t p0, val_t p1, int* init_table){ + int itpos197 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction194].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos197]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7287; + fra.me.meth = LOCATE_parser___ReduceAction194___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7287 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction194____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos197] = 1; + return; +} +void parser___ReduceAction195___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7291; + fra.me.meth = LOCATE_parser___ReduceAction195___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7293 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7294 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7295 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7296 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7298 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwnullable, ID_TKwnullable)) /*cast nullable TKwnullable*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7298); + } + /* ./parser//parser.nit:7300 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7300); + } + /* ./parser//parser.nit:7301 */ + fra.me.REG[5] = NEW_AType_parser_prod___AType___init_atype(fra.me.REG[4], fra.me.REG[3], fra.me.REG[5]); + /* ./parser//parser.nit:7306 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:7307 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction195____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7307); + } + REGB0 = ATTR_parser___ReduceAction195____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction195___init(val_t p0, val_t p1, int* init_table){ + int itpos198 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction195].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos198]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7310; + fra.me.meth = LOCATE_parser___ReduceAction195___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7310 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction195____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos198] = 1; + return; +} +void parser___ReduceAction196___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7314; + fra.me.meth = LOCATE_parser___ReduceAction196___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7316 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7317 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7318 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7319 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7320 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7321 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7322 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7323 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7325 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7325); + } + /* ./parser//parser.nit:7327 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7327); + } + /* ./parser//parser.nit:7328 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:7329 */ + fra.me.REG[5] = NEW_AType_parser_prod___AType___init_atype(NIT_NULL, fra.me.REG[4], fra.me.REG[5]); + /* ./parser//parser.nit:7334 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:7335 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction196____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7335); + } + REGB0 = ATTR_parser___ReduceAction196____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction196___init(val_t p0, val_t p1, int* init_table){ + int itpos199 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction196].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos199]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7338; + fra.me.meth = LOCATE_parser___ReduceAction196___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7338 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction196____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos199] = 1; + return; +} +void parser___ReduceAction197___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7342; + fra.me.meth = LOCATE_parser___ReduceAction197___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7344 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7345 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7346 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7347 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7348 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7349 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7350 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7351 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7352 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7354 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwnullable, ID_TKwnullable)) /*cast nullable TKwnullable*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7354); + } + /* ./parser//parser.nit:7356 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7356); + } + /* ./parser//parser.nit:7358 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7358); + } + /* ./parser//parser.nit:7359 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:7360 */ + fra.me.REG[6] = NEW_AType_parser_prod___AType___init_atype(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6]); + /* ./parser//parser.nit:7365 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:7366 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction197____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7366); + } + REGB0 = ATTR_parser___ReduceAction197____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction197___init(val_t p0, val_t p1, int* init_table){ + int itpos200 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction197].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos200]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7369; + fra.me.meth = LOCATE_parser___ReduceAction197___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7369 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction197____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos200] = 1; + return; +} +void parser___ReduceAction198___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7373; + fra.me.meth = LOCATE_parser___ReduceAction198___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7375 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7376 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7377 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7379 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable9 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction251___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction251::init (src/parser//parser.nit:10497,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction251].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction251].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction252___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction252::action (src/parser//parser.nit:10501,2--10518:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwvarnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwvarnode2*/, COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10507,6--34\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable5 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10509,6--28\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AVardeclExpr___init_avardeclexpr( variable4 /*tkwvarnode2*/, variable5 /*tidnode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AVardeclExpr*/ - variable6 = variable7; - variable1 = variable6 /*pexprnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(28)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction252___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction252::init (src/parser//parser.nit:10520,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction252].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction252].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction253___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction253::action (src/parser//parser.nit:10524,2--10544:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwvarnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwvarnode2*/, COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10531,6--34\n"); nit_exit(1);} - variable6 = variable3 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10533,6--28\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist3*/; - variable8 = TAG_Bool(( variable7 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10535,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AVardeclExpr___init_avardeclexpr( variable5 /*tkwvarnode2*/, variable6 /*tidnode3*/, variable7 /*ptypenode4*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AVardeclExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(28)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction253___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction253::init (src/parser//parser.nit:10546,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction253].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction253].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction254___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction254::action (src/parser//parser.nit:10550,2--10574:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable7 = variable6 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*tkwvarnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwvarnode2*/, COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10559,6--34\n"); nit_exit(1);} - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable8 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10561,6--28\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*tassignnode5*/==NIT_NULL) || VAL_ISA( variable9 /*tassignnode5*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10563,6--36\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*pexprnode6*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode6*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10565,6--32\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AVardeclExpr___init_avardeclexpr( variable7 /*tkwvarnode2*/, variable8 /*tidnode3*/, NIT_NULL /*null*/, variable9 /*tassignnode5*/, variable10 /*pexprnode6*/); /*new AVardeclExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(28)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction254___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction254::init (src/parser//parser.nit:10576,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction254].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction254].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction255___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction255::action (src/parser//parser.nit:10580,2--10607:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*tkwvarnode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwvarnode2*/, COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10590,6--34\n"); nit_exit(1);} - variable9 = variable6 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10592,6--28\n"); nit_exit(1);} - variable10 = variable5 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable10 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10594,6--32\n"); nit_exit(1);} - variable11 = variable4 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*tassignnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tassignnode5*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10596,6--36\n"); nit_exit(1);} - variable12 = variable2 /*nodearraylist6*/; - variable13 = TAG_Bool(( variable12 /*pexprnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode6*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10598,6--32\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AVardeclExpr___init_avardeclexpr( variable8 /*tkwvarnode2*/, variable9 /*tidnode3*/, variable10 /*ptypenode4*/, variable11 /*tassignnode5*/, variable12 /*pexprnode6*/); /*new AVardeclExpr*/ - variable13 = variable14; - variable1 = variable13 /*pexprnode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(28)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction255___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction255::init (src/parser//parser.nit:10609,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction255].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction255].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction256___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction256::action (src/parser//parser.nit:10613,2--10637:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10623,6--32\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10625,6--36\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*tassignnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tassignnode4*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10627,6--36\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist6*/; - variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10629,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AAttrAssignExpr___init_aattrassignexpr( variable8 /*pexprnode2*/, variable9 /*tattridnode3*/, variable10 /*tassignnode4*/, variable11 /*pexprnode5*/); /*new AAttrAssignExpr*/ - variable12 = variable13; - variable1 = variable12 /*pexprnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction256___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction256::init (src/parser//parser.nit:10639,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction256].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction256].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction257___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction257::action (src/parser//parser.nit:10643,2--10664:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10652,6--36\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tassignnode4*/==NIT_NULL) || VAL_ISA( variable7 /*tassignnode4*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10654,6--36\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10656,6--32\n"); nit_exit(1);} - variable10 = NEW_parser_prod___AAttrAssignExpr___init_aattrassignexpr( variable5 /*pexprnode2*/, variable6 /*tattridnode3*/, variable7 /*tassignnode4*/, variable8 /*pexprnode5*/); /*new AAttrAssignExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction257___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction257::init (src/parser//parser.nit:10666,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction257].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction257].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction258___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction258::action (src/parser//parser.nit:10670,2--10706:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable8 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10682,6--32\n"); nit_exit(1);} - variable11 = variable5 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10684,6--28\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist5*/; - variable13 = TAG_Bool(( variable12 /*listnode4*/==NIT_NULL) || VAL_ISA( variable12 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10686,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode4*/ == NIT_NULL /*null*/) || (( variable12 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable12 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable9 = variable12 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode5*/, variable12 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:7380 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:7382 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:7383 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction198____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7383); + } + REGB0 = ATTR_parser___ReduceAction198____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction198___init(val_t p0, val_t p1, int* init_table){ + int itpos201 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction198].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos201]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7386; + fra.me.meth = LOCATE_parser___ReduceAction198___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7386 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction198____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos201] = 1; + return; +} +void parser___ReduceAction199___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7390; + fra.me.meth = LOCATE_parser___ReduceAction199___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7392 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7393 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7394 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7395 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7398 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7398); + } + /* ./parser//parser.nit:7399 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable13 = variable3 /*nodearraylist6*/; - variable14 = TAG_Bool(( variable13 /*tassignnode6*/==NIT_NULL) || VAL_ISA( variable13 /*tassignnode6*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10695,6--36\n"); nit_exit(1);} - variable14 = variable2 /*nodearraylist7*/; - variable15 = TAG_Bool(( variable14 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10697,6--32\n"); nit_exit(1);} - variable16 = NEW_parser_prod___ACallAssignExpr___init_acallassignexpr( variable10 /*pexprnode2*/, variable11 /*tidnode3*/, variable9 /*listnode5*/, variable13 /*tassignnode6*/, variable14 /*pexprnode7*/); /*new ACallAssignExpr*/ - variable15 = variable16; - variable1 = variable15 /*pexprnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction258___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction258::init (src/parser//parser.nit:10708,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction258].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction258].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction259___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction259::action (src/parser//parser.nit:10712,2--10745:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable8 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10723,6--28\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*listnode4*/==NIT_NULL) || VAL_ISA( variable9 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10725,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode4*/ == NIT_NULL /*null*/) || (( variable9 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode5*/, variable9 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:7400 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]); + } + /* ./parser//parser.nit:7402 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:7403 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:7404 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction199____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7404); + } + REGB0 = ATTR_parser___ReduceAction199____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction199___init(val_t p0, val_t p1, int* init_table){ + int itpos202 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction199].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos202]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7407; + fra.me.meth = LOCATE_parser___ReduceAction199___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7407 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction199____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos202] = 1; + return; +} +void parser___ReduceAction200___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7411; + fra.me.meth = LOCATE_parser___ReduceAction200___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7413 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7414 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7415 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7416 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7418 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7419 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction200____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7419); + } + REGB0 = ATTR_parser___ReduceAction200____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction200___init(val_t p0, val_t p1, int* init_table){ + int itpos203 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction200].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos203]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7422; + fra.me.meth = LOCATE_parser___ReduceAction200___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7422 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction200____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos203] = 1; + return; +} +void parser___ReduceAction202___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7426; + fra.me.meth = LOCATE_parser___ReduceAction202___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7428 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7429 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7430 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7431 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7433 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7434 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction202____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7434); + } + REGB0 = ATTR_parser___ReduceAction202____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction202___init(val_t p0, val_t p1, int* init_table){ + int itpos204 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction202].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos204]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7437; + fra.me.meth = LOCATE_parser___ReduceAction202___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7437 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction202____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos204] = 1; + return; +} +void parser___ReduceAction203___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7441; + fra.me.meth = LOCATE_parser___ReduceAction203___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7443 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7444 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7445 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7446 */ + fra.me.REG[3] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7447 */ + fra.me.REG[3] = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr(fra.me.REG[3]); + /* ./parser//parser.nit:7450 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7451 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction203____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7451); + } + REGB0 = ATTR_parser___ReduceAction203____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction203___init(val_t p0, val_t p1, int* init_table){ + int itpos205 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction203].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos205]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7454; + fra.me.meth = LOCATE_parser___ReduceAction203___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7454 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction203____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos205] = 1; + return; +} +void parser___ReduceAction204___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7458; + fra.me.meth = LOCATE_parser___ReduceAction204___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7460 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7461 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7462 */ + fra.me.REG[3] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7463 */ + fra.me.REG[3] = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr(fra.me.REG[3]); + /* ./parser//parser.nit:7466 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7467 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction204____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7467); + } + REGB0 = ATTR_parser___ReduceAction204____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction204___init(val_t p0, val_t p1, int* init_table){ + int itpos206 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction204].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos206]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7470; + fra.me.meth = LOCATE_parser___ReduceAction204___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7470 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction204____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos206] = 1; + return; +} +void parser___ReduceAction205___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7474; + fra.me.meth = LOCATE_parser___ReduceAction205___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7476 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7477 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7479 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7480 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction205____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7480); + } + REGB0 = ATTR_parser___ReduceAction205____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction205___init(val_t p0, val_t p1, int* init_table){ + int itpos207 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction205].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos207]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7483; + fra.me.meth = LOCATE_parser___ReduceAction205___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7483 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction205____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos207] = 1; + return; +} +void parser___ReduceAction206___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7487; + fra.me.meth = LOCATE_parser___ReduceAction206___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7489 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7490 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7491 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7493 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7493); + } + /* ./parser//parser.nit:7494 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable10 = variable3 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*tassignnode6*/==NIT_NULL) || VAL_ISA( variable10 /*tassignnode6*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10734,6--36\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10736,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___ACallAssignExpr___init_acallassignexpr( variable7 /*pexprnode2*/, variable8 /*tidnode3*/, variable6 /*listnode5*/, variable10 /*tassignnode6*/, variable11 /*pexprnode7*/); /*new ACallAssignExpr*/ - variable12 = variable13; - variable1 = variable12 /*pexprnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction259___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction259::init (src/parser//parser.nit:10747,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction259].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction259].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction260___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction260::action (src/parser//parser.nit:10751,2--10781:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable5 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10760,6--32\n"); nit_exit(1);} - variable8 = variable4 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10762,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable6 = variable8 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:7495 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:7497 */ + fra.me.REG[4] = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr(fra.me.REG[4]); + /* ./parser//parser.nit:7500 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:7501 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction206____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7501); + } + REGB0 = ATTR_parser___ReduceAction206____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction206___init(val_t p0, val_t p1, int* init_table){ + int itpos208 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction206].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos208]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7504; + fra.me.meth = LOCATE_parser___ReduceAction206___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7504 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction206____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos208] = 1; + return; +} +void parser___ReduceAction207___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7508; + fra.me.meth = LOCATE_parser___ReduceAction207___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7510 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7511 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7512 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7513 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7515 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7515); + } + /* ./parser//parser.nit:7517 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7517); + } + /* ./parser//parser.nit:7518 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable9 = variable3 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*tassignnode5*/==NIT_NULL) || VAL_ISA( variable9 /*tassignnode5*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10771,6--36\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*pexprnode6*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode6*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10773,6--32\n"); nit_exit(1);} - variable12 = NEW_parser_prod___ABraAssignExpr___init_abraassignexpr( variable7 /*pexprnode2*/, variable6 /*listnode4*/, variable9 /*tassignnode5*/, variable10 /*pexprnode6*/); /*new ABraAssignExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction260___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction260::init (src/parser//parser.nit:10783,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction260].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction260].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction261___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction261::action (src/parser//parser.nit:10787,2--10811:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10797,6--32\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10799,6--36\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*passignopnode4*/==NIT_NULL) || VAL_ISA( variable10 /*passignopnode4*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10801,6--40\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist6*/; - variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10803,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AAttrReassignExpr___init_aattrreassignexpr( variable8 /*pexprnode2*/, variable9 /*tattridnode3*/, variable10 /*passignopnode4*/, variable11 /*pexprnode5*/); /*new AAttrReassignExpr*/ - variable12 = variable13; - variable1 = variable12 /*pexprnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction261___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction261::init (src/parser//parser.nit:10813,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction261].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction261].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction262___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction262::action (src/parser//parser.nit:10817,2--10838:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10826,6--36\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*passignopnode4*/==NIT_NULL) || VAL_ISA( variable7 /*passignopnode4*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10828,6--40\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10830,6--32\n"); nit_exit(1);} - variable10 = NEW_parser_prod___AAttrReassignExpr___init_aattrreassignexpr( variable5 /*pexprnode2*/, variable6 /*tattridnode3*/, variable7 /*passignopnode4*/, variable8 /*pexprnode5*/); /*new AAttrReassignExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction262___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction262::init (src/parser//parser.nit:10840,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction262].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction262].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction263___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction263::action (src/parser//parser.nit:10844,2--10880:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable8 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10856,6--32\n"); nit_exit(1);} - variable11 = variable5 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10858,6--28\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist5*/; - variable13 = TAG_Bool(( variable12 /*listnode4*/==NIT_NULL) || VAL_ISA( variable12 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10860,6--38\n"); nit_exit(1);} - variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode4*/ == NIT_NULL /*null*/) || (( variable12 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable12 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable13)) { /*if*/ - variable13 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable13)) { /*if*/ - variable9 = variable12 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode5*/, variable12 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:7519 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]); + } + /* ./parser//parser.nit:7521 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:7522 */ + fra.me.REG[5] = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr(fra.me.REG[5]); + /* ./parser//parser.nit:7525 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:7526 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction207____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7526); + } + REGB0 = ATTR_parser___ReduceAction207____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction207___init(val_t p0, val_t p1, int* init_table){ + int itpos209 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction207].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos209]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7529; + fra.me.meth = LOCATE_parser___ReduceAction207___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7529 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction207____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos209] = 1; + return; +} +void parser___ReduceAction208___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7533; + fra.me.meth = LOCATE_parser___ReduceAction208___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7535 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7536 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7537 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7538 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7540 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7540); + } + /* ./parser//parser.nit:7541 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable13 = variable3 /*nodearraylist6*/; - variable14 = TAG_Bool(( variable13 /*passignopnode6*/==NIT_NULL) || VAL_ISA( variable13 /*passignopnode6*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10869,6--40\n"); nit_exit(1);} - variable14 = variable2 /*nodearraylist7*/; - variable15 = TAG_Bool(( variable14 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10871,6--32\n"); nit_exit(1);} - variable16 = NEW_parser_prod___ACallReassignExpr___init_acallreassignexpr( variable10 /*pexprnode2*/, variable11 /*tidnode3*/, variable9 /*listnode5*/, variable13 /*passignopnode6*/, variable14 /*pexprnode7*/); /*new ACallReassignExpr*/ - variable15 = variable16; - variable1 = variable15 /*pexprnode1*/ /*node_list=*/; - variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction263___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction263::init (src/parser//parser.nit:10882,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction263].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction263].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction264___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction264::action (src/parser//parser.nit:10886,2--10919:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable8 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable8 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10897,6--28\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist2*/; - variable10 = TAG_Bool(( variable9 /*listnode4*/==NIT_NULL) || VAL_ISA( variable9 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10899,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode4*/ == NIT_NULL /*null*/) || (( variable9 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode5*/, variable9 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:7542 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:7544 */ + fra.me.REG[4] = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr(fra.me.REG[4]); + /* ./parser//parser.nit:7547 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:7548 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction208____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7548); + } + REGB0 = ATTR_parser___ReduceAction208____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction208___init(val_t p0, val_t p1, int* init_table){ + int itpos210 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction208].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos210]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7551; + fra.me.meth = LOCATE_parser___ReduceAction208___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7551 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction208____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos210] = 1; + return; +} +void parser___ReduceAction209___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7555; + fra.me.meth = LOCATE_parser___ReduceAction209___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7557 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7558 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7559 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7560 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7561 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7563 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7563); + } + /* ./parser//parser.nit:7565 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7565); + } + /* ./parser//parser.nit:7566 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable10 = variable3 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*passignopnode6*/==NIT_NULL) || VAL_ISA( variable10 /*passignopnode6*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10908,6--40\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist4*/; - variable12 = TAG_Bool(( variable11 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10910,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___ACallReassignExpr___init_acallreassignexpr( variable7 /*pexprnode2*/, variable8 /*tidnode3*/, variable6 /*listnode5*/, variable10 /*passignopnode6*/, variable11 /*pexprnode7*/); /*new ACallReassignExpr*/ - variable12 = variable13; - variable1 = variable12 /*pexprnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction264___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction264::init (src/parser//parser.nit:10921,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction264].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction264].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction265___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction265::action (src/parser//parser.nit:10925,2--10955:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable5 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10934,6--32\n"); nit_exit(1);} - variable8 = variable4 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10936,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable6 = variable8 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:7567 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]); + } + /* ./parser//parser.nit:7569 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:7570 */ + fra.me.REG[5] = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr(fra.me.REG[5]); + /* ./parser//parser.nit:7573 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:7574 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction209____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7574); + } + REGB0 = ATTR_parser___ReduceAction209____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction209___init(val_t p0, val_t p1, int* init_table){ + int itpos211 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction209].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos211]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7577; + fra.me.meth = LOCATE_parser___ReduceAction209___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7577 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction209____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos211] = 1; + return; +} +void parser___ReduceAction210___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7581; + fra.me.meth = LOCATE_parser___ReduceAction210___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7583 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7584 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7585 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7587 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7588 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction210____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7588); + } + REGB0 = ATTR_parser___ReduceAction210____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction210___init(val_t p0, val_t p1, int* init_table){ + int itpos212 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction210].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos212]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7591; + fra.me.meth = LOCATE_parser___ReduceAction210___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7591 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction210____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos212] = 1; + return; +} +void parser___ReduceAction213___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7595; + fra.me.meth = LOCATE_parser___ReduceAction213___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7597 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7598 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7600 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwreturn, ID_TKwreturn)) /*cast nullable TKwreturn*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7600); + } + /* ./parser//parser.nit:7601 */ + fra.me.REG[3] = NEW_AReturnExpr_parser_prod___AReturnExpr___init_areturnexpr(fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:7605 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7606 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction213____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7606); + } + REGB0 = ATTR_parser___ReduceAction213____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction213___init(val_t p0, val_t p1, int* init_table){ + int itpos213 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction213].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos213]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7609; + fra.me.meth = LOCATE_parser___ReduceAction213___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7609 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction213____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos213] = 1; + return; +} +void parser___ReduceAction214___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7613; + fra.me.meth = LOCATE_parser___ReduceAction214___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7615 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7616 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7617 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7619 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwreturn, ID_TKwreturn)) /*cast nullable TKwreturn*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7619); + } + /* ./parser//parser.nit:7621 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7621); + } + /* ./parser//parser.nit:7622 */ + fra.me.REG[3] = NEW_AReturnExpr_parser_prod___AReturnExpr___init_areturnexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:7626 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7627 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction214____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7627); + } + REGB0 = ATTR_parser___ReduceAction214____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction214___init(val_t p0, val_t p1, int* init_table){ + int itpos214 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction214].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos214]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7630; + fra.me.meth = LOCATE_parser___ReduceAction214___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7630 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction214____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos214] = 1; + return; +} +void parser___ReduceAction215___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7634; + fra.me.meth = LOCATE_parser___ReduceAction215___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7636 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7637 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7639 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwbreak, ID_TKwbreak)) /*cast nullable TKwbreak*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7639); + } + /* ./parser//parser.nit:7640 */ + fra.me.REG[3] = NEW_ABreakExpr_parser_prod___ABreakExpr___init_abreakexpr(fra.me.REG[3], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:7645 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7646 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction215____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7646); + } + REGB0 = ATTR_parser___ReduceAction215____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction215___init(val_t p0, val_t p1, int* init_table){ + int itpos215 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction215].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos215]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7649; + fra.me.meth = LOCATE_parser___ReduceAction215___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7649 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction215____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos215] = 1; + return; +} +void parser___ReduceAction216___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7653; + fra.me.meth = LOCATE_parser___ReduceAction216___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7655 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7656 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7657 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7659 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwbreak, ID_TKwbreak)) /*cast nullable TKwbreak*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7659); + } + /* ./parser//parser.nit:7661 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7661); + } + /* ./parser//parser.nit:7662 */ + fra.me.REG[3] = NEW_ABreakExpr_parser_prod___ABreakExpr___init_abreakexpr(fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:7667 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7668 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction216____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7668); + } + REGB0 = ATTR_parser___ReduceAction216____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction216___init(val_t p0, val_t p1, int* init_table){ + int itpos216 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction216].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos216]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7671; + fra.me.meth = LOCATE_parser___ReduceAction216___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7671 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction216____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos216] = 1; + return; +} +void parser___ReduceAction217___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7675; + fra.me.meth = LOCATE_parser___ReduceAction217___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7677 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7678 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7679 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7681 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwbreak, ID_TKwbreak)) /*cast nullable TKwbreak*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7681); + } + /* ./parser//parser.nit:7683 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7683); + } + /* ./parser//parser.nit:7684 */ + fra.me.REG[3] = NEW_ABreakExpr_parser_prod___ABreakExpr___init_abreakexpr(fra.me.REG[4], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:7689 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7690 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction217____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7690); + } + REGB0 = ATTR_parser___ReduceAction217____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction217___init(val_t p0, val_t p1, int* init_table){ + int itpos217 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction217].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos217]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7693; + fra.me.meth = LOCATE_parser___ReduceAction217___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7693 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction217____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos217] = 1; + return; +} +void parser___ReduceAction218___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7697; + fra.me.meth = LOCATE_parser___ReduceAction218___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7699 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7700 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7701 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7702 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7704 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwbreak, ID_TKwbreak)) /*cast nullable TKwbreak*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7704); + } + /* ./parser//parser.nit:7706 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7706); + } + /* ./parser//parser.nit:7708 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7708); + } + /* ./parser//parser.nit:7709 */ + fra.me.REG[3] = NEW_ABreakExpr_parser_prod___ABreakExpr___init_abreakexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:7714 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7715 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction218____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7715); + } + REGB0 = ATTR_parser___ReduceAction218____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction218___init(val_t p0, val_t p1, int* init_table){ + int itpos218 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction218].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos218]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7718; + fra.me.meth = LOCATE_parser___ReduceAction218___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7718 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction218____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos218] = 1; + return; +} +void parser___ReduceAction219___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7722; + fra.me.meth = LOCATE_parser___ReduceAction219___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7724 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7725 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7727 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwabort, ID_TKwabort)) /*cast nullable TKwabort*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7727); + } + /* ./parser//parser.nit:7728 */ + fra.me.REG[3] = NEW_AAbortExpr_parser_prod___AAbortExpr___init_aabortexpr(fra.me.REG[3]); + /* ./parser//parser.nit:7731 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7732 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction219____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7732); + } + REGB0 = ATTR_parser___ReduceAction219____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction219___init(val_t p0, val_t p1, int* init_table){ + int itpos219 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction219].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos219]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7735; + fra.me.meth = LOCATE_parser___ReduceAction219___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7735 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction219____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos219] = 1; + return; +} +void parser___ReduceAction220___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7739; + fra.me.meth = LOCATE_parser___ReduceAction220___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7741 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7742 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7744 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwcontinue, ID_TKwcontinue)) /*cast nullable TKwcontinue*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7744); + } + /* ./parser//parser.nit:7745 */ + fra.me.REG[3] = NEW_AContinueExpr_parser_prod___AContinueExpr___init_acontinueexpr(fra.me.REG[3], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:7750 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7751 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction220____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7751); + } + REGB0 = ATTR_parser___ReduceAction220____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction220___init(val_t p0, val_t p1, int* init_table){ + int itpos220 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction220].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos220]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7754; + fra.me.meth = LOCATE_parser___ReduceAction220___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7754 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction220____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos220] = 1; + return; +} +void parser___ReduceAction221___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7758; + fra.me.meth = LOCATE_parser___ReduceAction221___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7760 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7761 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7762 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7764 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwcontinue, ID_TKwcontinue)) /*cast nullable TKwcontinue*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7764); + } + /* ./parser//parser.nit:7766 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7766); + } + /* ./parser//parser.nit:7767 */ + fra.me.REG[3] = NEW_AContinueExpr_parser_prod___AContinueExpr___init_acontinueexpr(fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:7772 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7773 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction221____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7773); + } + REGB0 = ATTR_parser___ReduceAction221____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction221___init(val_t p0, val_t p1, int* init_table){ + int itpos221 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction221].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos221]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7776; + fra.me.meth = LOCATE_parser___ReduceAction221___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7776 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction221____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos221] = 1; + return; +} +void parser___ReduceAction222___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7780; + fra.me.meth = LOCATE_parser___ReduceAction222___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7782 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7783 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7784 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7786 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwcontinue, ID_TKwcontinue)) /*cast nullable TKwcontinue*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7786); + } + /* ./parser//parser.nit:7788 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7788); + } + /* ./parser//parser.nit:7789 */ + fra.me.REG[3] = NEW_AContinueExpr_parser_prod___AContinueExpr___init_acontinueexpr(fra.me.REG[4], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:7794 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7795 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction222____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7795); + } + REGB0 = ATTR_parser___ReduceAction222____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction222___init(val_t p0, val_t p1, int* init_table){ + int itpos222 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction222].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos222]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7798; + fra.me.meth = LOCATE_parser___ReduceAction222___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7798 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction222____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos222] = 1; + return; +} +void parser___ReduceAction223___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7802; + fra.me.meth = LOCATE_parser___ReduceAction223___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7804 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7805 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7806 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7807 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7809 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwcontinue, ID_TKwcontinue)) /*cast nullable TKwcontinue*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7809); + } + /* ./parser//parser.nit:7811 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7811); + } + /* ./parser//parser.nit:7813 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7813); + } + /* ./parser//parser.nit:7814 */ + fra.me.REG[3] = NEW_AContinueExpr_parser_prod___AContinueExpr___init_acontinueexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:7819 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:7820 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction223____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7820); + } + REGB0 = ATTR_parser___ReduceAction223____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction223___init(val_t p0, val_t p1, int* init_table){ + int itpos223 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction223].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos223]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7823; + fra.me.meth = LOCATE_parser___ReduceAction223___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7823 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction223____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos223] = 1; + return; +} +void parser___ReduceAction230___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7827; + fra.me.meth = LOCATE_parser___ReduceAction230___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7829 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7830 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7831 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7832 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7833 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7834 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7835 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7836 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7838 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7838); + } + /* ./parser//parser.nit:7840 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7840); + } + /* ./parser//parser.nit:7842 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7842); + } + /* ./parser//parser.nit:7843 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:7844 */ + fra.me.REG[7] = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:7850 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:7851 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction230____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7851); + } + REGB0 = ATTR_parser___ReduceAction230____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction230___init(val_t p0, val_t p1, int* init_table){ + int itpos224 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction230].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos224]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7854; + fra.me.meth = LOCATE_parser___ReduceAction230___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7854 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction230____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos224] = 1; + return; +} +void parser___ReduceAction231___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7858; + fra.me.meth = LOCATE_parser___ReduceAction231___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7860 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7861 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7862 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7863 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7864 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7865 */ + fra.me.REG[7] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:7868 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7868); + } + /* ./parser//parser.nit:7870 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7870); + } + /* ./parser//parser.nit:7871 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:7872 */ + fra.me.REG[6] = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr(fra.me.REG[7], fra.me.REG[4], fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:7878 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:7879 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction231____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7879); + } + REGB0 = ATTR_parser___ReduceAction231____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction231___init(val_t p0, val_t p1, int* init_table){ + int itpos225 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction231].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos225]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7882; + fra.me.meth = LOCATE_parser___ReduceAction231___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7882 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction231____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos225] = 1; + return; +} +void parser___ReduceAction232___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7886; + fra.me.meth = LOCATE_parser___ReduceAction232___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7888 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7889 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7890 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7891 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7892 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7893 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7894 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7895 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7896 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7898 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7898); + } + /* ./parser//parser.nit:7900 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7900); + } + /* ./parser//parser.nit:7902 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7902); + } + /* ./parser//parser.nit:7903 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[4]); + fra.me.REG[7] = fra.me.REG[4]; + /* ./parser//parser.nit:7905 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7905); + } + /* ./parser//parser.nit:7906 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[3]); + fra.me.REG[8] = fra.me.REG[3]; + /* ./parser//parser.nit:7907 */ + fra.me.REG[8] = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[7], fra.me.REG[8]); + /* ./parser//parser.nit:7913 */ + fra.me.REG[2] = fra.me.REG[8]; + /* ./parser//parser.nit:7914 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction232____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7914); + } + REGB0 = ATTR_parser___ReduceAction232____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction232___init(val_t p0, val_t p1, int* init_table){ + int itpos226 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction232].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos226]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7917; + fra.me.meth = LOCATE_parser___ReduceAction232___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7917 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction232____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos226] = 1; + return; +} +void parser___ReduceAction233___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7921; + fra.me.meth = LOCATE_parser___ReduceAction233___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7923 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7924 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7925 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7926 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7927 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7928 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7929 */ + fra.me.REG[8] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:7932 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7932); + } + /* ./parser//parser.nit:7934 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7934); + } + /* ./parser//parser.nit:7935 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:7937 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7937); + } + /* ./parser//parser.nit:7938 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[3]); + fra.me.REG[7] = fra.me.REG[3]; + /* ./parser//parser.nit:7939 */ + fra.me.REG[7] = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr(fra.me.REG[8], fra.me.REG[5], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:7945 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:7946 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction233____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7946); + } + REGB0 = ATTR_parser___ReduceAction233____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction233___init(val_t p0, val_t p1, int* init_table){ + int itpos227 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction233].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos227]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7949; + fra.me.meth = LOCATE_parser___ReduceAction233___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7949 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction233____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos227] = 1; + return; +} +void parser___ReduceAction234___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7953; + fra.me.meth = LOCATE_parser___ReduceAction234___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7955 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7956 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7957 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7958 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7960 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwsuper, ID_TKwsuper)) /*cast nullable TKwsuper*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7960); + } + /* ./parser//parser.nit:7962 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7962); + } + /* ./parser//parser.nit:7963 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:7964 */ + fra.me.REG[5] = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr(NIT_NULL, fra.me.REG[4], fra.me.REG[5]); + /* ./parser//parser.nit:7969 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:7970 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction234____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7970); + } + REGB0 = ATTR_parser___ReduceAction234____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction234___init(val_t p0, val_t p1, int* init_table){ + int itpos228 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction234].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos228]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7973; + fra.me.meth = LOCATE_parser___ReduceAction234___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:7973 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction234____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos228] = 1; + return; +} +void parser___ReduceAction235___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 7977; + fra.me.meth = LOCATE_parser___ReduceAction235___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:7979 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:7980 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7981 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7982 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:7983 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:7985 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AQualified, ID_AQualified)) /*cast nullable AQualified*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7985); + } + /* ./parser//parser.nit:7987 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwsuper, ID_TKwsuper)) /*cast nullable TKwsuper*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7987); + } + /* ./parser//parser.nit:7989 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 7989); + } + /* ./parser//parser.nit:7990 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:7991 */ + fra.me.REG[6] = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6]); + /* ./parser//parser.nit:7996 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:7997 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction235____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 7997); + } + REGB0 = ATTR_parser___ReduceAction235____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction235___init(val_t p0, val_t p1, int* init_table){ + int itpos229 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction235].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos229]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8000; + fra.me.meth = LOCATE_parser___ReduceAction235___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8000 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction235____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos229] = 1; + return; +} +void parser___ReduceAction236___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8004; + fra.me.meth = LOCATE_parser___ReduceAction236___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8006 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8007 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8008 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8009 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8010 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8011 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8012 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8014 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8014); + } + /* ./parser//parser.nit:8016 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8016); + } + /* ./parser//parser.nit:8018 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8018); + } + /* ./parser//parser.nit:8019 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:8020 */ + fra.me.REG[6] = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6]); + /* ./parser//parser.nit:8025 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:8026 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction236____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8026); + } + REGB0 = ATTR_parser___ReduceAction236____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction236___init(val_t p0, val_t p1, int* init_table){ + int itpos230 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction236].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos230]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8029; + fra.me.meth = LOCATE_parser___ReduceAction236___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8029 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction236____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos230] = 1; + return; +} +void parser___ReduceAction237___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8033; + fra.me.meth = LOCATE_parser___ReduceAction237___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8035 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8036 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8037 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8038 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8039 */ + fra.me.REG[6] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:8042 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8042); + } + /* ./parser//parser.nit:8044 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8044); + } + /* ./parser//parser.nit:8045 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:8046 */ + fra.me.REG[5] = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr(fra.me.REG[6], fra.me.REG[4], fra.me.REG[5]); + /* ./parser//parser.nit:8051 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:8052 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction237____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8052); + } + REGB0 = ATTR_parser___ReduceAction237____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction237___init(val_t p0, val_t p1, int* init_table){ + int itpos231 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction237].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos231]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8055; + fra.me.meth = LOCATE_parser___ReduceAction237___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8055 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction237____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos231] = 1; + return; +} +void parser___ReduceAction238___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8059; + fra.me.meth = LOCATE_parser___ReduceAction238___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8061 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8062 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8063 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8065 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwlabel, ID_TKwlabel)) /*cast nullable TKwlabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8065); + } + /* ./parser//parser.nit:8067 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8067); + } + /* ./parser//parser.nit:8068 */ + fra.me.REG[3] = NEW_ALabel_parser_prod___ALabel___init_alabel(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8072 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8073 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction238____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8073); + } + REGB0 = ATTR_parser___ReduceAction238____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction238___init(val_t p0, val_t p1, int* init_table){ + int itpos232 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction238].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos232]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8076; + fra.me.meth = LOCATE_parser___ReduceAction238___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8076 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction238____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos232] = 1; + return; +} +void parser___ReduceAction239___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8080; + fra.me.meth = LOCATE_parser___ReduceAction239___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8082 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8083 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8084 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8086 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable9 = variable3 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*passignopnode5*/==NIT_NULL) || VAL_ISA( variable9 /*passignopnode5*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10945,6--40\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*pexprnode6*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode6*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10947,6--32\n"); nit_exit(1);} - variable12 = NEW_parser_prod___ABraReassignExpr___init_abrareassignexpr( variable7 /*pexprnode2*/, variable6 /*listnode4*/, variable9 /*passignopnode5*/, variable10 /*pexprnode6*/); /*new ABraReassignExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction265___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction265::init (src/parser//parser.nit:10957,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction265].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction265].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction266___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction266::action (src/parser//parser.nit:10961,2--10971:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tpluseqnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tpluseqnode2*/, COLOR_TPluseq, ID_TPluseq)) /*cast TPluseq*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10966,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___APlusAssignOp___init_aplusassignop( variable3 /*tpluseqnode2*/); /*new APlusAssignOp*/ - variable4 = variable5; - variable1 = variable4 /*passignopnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(30)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction266___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction266::init (src/parser//parser.nit:10973,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction266].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction266].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction267___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction267::action (src/parser//parser.nit:10977,2--10987:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tminuseqnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tminuseqnode2*/, COLOR_TMinuseq, ID_TMinuseq)) /*cast TMinuseq*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10982,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AMinusAssignOp___init_aminusassignop( variable3 /*tminuseqnode2*/); /*new AMinusAssignOp*/ - variable4 = variable5; - variable1 = variable4 /*passignopnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(30)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction267___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction267::init (src/parser//parser.nit:10989,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction267].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction267].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction268___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction268::action (src/parser//parser.nit:10993,2--11007:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwdonode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwdonode2*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:10999,6--32\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11001,6--32\n"); nit_exit(1);} - variable7 = NEW_parser_prod___ADoExpr___init_adoexpr( variable4 /*tkwdonode2*/, variable5 /*pexprnode3*/); /*new ADoExpr*/ - variable6 = variable7; - variable1 = variable6 /*pexprnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(31)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction268___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction268::init (src/parser//parser.nit:11009,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction268].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction268].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction269___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction269::action (src/parser//parser.nit:11013,2--11039:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11025,6--32\n"); nit_exit(1);} - variable11 = variable7 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11027,6--32\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist6*/; - variable13 = TAG_Bool(( variable12 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11029,6--32\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist8*/; - variable14 = TAG_Bool(( variable13 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11031,6--32\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AIfExpr___init_aifexpr( variable10 /*tkwifnode2*/, variable11 /*pexprnode3*/, variable12 /*pexprnode4*/, variable13 /*pexprnode5*/); /*new AIfExpr*/ - variable14 = variable15; - variable1 = variable14 /*pexprnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction269___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction269::init (src/parser//parser.nit:11041,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction269].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction269].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction270___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction270::action (src/parser//parser.nit:11045,2--11067:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11055,6--32\n"); nit_exit(1);} - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11057,6--32\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist6*/; - variable11 = TAG_Bool(( variable10 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11059,6--32\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AIfExpr___init_aifexpr( variable8 /*tkwifnode2*/, variable9 /*pexprnode3*/, variable10 /*pexprnode4*/, NIT_NULL /*null*/); /*new AIfExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction270___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction270::init (src/parser//parser.nit:11069,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction270].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction270].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction271___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction271::action (src/parser//parser.nit:11073,2--11107:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable10 /*nodearraylist1*/; - variable12 = TAG_Bool(( variable11 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable11 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11086,6--32\n"); nit_exit(1);} - variable12 = variable8 /*nodearraylist3*/; - variable13 = TAG_Bool(( variable12 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11088,6--32\n"); nit_exit(1);} - variable14 = NEW_array___Array___init(); /*new Array[Object]*/ - variable13 = variable14; - variable14 = variable4 /*nodearraylist7*/; - variable15 = TAG_Bool(( variable14 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11091,6--32\n"); nit_exit(1);} - variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pexprnode5*/ == NIT_NULL /*null*/) || (( variable14 /*pexprnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pexprnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pexprnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pexprnode5*/,COLOR_kernel___Object_____eqeq))( variable14 /*pexprnode5*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable15)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable13 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable13 /*listnode6*/, variable14 /*pexprnode5*/) /*Array::add*/; - } - variable16 = NEW_parser_prod___ABlockExpr___init_ablockexpr( variable13 /*listnode6*/); /*new ABlockExpr*/ - variable15 = variable16; - variable16 = variable2 /*nodearraylist9*/; - variable17 = TAG_Bool(( variable16 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11099,6--32\n"); nit_exit(1);} - variable18 = NEW_parser_prod___AIfExpr___init_aifexpr( variable11 /*tkwifnode2*/, variable12 /*pexprnode3*/, variable15 /*pexprnode4*/, variable16 /*pexprnode7*/); /*new AIfExpr*/ - variable17 = variable18; - variable1 = variable17 /*pexprnode1*/ /*node_list=*/; - variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction271___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction271::init (src/parser//parser.nit:11109,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction271].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction271].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction272___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction272::action (src/parser//parser.nit:11113,2--11157:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable12 = variable11 /*nodearraylist1*/; - variable13 = TAG_Bool(( variable12 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable12 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11127,6--32\n"); nit_exit(1);} - variable13 = variable9 /*nodearraylist3*/; - variable14 = TAG_Bool(( variable13 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11129,6--32\n"); nit_exit(1);} - variable15 = NEW_array___Array___init(); /*new Array[Object]*/ - variable14 = variable15; - variable15 = variable5 /*nodearraylist7*/; - variable16 = TAG_Bool(( variable15 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11132,6--32\n"); nit_exit(1);} - variable16 = variable4 /*nodearraylist8*/; - variable17 = TAG_Bool(( variable16 /*listnode6*/==NIT_NULL) || VAL_ISA( variable16 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11134,6--38\n"); nit_exit(1);} - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pexprnode5*/ == NIT_NULL /*null*/) || (( variable15 /*pexprnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pexprnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pexprnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pexprnode5*/,COLOR_kernel___Object_____eqeq))( variable15 /*pexprnode5*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable17)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable14 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode7*/, variable15 /*pexprnode5*/) /*Array::add*/; - } - variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*listnode6*/ == NIT_NULL /*null*/) || (( variable16 /*listnode6*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable16 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable16 /*listnode6*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable17)) { /*if*/ - variable17 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode7*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable17)) { /*if*/ - variable14 = variable16 /*listnode6*/ /*listnode7=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode7*/, variable16 /*listnode6*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:8087 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:8089 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:8090 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction239____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8090); + } + REGB0 = ATTR_parser___ReduceAction239____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction239___init(val_t p0, val_t p1, int* init_table){ + int itpos233 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction239].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos233]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8093; + fra.me.meth = LOCATE_parser___ReduceAction239___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8093 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction239____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos233] = 1; + return; +} +void parser___ReduceAction240___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8097; + fra.me.meth = LOCATE_parser___ReduceAction240___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8099 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8100 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8101 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8102 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8105 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8105); + } + /* ./parser//parser.nit:8106 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable18 = NEW_parser_prod___ABlockExpr___init_ablockexpr( variable14 /*listnode7*/); /*new ABlockExpr*/ - variable17 = variable18; - variable18 = variable2 /*nodearraylist10*/; - variable19 = TAG_Bool(( variable18 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11149,6--32\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AIfExpr___init_aifexpr( variable12 /*tkwifnode2*/, variable13 /*pexprnode3*/, variable17 /*pexprnode4*/, variable18 /*pexprnode8*/); /*new AIfExpr*/ - variable19 = variable20; - variable1 = variable19 /*pexprnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction272___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction272::init (src/parser//parser.nit:11159,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction272].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction272].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction273___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction273::action (src/parser//parser.nit:11163,2--11185:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11173,6--32\n"); nit_exit(1);} - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11175,6--32\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist6*/; - variable11 = TAG_Bool(( variable10 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11177,6--32\n"); nit_exit(1);} - variable12 = NEW_parser_prod___AIfExpr___init_aifexpr( variable8 /*tkwifnode2*/, variable9 /*pexprnode3*/, NIT_NULL /*null*/, variable10 /*pexprnode5*/); /*new AIfExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction273___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction273::init (src/parser//parser.nit:11187,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction273].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction273].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction274___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction274::action (src/parser//parser.nit:11191,2--11214:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable9 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11202,6--32\n"); nit_exit(1);} - variable10 = variable6 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11204,6--32\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist7*/; - variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11206,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AIfExpr___init_aifexpr( variable9 /*tkwifnode2*/, variable10 /*pexprnode3*/, NIT_NULL /*null*/, variable11 /*pexprnode5*/); /*new AIfExpr*/ - variable12 = variable13; - variable1 = variable12 /*pexprnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction274___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction274::init (src/parser//parser.nit:11216,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction274].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction274].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction275___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction275::action (src/parser//parser.nit:11220,2--11228:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable2 /*nodearraylist2*/; - variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11226,6--32\n"); nit_exit(1);} - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(33)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction275___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction275::init (src/parser//parser.nit:11230,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction275].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction275].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction276___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction276::action (src/parser//parser.nit:11234,2--11239:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable1 = NIT_NULL /*null*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(33)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction276___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction276::init (src/parser//parser.nit:11241,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction276].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction276].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction277___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction277::action (src/parser//parser.nit:11245,2--11269:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*tkwwhilenode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwwhilenode2*/, COLOR_TKwwhile, ID_TKwwhile)) /*cast TKwwhile*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11255,6--38\n"); nit_exit(1);} - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11257,6--32\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*tkwdonode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwdonode4*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11259,6--32\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist6*/; - variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11261,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AWhileExpr___init_awhileexpr( variable8 /*tkwwhilenode2*/, variable9 /*pexprnode3*/, variable10 /*tkwdonode4*/, variable11 /*pexprnode5*/); /*new AWhileExpr*/ - variable12 = variable13; - variable1 = variable12 /*pexprnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(34)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction277___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction277::init (src/parser//parser.nit:11271,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction277].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction277].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction278___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction278::action (src/parser//parser.nit:11275,2--11294:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11283,6--32\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist3*/; - variable8 = TAG_Bool(( variable7 /*tkwdonode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwdonode3*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11285,6--32\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist4*/; - variable9 = TAG_Bool(( variable8 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11287,6--32\n"); nit_exit(1);} - variable10 = NEW_parser_prod___AForExpr___init_aforexpr( variable6 /*pexprnode2*/, variable7 /*tkwdonode3*/, variable8 /*pexprnode4*/); /*new AForExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(35)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction278___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction278::init (src/parser//parser.nit:11296,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction278].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction278].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction279___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction279::action (src/parser//parser.nit:11300,2--11322:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable9 = variable8 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*tkwfornode2*/==NIT_NULL) || VAL_ISA( variable9 /*tkwfornode2*/, COLOR_TKwfor, ID_TKwfor)) /*cast TKwfor*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11311,6--34\n"); nit_exit(1);} - variable10 = variable6 /*nodearraylist3*/; - variable11 = TAG_Bool(( variable10 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable10 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11313,6--28\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist7*/; - variable12 = TAG_Bool(( variable11 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11315,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AForVardeclExpr___init_aforvardeclexpr( variable9 /*tkwfornode2*/, variable10 /*tidnode3*/, variable11 /*pexprnode4*/); /*new AForVardeclExpr*/ - variable12 = variable13; - variable1 = variable12 /*pexprnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(36)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction279___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction279::init (src/parser//parser.nit:11324,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction279].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction279].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction280___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction280::action (src/parser//parser.nit:11328,2--11343:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwassertnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwassertnode2*/, COLOR_TKwassert, ID_TKwassert)) /*cast TKwassert*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11334,6--40\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11336,6--32\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AAssertExpr___init_aassertexpr( variable4 /*tkwassertnode2*/, NIT_NULL /*null*/, variable5 /*pexprnode4*/); /*new AAssertExpr*/ - variable6 = variable7; - variable1 = variable6 /*pexprnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(37)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction280___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction280::init (src/parser//parser.nit:11345,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction280].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction280].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction281___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction281::action (src/parser//parser.nit:11349,2--11367:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwassertnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwassertnode2*/, COLOR_TKwassert, ID_TKwassert)) /*cast TKwassert*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11356,6--40\n"); nit_exit(1);} - variable6 = variable3 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11358,6--28\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist3*/; - variable8 = TAG_Bool(( variable7 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11360,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AAssertExpr___init_aassertexpr( variable5 /*tkwassertnode2*/, variable6 /*tidnode3*/, variable7 /*pexprnode4*/); /*new AAssertExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(37)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction281___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction281::init (src/parser//parser.nit:11369,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction281].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction281].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction282___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction282::action (src/parser//parser.nit:11373,2--11381:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tidnode1*/==NIT_NULL) || VAL_ISA( variable4 /*tidnode1*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11379,6--28\n"); nit_exit(1);} - variable1 = variable4 /*tidnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(38)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction282___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction282::init (src/parser//parser.nit:11383,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction282].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction282].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction283___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction283::action (src/parser//parser.nit:11387,2--11394:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11392,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(39)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction283___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction283::init (src/parser//parser.nit:11396,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction283].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction283].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction284___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction284::action (src/parser//parser.nit:11400,2--11435:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable13 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11415,6--32\n"); nit_exit(1);} - variable14 = variable10 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11417,6--32\n"); nit_exit(1);} - variable15 = variable8 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tkwthennode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwthennode4*/, COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11419,6--36\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11421,6--32\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*tkwelsenode6*/==NIT_NULL) || VAL_ISA( variable17 /*tkwelsenode6*/, COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11423,6--36\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist11*/; - variable19 = TAG_Bool(( variable18 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11425,6--32\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AIfexprExpr___init_aifexprexpr( variable13 /*tkwifnode2*/, variable14 /*pexprnode3*/, variable15 /*tkwthennode4*/, variable16 /*pexprnode5*/, variable17 /*tkwelsenode6*/, variable18 /*pexprnode7*/); /*new AIfexprExpr*/ - variable19 = variable20; - variable1 = variable19 /*pexprnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(39)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction284___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction284::init (src/parser//parser.nit:11437,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction284].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction284].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction285___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction285::action (src/parser//parser.nit:11441,2--11448:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11446,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(40)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction285___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction285::init (src/parser//parser.nit:11450,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction285].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction285].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction286___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction286::action (src/parser//parser.nit:11454,2--11470:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11462,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11464,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AOrExpr___init_aorexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AOrExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(40)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction286___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction286::init (src/parser//parser.nit:11472,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction286].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction286].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction287___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction287::action (src/parser//parser.nit:11476,2--11492:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11484,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11486,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AAndExpr___init_aandexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AAndExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(40)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction287___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction287::init (src/parser//parser.nit:11494,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction287].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction287].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction288___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction288::action (src/parser//parser.nit:11498,2--11505:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11503,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(41)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction288___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction288::init (src/parser//parser.nit:11507,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction288].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction288].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction289___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction289::action (src/parser//parser.nit:11511,2--11526:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwnotnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwnotnode2*/, COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11518,6--34\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11520,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___ANotExpr___init_anotexpr( variable5 /*tkwnotnode2*/, variable6 /*pexprnode3*/); /*new ANotExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(41)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction289___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction289::init (src/parser//parser.nit:11528,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction289].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction289].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction290___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction290::action (src/parser//parser.nit:11532,2--11539:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11537,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction290___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction290::init (src/parser//parser.nit:11541,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction290].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction290].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction291___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction291::action (src/parser//parser.nit:11545,2--11561:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11553,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11555,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AEqExpr___init_aeqexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEqExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction291___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction291::init (src/parser//parser.nit:11563,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction291].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction291].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction292___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction292::action (src/parser//parser.nit:11567,2--11583:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11575,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11577,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AEeExpr___init_aeeexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction292___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction292::init (src/parser//parser.nit:11585,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction292].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction292].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction293___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction293::action (src/parser//parser.nit:11589,2--11605:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11597,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11599,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ANeExpr___init_aneexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ANeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction293___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction293::init (src/parser//parser.nit:11607,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction293].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction293].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction294___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction294::action (src/parser//parser.nit:11611,2--11627:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11619,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11621,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ALtExpr___init_altexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALtExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction294___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction294::init (src/parser//parser.nit:11629,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction294].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction294].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction295___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction295::action (src/parser//parser.nit:11633,2--11649:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11641,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11643,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ALeExpr___init_aleexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction295___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction295::init (src/parser//parser.nit:11651,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction295].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction295].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction296___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction296::action (src/parser//parser.nit:11655,2--11671:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11663,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11665,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AGtExpr___init_agtexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGtExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction296___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction296::init (src/parser//parser.nit:11673,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction296].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction296].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction297___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction297::action (src/parser//parser.nit:11677,2--11693:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11685,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11687,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AGeExpr___init_ageexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction297___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction297::init (src/parser//parser.nit:11695,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction297].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction297].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction298___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction298::action (src/parser//parser.nit:11699,2--11715:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11707,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11709,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AStarshipExpr___init_astarshipexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarshipExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction298___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction298::init (src/parser//parser.nit:11717,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction298].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction298].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction299___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction299::action (src/parser//parser.nit:11721,2--11737:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11729,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11731,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AIsaExpr___init_aisaexpr( variable6 /*pexprnode2*/, variable7 /*ptypenode3*/); /*new AIsaExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction299___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction299::init (src/parser//parser.nit:11739,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction299].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction299].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction300___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction300::action (src/parser//parser.nit:11743,2--11750:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11748,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(43)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction300___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction300::init (src/parser//parser.nit:11752,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction300].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction300].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction301___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction301::action (src/parser//parser.nit:11756,2--11772:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11764,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11766,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___APlusExpr___init_aplusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APlusExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(43)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction301___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction301::init (src/parser//parser.nit:11774,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction301].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction301].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction302___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction302::action (src/parser//parser.nit:11778,2--11794:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11786,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11788,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AMinusExpr___init_aminusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AMinusExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(43)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction302___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction302::init (src/parser//parser.nit:11796,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction302].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction302].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction303___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction303::action (src/parser//parser.nit:11800,2--11807:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11805,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(44)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction303___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction303::init (src/parser//parser.nit:11809,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction303].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction303].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction304___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction304::action (src/parser//parser.nit:11813,2--11829:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11821,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11823,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AStarExpr___init_astarexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(44)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction304___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction304::init (src/parser//parser.nit:11831,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction304].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction304].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction305___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction305::action (src/parser//parser.nit:11835,2--11851:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11843,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11845,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ASlashExpr___init_aslashexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ASlashExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(44)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction305___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction305::init (src/parser//parser.nit:11853,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction305].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction305].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction306___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction306::action (src/parser//parser.nit:11857,2--11873:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11865,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11867,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___APercentExpr___init_apercentexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APercentExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(44)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction306___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction306::init (src/parser//parser.nit:11875,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction306].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction306].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction307___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction307::action (src/parser//parser.nit:11879,2--11886:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11884,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(45)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction307___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction307::init (src/parser//parser.nit:11888,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction307].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction307].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction308___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction308::action (src/parser//parser.nit:11892,2--11907:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11899,6--34\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11901,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AUminusExpr___init_auminusexpr( variable5 /*tminusnode2*/, variable6 /*pexprnode3*/); /*new AUminusExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(45)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction308___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction308::init (src/parser//parser.nit:11909,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction308].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction308].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction309___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction309::action (src/parser//parser.nit:11913,2--11928:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwoncenode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwoncenode2*/, COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11920,6--36\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11922,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AOnceExpr___init_aonceexpr( variable5 /*tkwoncenode2*/, variable6 /*pexprnode3*/); /*new AOnceExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(45)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction309___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction309::init (src/parser//parser.nit:11930,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction309].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction309].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction310___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction310::action (src/parser//parser.nit:11934,2--11941:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11939,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(46)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction310___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction310::init (src/parser//parser.nit:11943,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction310].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction310].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction311___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction311::action (src/parser//parser.nit:11947,2--11975:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable5 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11956,6--34\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable8 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11958,6--32\n"); nit_exit(1);} - variable9 = variable2 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11960,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:8107 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]); + } + /* ./parser//parser.nit:8109 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:8110 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:8111 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction240____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8111); + } + REGB0 = ATTR_parser___ReduceAction240____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction240___init(val_t p0, val_t p1, int* init_table){ + int itpos234 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction240].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos234]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8114; + fra.me.meth = LOCATE_parser___ReduceAction240___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8114 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction240____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos234] = 1; + return; +} +void parser___ReduceAction241___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8118; + fra.me.meth = LOCATE_parser___ReduceAction241___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8120 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8121 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8122 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8123 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8124 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8125 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8126 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8128 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8128); + } + /* ./parser//parser.nit:8130 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8130); + } + /* ./parser//parser.nit:8132 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8132); + } + /* ./parser//parser.nit:8134 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8134); + } + /* ./parser//parser.nit:8136 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8136); + } + /* ./parser//parser.nit:8137 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[7], fra.me.REG[6], fra.me.REG[8], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8145 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8146 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction241____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8146); + } + REGB0 = ATTR_parser___ReduceAction241____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction241___init(val_t p0, val_t p1, int* init_table){ + int itpos235 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction241].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos235]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8149; + fra.me.meth = LOCATE_parser___ReduceAction241___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8149 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction241____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos235] = 1; + return; +} +void parser___ReduceAction242___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8153; + fra.me.meth = LOCATE_parser___ReduceAction242___action; + fra.me.has_broke = 0; + fra.me.REG_size = 10; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[9] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8155 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8156 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8157 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8158 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8159 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8160 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8161 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8162 */ + fra.me.REG[9] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8164 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8164); + } + /* ./parser//parser.nit:8166 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8166); + } + /* ./parser//parser.nit:8168 */ + REGB0 = TAG_Bool((fra.me.REG[6]!=NIT_NULL) && VAL_ISA(fra.me.REG[6], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8168); + } + /* ./parser//parser.nit:8169 */ + fra.me.REG[6] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[9], fra.me.REG[6]); + fra.me.REG[9] = fra.me.REG[6]; + /* ./parser//parser.nit:8171 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8171); + } + /* ./parser//parser.nit:8173 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8173); + } + /* ./parser//parser.nit:8175 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8175); + } + /* ./parser//parser.nit:8176 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[8], fra.me.REG[7], fra.me.REG[9], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8184 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8185 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction242____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8185); + } + REGB0 = ATTR_parser___ReduceAction242____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction242___init(val_t p0, val_t p1, int* init_table){ + int itpos236 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction242].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos236]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8188; + fra.me.meth = LOCATE_parser___ReduceAction242___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8188 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction242____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos236] = 1; + return; +} +void parser___ReduceAction243___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8192; + fra.me.meth = LOCATE_parser___ReduceAction243___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8194 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8195 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8196 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8197 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8198 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8199 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8201 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8201); + } + /* ./parser//parser.nit:8203 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8203); + } + /* ./parser//parser.nit:8205 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8205); + } + /* ./parser//parser.nit:8207 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8207); + } + /* ./parser//parser.nit:8208 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[6], fra.me.REG[5], fra.me.REG[7], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:8216 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8217 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction243____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8217); + } + REGB0 = ATTR_parser___ReduceAction243____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction243___init(val_t p0, val_t p1, int* init_table){ + int itpos237 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction243].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos237]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8220; + fra.me.meth = LOCATE_parser___ReduceAction243___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8220 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction243____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos237] = 1; + return; +} +void parser___ReduceAction244___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8224; + fra.me.meth = LOCATE_parser___ReduceAction244___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8226 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8227 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8228 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8229 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8230 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8231 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8232 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8234 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8234); + } + /* ./parser//parser.nit:8236 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8236); + } + /* ./parser//parser.nit:8238 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8238); + } + /* ./parser//parser.nit:8239 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[5]); + fra.me.REG[8] = fra.me.REG[5]; + /* ./parser//parser.nit:8241 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8241); + } + /* ./parser//parser.nit:8243 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8243); + } + /* ./parser//parser.nit:8244 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[7], fra.me.REG[6], fra.me.REG[8], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:8252 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8253 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction244____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8253); + } + REGB0 = ATTR_parser___ReduceAction244____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction244___init(val_t p0, val_t p1, int* init_table){ + int itpos238 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction244].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos238]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8256; + fra.me.meth = LOCATE_parser___ReduceAction244___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8256 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction244____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos238] = 1; + return; +} +void parser___ReduceAction245___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8260; + fra.me.meth = LOCATE_parser___ReduceAction245___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8262 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8263 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8264 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8265 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8266 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8267 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8268 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8270 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8270); + } + /* ./parser//parser.nit:8272 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8272); + } + /* ./parser//parser.nit:8274 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8274); + } + /* ./parser//parser.nit:8275 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:8283 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8284 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction245____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8284); + } + REGB0 = ATTR_parser___ReduceAction245____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction245___init(val_t p0, val_t p1, int* init_table){ + int itpos239 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction245].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos239]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8287; + fra.me.meth = LOCATE_parser___ReduceAction245___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8287 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction245____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos239] = 1; + return; +} +void parser___ReduceAction246___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8291; + fra.me.meth = LOCATE_parser___ReduceAction246___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8293 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8294 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8295 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8296 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8297 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8298 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8299 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8300 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8302 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8302); + } + /* ./parser//parser.nit:8304 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8304); + } + /* ./parser//parser.nit:8306 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8306); + } + /* ./parser//parser.nit:8307 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[4]); + fra.me.REG[7] = fra.me.REG[4]; + /* ./parser//parser.nit:8309 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8309); + } + /* ./parser//parser.nit:8310 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[6], fra.me.REG[5], fra.me.REG[7], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:8318 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8319 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction246____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8319); + } + REGB0 = ATTR_parser___ReduceAction246____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction246___init(val_t p0, val_t p1, int* init_table){ + int itpos240 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction246].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos240]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8322; + fra.me.meth = LOCATE_parser___ReduceAction246___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8322 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction246____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos240] = 1; + return; +} +void parser___ReduceAction247___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8326; + fra.me.meth = LOCATE_parser___ReduceAction247___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8328 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8329 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8330 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8331 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8332 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8333 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8334 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8336 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8336); + } + /* ./parser//parser.nit:8338 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8338); + } + /* ./parser//parser.nit:8340 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8340); + } + /* ./parser//parser.nit:8342 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8342); + } + /* ./parser//parser.nit:8343 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[6], fra.me.REG[5], fra.me.REG[7], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:8351 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8352 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction247____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8352); + } + REGB0 = ATTR_parser___ReduceAction247____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction247___init(val_t p0, val_t p1, int* init_table){ + int itpos241 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction247].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos241]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8355; + fra.me.meth = LOCATE_parser___ReduceAction247___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8355 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction247____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos241] = 1; + return; +} +void parser___ReduceAction248___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8359; + fra.me.meth = LOCATE_parser___ReduceAction248___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8361 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8362 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8363 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8364 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8365 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8366 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8367 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8368 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8370 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8370); + } + /* ./parser//parser.nit:8372 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8372); + } + /* ./parser//parser.nit:8374 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8374); + } + /* ./parser//parser.nit:8375 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[5]); + fra.me.REG[8] = fra.me.REG[5]; + /* ./parser//parser.nit:8377 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8377); + } + /* ./parser//parser.nit:8379 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8379); + } + /* ./parser//parser.nit:8380 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[7], fra.me.REG[6], fra.me.REG[8], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:8388 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8389 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction248____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8389); + } + REGB0 = ATTR_parser___ReduceAction248____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction248___init(val_t p0, val_t p1, int* init_table){ + int itpos242 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction248].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos242]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8392; + fra.me.meth = LOCATE_parser___ReduceAction248___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8392 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction248____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos242] = 1; + return; +} +void parser___ReduceAction249___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8396; + fra.me.meth = LOCATE_parser___ReduceAction249___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8398 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8399 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8400 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8401 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8402 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8403 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8405 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8405); + } + /* ./parser//parser.nit:8407 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8407); + } + /* ./parser//parser.nit:8409 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8409); + } + /* ./parser//parser.nit:8410 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6], fra.me.REG[3], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:8418 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8419 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction249____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8419); + } + REGB0 = ATTR_parser___ReduceAction249____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction249___init(val_t p0, val_t p1, int* init_table){ + int itpos243 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction249].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos243]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8422; + fra.me.meth = LOCATE_parser___ReduceAction249___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8422 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction249____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos243] = 1; + return; +} +void parser___ReduceAction250___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8426; + fra.me.meth = LOCATE_parser___ReduceAction250___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8428 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8429 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8430 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8431 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8432 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8433 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8434 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8436 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TBang, ID_TBang)) /*cast nullable TBang*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8436); + } + /* ./parser//parser.nit:8438 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AClosureId, ID_AClosureId)) /*cast nullable AClosureId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8438); + } + /* ./parser//parser.nit:8440 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8440); + } + /* ./parser//parser.nit:8441 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[4]); + fra.me.REG[7] = fra.me.REG[4]; + /* ./parser//parser.nit:8443 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8443); + } + /* ./parser//parser.nit:8444 */ + fra.me.REG[3] = NEW_AClosureDef_parser_prod___AClosureDef___init_aclosuredef(fra.me.REG[6], fra.me.REG[5], fra.me.REG[7], fra.me.REG[3], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:8452 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8453 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction250____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8453); + } + REGB0 = ATTR_parser___ReduceAction250____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction250___init(val_t p0, val_t p1, int* init_table){ + int itpos244 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction250].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos244]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8456; + fra.me.meth = LOCATE_parser___ReduceAction250___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8456 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction250____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos244] = 1; + return; +} +void parser___ReduceAction251___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8460; + fra.me.meth = LOCATE_parser___ReduceAction251___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8462 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8463 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8465 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8465); + } + /* ./parser//parser.nit:8466 */ + fra.me.REG[3] = NEW_ASimpleClosureId_parser_prod___ASimpleClosureId___init_asimpleclosureid(fra.me.REG[3]); + /* ./parser//parser.nit:8469 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8470 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction251____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8470); + } + REGB0 = ATTR_parser___ReduceAction251____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction251___init(val_t p0, val_t p1, int* init_table){ + int itpos245 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction251].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos245]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8473; + fra.me.meth = LOCATE_parser___ReduceAction251___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8473 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction251____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos245] = 1; + return; +} +void parser___ReduceAction252___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8477; + fra.me.meth = LOCATE_parser___ReduceAction252___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8479 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8480 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8482 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwbreak, ID_TKwbreak)) /*cast nullable TKwbreak*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8482); + } + /* ./parser//parser.nit:8483 */ + fra.me.REG[3] = NEW_ABreakClosureId_parser_prod___ABreakClosureId___init_abreakclosureid(fra.me.REG[3]); + /* ./parser//parser.nit:8486 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8487 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction252____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8487); + } + REGB0 = ATTR_parser___ReduceAction252____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction252___init(val_t p0, val_t p1, int* init_table){ + int itpos246 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction252].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos246]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8490; + fra.me.meth = LOCATE_parser___ReduceAction252___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8490 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction252____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos246] = 1; + return; +} +void parser___ReduceAction253___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8494; + fra.me.meth = LOCATE_parser___ReduceAction253___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8496 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8497 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8499 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8499); + } + /* ./parser//parser.nit:8500 */ + fra.me.REG[3] = NEW_AContinueExpr_parser_prod___AContinueExpr___init_acontinueexpr(NIT_NULL, NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:8505 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8506 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction253____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8506); + } + REGB0 = ATTR_parser___ReduceAction253____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction253___init(val_t p0, val_t p1, int* init_table){ + int itpos247 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction253].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos247]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8509; + fra.me.meth = LOCATE_parser___ReduceAction253___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8509 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction253____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos247] = 1; + return; +} +void parser___ReduceAction254___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8513; + fra.me.meth = LOCATE_parser___ReduceAction254___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8515 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8516 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8517 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8519 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8519); + } + /* ./parser//parser.nit:8521 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8521); + } + /* ./parser//parser.nit:8522 */ + fra.me.REG[3] = NEW_AVardeclExpr_parser_prod___AVardeclExpr___init_avardeclexpr(fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:8529 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8530 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction254____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8530); + } + REGB0 = ATTR_parser___ReduceAction254____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction254___init(val_t p0, val_t p1, int* init_table){ + int itpos248 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction254].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos248]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8533; + fra.me.meth = LOCATE_parser___ReduceAction254___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8533 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction254____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos248] = 1; + return; +} +void parser___ReduceAction255___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8537; + fra.me.meth = LOCATE_parser___ReduceAction255___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8539 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8540 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8541 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8542 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8544 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8544); + } + /* ./parser//parser.nit:8546 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8546); + } + /* ./parser//parser.nit:8548 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8548); + } + /* ./parser//parser.nit:8549 */ + fra.me.REG[3] = NEW_AVardeclExpr_parser_prod___AVardeclExpr___init_avardeclexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL, NIT_NULL); + /* ./parser//parser.nit:8556 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8557 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction255____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8557); + } + REGB0 = ATTR_parser___ReduceAction255____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction255___init(val_t p0, val_t p1, int* init_table){ + int itpos249 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction255].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos249]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8560; + fra.me.meth = LOCATE_parser___ReduceAction255___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8560 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction255____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos249] = 1; + return; +} +void parser___ReduceAction256___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8564; + fra.me.meth = LOCATE_parser___ReduceAction256___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8566 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8567 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8568 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8569 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8570 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8571 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8573 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8573); + } + /* ./parser//parser.nit:8575 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8575); + } + /* ./parser//parser.nit:8577 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8577); + } + /* ./parser//parser.nit:8579 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8579); + } + /* ./parser//parser.nit:8580 */ + fra.me.REG[3] = NEW_AVardeclExpr_parser_prod___AVardeclExpr___init_avardeclexpr(fra.me.REG[6], fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8587 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8588 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction256____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8588); + } + REGB0 = ATTR_parser___ReduceAction256____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction256___init(val_t p0, val_t p1, int* init_table){ + int itpos250 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction256].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos250]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8591; + fra.me.meth = LOCATE_parser___ReduceAction256___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8591 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction256____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos250] = 1; + return; +} +void parser___ReduceAction257___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8595; + fra.me.meth = LOCATE_parser___ReduceAction257___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8597 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8598 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8599 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8600 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8601 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8602 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8603 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8605 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwvar, ID_TKwvar)) /*cast nullable TKwvar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8605); + } + /* ./parser//parser.nit:8607 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8607); + } + /* ./parser//parser.nit:8609 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8609); + } + /* ./parser//parser.nit:8611 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8611); + } + /* ./parser//parser.nit:8613 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8613); + } + /* ./parser//parser.nit:8614 */ + fra.me.REG[3] = NEW_AVardeclExpr_parser_prod___AVardeclExpr___init_avardeclexpr(fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8621 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8622 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction257____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8622); + } + REGB0 = ATTR_parser___ReduceAction257____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction257___init(val_t p0, val_t p1, int* init_table){ + int itpos251 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction257].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos251]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8625; + fra.me.meth = LOCATE_parser___ReduceAction257___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8625 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction257____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos251] = 1; + return; +} +void parser___ReduceAction258___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8629; + fra.me.meth = LOCATE_parser___ReduceAction258___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8631 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8632 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8633 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8634 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8635 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8636 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8637 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8639 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8639); + } + /* ./parser//parser.nit:8641 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8641); + } + /* ./parser//parser.nit:8643 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8643); + } + /* ./parser//parser.nit:8645 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8645); + } + /* ./parser//parser.nit:8646 */ + fra.me.REG[3] = NEW_AAttrAssignExpr_parser_prod___AAttrAssignExpr___init_aattrassignexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8652 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8653 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction258____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8653); + } + REGB0 = ATTR_parser___ReduceAction258____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction258___init(val_t p0, val_t p1, int* init_table){ + int itpos252 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction258].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos252]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8656; + fra.me.meth = LOCATE_parser___ReduceAction258___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8656 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction258____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos252] = 1; + return; +} +void parser___ReduceAction259___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8660; + fra.me.meth = LOCATE_parser___ReduceAction259___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8662 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8663 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8664 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8665 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8666 */ + fra.me.REG[6] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:8669 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8669); + } + /* ./parser//parser.nit:8671 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8671); + } + /* ./parser//parser.nit:8673 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8673); + } + /* ./parser//parser.nit:8674 */ + fra.me.REG[3] = NEW_AAttrAssignExpr_parser_prod___AAttrAssignExpr___init_aattrassignexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8680 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8681 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction259____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8681); + } + REGB0 = ATTR_parser___ReduceAction259____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction259___init(val_t p0, val_t p1, int* init_table){ + int itpos253 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction259].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos253]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8684; + fra.me.meth = LOCATE_parser___ReduceAction259___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8684 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction259____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos253] = 1; + return; +} +void parser___ReduceAction260___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8688; + fra.me.meth = LOCATE_parser___ReduceAction260___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8690 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8691 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8692 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8693 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8694 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8695 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8696 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8697 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8698 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8700 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8700); + } + /* ./parser//parser.nit:8702 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8702); + } + /* ./parser//parser.nit:8704 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8704); + } + /* ./parser//parser.nit:8705 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[5]); + fra.me.REG[8] = fra.me.REG[5]; + /* ./parser//parser.nit:8707 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8707); + } + /* ./parser//parser.nit:8709 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8709); + } + /* ./parser//parser.nit:8710 */ + fra.me.REG[3] = NEW_ACallAssignExpr_parser_prod___ACallAssignExpr___init_acallassignexpr(fra.me.REG[7], fra.me.REG[6], fra.me.REG[8], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8717 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8718 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction260____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8718); + } + REGB0 = ATTR_parser___ReduceAction260____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction260___init(val_t p0, val_t p1, int* init_table){ + int itpos254 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction260].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos254]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8721; + fra.me.meth = LOCATE_parser___ReduceAction260___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8721 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction260____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos254] = 1; + return; +} +void parser___ReduceAction261___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8725; + fra.me.meth = LOCATE_parser___ReduceAction261___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8727 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8728 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8729 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8730 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8731 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8732 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8733 */ + fra.me.REG[8] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:8736 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8736); + } + /* ./parser//parser.nit:8738 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8738); + } + /* ./parser//parser.nit:8739 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[5]); + fra.me.REG[7] = fra.me.REG[5]; + /* ./parser//parser.nit:8741 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8741); + } + /* ./parser//parser.nit:8743 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8743); + } + /* ./parser//parser.nit:8744 */ + fra.me.REG[3] = NEW_ACallAssignExpr_parser_prod___ACallAssignExpr___init_acallassignexpr(fra.me.REG[8], fra.me.REG[6], fra.me.REG[7], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8751 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8752 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction261____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8752); + } + REGB0 = ATTR_parser___ReduceAction261____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction261___init(val_t p0, val_t p1, int* init_table){ + int itpos255 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction261].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos255]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8755; + fra.me.meth = LOCATE_parser___ReduceAction261___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8755 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction261____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos255] = 1; + return; +} +void parser___ReduceAction262___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8759; + fra.me.meth = LOCATE_parser___ReduceAction262___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8761 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8762 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8763 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8764 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8765 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8766 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8768 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8768); + } + /* ./parser//parser.nit:8770 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8770); + } + /* ./parser//parser.nit:8771 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[5]); + fra.me.REG[7] = fra.me.REG[5]; + /* ./parser//parser.nit:8773 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TAssign, ID_TAssign)) /*cast nullable TAssign*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8773); + } + /* ./parser//parser.nit:8775 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8775); + } + /* ./parser//parser.nit:8776 */ + fra.me.REG[3] = NEW_ABraAssignExpr_parser_prod___ABraAssignExpr___init_abraassignexpr(fra.me.REG[6], fra.me.REG[7], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8782 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8783 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction262____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8783); + } + REGB0 = ATTR_parser___ReduceAction262____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction262___init(val_t p0, val_t p1, int* init_table){ + int itpos256 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction262].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos256]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8786; + fra.me.meth = LOCATE_parser___ReduceAction262___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8786 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction262____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos256] = 1; + return; +} +void parser___ReduceAction263___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8790; + fra.me.meth = LOCATE_parser___ReduceAction263___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8792 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8793 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8794 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8795 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8796 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8797 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8798 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8800 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8800); + } + /* ./parser//parser.nit:8802 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8802); + } + /* ./parser//parser.nit:8804 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAssignOp, ID_AAssignOp)) /*cast nullable AAssignOp*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8804); + } + /* ./parser//parser.nit:8806 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8806); + } + /* ./parser//parser.nit:8807 */ + fra.me.REG[3] = NEW_AAttrReassignExpr_parser_prod___AAttrReassignExpr___init_aattrreassignexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8813 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8814 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction263____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8814); + } + REGB0 = ATTR_parser___ReduceAction263____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction263___init(val_t p0, val_t p1, int* init_table){ + int itpos257 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction263].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos257]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8817; + fra.me.meth = LOCATE_parser___ReduceAction263___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8817 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction263____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos257] = 1; + return; +} +void parser___ReduceAction264___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8821; + fra.me.meth = LOCATE_parser___ReduceAction264___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8823 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8824 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8825 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8826 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8827 */ + fra.me.REG[6] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:8830 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8830); + } + /* ./parser//parser.nit:8832 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAssignOp, ID_AAssignOp)) /*cast nullable AAssignOp*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8832); + } + /* ./parser//parser.nit:8834 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8834); + } + /* ./parser//parser.nit:8835 */ + fra.me.REG[3] = NEW_AAttrReassignExpr_parser_prod___AAttrReassignExpr___init_aattrreassignexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8841 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8842 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction264____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8842); + } + REGB0 = ATTR_parser___ReduceAction264____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction264___init(val_t p0, val_t p1, int* init_table){ + int itpos258 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction264].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos258]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8845; + fra.me.meth = LOCATE_parser___ReduceAction264___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8845 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction264____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos258] = 1; + return; +} +void parser___ReduceAction265___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8849; + fra.me.meth = LOCATE_parser___ReduceAction265___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8851 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8852 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8853 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8854 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8855 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8856 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8857 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8858 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8859 */ + fra.me.REG[8] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8861 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8861); + } + /* ./parser//parser.nit:8863 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8863); + } + /* ./parser//parser.nit:8865 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8865); + } + /* ./parser//parser.nit:8866 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[8], fra.me.REG[5]); + fra.me.REG[8] = fra.me.REG[5]; + /* ./parser//parser.nit:8868 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAssignOp, ID_AAssignOp)) /*cast nullable AAssignOp*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8868); + } + /* ./parser//parser.nit:8870 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8870); + } + /* ./parser//parser.nit:8871 */ + fra.me.REG[3] = NEW_ACallReassignExpr_parser_prod___ACallReassignExpr___init_acallreassignexpr(fra.me.REG[7], fra.me.REG[6], fra.me.REG[8], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8878 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8879 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction265____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8879); + } + REGB0 = ATTR_parser___ReduceAction265____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction265___init(val_t p0, val_t p1, int* init_table){ + int itpos259 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction265].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos259]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8882; + fra.me.meth = LOCATE_parser___ReduceAction265___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8882 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction265____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos259] = 1; + return; +} +void parser___ReduceAction266___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8886; + fra.me.meth = LOCATE_parser___ReduceAction266___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8888 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8889 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8890 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8891 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8892 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8893 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8894 */ + fra.me.REG[8] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:8897 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8897); + } + /* ./parser//parser.nit:8899 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8899); + } + /* ./parser//parser.nit:8900 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[5]); + fra.me.REG[7] = fra.me.REG[5]; + /* ./parser//parser.nit:8902 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAssignOp, ID_AAssignOp)) /*cast nullable AAssignOp*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8902); + } + /* ./parser//parser.nit:8904 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8904); + } + /* ./parser//parser.nit:8905 */ + fra.me.REG[3] = NEW_ACallReassignExpr_parser_prod___ACallReassignExpr___init_acallreassignexpr(fra.me.REG[8], fra.me.REG[6], fra.me.REG[7], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8912 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8913 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction266____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8913); + } + REGB0 = ATTR_parser___ReduceAction266____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction266___init(val_t p0, val_t p1, int* init_table){ + int itpos260 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction266].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos260]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8916; + fra.me.meth = LOCATE_parser___ReduceAction266___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8916 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction266____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos260] = 1; + return; +} +void parser___ReduceAction267___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8920; + fra.me.meth = LOCATE_parser___ReduceAction267___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8922 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8923 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8924 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8925 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8926 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8927 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:8929 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8929); + } + /* ./parser//parser.nit:8931 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8931); + } + /* ./parser//parser.nit:8932 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[5]); + fra.me.REG[7] = fra.me.REG[5]; + /* ./parser//parser.nit:8934 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AAssignOp, ID_AAssignOp)) /*cast nullable AAssignOp*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8934); + } + /* ./parser//parser.nit:8936 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8936); + } + /* ./parser//parser.nit:8937 */ + fra.me.REG[3] = NEW_ABraReassignExpr_parser_prod___ABraReassignExpr___init_abrareassignexpr(fra.me.REG[6], fra.me.REG[7], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:8943 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8944 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction267____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8944); + } + REGB0 = ATTR_parser___ReduceAction267____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction267___init(val_t p0, val_t p1, int* init_table){ + int itpos261 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction267].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos261]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8947; + fra.me.meth = LOCATE_parser___ReduceAction267___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8947 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction267____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos261] = 1; + return; +} +void parser___ReduceAction268___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8951; + fra.me.meth = LOCATE_parser___ReduceAction268___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8953 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8954 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8956 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TPluseq, ID_TPluseq)) /*cast nullable TPluseq*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8956); + } + /* ./parser//parser.nit:8957 */ + fra.me.REG[3] = NEW_APlusAssignOp_parser_prod___APlusAssignOp___init_aplusassignop(fra.me.REG[3]); + /* ./parser//parser.nit:8960 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8961 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction268____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8961); + } + REGB0 = ATTR_parser___ReduceAction268____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction268___init(val_t p0, val_t p1, int* init_table){ + int itpos262 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction268].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos262]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8964; + fra.me.meth = LOCATE_parser___ReduceAction268___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8964 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction268____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos262] = 1; + return; +} +void parser___ReduceAction269___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8968; + fra.me.meth = LOCATE_parser___ReduceAction269___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8970 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8971 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8973 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TMinuseq, ID_TMinuseq)) /*cast nullable TMinuseq*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8973); + } + /* ./parser//parser.nit:8974 */ + fra.me.REG[3] = NEW_AMinusAssignOp_parser_prod___AMinusAssignOp___init_aminusassignop(fra.me.REG[3]); + /* ./parser//parser.nit:8977 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:8978 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction269____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 8978); + } + REGB0 = ATTR_parser___ReduceAction269____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction269___init(val_t p0, val_t p1, int* init_table){ + int itpos263 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction269].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos263]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8981; + fra.me.meth = LOCATE_parser___ReduceAction269___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:8981 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction269____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos263] = 1; + return; +} +void parser___ReduceAction270___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 8985; + fra.me.meth = LOCATE_parser___ReduceAction270___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:8987 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:8988 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8989 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8990 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:8992 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8992); + } + /* ./parser//parser.nit:8994 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8994); + } + /* ./parser//parser.nit:8996 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 8996); + } + /* ./parser//parser.nit:8997 */ + fra.me.REG[3] = NEW_ADoExpr_parser_prod___ADoExpr___init_adoexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9002 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9003 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction270____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9003); + } + REGB0 = ATTR_parser___ReduceAction270____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction270___init(val_t p0, val_t p1, int* init_table){ + int itpos264 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction270].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos264]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9006; + fra.me.meth = LOCATE_parser___ReduceAction270___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9006 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction270____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos264] = 1; + return; +} +void parser___ReduceAction271___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9010; + fra.me.meth = LOCATE_parser___ReduceAction271___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9012 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9013 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9014 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9016 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9016); + } + /* ./parser//parser.nit:9018 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9018); + } + /* ./parser//parser.nit:9019 */ + fra.me.REG[3] = NEW_ADoExpr_parser_prod___ADoExpr___init_adoexpr(fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:9024 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9025 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction271____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9025); + } + REGB0 = ATTR_parser___ReduceAction271____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction271___init(val_t p0, val_t p1, int* init_table){ + int itpos265 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction271].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos265]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9028; + fra.me.meth = LOCATE_parser___ReduceAction271___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9028 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction271____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos265] = 1; + return; +} +void parser___ReduceAction272___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9032; + fra.me.meth = LOCATE_parser___ReduceAction272___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9034 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9035 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9036 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9037 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9038 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9039 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9040 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9041 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9042 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9044 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwif, ID_TKwif)) /*cast nullable TKwif*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9044); + } + /* ./parser//parser.nit:9046 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9046); + } + /* ./parser//parser.nit:9048 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9048); + } + /* ./parser//parser.nit:9050 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9050); + } + /* ./parser//parser.nit:9051 */ + fra.me.REG[3] = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9057 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9058 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction272____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9058); + } + REGB0 = ATTR_parser___ReduceAction272____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction272___init(val_t p0, val_t p1, int* init_table){ + int itpos266 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction272].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos266]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9061; + fra.me.meth = LOCATE_parser___ReduceAction272___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9061 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction272____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos266] = 1; + return; +} +void parser___ReduceAction273___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9065; + fra.me.meth = LOCATE_parser___ReduceAction273___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9067 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9068 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9069 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9070 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9071 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9072 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9073 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9075 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwif, ID_TKwif)) /*cast nullable TKwif*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9075); + } + /* ./parser//parser.nit:9077 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9077); + } + /* ./parser//parser.nit:9079 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9079); + } + /* ./parser//parser.nit:9080 */ + fra.me.REG[3] = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:9086 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9087 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction273____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9087); + } + REGB0 = ATTR_parser___ReduceAction273____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction273___init(val_t p0, val_t p1, int* init_table){ + int itpos267 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction273].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos267]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9090; + fra.me.meth = LOCATE_parser___ReduceAction273___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9090 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction273____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos267] = 1; + return; +} +void parser___ReduceAction274___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9094; + fra.me.meth = LOCATE_parser___ReduceAction274___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9096 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9097 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9098 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9099 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9100 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9101 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9102 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9103 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9104 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9106 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwif, ID_TKwif)) /*cast nullable TKwif*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9106); + } + /* ./parser//parser.nit:9108 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9108); + } + /* ./parser//parser.nit:9110 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9110); + } + /* ./parser//parser.nit:9112 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9112); + } + /* ./parser//parser.nit:9113 */ + fra.me.REG[3] = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9119 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9120 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction274____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9120); + } + REGB0 = ATTR_parser___ReduceAction274____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction274___init(val_t p0, val_t p1, int* init_table){ + int itpos268 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction274].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos268]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9123; + fra.me.meth = LOCATE_parser___ReduceAction274___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9123 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction274____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos268] = 1; + return; +} +void parser___ReduceAction275___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9127; + fra.me.meth = LOCATE_parser___ReduceAction275___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9129 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9130 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9131 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9132 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9133 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9134 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9135 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9137 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwif, ID_TKwif)) /*cast nullable TKwif*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9137); + } + /* ./parser//parser.nit:9139 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9139); + } + /* ./parser//parser.nit:9141 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9141); + } + /* ./parser//parser.nit:9142 */ + fra.me.REG[3] = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr(fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:9148 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9149 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction275____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9149); + } + REGB0 = ATTR_parser___ReduceAction275____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction275___init(val_t p0, val_t p1, int* init_table){ + int itpos269 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction275].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos269]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9152; + fra.me.meth = LOCATE_parser___ReduceAction275___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9152 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction275____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos269] = 1; + return; +} +void parser___ReduceAction276___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9156; + fra.me.meth = LOCATE_parser___ReduceAction276___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9158 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9159 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9160 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9161 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9162 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9163 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9164 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9165 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9167 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwif, ID_TKwif)) /*cast nullable TKwif*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9167); + } + /* ./parser//parser.nit:9169 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9169); + } + /* ./parser//parser.nit:9171 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9171); + } + /* ./parser//parser.nit:9172 */ + fra.me.REG[3] = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr(fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[3]); + /* ./parser//parser.nit:9178 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9179 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction276____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9179); + } + REGB0 = ATTR_parser___ReduceAction276____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction276___init(val_t p0, val_t p1, int* init_table){ + int itpos270 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction276].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos270]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9182; + fra.me.meth = LOCATE_parser___ReduceAction276___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9182 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction276____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos270] = 1; + return; +} +void parser___ReduceAction279___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9186; + fra.me.meth = LOCATE_parser___ReduceAction279___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9188 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9189 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9190 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9191 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9193 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwloop, ID_TKwloop)) /*cast nullable TKwloop*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9193); + } + /* ./parser//parser.nit:9195 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9195); + } + /* ./parser//parser.nit:9197 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9197); + } + /* ./parser//parser.nit:9198 */ + fra.me.REG[3] = NEW_ALoopExpr_parser_prod___ALoopExpr___init_aloopexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9203 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9204 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction279____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9204); + } + REGB0 = ATTR_parser___ReduceAction279____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction279___init(val_t p0, val_t p1, int* init_table){ + int itpos271 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction279].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos271]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9207; + fra.me.meth = LOCATE_parser___ReduceAction279___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9207 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction279____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos271] = 1; + return; +} +void parser___ReduceAction280___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9211; + fra.me.meth = LOCATE_parser___ReduceAction280___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9213 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9214 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9215 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9217 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwloop, ID_TKwloop)) /*cast nullable TKwloop*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9217); + } + /* ./parser//parser.nit:9219 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9219); + } + /* ./parser//parser.nit:9220 */ + fra.me.REG[3] = NEW_ALoopExpr_parser_prod___ALoopExpr___init_aloopexpr(fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:9225 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9226 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction280____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9226); + } + REGB0 = ATTR_parser___ReduceAction280____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction280___init(val_t p0, val_t p1, int* init_table){ + int itpos272 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction280].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos272]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9229; + fra.me.meth = LOCATE_parser___ReduceAction280___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9229 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction280____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos272] = 1; + return; +} +void parser___ReduceAction281___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9233; + fra.me.meth = LOCATE_parser___ReduceAction281___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9235 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9236 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9237 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9238 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9239 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9240 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9241 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9242 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9244 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwwhile, ID_TKwwhile)) /*cast nullable TKwwhile*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9244); + } + /* ./parser//parser.nit:9246 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9246); + } + /* ./parser//parser.nit:9248 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9248); + } + /* ./parser//parser.nit:9250 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9250); + } + /* ./parser//parser.nit:9252 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9252); + } + /* ./parser//parser.nit:9253 */ + fra.me.REG[3] = NEW_AWhileExpr_parser_prod___AWhileExpr___init_awhileexpr(fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9260 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9261 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction281____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9261); + } + REGB0 = ATTR_parser___ReduceAction281____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction281___init(val_t p0, val_t p1, int* init_table){ + int itpos273 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction281].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos273]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9264; + fra.me.meth = LOCATE_parser___ReduceAction281___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9264 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction281____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos273] = 1; + return; +} +void parser___ReduceAction282___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9268; + fra.me.meth = LOCATE_parser___ReduceAction282___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9270 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9271 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9272 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9273 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9274 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9275 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9276 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9278 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwwhile, ID_TKwwhile)) /*cast nullable TKwwhile*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9278); + } + /* ./parser//parser.nit:9280 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9280); + } + /* ./parser//parser.nit:9282 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9282); + } + /* ./parser//parser.nit:9284 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9284); + } + /* ./parser//parser.nit:9285 */ + fra.me.REG[3] = NEW_AWhileExpr_parser_prod___AWhileExpr___init_awhileexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:9292 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9293 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction282____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9293); + } + REGB0 = ATTR_parser___ReduceAction282____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction282___init(val_t p0, val_t p1, int* init_table){ + int itpos274 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction282].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos274]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9296; + fra.me.meth = LOCATE_parser___ReduceAction282___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9296 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction282____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos274] = 1; + return; +} +void parser___ReduceAction283___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9300; + fra.me.meth = LOCATE_parser___ReduceAction283___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9302 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9303 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9304 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9305 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9306 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9307 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9308 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9309 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9310 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9311 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9312 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9313 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9315 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwfor, ID_TKwfor)) /*cast nullable TKwfor*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9315); + } + /* ./parser//parser.nit:9317 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9317); + } + /* ./parser//parser.nit:9319 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9319); + } + /* ./parser//parser.nit:9321 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9321); + } + /* ./parser//parser.nit:9323 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9323); + } + /* ./parser//parser.nit:9325 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_ALabel, ID_ALabel)) /*cast nullable ALabel*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9325); + } + /* ./parser//parser.nit:9326 */ + fra.me.REG[3] = NEW_AForExpr_parser_prod___AForExpr___init_aforexpr(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9334 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9335 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction283____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9335); + } + REGB0 = ATTR_parser___ReduceAction283____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction283___init(val_t p0, val_t p1, int* init_table){ + int itpos275 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction283].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos275]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9338; + fra.me.meth = LOCATE_parser___ReduceAction283___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9338 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction283____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos275] = 1; + return; +} +void parser___ReduceAction284___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9342; + fra.me.meth = LOCATE_parser___ReduceAction284___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9344 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9345 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9346 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9347 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9348 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9349 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9350 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9351 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9352 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9353 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9354 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9356 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_TKwfor, ID_TKwfor)) /*cast nullable TKwfor*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9356); + } + /* ./parser//parser.nit:9358 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9358); + } + /* ./parser//parser.nit:9360 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9360); + } + /* ./parser//parser.nit:9362 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwdo, ID_TKwdo)) /*cast nullable TKwdo*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9362); + } + /* ./parser//parser.nit:9364 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9364); + } + /* ./parser//parser.nit:9365 */ + fra.me.REG[3] = NEW_AForExpr_parser_prod___AForExpr___init_aforexpr(fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:9373 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9374 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction284____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9374); + } + REGB0 = ATTR_parser___ReduceAction284____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction284___init(val_t p0, val_t p1, int* init_table){ + int itpos276 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction284].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos276]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9377; + fra.me.meth = LOCATE_parser___ReduceAction284___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9377 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction284____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos276] = 1; + return; +} +void parser___ReduceAction285___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9381; + fra.me.meth = LOCATE_parser___ReduceAction285___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9383 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9384 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9385 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9386 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9387 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9389 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwassert, ID_TKwassert)) /*cast nullable TKwassert*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9389); + } + /* ./parser//parser.nit:9391 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9391); + } + /* ./parser//parser.nit:9393 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9393); + } + /* ./parser//parser.nit:9394 */ + fra.me.REG[3] = NEW_AAssertExpr_parser_prod___AAssertExpr___init_aassertexpr(fra.me.REG[5], NIT_NULL, fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9400 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9401 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction285____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9401); + } + REGB0 = ATTR_parser___ReduceAction285____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction285___init(val_t p0, val_t p1, int* init_table){ + int itpos277 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction285].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos277]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9404; + fra.me.meth = LOCATE_parser___ReduceAction285___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9404 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction285____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos277] = 1; + return; +} +void parser___ReduceAction286___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9408; + fra.me.meth = LOCATE_parser___ReduceAction286___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9410 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9411 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9412 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9413 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9414 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9415 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9417 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwassert, ID_TKwassert)) /*cast nullable TKwassert*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9417); + } + /* ./parser//parser.nit:9419 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9419); + } + /* ./parser//parser.nit:9421 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9421); + } + /* ./parser//parser.nit:9423 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9423); + } + /* ./parser//parser.nit:9424 */ + fra.me.REG[3] = NEW_AAssertExpr_parser_prod___AAssertExpr___init_aassertexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9430 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9431 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction286____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9431); + } + REGB0 = ATTR_parser___ReduceAction286____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction286___init(val_t p0, val_t p1, int* init_table){ + int itpos278 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction286].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos278]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9434; + fra.me.meth = LOCATE_parser___ReduceAction286___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9434 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction286____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos278] = 1; + return; +} +void parser___ReduceAction287___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9438; + fra.me.meth = LOCATE_parser___ReduceAction287___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9440 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9441 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9442 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9444 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwassert, ID_TKwassert)) /*cast nullable TKwassert*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9444); + } + /* ./parser//parser.nit:9446 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9446); + } + /* ./parser//parser.nit:9447 */ + fra.me.REG[3] = NEW_AAssertExpr_parser_prod___AAssertExpr___init_aassertexpr(fra.me.REG[4], NIT_NULL, fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:9453 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9454 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction287____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9454); + } + REGB0 = ATTR_parser___ReduceAction287____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction287___init(val_t p0, val_t p1, int* init_table){ + int itpos279 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction287].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos279]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9457; + fra.me.meth = LOCATE_parser___ReduceAction287___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9457 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction287____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos279] = 1; + return; +} +void parser___ReduceAction288___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9461; + fra.me.meth = LOCATE_parser___ReduceAction288___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9463 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9464 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9465 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9466 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9468 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwassert, ID_TKwassert)) /*cast nullable TKwassert*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9468); + } + /* ./parser//parser.nit:9470 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9470); + } + /* ./parser//parser.nit:9472 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9472); + } + /* ./parser//parser.nit:9473 */ + fra.me.REG[3] = NEW_AAssertExpr_parser_prod___AAssertExpr___init_aassertexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3], NIT_NULL); + /* ./parser//parser.nit:9479 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9480 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction288____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9480); + } + REGB0 = ATTR_parser___ReduceAction288____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction288___init(val_t p0, val_t p1, int* init_table){ + int itpos280 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction288].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos280]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9483; + fra.me.meth = LOCATE_parser___ReduceAction288___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9483 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction288____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos280] = 1; + return; +} +void parser___ReduceAction289___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9487; + fra.me.meth = LOCATE_parser___ReduceAction289___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9489 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9490 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9491 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9493 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9494 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction289____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9494); + } + REGB0 = ATTR_parser___ReduceAction289____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction289___init(val_t p0, val_t p1, int* init_table){ + int itpos281 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction289].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos281]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9497; + fra.me.meth = LOCATE_parser___ReduceAction289___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9497 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction289____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos281] = 1; + return; +} +void parser___ReduceAction293___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9501; + fra.me.meth = LOCATE_parser___ReduceAction293___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9503 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9504 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9505 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9506 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9507 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:9508 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:9510 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9510); + } + /* ./parser//parser.nit:9512 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9512); + } + /* ./parser//parser.nit:9513 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:9515 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9515); + } + /* ./parser//parser.nit:9516 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[3]); + fra.me.REG[7] = fra.me.REG[3]; + /* ./parser//parser.nit:9517 */ + fra.me.REG[7] = NEW_ABraExpr_parser_prod___ABraExpr___init_abraexpr(fra.me.REG[5], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:9522 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:9523 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction293____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9523); + } + REGB0 = ATTR_parser___ReduceAction293____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction293___init(val_t p0, val_t p1, int* init_table){ + int itpos282 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction293].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos282]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9526; + fra.me.meth = LOCATE_parser___ReduceAction293___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9526 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction293____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos282] = 1; + return; +} +void parser___ReduceAction295___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[8];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9530; + fra.me.meth = LOCATE_parser___ReduceAction295___action; + fra.me.has_broke = 0; + fra.me.REG_size = 9; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[8] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9532 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9533 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9534 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9535 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9536 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9537 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9538 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9539 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9540 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9541 */ + fra.me.REG[7] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9542 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9543 */ + fra.me.REG[8] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9545 */ + REGB0 = TAG_Bool((fra.me.REG[8]==NIT_NULL) || VAL_ISA(fra.me.REG[8], COLOR_TKwif, ID_TKwif)) /*cast nullable TKwif*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9545); + } + /* ./parser//parser.nit:9547 */ + REGB0 = TAG_Bool((fra.me.REG[7]==NIT_NULL) || VAL_ISA(fra.me.REG[7], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9547); + } + /* ./parser//parser.nit:9549 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwthen, ID_TKwthen)) /*cast nullable TKwthen*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9549); + } + /* ./parser//parser.nit:9551 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9551); + } + /* ./parser//parser.nit:9553 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwelse, ID_TKwelse)) /*cast nullable TKwelse*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9553); + } + /* ./parser//parser.nit:9555 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9555); + } + /* ./parser//parser.nit:9556 */ + fra.me.REG[3] = NEW_AIfexprExpr_parser_prod___AIfexprExpr___init_aifexprexpr(fra.me.REG[8], fra.me.REG[7], fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9564 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9565 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction295____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9565); + } + REGB0 = ATTR_parser___ReduceAction295____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction295___init(val_t p0, val_t p1, int* init_table){ + int itpos283 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction295].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos283]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9568; + fra.me.meth = LOCATE_parser___ReduceAction295___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9568 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction295____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos283] = 1; + return; +} +void parser___ReduceAction297___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9572; + fra.me.meth = LOCATE_parser___ReduceAction297___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9574 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9575 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9576 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9577 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9578 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9580 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9580); + } + /* ./parser//parser.nit:9582 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9582); + } + /* ./parser//parser.nit:9583 */ + fra.me.REG[3] = NEW_AOrExpr_parser_prod___AOrExpr___init_aorexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9587 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9588 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction297____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9588); + } + REGB0 = ATTR_parser___ReduceAction297____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction297___init(val_t p0, val_t p1, int* init_table){ + int itpos284 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction297].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos284]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9591; + fra.me.meth = LOCATE_parser___ReduceAction297___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9591 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction297____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos284] = 1; + return; +} +void parser___ReduceAction298___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9595; + fra.me.meth = LOCATE_parser___ReduceAction298___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9597 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9598 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9599 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9600 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9601 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9603 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9603); + } + /* ./parser//parser.nit:9605 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9605); + } + /* ./parser//parser.nit:9606 */ + fra.me.REG[3] = NEW_AAndExpr_parser_prod___AAndExpr___init_aandexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9610 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9611 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction298____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9611); + } + REGB0 = ATTR_parser___ReduceAction298____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction298___init(val_t p0, val_t p1, int* init_table){ + int itpos285 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction298].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos285]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9614; + fra.me.meth = LOCATE_parser___ReduceAction298___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9614 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction298____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos285] = 1; + return; +} +void parser___ReduceAction299___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9618; + fra.me.meth = LOCATE_parser___ReduceAction299___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9620 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9621 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9622 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9623 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9624 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9625 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9627 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9627); + } + /* ./parser//parser.nit:9629 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9629); + } + /* ./parser//parser.nit:9630 */ + fra.me.REG[3] = NEW_AOrElseExpr_parser_prod___AOrElseExpr___init_aorelseexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9634 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9635 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction299____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9635); + } + REGB0 = ATTR_parser___ReduceAction299____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction299___init(val_t p0, val_t p1, int* init_table){ + int itpos286 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction299].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos286]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9638; + fra.me.meth = LOCATE_parser___ReduceAction299___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9638 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction299____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos286] = 1; + return; +} +void parser___ReduceAction301___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9642; + fra.me.meth = LOCATE_parser___ReduceAction301___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9644 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9645 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9646 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9647 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9649 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwnot, ID_TKwnot)) /*cast nullable TKwnot*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9649); + } + /* ./parser//parser.nit:9651 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9651); + } + /* ./parser//parser.nit:9652 */ + fra.me.REG[3] = NEW_ANotExpr_parser_prod___ANotExpr___init_anotexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9656 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9657 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction301____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9657); + } + REGB0 = ATTR_parser___ReduceAction301____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction301___init(val_t p0, val_t p1, int* init_table){ + int itpos287 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction301].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos287]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9660; + fra.me.meth = LOCATE_parser___ReduceAction301___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9660 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction301____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos287] = 1; + return; +} +void parser___ReduceAction303___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9664; + fra.me.meth = LOCATE_parser___ReduceAction303___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9666 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9667 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9668 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9669 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9670 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9672 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9672); + } + /* ./parser//parser.nit:9674 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9674); + } + /* ./parser//parser.nit:9675 */ + fra.me.REG[3] = NEW_AEqExpr_parser_prod___AEqExpr___init_aeqexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9679 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9680 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction303____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9680); + } + REGB0 = ATTR_parser___ReduceAction303____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction303___init(val_t p0, val_t p1, int* init_table){ + int itpos288 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction303].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos288]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9683; + fra.me.meth = LOCATE_parser___ReduceAction303___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9683 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction303____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos288] = 1; + return; +} +void parser___ReduceAction304___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9687; + fra.me.meth = LOCATE_parser___ReduceAction304___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9689 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9690 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9691 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9692 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9693 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9695 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9695); + } + /* ./parser//parser.nit:9697 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9697); + } + /* ./parser//parser.nit:9698 */ + fra.me.REG[3] = NEW_AEeExpr_parser_prod___AEeExpr___init_aeeexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9702 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9703 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction304____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9703); + } + REGB0 = ATTR_parser___ReduceAction304____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction304___init(val_t p0, val_t p1, int* init_table){ + int itpos289 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction304].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos289]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9706; + fra.me.meth = LOCATE_parser___ReduceAction304___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9706 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction304____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos289] = 1; + return; +} +void parser___ReduceAction305___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9710; + fra.me.meth = LOCATE_parser___ReduceAction305___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9712 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9713 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9714 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9715 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9716 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9718 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9718); + } + /* ./parser//parser.nit:9720 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9720); + } + /* ./parser//parser.nit:9721 */ + fra.me.REG[3] = NEW_ANeExpr_parser_prod___ANeExpr___init_aneexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9725 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9726 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction305____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9726); + } + REGB0 = ATTR_parser___ReduceAction305____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction305___init(val_t p0, val_t p1, int* init_table){ + int itpos290 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction305].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos290]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9729; + fra.me.meth = LOCATE_parser___ReduceAction305___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9729 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction305____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos290] = 1; + return; +} +void parser___ReduceAction306___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9733; + fra.me.meth = LOCATE_parser___ReduceAction306___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9735 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9736 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9737 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9738 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9739 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9741 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9741); + } + /* ./parser//parser.nit:9743 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9743); + } + /* ./parser//parser.nit:9744 */ + fra.me.REG[3] = NEW_ALtExpr_parser_prod___ALtExpr___init_altexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9748 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9749 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction306____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9749); + } + REGB0 = ATTR_parser___ReduceAction306____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction306___init(val_t p0, val_t p1, int* init_table){ + int itpos291 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction306].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos291]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9752; + fra.me.meth = LOCATE_parser___ReduceAction306___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9752 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction306____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos291] = 1; + return; +} +void parser___ReduceAction307___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9756; + fra.me.meth = LOCATE_parser___ReduceAction307___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9758 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9759 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9760 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9761 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9762 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9764 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9764); + } + /* ./parser//parser.nit:9766 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9766); + } + /* ./parser//parser.nit:9767 */ + fra.me.REG[3] = NEW_ALeExpr_parser_prod___ALeExpr___init_aleexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9771 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9772 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction307____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9772); + } + REGB0 = ATTR_parser___ReduceAction307____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction307___init(val_t p0, val_t p1, int* init_table){ + int itpos292 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction307].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos292]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9775; + fra.me.meth = LOCATE_parser___ReduceAction307___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9775 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction307____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos292] = 1; + return; +} +void parser___ReduceAction308___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9779; + fra.me.meth = LOCATE_parser___ReduceAction308___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9781 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9782 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9783 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9784 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9785 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9787 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9787); + } + /* ./parser//parser.nit:9789 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9789); + } + /* ./parser//parser.nit:9790 */ + fra.me.REG[3] = NEW_ALlExpr_parser_prod___ALlExpr___init_allexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9794 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9795 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction308____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9795); + } + REGB0 = ATTR_parser___ReduceAction308____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction308___init(val_t p0, val_t p1, int* init_table){ + int itpos293 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction308].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos293]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9798; + fra.me.meth = LOCATE_parser___ReduceAction308___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9798 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction308____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos293] = 1; + return; +} +void parser___ReduceAction309___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9802; + fra.me.meth = LOCATE_parser___ReduceAction309___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9804 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9805 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9806 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9807 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9808 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9810 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9810); + } + /* ./parser//parser.nit:9812 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9812); + } + /* ./parser//parser.nit:9813 */ + fra.me.REG[3] = NEW_AGtExpr_parser_prod___AGtExpr___init_agtexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9817 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9818 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction309____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9818); + } + REGB0 = ATTR_parser___ReduceAction309____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction309___init(val_t p0, val_t p1, int* init_table){ + int itpos294 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction309].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos294]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9821; + fra.me.meth = LOCATE_parser___ReduceAction309___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9821 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction309____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos294] = 1; + return; +} +void parser___ReduceAction310___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9825; + fra.me.meth = LOCATE_parser___ReduceAction310___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9827 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9828 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9829 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9830 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9831 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9833 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9833); + } + /* ./parser//parser.nit:9835 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9835); + } + /* ./parser//parser.nit:9836 */ + fra.me.REG[3] = NEW_AGeExpr_parser_prod___AGeExpr___init_ageexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9840 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9841 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction310____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9841); + } + REGB0 = ATTR_parser___ReduceAction310____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction310___init(val_t p0, val_t p1, int* init_table){ + int itpos295 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction310].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos295]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9844; + fra.me.meth = LOCATE_parser___ReduceAction310___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9844 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction310____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos295] = 1; + return; +} +void parser___ReduceAction311___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9848; + fra.me.meth = LOCATE_parser___ReduceAction311___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9850 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9851 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9852 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9853 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9854 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9856 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9856); + } + /* ./parser//parser.nit:9858 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9858); + } + /* ./parser//parser.nit:9859 */ + fra.me.REG[3] = NEW_AGgExpr_parser_prod___AGgExpr___init_aggexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9863 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9864 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction311____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9864); + } + REGB0 = ATTR_parser___ReduceAction311____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction311___init(val_t p0, val_t p1, int* init_table){ + int itpos296 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction311].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos296]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9867; + fra.me.meth = LOCATE_parser___ReduceAction311___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9867 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction311____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos296] = 1; + return; +} +void parser___ReduceAction312___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9871; + fra.me.meth = LOCATE_parser___ReduceAction312___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9873 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9874 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9875 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9876 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9877 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9879 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9879); + } + /* ./parser//parser.nit:9881 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9881); + } + /* ./parser//parser.nit:9882 */ + fra.me.REG[3] = NEW_AStarshipExpr_parser_prod___AStarshipExpr___init_astarshipexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9886 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9887 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction312____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9887); + } + REGB0 = ATTR_parser___ReduceAction312____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction312___init(val_t p0, val_t p1, int* init_table){ + int itpos297 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction312].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos297]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9890; + fra.me.meth = LOCATE_parser___ReduceAction312___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9890 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction312____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos297] = 1; + return; +} +void parser___ReduceAction313___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9894; + fra.me.meth = LOCATE_parser___ReduceAction313___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9896 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9897 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9898 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9899 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9900 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9902 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9902); + } + /* ./parser//parser.nit:9904 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9904); + } + /* ./parser//parser.nit:9905 */ + fra.me.REG[3] = NEW_AIsaExpr_parser_prod___AIsaExpr___init_aisaexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9909 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9910 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction313____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9910); + } + REGB0 = ATTR_parser___ReduceAction313____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction313___init(val_t p0, val_t p1, int* init_table){ + int itpos298 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction313].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos298]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9913; + fra.me.meth = LOCATE_parser___ReduceAction313___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9913 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction313____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos298] = 1; + return; +} +void parser___ReduceAction315___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9917; + fra.me.meth = LOCATE_parser___ReduceAction315___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9919 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9920 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9921 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9922 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9923 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9925 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9925); + } + /* ./parser//parser.nit:9927 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9927); + } + /* ./parser//parser.nit:9928 */ + fra.me.REG[3] = NEW_APlusExpr_parser_prod___APlusExpr___init_aplusexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9932 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9933 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction315____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9933); + } + REGB0 = ATTR_parser___ReduceAction315____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction315___init(val_t p0, val_t p1, int* init_table){ + int itpos299 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction315].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos299]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9936; + fra.me.meth = LOCATE_parser___ReduceAction315___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9936 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction315____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos299] = 1; + return; +} +void parser___ReduceAction316___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9940; + fra.me.meth = LOCATE_parser___ReduceAction316___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9942 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9943 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9944 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9945 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9946 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9948 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9948); + } + /* ./parser//parser.nit:9950 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9950); + } + /* ./parser//parser.nit:9951 */ + fra.me.REG[3] = NEW_AMinusExpr_parser_prod___AMinusExpr___init_aminusexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9955 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9956 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction316____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9956); + } + REGB0 = ATTR_parser___ReduceAction316____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction316___init(val_t p0, val_t p1, int* init_table){ + int itpos300 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction316].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos300]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9959; + fra.me.meth = LOCATE_parser___ReduceAction316___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9959 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction316____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos300] = 1; + return; +} +void parser___ReduceAction318___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9963; + fra.me.meth = LOCATE_parser___ReduceAction318___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9965 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9966 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9967 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9968 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9969 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9971 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9971); + } + /* ./parser//parser.nit:9973 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9973); + } + /* ./parser//parser.nit:9974 */ + fra.me.REG[3] = NEW_AStarExpr_parser_prod___AStarExpr___init_astarexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:9978 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:9979 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction318____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 9979); + } + REGB0 = ATTR_parser___ReduceAction318____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction318___init(val_t p0, val_t p1, int* init_table){ + int itpos301 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction318].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos301]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9982; + fra.me.meth = LOCATE_parser___ReduceAction318___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:9982 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction318____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos301] = 1; + return; +} +void parser___ReduceAction319___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 9986; + fra.me.meth = LOCATE_parser___ReduceAction319___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:9988 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:9989 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9990 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9991 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9992 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:9994 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9994); + } + /* ./parser//parser.nit:9996 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 9996); + } + /* ./parser//parser.nit:9997 */ + fra.me.REG[3] = NEW_ASlashExpr_parser_prod___ASlashExpr___init_aslashexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10001 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10002 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction319____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10002); + } + REGB0 = ATTR_parser___ReduceAction319____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction319___init(val_t p0, val_t p1, int* init_table){ + int itpos302 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction319].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos302]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10005; + fra.me.meth = LOCATE_parser___ReduceAction319___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10005 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction319____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos302] = 1; + return; +} +void parser___ReduceAction320___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10009; + fra.me.meth = LOCATE_parser___ReduceAction320___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10011 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10012 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10013 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10014 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10015 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10017 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10017); + } + /* ./parser//parser.nit:10019 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10019); + } + /* ./parser//parser.nit:10020 */ + fra.me.REG[3] = NEW_APercentExpr_parser_prod___APercentExpr___init_apercentexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10024 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10025 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction320____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10025); + } + REGB0 = ATTR_parser___ReduceAction320____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction320___init(val_t p0, val_t p1, int* init_table){ + int itpos303 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction320].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos303]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10028; + fra.me.meth = LOCATE_parser___ReduceAction320___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10028 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction320____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos303] = 1; + return; +} +void parser___ReduceAction322___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10032; + fra.me.meth = LOCATE_parser___ReduceAction322___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10034 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10035 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10036 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10037 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10039 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TMinus, ID_TMinus)) /*cast nullable TMinus*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10039); + } + /* ./parser//parser.nit:10041 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10041); + } + /* ./parser//parser.nit:10042 */ + fra.me.REG[3] = NEW_AUminusExpr_parser_prod___AUminusExpr___init_auminusexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10046 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10047 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction322____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10047); + } + REGB0 = ATTR_parser___ReduceAction322____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction322___init(val_t p0, val_t p1, int* init_table){ + int itpos304 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction322].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos304]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10050; + fra.me.meth = LOCATE_parser___ReduceAction322___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10050 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction322____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos304] = 1; + return; +} +void parser___ReduceAction323___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10054; + fra.me.meth = LOCATE_parser___ReduceAction323___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10056 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10057 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10058 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10059 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10061 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwonce, ID_TKwonce)) /*cast nullable TKwonce*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10061); + } + /* ./parser//parser.nit:10063 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10063); + } + /* ./parser//parser.nit:10064 */ + fra.me.REG[3] = NEW_AOnceExpr_parser_prod___AOnceExpr___init_aonceexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10068 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10069 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction323____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10069); + } + REGB0 = ATTR_parser___ReduceAction323____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction323___init(val_t p0, val_t p1, int* init_table){ + int itpos305 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction323].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos305]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10072; + fra.me.meth = LOCATE_parser___ReduceAction323___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10072 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction323____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos305] = 1; + return; +} +void parser___ReduceAction325___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10076; + fra.me.meth = LOCATE_parser___ReduceAction325___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10078 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10079 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10080 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10081 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10082 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10083 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10085 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwnew, ID_TKwnew)) /*cast nullable TKwnew*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10085); + } + /* ./parser//parser.nit:10087 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10087); + } + /* ./parser//parser.nit:10089 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10089); + } + /* ./parser//parser.nit:10090 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:10091 */ + fra.me.REG[6] = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr(fra.me.REG[5], fra.me.REG[4], NIT_NULL, fra.me.REG[6]); + /* ./parser//parser.nit:10097 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:10098 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction325____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10098); + } + REGB0 = ATTR_parser___ReduceAction325____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction325___init(val_t p0, val_t p1, int* init_table){ + int itpos306 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction325].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos306]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10101; + fra.me.meth = LOCATE_parser___ReduceAction325___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10101 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction325____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos306] = 1; + return; +} +void parser___ReduceAction326___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10105; + fra.me.meth = LOCATE_parser___ReduceAction326___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10107 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10108 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10109 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10110 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10111 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10112 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10114 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwisset, ID_TKwisset)) /*cast nullable TKwisset*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10114); + } + /* ./parser//parser.nit:10116 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10116); + } + /* ./parser//parser.nit:10118 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10118); + } + /* ./parser//parser.nit:10119 */ + fra.me.REG[3] = NEW_AIssetAttrExpr_parser_prod___AIssetAttrExpr___init_aissetattrexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10124 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10125 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction326____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10125); + } + REGB0 = ATTR_parser___ReduceAction326____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction326___init(val_t p0, val_t p1, int* init_table){ + int itpos307 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction326].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos307]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10128; + fra.me.meth = LOCATE_parser___ReduceAction326___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10128 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction326____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos307] = 1; + return; +} +void parser___ReduceAction327___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10132; + fra.me.meth = LOCATE_parser___ReduceAction327___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10134 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10135 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10136 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10138 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwisset, ID_TKwisset)) /*cast nullable TKwisset*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10138); + } + /* ./parser//parser.nit:10139 */ + fra.me.REG[5] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:10142 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10142); + } + /* ./parser//parser.nit:10143 */ + fra.me.REG[3] = NEW_AIssetAttrExpr_parser_prod___AIssetAttrExpr___init_aissetattrexpr(fra.me.REG[4], fra.me.REG[5], fra.me.REG[3]); + /* ./parser//parser.nit:10148 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10149 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction327____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10149); + } + REGB0 = ATTR_parser___ReduceAction327____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction327___init(val_t p0, val_t p1, int* init_table){ + int itpos308 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction327].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos308]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10152; + fra.me.meth = LOCATE_parser___ReduceAction327___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10152 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction327____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos308] = 1; + return; +} +void parser___ReduceAction328___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10156; + fra.me.meth = LOCATE_parser___ReduceAction328___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10158 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10159 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10160 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10161 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10162 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10164 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10164); + } + /* ./parser//parser.nit:10166 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10166); + } + /* ./parser//parser.nit:10167 */ + fra.me.REG[3] = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10171 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10172 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction328____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10172); + } + REGB0 = ATTR_parser___ReduceAction328____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction328___init(val_t p0, val_t p1, int* init_table){ + int itpos309 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction328].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos309]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10175; + fra.me.meth = LOCATE_parser___ReduceAction328___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10175 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction328____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos309] = 1; + return; +} +void parser___ReduceAction329___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10179; + fra.me.meth = LOCATE_parser___ReduceAction329___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10181 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10182 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10183 */ + fra.me.REG[4] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:10186 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10186); + } + /* ./parser//parser.nit:10187 */ + fra.me.REG[3] = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10191 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10192 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction329____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10192); + } + REGB0 = ATTR_parser___ReduceAction329____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction329___init(val_t p0, val_t p1, int* init_table){ + int itpos310 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction329].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos310]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10195; + fra.me.meth = LOCATE_parser___ReduceAction329___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10195 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction329____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos310] = 1; + return; +} +void parser___ReduceAction336___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10199; + fra.me.meth = LOCATE_parser___ReduceAction336___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10201 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10202 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10203 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10204 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10205 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10207 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10207); + } + /* ./parser//parser.nit:10209 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10209); + } + /* ./parser//parser.nit:10210 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:10211 */ + fra.me.REG[6] = NEW_ABraExpr_parser_prod___ABraExpr___init_abraexpr(fra.me.REG[4], fra.me.REG[5], fra.me.REG[6]); + /* ./parser//parser.nit:10216 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:10217 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction336____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10217); + } + REGB0 = ATTR_parser___ReduceAction336____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction336___init(val_t p0, val_t p1, int* init_table){ + int itpos311 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction336].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos311]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10220; + fra.me.meth = LOCATE_parser___ReduceAction336___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10220 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction336____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos311] = 1; + return; +} +void parser___ReduceAction337___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10224; + fra.me.meth = LOCATE_parser___ReduceAction337___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10226 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10227 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10228 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10229 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10230 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10231 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10232 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10233 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10234 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10236 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_TKwnew, ID_TKwnew)) /*cast nullable TKwnew*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10236); + } + /* ./parser//parser.nit:10238 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10238); + } + /* ./parser//parser.nit:10240 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10240); + } + /* ./parser//parser.nit:10242 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10242); + } + /* ./parser//parser.nit:10243 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[7], fra.me.REG[3]); + fra.me.REG[7] = fra.me.REG[3]; + /* ./parser//parser.nit:10244 */ + fra.me.REG[7] = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[7]); + /* ./parser//parser.nit:10250 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:10251 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction337____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10251); + } + REGB0 = ATTR_parser___ReduceAction337____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction337___init(val_t p0, val_t p1, int* init_table){ + int itpos312 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction337].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos312]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10254; + fra.me.meth = LOCATE_parser___ReduceAction337___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10254 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction337____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos312] = 1; + return; +} +void parser___ReduceAction338___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10258; + fra.me.meth = LOCATE_parser___ReduceAction338___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10260 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10261 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10262 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10263 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10264 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10265 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10266 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10267 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10268 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10269 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10271 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10271); + } + /* ./parser//parser.nit:10273 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10273); + } + /* ./parser//parser.nit:10274 */ + fra.me.REG[3] = NEW_ACrangeExpr_parser_prod___ACrangeExpr___init_acrangeexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10278 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10279 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction338____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10279); + } + REGB0 = ATTR_parser___ReduceAction338____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction338___init(val_t p0, val_t p1, int* init_table){ + int itpos313 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction338].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos313]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10282; + fra.me.meth = LOCATE_parser___ReduceAction338___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10282 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction338____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos313] = 1; + return; +} +void parser___ReduceAction339___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10286; + fra.me.meth = LOCATE_parser___ReduceAction339___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10288 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10289 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10290 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10291 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10292 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10293 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10294 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10295 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10296 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10297 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10299 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10299); + } + /* ./parser//parser.nit:10301 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10301); + } + /* ./parser//parser.nit:10302 */ + fra.me.REG[3] = NEW_AOrangeExpr_parser_prod___AOrangeExpr___init_aorangeexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10306 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10307 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction339____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10307); + } + REGB0 = ATTR_parser___ReduceAction339____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction339___init(val_t p0, val_t p1, int* init_table){ + int itpos314 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction339].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos314]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10310; + fra.me.meth = LOCATE_parser___ReduceAction339___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10310 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction339____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos314] = 1; + return; +} +void parser___ReduceAction340___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10314; + fra.me.meth = LOCATE_parser___ReduceAction340___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10316 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10317 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10318 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10320 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10320); + } + /* ./parser//parser.nit:10321 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:10322 */ + fra.me.REG[4] = NEW_AArrayExpr_parser_prod___AArrayExpr___init_aarrayexpr(fra.me.REG[4]); + /* ./parser//parser.nit:10325 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10326 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction340____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10326); + } + REGB0 = ATTR_parser___ReduceAction340____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction340___init(val_t p0, val_t p1, int* init_table){ + int itpos315 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction340].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos315]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10329; + fra.me.meth = LOCATE_parser___ReduceAction340___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10329 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction340____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos315] = 1; + return; +} +void parser___ReduceAction341___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10333; + fra.me.meth = LOCATE_parser___ReduceAction341___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10335 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10336 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10338 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwself, ID_TKwself)) /*cast nullable TKwself*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10338); + } + /* ./parser//parser.nit:10339 */ + fra.me.REG[3] = NEW_ASelfExpr_parser_prod___ASelfExpr___init_aselfexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10342 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10343 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction341____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10343); + } + REGB0 = ATTR_parser___ReduceAction341____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction341___init(val_t p0, val_t p1, int* init_table){ + int itpos316 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction341].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos316]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10346; + fra.me.meth = LOCATE_parser___ReduceAction341___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10346 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction341____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos316] = 1; + return; +} +void parser___ReduceAction342___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10350; + fra.me.meth = LOCATE_parser___ReduceAction342___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10352 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10353 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10355 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwtrue, ID_TKwtrue)) /*cast nullable TKwtrue*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10355); + } + /* ./parser//parser.nit:10356 */ + fra.me.REG[3] = NEW_ATrueExpr_parser_prod___ATrueExpr___init_atrueexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10359 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10360 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction342____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10360); + } + REGB0 = ATTR_parser___ReduceAction342____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction342___init(val_t p0, val_t p1, int* init_table){ + int itpos317 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction342].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos317]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10363; + fra.me.meth = LOCATE_parser___ReduceAction342___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10363 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction342____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos317] = 1; + return; +} +void parser___ReduceAction343___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10367; + fra.me.meth = LOCATE_parser___ReduceAction343___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10369 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10370 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10372 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwfalse, ID_TKwfalse)) /*cast nullable TKwfalse*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10372); + } + /* ./parser//parser.nit:10373 */ + fra.me.REG[3] = NEW_AFalseExpr_parser_prod___AFalseExpr___init_afalseexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10376 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10377 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction343____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10377); + } + REGB0 = ATTR_parser___ReduceAction343____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction343___init(val_t p0, val_t p1, int* init_table){ + int itpos318 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction343].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos318]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10380; + fra.me.meth = LOCATE_parser___ReduceAction343___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10380 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction343____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos318] = 1; + return; +} +void parser___ReduceAction344___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10384; + fra.me.meth = LOCATE_parser___ReduceAction344___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10386 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10387 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10389 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwnull, ID_TKwnull)) /*cast nullable TKwnull*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10389); + } + /* ./parser//parser.nit:10390 */ + fra.me.REG[3] = NEW_ANullExpr_parser_prod___ANullExpr___init_anullexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10393 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10394 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction344____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10394); + } + REGB0 = ATTR_parser___ReduceAction344____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction344___init(val_t p0, val_t p1, int* init_table){ + int itpos319 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction344].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos319]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10397; + fra.me.meth = LOCATE_parser___ReduceAction344___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10397 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction344____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos319] = 1; + return; +} +void parser___ReduceAction345___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10401; + fra.me.meth = LOCATE_parser___ReduceAction345___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10403 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10404 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10406 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TNumber, ID_TNumber)) /*cast nullable TNumber*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10406); + } + /* ./parser//parser.nit:10407 */ + fra.me.REG[3] = NEW_AIntExpr_parser_prod___AIntExpr___init_aintexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10410 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10411 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction345____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10411); + } + REGB0 = ATTR_parser___ReduceAction345____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction345___init(val_t p0, val_t p1, int* init_table){ + int itpos320 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction345].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos320]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10414; + fra.me.meth = LOCATE_parser___ReduceAction345___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10414 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction345____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos320] = 1; + return; +} +void parser___ReduceAction346___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10418; + fra.me.meth = LOCATE_parser___ReduceAction346___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10420 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10421 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10423 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TFloat, ID_TFloat)) /*cast nullable TFloat*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10423); + } + /* ./parser//parser.nit:10424 */ + fra.me.REG[3] = NEW_AFloatExpr_parser_prod___AFloatExpr___init_afloatexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10427 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10428 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction346____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10428); + } + REGB0 = ATTR_parser___ReduceAction346____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction346___init(val_t p0, val_t p1, int* init_table){ + int itpos321 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction346].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos321]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10431; + fra.me.meth = LOCATE_parser___ReduceAction346___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10431 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction346____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos321] = 1; + return; +} +void parser___ReduceAction347___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10435; + fra.me.meth = LOCATE_parser___ReduceAction347___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10437 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10438 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10440 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TChar, ID_TChar)) /*cast nullable TChar*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10440); + } + /* ./parser//parser.nit:10441 */ + fra.me.REG[3] = NEW_ACharExpr_parser_prod___ACharExpr___init_acharexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10444 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10445 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction347____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10445); + } + REGB0 = ATTR_parser___ReduceAction347____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction347___init(val_t p0, val_t p1, int* init_table){ + int itpos322 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction347].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos322]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10448; + fra.me.meth = LOCATE_parser___ReduceAction347___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10448 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction347____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos322] = 1; + return; +} +void parser___ReduceAction348___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10452; + fra.me.meth = LOCATE_parser___ReduceAction348___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10454 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10455 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10457 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TString, ID_TString)) /*cast nullable TString*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10457); + } + /* ./parser//parser.nit:10458 */ + fra.me.REG[3] = NEW_AStringExpr_parser_prod___AStringExpr___init_astringexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10461 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10462 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction348____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10462); + } + REGB0 = ATTR_parser___ReduceAction348____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction348___init(val_t p0, val_t p1, int* init_table){ + int itpos323 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction348].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos323]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10465; + fra.me.meth = LOCATE_parser___ReduceAction348___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10465 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction348____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos323] = 1; + return; +} +void parser___ReduceAction351___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10469; + fra.me.meth = LOCATE_parser___ReduceAction351___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10471 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10472 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10473 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10474 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10475 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10476 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10477 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10478 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10479 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10480 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10481 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10483 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10483); + } + /* ./parser//parser.nit:10485 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwas, ID_TKwas)) /*cast nullable TKwas*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10485); + } + /* ./parser//parser.nit:10487 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AType, ID_AType)) /*cast nullable AType*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10487); + } + /* ./parser//parser.nit:10488 */ + fra.me.REG[3] = NEW_AAsCastExpr_parser_prod___AAsCastExpr___init_aascastexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10493 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10494 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction351____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10494); + } + REGB0 = ATTR_parser___ReduceAction351____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction351___init(val_t p0, val_t p1, int* init_table){ + int itpos324 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction351].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos324]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10497; + fra.me.meth = LOCATE_parser___ReduceAction351___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10497 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction351____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos324] = 1; + return; +} +void parser___ReduceAction352___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10501; + fra.me.meth = LOCATE_parser___ReduceAction352___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10503 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10504 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10505 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10506 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10507 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10508 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10509 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10510 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10511 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10512 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10513 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10514 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10515 */ + fra.me.REG[6] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10517 */ + REGB0 = TAG_Bool((fra.me.REG[6]==NIT_NULL) || VAL_ISA(fra.me.REG[6], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10517); + } + /* ./parser//parser.nit:10519 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwas, ID_TKwas)) /*cast nullable TKwas*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10519); + } + /* ./parser//parser.nit:10521 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwnot, ID_TKwnot)) /*cast nullable TKwnot*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10521); + } + /* ./parser//parser.nit:10523 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TKwnull, ID_TKwnull)) /*cast nullable TKwnull*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10523); + } + /* ./parser//parser.nit:10524 */ + fra.me.REG[3] = NEW_AAsNotnullExpr_parser_prod___AAsNotnullExpr___init_aasnotnullexpr(fra.me.REG[6], fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10530 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10531 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction352____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10531); + } + REGB0 = ATTR_parser___ReduceAction352____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction352___init(val_t p0, val_t p1, int* init_table){ + int itpos325 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction352].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos325]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10534; + fra.me.meth = LOCATE_parser___ReduceAction352___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10534 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction352____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos325] = 1; + return; +} +void parser___ReduceAction353___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10538; + fra.me.meth = LOCATE_parser___ReduceAction353___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10540 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10541 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10542 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10543 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10545 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10545); + } + /* ./parser//parser.nit:10547 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10547); + } + /* ./parser//parser.nit:10548 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:10549 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable11 = NEW_parser_prod___ANewExpr___init_anewexpr( variable7 /*tkwnewnode2*/, variable8 /*ptypenode3*/, NIT_NULL /*null*/, variable6 /*listnode6*/); /*new ANewExpr*/ - variable10 = variable11; - variable1 = variable10 /*pexprnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(46)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction311___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction311::init (src/parser//parser.nit:11977,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction311].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction311].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction312___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction312::action (src/parser//parser.nit:11981,2--11997:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11989,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:11991,6--36\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AAttrExpr___init_aattrexpr( variable6 /*pexprnode2*/, variable7 /*tattridnode3*/); /*new AAttrExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction312___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction312::init (src/parser//parser.nit:11999,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction312].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction312].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction313___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction313::action (src/parser//parser.nit:12003,2--12016:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable4 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12010,6--36\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AAttrExpr___init_aattrexpr( variable3 /*pexprnode2*/, variable4 /*tattridnode3*/); /*new AAttrExpr*/ - variable5 = variable6; - variable1 = variable5 /*pexprnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction313___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction313::init (src/parser//parser.nit:12018,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction313].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction313].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction314___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction314::action (src/parser//parser.nit:12022,2--12050:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12032,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12034,6--28\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12036,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10550 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:10552 */ + fra.me.REG[5] = NEW_ASuperstringExpr_parser_prod___ASuperstringExpr___init_asuperstringexpr(fra.me.REG[5]); + /* ./parser//parser.nit:10555 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:10556 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction353____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10556); + } + REGB0 = ATTR_parser___ReduceAction353____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction353___init(val_t p0, val_t p1, int* init_table){ + int itpos326 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction353].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos326]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10559; + fra.me.meth = LOCATE_parser___ReduceAction353___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10559 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction353____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos326] = 1; + return; +} +void parser___ReduceAction354___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10563; + fra.me.meth = LOCATE_parser___ReduceAction354___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10565 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10566 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10567 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10568 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10569 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10571 */ + REGB0 = TAG_Bool((fra.me.REG[5]!=NIT_NULL) && VAL_ISA(fra.me.REG[5], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10571); + } + /* ./parser//parser.nit:10573 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10573); + } + /* ./parser//parser.nit:10575 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10575); + } + /* ./parser//parser.nit:10576 */ + fra.me.REG[5] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[6] = fra.me.REG[5]; + /* ./parser//parser.nit:10577 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[6] = fra.me.REG[4]; + /* ./parser//parser.nit:10578 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable12 = NEW_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction314___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction314::init (src/parser//parser.nit:12052,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction314].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction314].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction315___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction315::action (src/parser//parser.nit:12056,2--12081:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12065,6--28\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12067,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10579 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]); + } + /* ./parser//parser.nit:10581 */ + fra.me.REG[6] = NEW_ASuperstringExpr_parser_prod___ASuperstringExpr___init_asuperstringexpr(fra.me.REG[6]); + /* ./parser//parser.nit:10584 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:10585 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction354____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10585); + } + REGB0 = ATTR_parser___ReduceAction354____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction354___init(val_t p0, val_t p1, int* init_table){ + int itpos327 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction354].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos327]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10588; + fra.me.meth = LOCATE_parser___ReduceAction354___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10588 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction354____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos327] = 1; + return; +} +void parser___ReduceAction355___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10592; + fra.me.meth = LOCATE_parser___ReduceAction355___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10594 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10595 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10596 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10597 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10598 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10599 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10602 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable9 = NEW_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction315___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction315::init (src/parser//parser.nit:12083,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction315].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction315].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction316___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction316::action (src/parser//parser.nit:12087,2--12110:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12094,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12096,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10603 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]); + } + /* ./parser//parser.nit:10605 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable8 = NEW_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction316___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction316::init (src/parser//parser.nit:12112,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction316].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction316].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction317___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction317::action (src/parser//parser.nit:12116,2--12142:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12124,6--42\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12126,6--38\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12128,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10606 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:10608 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:10609 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction355____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10609); + } + REGB0 = ATTR_parser___ReduceAction355____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction355___init(val_t p0, val_t p1, int* init_table){ + int itpos328 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction355].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos328]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10612; + fra.me.meth = LOCATE_parser___ReduceAction355___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10612 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction355____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos328] = 1; + return; +} +void parser___ReduceAction356___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10616; + fra.me.meth = LOCATE_parser___ReduceAction356___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10618 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10619 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10621 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TStartString, ID_TStartString)) /*cast nullable TStartString*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10621); + } + /* ./parser//parser.nit:10622 */ + fra.me.REG[3] = NEW_AStartStringExpr_parser_prod___AStartStringExpr___init_astartstringexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10625 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10626 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction356____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10626); + } + REGB0 = ATTR_parser___ReduceAction356____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction356___init(val_t p0, val_t p1, int* init_table){ + int itpos329 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction356].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos329]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10629; + fra.me.meth = LOCATE_parser___ReduceAction356___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10629 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction356____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos329] = 1; + return; +} +void parser___ReduceAction358___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10633; + fra.me.meth = LOCATE_parser___ReduceAction358___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10635 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10636 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10638 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TMidString, ID_TMidString)) /*cast nullable TMidString*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10638); + } + /* ./parser//parser.nit:10639 */ + fra.me.REG[3] = NEW_AMidStringExpr_parser_prod___AMidStringExpr___init_amidstringexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10642 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10643 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction358____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10643); + } + REGB0 = ATTR_parser___ReduceAction358____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction358___init(val_t p0, val_t p1, int* init_table){ + int itpos330 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction358].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos330]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10646; + fra.me.meth = LOCATE_parser___ReduceAction358___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10646 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction358____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos330] = 1; + return; +} +void parser___ReduceAction359___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10650; + fra.me.meth = LOCATE_parser___ReduceAction359___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10652 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10653 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10655 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TEndString, ID_TEndString)) /*cast nullable TEndString*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10655); + } + /* ./parser//parser.nit:10656 */ + fra.me.REG[3] = NEW_AEndStringExpr_parser_prod___AEndStringExpr___init_aendstringexpr(fra.me.REG[3]); + /* ./parser//parser.nit:10659 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10660 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction359____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10660); + } + REGB0 = ATTR_parser___ReduceAction359____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction359___init(val_t p0, val_t p1, int* init_table){ + int itpos331 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction359].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos331]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10663; + fra.me.meth = LOCATE_parser___ReduceAction359___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10663 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction359____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos331] = 1; + return; +} +void parser___ReduceAction360___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10667; + fra.me.meth = LOCATE_parser___ReduceAction360___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10669 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10670 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10671 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10672 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10673 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10674 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10675 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10677 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable10 = NEW_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction317___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction317::init (src/parser//parser.nit:12144,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction317].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction317].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction318___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction318::action (src/parser//parser.nit:12148,2--12176:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12158,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12160,6--36\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12162,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10678 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:10680 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10681 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction360____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10681); + } + REGB0 = ATTR_parser___ReduceAction360____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction360___init(val_t p0, val_t p1, int* init_table){ + int itpos332 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction360].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos332]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10684; + fra.me.meth = LOCATE_parser___ReduceAction360___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10684 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction360____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos332] = 1; + return; +} +void parser___ReduceAction361___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10688; + fra.me.meth = LOCATE_parser___ReduceAction361___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10690 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10691 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10692 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10693 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10694 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10695 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10696 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10697 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10700 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10700); + } + /* ./parser//parser.nit:10701 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB0 = REGB1; } } - variable12 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction318___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction318::init (src/parser//parser.nit:12178,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction318].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction318].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction319___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction319::action (src/parser//parser.nit:12182,2--12207:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12191,6--36\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12193,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10702 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]); + } + /* ./parser//parser.nit:10704 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:10705 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:10706 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction361____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10706); + } + REGB0 = ATTR_parser___ReduceAction361____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction361___init(val_t p0, val_t p1, int* init_table){ + int itpos333 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction361].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos333]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10709; + fra.me.meth = LOCATE_parser___ReduceAction361___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10709 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction361____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos333] = 1; + return; +} +void parser___ReduceAction363___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10713; + fra.me.meth = LOCATE_parser___ReduceAction363___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10715 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10716 */ + fra.me.REG[3] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10717 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10718 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction363____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10718); + } + REGB0 = ATTR_parser___ReduceAction363____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction363___init(val_t p0, val_t p1, int* init_table){ + int itpos334 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction363].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos334]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10721; + fra.me.meth = LOCATE_parser___ReduceAction363___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10721 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction363____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos334] = 1; + return; +} +void parser___ReduceAction366___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10725; + fra.me.meth = LOCATE_parser___ReduceAction366___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10727 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10728 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10729 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10731 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable9 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction319___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction319::init (src/parser//parser.nit:12209,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction319].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction319].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction320___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction320::action (src/parser//parser.nit:12213,2--12235:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12220,6--32\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode3*/==NIT_NULL) || VAL_ISA( variable6 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12222,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode3*/ == NIT_NULL /*null*/) || (( variable6 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable6 /*listnode3*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10732 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:10734 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10735 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction366____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10735); + } + REGB0 = ATTR_parser___ReduceAction366____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction366___init(val_t p0, val_t p1, int* init_table){ + int itpos335 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction366].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos335]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10738; + fra.me.meth = LOCATE_parser___ReduceAction366___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10738 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction366____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos335] = 1; + return; +} +void parser___ReduceAction371___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10742; + fra.me.meth = LOCATE_parser___ReduceAction371___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10744 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10745 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10746 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10747 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10748 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10750 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10751 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction371____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10751); + } + REGB0 = ATTR_parser___ReduceAction371____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction371___init(val_t p0, val_t p1, int* init_table){ + int itpos336 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction371].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos336]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10754; + fra.me.meth = LOCATE_parser___ReduceAction371___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10754 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction371____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos336] = 1; + return; +} +void parser___ReduceAction372___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10758; + fra.me.meth = LOCATE_parser___ReduceAction372___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10760 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10761 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10762 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10763 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10764 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10766 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10766); + } + /* ./parser//parser.nit:10767 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:10768 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10769 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction372____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10769); + } + REGB0 = ATTR_parser___ReduceAction372____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction372___init(val_t p0, val_t p1, int* init_table){ + int itpos337 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction372].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos337]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10772; + fra.me.meth = LOCATE_parser___ReduceAction372___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10772 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction372____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos337] = 1; + return; +} +void parser___ReduceAction373___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10776; + fra.me.meth = LOCATE_parser___ReduceAction373___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10778 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10779 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10780 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10782 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10782); + } + /* ./parser//parser.nit:10783 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:10784 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10785 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction373____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10785); + } + REGB0 = ATTR_parser___ReduceAction373____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction373___init(val_t p0, val_t p1, int* init_table){ + int itpos338 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction373].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos338]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10788; + fra.me.meth = LOCATE_parser___ReduceAction373___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10788 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction373____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos338] = 1; + return; +} +void parser___ReduceAction374___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10792; + fra.me.meth = LOCATE_parser___ReduceAction374___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10794 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10795 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10796 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10798 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable8 = NEW_parser_prod___ABraExpr___init_abraexpr( variable5 /*pexprnode2*/, variable4 /*listnode4*/); /*new ABraExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction320___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction320::init (src/parser//parser.nit:12237,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction320].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction320].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction321___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction321::action (src/parser//parser.nit:12241,2--12274:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable8 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12253,6--34\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12255,6--32\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist6*/; - variable13 = TAG_Bool(( variable12 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12257,6--28\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist7*/; - variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12259,6--38\n"); nit_exit(1);} - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable14)) { /*if*/ - variable14 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable14)) { /*if*/ - variable9 = variable13 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode6*/, variable13 /*listnode5*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10799 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:10801 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10802 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction374____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10802); + } + REGB0 = ATTR_parser___ReduceAction374____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction374___init(val_t p0, val_t p1, int* init_table){ + int itpos339 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction374].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos339]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10805; + fra.me.meth = LOCATE_parser___ReduceAction374___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10805 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction374____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos339] = 1; + return; +} +void parser___ReduceAction375___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10809; + fra.me.meth = LOCATE_parser___ReduceAction375___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10811 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10812 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10813 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10814 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10815 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10816 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10817 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10819 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10819); + } + /* ./parser//parser.nit:10821 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:10822 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable15 = NEW_parser_prod___ANewExpr___init_anewexpr( variable10 /*tkwnewnode2*/, variable11 /*ptypenode3*/, variable12 /*tidnode4*/, variable9 /*listnode6*/); /*new ANewExpr*/ - variable14 = variable15; - variable1 = variable14 /*pexprnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction321___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction321::init (src/parser//parser.nit:12276,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction321].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction321].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction322___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction322::action (src/parser//parser.nit:12280,2--12301:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable8 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12293,6--32\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist7*/; - variable13 = TAG_Bool(( variable12 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12295,6--32\n"); nit_exit(1);} - variable14 = NEW_parser_prod___ACrangeExpr___init_acrangeexpr( variable11 /*pexprnode2*/, variable12 /*pexprnode3*/); /*new ACrangeExpr*/ - variable13 = variable14; - variable1 = variable13 /*pexprnode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction322___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction322::init (src/parser//parser.nit:12303,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction322].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction322].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction323___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction323::action (src/parser//parser.nit:12307,2--12328:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable11 = variable8 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12320,6--32\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist7*/; - variable13 = TAG_Bool(( variable12 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12322,6--32\n"); nit_exit(1);} - variable14 = NEW_parser_prod___AOrangeExpr___init_aorangeexpr( variable11 /*pexprnode2*/, variable12 /*pexprnode3*/); /*new AOrangeExpr*/ - variable13 = variable14; - variable1 = variable13 /*pexprnode1*/ /*node_list=*/; - variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction323___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction323::init (src/parser//parser.nit:12330,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction323].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction323].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction324___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction324::action (src/parser//parser.nit:12334,2--12352:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*listnode2*/==NIT_NULL) || VAL_ISA( variable4 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12340,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode2*/ == NIT_NULL /*null*/) || (( variable4 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable5)) { /*if*/ - variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable5)) { /*if*/ - variable3 = variable4 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode3*/, variable4 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:10823 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:10825 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:10826 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction375____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10826); + } + REGB0 = ATTR_parser___ReduceAction375____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction375___init(val_t p0, val_t p1, int* init_table){ + int itpos340 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction375].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos340]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10829; + fra.me.meth = LOCATE_parser___ReduceAction375___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10829 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction375____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos340] = 1; + return; +} +void parser___ReduceAction376___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10833; + fra.me.meth = LOCATE_parser___ReduceAction376___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10835 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10836 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10837 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10839 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10839); + } + /* ./parser//parser.nit:10840 */ + fra.me.REG[3] = NEW_AQualified_parser_prod___AQualified___init_aqualified(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:10844 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10845 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction376____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10845); + } + REGB0 = ATTR_parser___ReduceAction376____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction376___init(val_t p0, val_t p1, int* init_table){ + int itpos341 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction376].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos341]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10848; + fra.me.meth = LOCATE_parser___ReduceAction376___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10848 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction376____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos341] = 1; + return; +} +void parser___ReduceAction377___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10852; + fra.me.meth = LOCATE_parser___ReduceAction377___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10854 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10855 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10856 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10857 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10859 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10859); + } + /* ./parser//parser.nit:10860 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:10862 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TClassid, ID_TClassid)) /*cast nullable TClassid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10862); + } + /* ./parser//parser.nit:10863 */ + fra.me.REG[3] = NEW_AQualified_parser_prod___AQualified___init_aqualified(fra.me.REG[5], fra.me.REG[3]); + /* ./parser//parser.nit:10867 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10868 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction377____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10868); + } + REGB0 = ATTR_parser___ReduceAction377____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction377___init(val_t p0, val_t p1, int* init_table){ + int itpos342 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction377].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos342]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10871; + fra.me.meth = LOCATE_parser___ReduceAction377___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10871 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction377____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos342] = 1; + return; +} +void parser___ReduceAction378___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10875; + fra.me.meth = LOCATE_parser___ReduceAction378___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10877 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10878 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10879 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10881 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10881); + } + /* ./parser//parser.nit:10882 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:10883 */ + fra.me.REG[4] = NEW_AQualified_parser_prod___AQualified___init_aqualified(fra.me.REG[4], NIT_NULL); + /* ./parser//parser.nit:10887 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10888 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction378____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10888); + } + REGB0 = ATTR_parser___ReduceAction378____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction378___init(val_t p0, val_t p1, int* init_table){ + int itpos343 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction378].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos343]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10891; + fra.me.meth = LOCATE_parser___ReduceAction378___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10891 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction378____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos343] = 1; + return; +} +void parser___ReduceAction379___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10895; + fra.me.meth = LOCATE_parser___ReduceAction379___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10897 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10898 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10899 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10900 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10902 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10903 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction379____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10903); + } + REGB0 = ATTR_parser___ReduceAction379____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction379___init(val_t p0, val_t p1, int* init_table){ + int itpos344 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction379].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos344]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10906; + fra.me.meth = LOCATE_parser___ReduceAction379___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10906 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction379____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos344] = 1; + return; +} +void parser___ReduceAction380___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10910; + fra.me.meth = LOCATE_parser___ReduceAction380___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10912 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10913 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10914 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10915 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10917 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10918 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction380____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10918); + } + REGB0 = ATTR_parser___ReduceAction380____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction380___init(val_t p0, val_t p1, int* init_table){ + int itpos345 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction380].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos345]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10921; + fra.me.meth = LOCATE_parser___ReduceAction380___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10921 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction380____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos345] = 1; + return; +} +void parser___ReduceAction381___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10925; + fra.me.meth = LOCATE_parser___ReduceAction381___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10927 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10928 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10929 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction381____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10929); + } + REGB0 = ATTR_parser___ReduceAction381____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction381___init(val_t p0, val_t p1, int* init_table){ + int itpos346 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction381].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos346]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10932; + fra.me.meth = LOCATE_parser___ReduceAction381___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10932 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction381____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos346] = 1; + return; +} +void parser___ReduceAction383___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10936; + fra.me.meth = LOCATE_parser___ReduceAction383___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10938 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10939 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10940 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10942 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10942); + } + /* ./parser//parser.nit:10943 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:10944 */ + fra.me.REG[4] = NEW_ADoc_parser_prod___ADoc___init_adoc(fra.me.REG[4]); + /* ./parser//parser.nit:10947 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10948 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction383____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10948); + } + REGB0 = ATTR_parser___ReduceAction383____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction383___init(val_t p0, val_t p1, int* init_table){ + int itpos347 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction383].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos347]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10951; + fra.me.meth = LOCATE_parser___ReduceAction383___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10951 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction383____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos347] = 1; + return; +} +void parser___ReduceAction384___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10955; + fra.me.meth = LOCATE_parser___ReduceAction384___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10957 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10958 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10959 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10960 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:10962 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 10962); + } + /* ./parser//parser.nit:10963 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[4] = fra.me.REG[3]; + /* ./parser//parser.nit:10964 */ + fra.me.REG[4] = NEW_ADoc_parser_prod___ADoc___init_adoc(fra.me.REG[4]); + /* ./parser//parser.nit:10967 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:10968 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction384____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10968); + } + REGB0 = ATTR_parser___ReduceAction384____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction384___init(val_t p0, val_t p1, int* init_table){ + int itpos348 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction384].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos348]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10971; + fra.me.meth = LOCATE_parser___ReduceAction384___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10971 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction384____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos348] = 1; + return; +} +void parser___ReduceAction386___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[2];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10975; + fra.me.meth = LOCATE_parser___ReduceAction386___action; + fra.me.has_broke = 0; + fra.me.REG_size = 3; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10977 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10978 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10979 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction386____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10979); + } + REGB0 = ATTR_parser___ReduceAction386____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction386___init(val_t p0, val_t p1, int* init_table){ + int itpos349 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction386].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos349]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10982; + fra.me.meth = LOCATE_parser___ReduceAction386___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10982 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction386____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos349] = 1; + return; +} +void parser___ReduceAction387___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10986; + fra.me.meth = LOCATE_parser___ReduceAction387___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:10988 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:10989 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:10991 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:10992 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction387____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 10992); + } + REGB0 = ATTR_parser___ReduceAction387____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction387___init(val_t p0, val_t p1, int* init_table){ + int itpos350 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction387].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos350]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10995; + fra.me.meth = LOCATE_parser___ReduceAction387___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:10995 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction387____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos350] = 1; + return; +} +void parser___ReduceAction388___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 10999; + fra.me.meth = LOCATE_parser___ReduceAction388___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11001 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11002 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11003 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11004 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction388____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11004); + } + REGB0 = ATTR_parser___ReduceAction388____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction388___init(val_t p0, val_t p1, int* init_table){ + int itpos351 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction388].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos351]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11007; + fra.me.meth = LOCATE_parser___ReduceAction388___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11007 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction388____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos351] = 1; + return; +} +void parser___ReduceAction389___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11011; + fra.me.meth = LOCATE_parser___ReduceAction389___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11013 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11014 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11015 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11016 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11017 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction389____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11017); + } + REGB0 = ATTR_parser___ReduceAction389____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction389___init(val_t p0, val_t p1, int* init_table){ + int itpos352 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction389].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos352]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11020; + fra.me.meth = LOCATE_parser___ReduceAction389___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11020 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction389____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos352] = 1; + return; +} +void parser___ReduceAction637___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11024; + fra.me.meth = LOCATE_parser___ReduceAction637___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11026 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11027 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11028 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11029 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11031 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_TKwisset, ID_TKwisset)) /*cast nullable TKwisset*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11031); + } + /* ./parser//parser.nit:11033 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11033); + } + /* ./parser//parser.nit:11035 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11035); + } + /* ./parser//parser.nit:11036 */ + fra.me.REG[3] = NEW_AIssetAttrExpr_parser_prod___AIssetAttrExpr___init_aissetattrexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:11041 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:11042 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction637____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11042); + } + REGB0 = ATTR_parser___ReduceAction637____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction637___init(val_t p0, val_t p1, int* init_table){ + int itpos353 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction637].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos353]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11045; + fra.me.meth = LOCATE_parser___ReduceAction637___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11045 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction637____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos353] = 1; + return; +} +void parser___ReduceAction638___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11049; + fra.me.meth = LOCATE_parser___ReduceAction638___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11051 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11052 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11053 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11055 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11055); + } + /* ./parser//parser.nit:11057 */ + REGB0 = TAG_Bool((fra.me.REG[3]==NIT_NULL) || VAL_ISA(fra.me.REG[3], COLOR_TAttrid, ID_TAttrid)) /*cast nullable TAttrid*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11057); + } + /* ./parser//parser.nit:11058 */ + fra.me.REG[3] = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr(fra.me.REG[4], fra.me.REG[3]); + /* ./parser//parser.nit:11062 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:11063 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction638____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11063); + } + REGB0 = ATTR_parser___ReduceAction638____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction638___init(val_t p0, val_t p1, int* init_table){ + int itpos354 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction638].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos354]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11066; + fra.me.meth = LOCATE_parser___ReduceAction638___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11066 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction638____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos354] = 1; + return; +} +void parser___ReduceAction639___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11070; + fra.me.meth = LOCATE_parser___ReduceAction639___action; + fra.me.has_broke = 0; + fra.me.REG_size = 8; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11072 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11073 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11074 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11075 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11076 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11077 */ + fra.me.REG[7] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11079 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11079); + } + /* ./parser//parser.nit:11081 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TId, ID_TId)) /*cast nullable TId*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11081); + } + /* ./parser//parser.nit:11083 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11083); + } + /* ./parser//parser.nit:11084 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:11085 */ + fra.me.REG[7] = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6], fra.me.REG[7]); + /* ./parser//parser.nit:11091 */ + fra.me.REG[2] = fra.me.REG[7]; + /* ./parser//parser.nit:11092 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction639____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11092); + } + REGB0 = ATTR_parser___ReduceAction639____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction639___init(val_t p0, val_t p1, int* init_table){ + int itpos355 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction639].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos355]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11095; + fra.me.meth = LOCATE_parser___ReduceAction639___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11095 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction639____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos355] = 1; + return; +} +void parser___ReduceAction642___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11099; + fra.me.meth = LOCATE_parser___ReduceAction642___action; + fra.me.has_broke = 0; + fra.me.REG_size = 7; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[6] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11101 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11102 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11103 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11104 */ + fra.me.REG[5] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11105 */ + fra.me.REG[6] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11107 */ + REGB0 = TAG_Bool((fra.me.REG[5]==NIT_NULL) || VAL_ISA(fra.me.REG[5], COLOR_AExpr, ID_AExpr)) /*cast nullable AExpr*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11107); + } + /* ./parser//parser.nit:11109 */ + REGB0 = TAG_Bool((fra.me.REG[4]==NIT_NULL) || VAL_ISA(fra.me.REG[4], COLOR_TKwinit, ID_TKwinit)) /*cast nullable TKwinit*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11109); + } + /* ./parser//parser.nit:11111 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11111); + } + /* ./parser//parser.nit:11112 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = fra.me.REG[3]; + /* ./parser//parser.nit:11113 */ + fra.me.REG[6] = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr(fra.me.REG[5], fra.me.REG[4], fra.me.REG[6]); + /* ./parser//parser.nit:11118 */ + fra.me.REG[2] = fra.me.REG[6]; + /* ./parser//parser.nit:11119 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction642____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11119); + } + REGB0 = ATTR_parser___ReduceAction642____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction642___init(val_t p0, val_t p1, int* init_table){ + int itpos356 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction642].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos356]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11122; + fra.me.meth = LOCATE_parser___ReduceAction642___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11122 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction642____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos356] = 1; + return; +} +void parser___ReduceAction655___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11126; + fra.me.meth = LOCATE_parser___ReduceAction655___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11128 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11129 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11130 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11131 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11133 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:11134 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction655____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11134); + } + REGB0 = ATTR_parser___ReduceAction655____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction655___init(val_t p0, val_t p1, int* init_table){ + int itpos357 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction655].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos357]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11137; + fra.me.meth = LOCATE_parser___ReduceAction655___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11137 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction655____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos357] = 1; + return; +} +void parser___ReduceAction656___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11141; + fra.me.meth = LOCATE_parser___ReduceAction656___action; + fra.me.has_broke = 0; + fra.me.REG_size = 4; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11143 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11144 */ + fra.me.REG[3] = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); + /* ./parser//parser.nit:11146 */ + fra.me.REG[2] = fra.me.REG[3]; + /* ./parser//parser.nit:11147 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction656____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11147); + } + REGB0 = ATTR_parser___ReduceAction656____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction656___init(val_t p0, val_t p1, int* init_table){ + int itpos358 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction656].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos358]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11150; + fra.me.meth = LOCATE_parser___ReduceAction656___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11150 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction656____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos358] = 1; + return; +} +void parser___ReduceAction663___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11154; + fra.me.meth = LOCATE_parser___ReduceAction663___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11156 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11157 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11158 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11160 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable6 = NEW_parser_prod___AArrayExpr___init_aarrayexpr( variable3 /*listnode3*/); /*new AArrayExpr*/ - variable5 = variable6; - variable1 = variable5 /*pexprnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction324___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction324::init (src/parser//parser.nit:12354,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction324].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction324].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction325___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction325::action (src/parser//parser.nit:12358,2--12368:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwselfnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwselfnode2*/, COLOR_TKwself, ID_TKwself)) /*cast TKwself*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12363,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ASelfExpr___init_aselfexpr( variable3 /*tkwselfnode2*/); /*new ASelfExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction325___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction325::init (src/parser//parser.nit:12370,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction325].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction325].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction326___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction326::action (src/parser//parser.nit:12374,2--12384:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwtruenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwtruenode2*/, COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12379,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ATrueExpr___init_atrueexpr( variable3 /*tkwtruenode2*/); /*new ATrueExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction326___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction326::init (src/parser//parser.nit:12386,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction326].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction326].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction327___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction327::action (src/parser//parser.nit:12390,2--12400:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwfalsenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwfalsenode2*/, COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12395,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFalseExpr___init_afalseexpr( variable3 /*tkwfalsenode2*/); /*new AFalseExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction327___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction327::init (src/parser//parser.nit:12402,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction327].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction327].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction328___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction328::action (src/parser//parser.nit:12406,2--12416:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwnullnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwnullnode2*/, COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12411,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ANullExpr___init_anullexpr( variable3 /*tkwnullnode2*/); /*new ANullExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction328___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction328::init (src/parser//parser.nit:12418,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction328].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction328].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction329___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction329::action (src/parser//parser.nit:12422,2--12432:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tnumbernode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnumbernode2*/, COLOR_TNumber, ID_TNumber)) /*cast TNumber*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12427,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AIntExpr___init_aintexpr( variable3 /*tnumbernode2*/); /*new AIntExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction329___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction329::init (src/parser//parser.nit:12434,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction329].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction329].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction330___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction330::action (src/parser//parser.nit:12438,2--12448:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tfloatnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tfloatnode2*/, COLOR_TFloat, ID_TFloat)) /*cast TFloat*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12443,6--34\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFloatExpr___init_afloatexpr( variable3 /*tfloatnode2*/); /*new AFloatExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction330___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction330::init (src/parser//parser.nit:12450,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction330].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction330].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction331___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction331::action (src/parser//parser.nit:12454,2--12464:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tcharnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tcharnode2*/, COLOR_TChar, ID_TChar)) /*cast TChar*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12459,6--32\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ACharExpr___init_acharexpr( variable3 /*tcharnode2*/); /*new ACharExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction331___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction331::init (src/parser//parser.nit:12466,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction331].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction331].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction332___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction332::action (src/parser//parser.nit:12470,2--12480:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstringnode2*/, COLOR_TString, ID_TString)) /*cast TString*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12475,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AStringExpr___init_astringexpr( variable3 /*tstringnode2*/); /*new AStringExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction332___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction332::init (src/parser//parser.nit:12482,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction332].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction332].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction333___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction333::action (src/parser//parser.nit:12486,2--12493:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12491,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction333___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction333::init (src/parser//parser.nit:12495,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction333].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction333].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction334___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction334::action (src/parser//parser.nit:12499,2--12508:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable3 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12506,6--32\n"); nit_exit(1);} - variable1 = variable5 /*pexprnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction334___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction334::init (src/parser//parser.nit:12510,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction334].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction334].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction335___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction335::action (src/parser//parser.nit:12514,2--12538:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode2*/==NIT_NULL) || VAL_ISA( variable5 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12521,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12523,6--32\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode2*/ == NIT_NULL /*null*/) || (( variable5 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode2*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable5 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11161 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11163 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11164 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction663____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11164); + } + REGB0 = ATTR_parser___ReduceAction663____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction663___init(val_t p0, val_t p1, int* init_table){ + int itpos359 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction663].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos359]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11167; + fra.me.meth = LOCATE_parser___ReduceAction663___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11167 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction663____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos359] = 1; + return; +} +void parser___ReduceAction664___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11171; + fra.me.meth = LOCATE_parser___ReduceAction664___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11173 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11174 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11175 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11176 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11178 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11178); + } + /* ./parser//parser.nit:11180 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11181 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pexprnode3*/ == NIT_NULL /*null*/) || (( variable6 /*pexprnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pexprnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode3*/,COLOR_kernel___Object_____eqeq))( variable6 /*pexprnode3*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode4*/, variable6 /*pexprnode3*/) /*Array::add*/; - } - variable8 = NEW_parser_prod___ASuperstringExpr___init_asuperstringexpr( variable4 /*listnode4*/); /*new ASuperstringExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(48)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction335___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction335::init (src/parser//parser.nit:12540,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction335].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction335].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction336___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction336::action (src/parser//parser.nit:12544,2--12578:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*listnode2*/==NIT_NULL) || VAL_ISA( variable6 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12552,6--38\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode3*/==NIT_NULL) || VAL_ISA( variable7 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12554,6--38\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12556,6--32\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode2*/ == NIT_NULL /*null*/) || (( variable6 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable6 /*listnode2*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable6 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11182 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11184 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11185 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction664____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11185); + } + REGB0 = ATTR_parser___ReduceAction664____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction664___init(val_t p0, val_t p1, int* init_table){ + int itpos360 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction664].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos360]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11188; + fra.me.meth = LOCATE_parser___ReduceAction664___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11188 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction664____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos360] = 1; + return; +} +void parser___ReduceAction665___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11192; + fra.me.meth = LOCATE_parser___ReduceAction665___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11194 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11195 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11196 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11198 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode3*/ == NIT_NULL /*null*/) || (( variable7 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable7 /*listnode3*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable7 /*listnode3*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11199 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11201 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11202 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction665____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11202); + } + REGB0 = ATTR_parser___ReduceAction665____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction665___init(val_t p0, val_t p1, int* init_table){ + int itpos361 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction665].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos361]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11205; + fra.me.meth = LOCATE_parser___ReduceAction665___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11205 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction665____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos361] = 1; + return; +} +void parser___ReduceAction666___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11209; + fra.me.meth = LOCATE_parser___ReduceAction666___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11211 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11212 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11213 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11214 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11216 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11216); + } + /* ./parser//parser.nit:11218 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11219 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode4*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode4*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode5*/, variable8 /*pexprnode4*/) /*Array::add*/; - } - variable10 = NEW_parser_prod___ASuperstringExpr___init_asuperstringexpr( variable5 /*listnode5*/); /*new ASuperstringExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(48)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction336___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction336::init (src/parser//parser.nit:12580,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction336].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction336].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction337___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction337::action (src/parser//parser.nit:12584,2--12603:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable5 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12593,6--32\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12595,6--32\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable7 /*pexprnode1*/) /*Array::add*/; - } - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode2*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable8 /*pexprnode2*/) /*Array::add*/; - } - variable1 = variable6 /*listnode3*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(49)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction337___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction337::init (src/parser//parser.nit:12605,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction337].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction337].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction338___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction338::action (src/parser//parser.nit:12609,2--12619:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tstartstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstartstringnode2*/, COLOR_TStartString, ID_TStartString)) /*cast TStartString*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12614,6--46\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AStartStringExpr___init_astartstringexpr( variable3 /*tstartstringnode2*/); /*new AStartStringExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(50)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction338___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction338::init (src/parser//parser.nit:12621,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction338].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction338].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction339___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction339::action (src/parser//parser.nit:12625,2--12644:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable5 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12634,6--32\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12636,6--32\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable7 /*pexprnode1*/) /*Array::add*/; - } - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode2*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable8 /*pexprnode2*/) /*Array::add*/; - } - variable1 = variable6 /*listnode3*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(51)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction339___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction339::init (src/parser//parser.nit:12646,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction339].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction339].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction340___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction340::action (src/parser//parser.nit:12650,2--12660:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tmidstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tmidstringnode2*/, COLOR_TMidString, ID_TMidString)) /*cast TMidString*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12655,6--42\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AMidStringExpr___init_amidstringexpr( variable3 /*tmidstringnode2*/); /*new AMidStringExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(52)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction340___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction340::init (src/parser//parser.nit:12662,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction340].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction340].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction341___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction341::action (src/parser//parser.nit:12666,2--12676:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tendstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tendstringnode2*/, COLOR_TEndString, ID_TEndString)) /*cast TEndString*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12671,6--42\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AEndStringExpr___init_aendstringexpr( variable3 /*tendstringnode2*/); /*new AEndStringExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(53)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction341___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction341::init (src/parser//parser.nit:12678,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction341].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction341].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction342___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction342::action (src/parser//parser.nit:12682,2--12697:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable4 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12692,6--32\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pexprnode1*/) /*Array::add*/; - } - variable1 = variable7 /*listnode2*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(54)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction342___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction342::init (src/parser//parser.nit:12699,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction342].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction342].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction343___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction343::action (src/parser//parser.nit:12703,2--12728:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12714,6--32\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12716,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pexprnode1*/) /*Array::add*/; - } - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11220 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11222 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11223 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction666____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11223); + } + REGB0 = ATTR_parser___ReduceAction666____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction666___init(val_t p0, val_t p1, int* init_table){ + int itpos362 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction666].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos362]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11226; + fra.me.meth = LOCATE_parser___ReduceAction666___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11226 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction666____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos362] = 1; + return; +} +void parser___ReduceAction667___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11230; + fra.me.meth = LOCATE_parser___ReduceAction667___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11232 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11233 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11234 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11236 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable1 = variable8 /*listnode3*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(54)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction343___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction343::init (src/parser//parser.nit:12730,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction343].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction343].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction344___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction344::action (src/parser//parser.nit:12734,2--12742:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable1 = variable5 /*listnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(54)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction344___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction344::init (src/parser//parser.nit:12744,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction344].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction344].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction345___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction345::action (src/parser//parser.nit:12748,2--12753:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = NEW_array___Array___init(); /*new Array[Object]*/ - variable2 = variable3; - variable1 = variable2 /*listnode1*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(54)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction345___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction345::init (src/parser//parser.nit:12755,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction345].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction345].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction346___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction346::action (src/parser//parser.nit:12759,2--12774:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable4 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12769,6--32\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pexprnode1*/) /*Array::add*/; - } - variable1 = variable7 /*listnode2*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction346___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction346::init (src/parser//parser.nit:12776,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction346].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction346].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction347___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction347::action (src/parser//parser.nit:12780,2--12805:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12791,6--32\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12793,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pexprnode1*/) /*Array::add*/; - } - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11237 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11239 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11240 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction667____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11240); + } + REGB0 = ATTR_parser___ReduceAction667____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction667___init(val_t p0, val_t p1, int* init_table){ + int itpos363 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction667].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos363]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11243; + fra.me.meth = LOCATE_parser___ReduceAction667___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11243 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction667____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos363] = 1; + return; +} +void parser___ReduceAction668___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11247; + fra.me.meth = LOCATE_parser___ReduceAction668___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11249 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11250 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11251 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11252 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11254 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11254); + } + /* ./parser//parser.nit:11256 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11257 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable1 = variable8 /*listnode3*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction347___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction347::init (src/parser//parser.nit:12807,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction347].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction347].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction348___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction348::action (src/parser//parser.nit:12811,2--12822:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12817,6--32\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pexprnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction348___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction348::init (src/parser//parser.nit:12824,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction348].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction348].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction349___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction349::action (src/parser//parser.nit:12828,2--12836:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable1 = variable5 /*listnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction349___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction349::init (src/parser//parser.nit:12838,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction349].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction349].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction350___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction350::action (src/parser//parser.nit:12842,2--12847:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = NEW_array___Array___init(); /*new Array[Object]*/ - variable2 = variable3; - variable1 = variable2 /*listnode1*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction350___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction350::init (src/parser//parser.nit:12849,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction350].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction350].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction351___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction351::action (src/parser//parser.nit:12853,2--12868:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable4 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12863,6--32\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable9)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pexprnode1*/) /*Array::add*/; - } - variable1 = variable7 /*listnode2*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(56)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction351___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction351::init (src/parser//parser.nit:12870,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction351].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction351].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction352___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction352::action (src/parser//parser.nit:12874,2--12899:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12885,6--32\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12887,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable11)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pexprnode1*/) /*Array::add*/; - } - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11258 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11260 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11261 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction668____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11261); + } + REGB0 = ATTR_parser___ReduceAction668____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction668___init(val_t p0, val_t p1, int* init_table){ + int itpos364 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction668].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos364]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11264; + fra.me.meth = LOCATE_parser___ReduceAction668___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11264 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction668____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos364] = 1; + return; +} +void parser___ReduceAction669___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11268; + fra.me.meth = LOCATE_parser___ReduceAction669___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11270 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11271 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11272 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11274 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable1 = variable8 /*listnode3*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(56)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction352___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction352::init (src/parser//parser.nit:12901,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction352].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction352].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction353___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction353::action (src/parser//parser.nit:12905,2--12915:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable3 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12913,6--32\n"); nit_exit(1);} - variable1 = variable6 /*pexprnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(57)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction353___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction353::init (src/parser//parser.nit:12917,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction353].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction353].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction354___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction354::action (src/parser//parser.nit:12921,2--12933:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tclassidnode3*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode3*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12927,6--38\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AQualified___init_aqualified( variable3 /*listnode2*/, variable4 /*tclassidnode3*/); /*new AQualified*/ - variable5 = variable6; - variable1 = variable5 /*pqualifiednode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(58)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction354___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction354::init (src/parser//parser.nit:12935,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction354].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction354].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction355___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction355::action (src/parser//parser.nit:12939,2--12961:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode2*/==NIT_NULL) || VAL_ISA( variable5 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12946,6--38\n"); nit_exit(1);} - variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode2*/ == NIT_NULL /*null*/) || (( variable5 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable6)) { /*if*/ - variable6 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable6)) { /*if*/ - variable4 = variable5 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11275 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11277 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11278 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction669____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11278); + } + REGB0 = ATTR_parser___ReduceAction669____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction669___init(val_t p0, val_t p1, int* init_table){ + int itpos365 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction669].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos365]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11281; + fra.me.meth = LOCATE_parser___ReduceAction669___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11281 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction669____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos365] = 1; + return; +} +void parser___ReduceAction670___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11285; + fra.me.meth = LOCATE_parser___ReduceAction670___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11287 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11288 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11289 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11290 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11292 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11292); + } + /* ./parser//parser.nit:11294 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11295 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*tclassidnode4*/==NIT_NULL) || VAL_ISA( variable6 /*tclassidnode4*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12955,6--38\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AQualified___init_aqualified( variable4 /*listnode3*/, variable6 /*tclassidnode4*/); /*new AQualified*/ - variable7 = variable8; - variable1 = variable7 /*pqualifiednode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(58)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction355___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction355::init (src/parser//parser.nit:12963,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction355].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction355].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction356___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction356::action (src/parser//parser.nit:12967,2--12986:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*listnode2*/==NIT_NULL) || VAL_ISA( variable4 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12973,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode2*/ == NIT_NULL /*null*/) || (( variable4 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable5)) { /*if*/ - variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable5)) { /*if*/ - variable3 = variable4 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode3*/, variable4 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11296 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11298 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11299 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction670____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11299); + } + REGB0 = ATTR_parser___ReduceAction670____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction670___init(val_t p0, val_t p1, int* init_table){ + int itpos366 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction670].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos366]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11302; + fra.me.meth = LOCATE_parser___ReduceAction670___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11302 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction670____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos366] = 1; + return; +} +void parser___ReduceAction673___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11306; + fra.me.meth = LOCATE_parser___ReduceAction673___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11308 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11309 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11310 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11312 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable6 = NEW_parser_prod___AQualified___init_aqualified( variable3 /*listnode3*/, NIT_NULL /*null*/); /*new AQualified*/ - variable5 = variable6; - variable1 = variable5 /*pqualifiednode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(58)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction356___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction356::init (src/parser//parser.nit:12988,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction356].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction356].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction357___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction357::action (src/parser//parser.nit:12992,2--13001:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tidnode1*/==NIT_NULL) || VAL_ISA( variable5 /*tidnode1*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:12999,6--28\n"); nit_exit(1);} - variable1 = variable5 /*tidnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(59)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction357___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction357::init (src/parser//parser.nit:13003,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction357].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction357].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction358___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction358::action (src/parser//parser.nit:13007,2--13016:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tclassidnode1*/==NIT_NULL) || VAL_ISA( variable5 /*tclassidnode1*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13014,6--38\n"); nit_exit(1);} - variable1 = variable5 /*tclassidnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(60)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction358___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction358::init (src/parser//parser.nit:13018,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction358].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction358].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction359___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction359::action (src/parser//parser.nit:13022,2--13026:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(61)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction359___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction359::init (src/parser//parser.nit:13028,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction359].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction359].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction360___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction360::action (src/parser//parser.nit:13032,2--13036:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(61)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction360___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction360::init (src/parser//parser.nit:13038,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction360].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction360].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction361___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction361::action (src/parser//parser.nit:13042,2--13060:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*listnode2*/==NIT_NULL) || VAL_ISA( variable4 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13048,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode2*/ == NIT_NULL /*null*/) || (( variable4 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable5)) { /*if*/ - variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable5)) { /*if*/ - variable3 = variable4 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode3*/, variable4 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11313 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11315 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11316 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction673____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11316); + } + REGB0 = ATTR_parser___ReduceAction673____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction673___init(val_t p0, val_t p1, int* init_table){ + int itpos367 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction673].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos367]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11319; + fra.me.meth = LOCATE_parser___ReduceAction673___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11319 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction673____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos367] = 1; + return; +} +void parser___ReduceAction674___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11323; + fra.me.meth = LOCATE_parser___ReduceAction674___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11325 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11326 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11327 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11328 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11330 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11330); + } + /* ./parser//parser.nit:11332 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11333 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable6 = NEW_parser_prod___ADoc___init_adoc( variable3 /*listnode3*/); /*new ADoc*/ - variable5 = variable6; - variable1 = variable5 /*pdocnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(62)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction361___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction361::init (src/parser//parser.nit:13062,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction361].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction361].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction362___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction362::action (src/parser//parser.nit:13066,2--13085:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*listnode2*/==NIT_NULL) || VAL_ISA( variable5 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13073,6--38\n"); nit_exit(1);} - variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode2*/ == NIT_NULL /*null*/) || (( variable5 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable6)) { /*if*/ - variable6 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable6)) { /*if*/ - variable4 = variable5 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode2*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11334 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11336 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11337 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction674____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11337); + } + REGB0 = ATTR_parser___ReduceAction674____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction674___init(val_t p0, val_t p1, int* init_table){ + int itpos368 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction674].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos368]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11340; + fra.me.meth = LOCATE_parser___ReduceAction674___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11340 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction674____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos368] = 1; + return; +} +void parser___ReduceAction675___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11344; + fra.me.meth = LOCATE_parser___ReduceAction675___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11346 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11347 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11348 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11350 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable7 = NEW_parser_prod___ADoc___init_adoc( variable4 /*listnode3*/); /*new ADoc*/ - variable6 = variable7; - variable1 = variable6 /*pdocnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(62)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction362___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction362::init (src/parser//parser.nit:13087,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction362].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction362].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction363___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction363::action (src/parser//parser.nit:13091,2--13096:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable1 = NIT_NULL /*null*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(62)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction363___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction363::init (src/parser//parser.nit:13098,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction363].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction363].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction364___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction364::action (src/parser//parser.nit:13102,2--13106:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable1 = NIT_NULL /*null*/ /*node_list=*/; - variable2 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(63)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable2, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction364___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction364::init (src/parser//parser.nit:13108,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction364].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction364].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction365___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction365::action (src/parser//parser.nit:13112,2--13119:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pdocnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pdocnode1*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13117,6--30\n"); nit_exit(1);} - variable1 = variable3 /*pdocnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(63)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction365___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction365::init (src/parser//parser.nit:13121,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction365].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction365].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction366___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction366::action (src/parser//parser.nit:13125,2--13130:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(64)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction366___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction366::init (src/parser//parser.nit:13132,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction366].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction366].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction367___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction367::action (src/parser//parser.nit:13136,2--13142:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(64)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction367___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction367::init (src/parser//parser.nit:13144,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction367].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction367].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction368___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction368::action (src/parser//parser.nit:13148,2--13152:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(64)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction368___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction368::init (src/parser//parser.nit:13154,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction368].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction368].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction369___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction369::action (src/parser//parser.nit:13158,2--13170:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13164,6--38\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AType___init_atype( variable4 /*tclassidnode2*/, variable3 /*listnode3*/); /*new AType*/ - variable5 = variable6; - variable1 = variable5 /*ptypenode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(65)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction369___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction369::init (src/parser//parser.nit:13172,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction369].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction369].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction370___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction370::action (src/parser//parser.nit:13176,2--13183:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13181,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(66)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction370___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction370::init (src/parser//parser.nit:13185,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction370].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction370].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction371___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction371::action (src/parser//parser.nit:13189,2--13224:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable13 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13204,6--32\n"); nit_exit(1);} - variable14 = variable10 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13206,6--32\n"); nit_exit(1);} - variable15 = variable8 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tkwthennode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwthennode4*/, COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13208,6--36\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13210,6--32\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*tkwelsenode6*/==NIT_NULL) || VAL_ISA( variable17 /*tkwelsenode6*/, COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13212,6--36\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist11*/; - variable19 = TAG_Bool(( variable18 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13214,6--32\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AIfexprExpr___init_aifexprexpr( variable13 /*tkwifnode2*/, variable14 /*pexprnode3*/, variable15 /*tkwthennode4*/, variable16 /*pexprnode5*/, variable17 /*tkwelsenode6*/, variable18 /*pexprnode7*/); /*new AIfexprExpr*/ - variable19 = variable20; - variable1 = variable19 /*pexprnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(66)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction371___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction371::init (src/parser//parser.nit:13226,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction371].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction371].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction372___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction372::action (src/parser//parser.nit:13230,2--13237:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13235,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(67)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction372___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction372::init (src/parser//parser.nit:13239,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction372].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction372].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction373___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction373::action (src/parser//parser.nit:13243,2--13259:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13251,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13253,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AOrExpr___init_aorexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AOrExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(67)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction373___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction373::init (src/parser//parser.nit:13261,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction373].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction373].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction374___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction374::action (src/parser//parser.nit:13265,2--13281:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13273,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13275,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AAndExpr___init_aandexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AAndExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(67)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction374___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction374::init (src/parser//parser.nit:13283,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction374].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction374].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction375___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction375::action (src/parser//parser.nit:13287,2--13294:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13292,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(68)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction375___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction375::init (src/parser//parser.nit:13296,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction375].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction375].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction376___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction376::action (src/parser//parser.nit:13300,2--13315:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwnotnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwnotnode2*/, COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13307,6--34\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13309,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___ANotExpr___init_anotexpr( variable5 /*tkwnotnode2*/, variable6 /*pexprnode3*/); /*new ANotExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(68)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction376___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction376::init (src/parser//parser.nit:13317,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction376].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction376].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction377___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction377::action (src/parser//parser.nit:13321,2--13328:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13326,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction377___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction377::init (src/parser//parser.nit:13330,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction377].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction377].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction378___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction378::action (src/parser//parser.nit:13334,2--13350:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13342,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13344,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AEqExpr___init_aeqexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEqExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction378___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction378::init (src/parser//parser.nit:13352,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction378].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction378].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction379___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction379::action (src/parser//parser.nit:13356,2--13372:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13364,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13366,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AEeExpr___init_aeeexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction379___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction379::init (src/parser//parser.nit:13374,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction379].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction379].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction380___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction380::action (src/parser//parser.nit:13378,2--13394:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13386,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13388,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ANeExpr___init_aneexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ANeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction380___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction380::init (src/parser//parser.nit:13396,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction380].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction380].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction381___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction381::action (src/parser//parser.nit:13400,2--13416:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13408,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13410,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ALtExpr___init_altexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALtExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction381___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction381::init (src/parser//parser.nit:13418,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction381].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction381].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction382___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction382::action (src/parser//parser.nit:13422,2--13438:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13430,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13432,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ALeExpr___init_aleexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction382___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction382::init (src/parser//parser.nit:13440,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction382].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction382].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction383___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction383::action (src/parser//parser.nit:13444,2--13460:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13452,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13454,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AGtExpr___init_agtexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGtExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction383___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction383::init (src/parser//parser.nit:13462,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction383].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction383].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction384___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction384::action (src/parser//parser.nit:13466,2--13482:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13474,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13476,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AGeExpr___init_ageexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction384___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction384::init (src/parser//parser.nit:13484,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction384].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction384].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction385___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction385::action (src/parser//parser.nit:13488,2--13504:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13496,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13498,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AStarshipExpr___init_astarshipexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarshipExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction385___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction385::init (src/parser//parser.nit:13506,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction385].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction385].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction386___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction386::action (src/parser//parser.nit:13510,2--13526:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13518,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13520,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AIsaExpr___init_aisaexpr( variable6 /*pexprnode2*/, variable7 /*ptypenode3*/); /*new AIsaExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction386___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction386::init (src/parser//parser.nit:13528,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction386].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction386].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction387___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction387::action (src/parser//parser.nit:13532,2--13539:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13537,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(70)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction387___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction387::init (src/parser//parser.nit:13541,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction387].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction387].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction388___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction388::action (src/parser//parser.nit:13545,2--13561:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13553,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13555,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___APlusExpr___init_aplusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APlusExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(70)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction388___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction388::init (src/parser//parser.nit:13563,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction388].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction388].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction389___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction389::action (src/parser//parser.nit:13567,2--13583:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13575,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13577,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AMinusExpr___init_aminusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AMinusExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(70)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction389___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction389::init (src/parser//parser.nit:13585,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction389].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction389].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction390___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction390::action (src/parser//parser.nit:13589,2--13596:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13594,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(71)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction390___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction390::init (src/parser//parser.nit:13598,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction390].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction390].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction391___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction391::action (src/parser//parser.nit:13602,2--13618:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13610,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13612,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AStarExpr___init_astarexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(71)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction391___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction391::init (src/parser//parser.nit:13620,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction391].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction391].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction392___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction392::action (src/parser//parser.nit:13624,2--13640:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13632,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13634,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ASlashExpr___init_aslashexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ASlashExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(71)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction392___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction392::init (src/parser//parser.nit:13642,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction392].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction392].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction393___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction393::action (src/parser//parser.nit:13646,2--13662:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13654,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13656,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___APercentExpr___init_apercentexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APercentExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(71)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction393___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction393::init (src/parser//parser.nit:13664,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction393].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction393].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction394___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction394::action (src/parser//parser.nit:13668,2--13675:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13673,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(72)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction394___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction394::init (src/parser//parser.nit:13677,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction394].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction394].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction395___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction395::action (src/parser//parser.nit:13681,2--13696:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13688,6--34\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13690,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AUminusExpr___init_auminusexpr( variable5 /*tminusnode2*/, variable6 /*pexprnode3*/); /*new AUminusExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(72)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction395___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction395::init (src/parser//parser.nit:13698,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction395].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction395].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction396___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction396::action (src/parser//parser.nit:13702,2--13717:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwoncenode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwoncenode2*/, COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13709,6--36\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13711,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AOnceExpr___init_aonceexpr( variable5 /*tkwoncenode2*/, variable6 /*pexprnode3*/); /*new AOnceExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(72)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction396___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction396::init (src/parser//parser.nit:13719,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction396].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction396].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction397___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction397::action (src/parser//parser.nit:13723,2--13730:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13728,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(73)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction397___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction397::init (src/parser//parser.nit:13732,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction397].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction397].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction398___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction398::action (src/parser//parser.nit:13736,2--13764:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable5 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13745,6--34\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable8 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13747,6--32\n"); nit_exit(1);} - variable9 = variable2 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13749,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11351 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11353 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11354 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction675____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11354); + } + REGB0 = ATTR_parser___ReduceAction675____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction675___init(val_t p0, val_t p1, int* init_table){ + int itpos369 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction675].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos369]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11357; + fra.me.meth = LOCATE_parser___ReduceAction675___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11357 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction675____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos369] = 1; + return; +} +void parser___ReduceAction676___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11361; + fra.me.meth = LOCATE_parser___ReduceAction676___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11363 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11364 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11365 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11366 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11368 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11368); + } + /* ./parser//parser.nit:11370 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11371 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable11 = NEW_parser_prod___ANewExpr___init_anewexpr( variable7 /*tkwnewnode2*/, variable8 /*ptypenode3*/, NIT_NULL /*null*/, variable6 /*listnode6*/); /*new ANewExpr*/ - variable10 = variable11; - variable1 = variable10 /*pexprnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(73)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction398___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction398::init (src/parser//parser.nit:13766,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction398].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction398].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction399___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction399::action (src/parser//parser.nit:13770,2--13786:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13778,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13780,6--36\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AAttrExpr___init_aattrexpr( variable6 /*pexprnode2*/, variable7 /*tattridnode3*/); /*new AAttrExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction399___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction399::init (src/parser//parser.nit:13788,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction399].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction399].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction400___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction400::action (src/parser//parser.nit:13792,2--13805:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable4 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13799,6--36\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AAttrExpr___init_aattrexpr( variable3 /*pexprnode2*/, variable4 /*tattridnode3*/); /*new AAttrExpr*/ - variable5 = variable6; - variable1 = variable5 /*pexprnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction400___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction400::init (src/parser//parser.nit:13807,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction400].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction400].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction401___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction401::action (src/parser//parser.nit:13811,2--13839:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13821,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13823,6--28\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13825,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11372 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11374 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11375 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction676____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11375); + } + REGB0 = ATTR_parser___ReduceAction676____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction676___init(val_t p0, val_t p1, int* init_table){ + int itpos370 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction676].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos370]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11378; + fra.me.meth = LOCATE_parser___ReduceAction676___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11378 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction676____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos370] = 1; + return; +} +void parser___ReduceAction677___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11382; + fra.me.meth = LOCATE_parser___ReduceAction677___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11384 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11385 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11386 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11388 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable12 = NEW_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction401___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction401::init (src/parser//parser.nit:13841,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction401].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction401].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction402___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction402::action (src/parser//parser.nit:13845,2--13870:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13854,6--28\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13856,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11389 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11391 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11392 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction677____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11392); + } + REGB0 = ATTR_parser___ReduceAction677____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction677___init(val_t p0, val_t p1, int* init_table){ + int itpos371 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction677].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos371]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11395; + fra.me.meth = LOCATE_parser___ReduceAction677___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11395 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction677____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos371] = 1; + return; +} +void parser___ReduceAction678___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11399; + fra.me.meth = LOCATE_parser___ReduceAction678___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11401 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11402 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11403 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11404 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11406 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11406); + } + /* ./parser//parser.nit:11408 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11409 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable9 = NEW_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction402___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction402::init (src/parser//parser.nit:13872,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction402].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction402].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction403___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction403::action (src/parser//parser.nit:13876,2--13899:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13883,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13885,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11410 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11412 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11413 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction678____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11413); + } + REGB0 = ATTR_parser___ReduceAction678____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction678___init(val_t p0, val_t p1, int* init_table){ + int itpos372 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction678].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos372]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11416; + fra.me.meth = LOCATE_parser___ReduceAction678___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11416 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction678____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos372] = 1; + return; +} +void parser___ReduceAction680___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11420; + fra.me.meth = LOCATE_parser___ReduceAction680___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11422 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11423 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11424 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11425 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11427 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11427); + } + /* ./parser//parser.nit:11429 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11430 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable8 = NEW_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction403___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction403::init (src/parser//parser.nit:13901,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction403].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction403].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction404___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction404::action (src/parser//parser.nit:13905,2--13931:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13913,6--42\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13915,6--38\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13917,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11431 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11433 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11434 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction680____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11434); + } + REGB0 = ATTR_parser___ReduceAction680____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction680___init(val_t p0, val_t p1, int* init_table){ + int itpos373 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction680].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos373]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11437; + fra.me.meth = LOCATE_parser___ReduceAction680___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11437 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction680____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos373] = 1; + return; +} +void parser___ReduceAction682___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11441; + fra.me.meth = LOCATE_parser___ReduceAction682___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11443 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11444 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11445 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11446 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11448 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11448); + } + /* ./parser//parser.nit:11450 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11451 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable10 = NEW_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction404___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction404::init (src/parser//parser.nit:13933,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction404].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction404].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction405___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction405::action (src/parser//parser.nit:13937,2--13965:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13947,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13949,6--36\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13951,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11452 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11454 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11455 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction682____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11455); + } + REGB0 = ATTR_parser___ReduceAction682____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction682___init(val_t p0, val_t p1, int* init_table){ + int itpos374 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction682].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos374]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11458; + fra.me.meth = LOCATE_parser___ReduceAction682___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11458 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction682____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos374] = 1; + return; +} +void parser___ReduceAction684___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11462; + fra.me.meth = LOCATE_parser___ReduceAction684___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11464 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11465 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11466 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11467 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11469 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11469); + } + /* ./parser//parser.nit:11471 */ + REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11471); + } + /* ./parser//parser.nit:11472 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11473 */ + fra.me.REG[3] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[5] = fra.me.REG[3]; + /* ./parser//parser.nit:11474 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11475 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction684____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11475); + } + REGB0 = ATTR_parser___ReduceAction684____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction684___init(val_t p0, val_t p1, int* init_table){ + int itpos375 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction684].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos375]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11478; + fra.me.meth = LOCATE_parser___ReduceAction684___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11478 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction684____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos375] = 1; + return; +} +void parser___ReduceAction688___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11482; + fra.me.meth = LOCATE_parser___ReduceAction688___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11484 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11485 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11486 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11487 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11489 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11489); + } + /* ./parser//parser.nit:11491 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11492 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable12 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction405___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction405::init (src/parser//parser.nit:13967,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction405].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction405].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction406___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction406::action (src/parser//parser.nit:13971,2--13996:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13980,6--36\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:13982,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11493 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11495 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11496 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction688____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11496); + } + REGB0 = ATTR_parser___ReduceAction688____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction688___init(val_t p0, val_t p1, int* init_table){ + int itpos376 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction688].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos376]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11499; + fra.me.meth = LOCATE_parser___ReduceAction688___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11499 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction688____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos376] = 1; + return; +} +void parser___ReduceAction689___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11503; + fra.me.meth = LOCATE_parser___ReduceAction689___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11505 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11506 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11507 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11509 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable9 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction406___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction406::init (src/parser//parser.nit:13998,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction406].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction406].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction407___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction407::action (src/parser//parser.nit:14002,2--14035:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable8 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14014,6--34\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14016,6--32\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist6*/; - variable13 = TAG_Bool(( variable12 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14018,6--28\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist7*/; - variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14020,6--38\n"); nit_exit(1);} - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable14)) { /*if*/ - variable14 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable14)) { /*if*/ - variable9 = variable13 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode6*/, variable13 /*listnode5*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11510 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11512 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11513 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction689____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11513); + } + REGB0 = ATTR_parser___ReduceAction689____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction689___init(val_t p0, val_t p1, int* init_table){ + int itpos377 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction689].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos377]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11516; + fra.me.meth = LOCATE_parser___ReduceAction689___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11516 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction689____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos377] = 1; + return; +} +void parser___ReduceAction690___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11520; + fra.me.meth = LOCATE_parser___ReduceAction690___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11522 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11523 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11524 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11525 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11527 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11527); + } + /* ./parser//parser.nit:11529 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11530 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable15 = NEW_parser_prod___ANewExpr___init_anewexpr( variable10 /*tkwnewnode2*/, variable11 /*ptypenode3*/, variable12 /*tidnode4*/, variable9 /*listnode6*/); /*new ANewExpr*/ - variable14 = variable15; - variable1 = variable14 /*pexprnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction407___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction407::init (src/parser//parser.nit:14037,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction407].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction407].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction408___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction408::action (src/parser//parser.nit:14041,2--14051:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwselfnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwselfnode2*/, COLOR_TKwself, ID_TKwself)) /*cast TKwself*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14046,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ASelfExpr___init_aselfexpr( variable3 /*tkwselfnode2*/); /*new ASelfExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction408___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction408::init (src/parser//parser.nit:14053,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction408].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction408].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction409___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction409::action (src/parser//parser.nit:14057,2--14067:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwtruenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwtruenode2*/, COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14062,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ATrueExpr___init_atrueexpr( variable3 /*tkwtruenode2*/); /*new ATrueExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction409___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction409::init (src/parser//parser.nit:14069,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction409].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction409].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction410___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction410::action (src/parser//parser.nit:14073,2--14083:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwfalsenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwfalsenode2*/, COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14078,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFalseExpr___init_afalseexpr( variable3 /*tkwfalsenode2*/); /*new AFalseExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction410___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction410::init (src/parser//parser.nit:14085,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction410].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction410].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction411___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction411::action (src/parser//parser.nit:14089,2--14099:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwnullnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwnullnode2*/, COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14094,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ANullExpr___init_anullexpr( variable3 /*tkwnullnode2*/); /*new ANullExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction411___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction411::init (src/parser//parser.nit:14101,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction411].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction411].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction412___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction412::action (src/parser//parser.nit:14105,2--14115:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tnumbernode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnumbernode2*/, COLOR_TNumber, ID_TNumber)) /*cast TNumber*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14110,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AIntExpr___init_aintexpr( variable3 /*tnumbernode2*/); /*new AIntExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction412___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction412::init (src/parser//parser.nit:14117,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction412].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction412].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction413___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction413::action (src/parser//parser.nit:14121,2--14131:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tfloatnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tfloatnode2*/, COLOR_TFloat, ID_TFloat)) /*cast TFloat*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14126,6--34\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFloatExpr___init_afloatexpr( variable3 /*tfloatnode2*/); /*new AFloatExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction413___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction413::init (src/parser//parser.nit:14133,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction413].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction413].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction414___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction414::action (src/parser//parser.nit:14137,2--14147:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tcharnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tcharnode2*/, COLOR_TChar, ID_TChar)) /*cast TChar*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14142,6--32\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ACharExpr___init_acharexpr( variable3 /*tcharnode2*/); /*new ACharExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction414___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction414::init (src/parser//parser.nit:14149,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction414].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction414].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction415___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction415::action (src/parser//parser.nit:14153,2--14163:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstringnode2*/, COLOR_TString, ID_TString)) /*cast TString*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14158,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AStringExpr___init_astringexpr( variable3 /*tstringnode2*/); /*new AStringExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction415___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction415::init (src/parser//parser.nit:14165,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction415].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction415].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction416___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction416::action (src/parser//parser.nit:14169,2--14176:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14174,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction416___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction416::init (src/parser//parser.nit:14178,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction416].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction416].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction417___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction417::action (src/parser//parser.nit:14182,2--14191:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable3 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14189,6--32\n"); nit_exit(1);} - variable1 = variable5 /*pexprnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction417___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction417::init (src/parser//parser.nit:14193,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction417].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction417].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction418___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction418::action (src/parser//parser.nit:14197,2--14204:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14202,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction418___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction418::init (src/parser//parser.nit:14206,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction418].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction418].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction419___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction419::action (src/parser//parser.nit:14210,2--14227:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable4 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14219,6--32\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode2*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable8)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable7 /*pexprnode2*/) /*Array::add*/; - } - variable9 = NEW_parser_prod___ABlockExpr___init_ablockexpr( variable6 /*listnode3*/); /*new ABlockExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction419___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction419::init (src/parser//parser.nit:14229,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction419].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction419].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction420___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction420::action (src/parser//parser.nit:14233,2--14260:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable5 /*nodearraylist2*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14243,6--32\n"); nit_exit(1);} - variable9 = variable4 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14245,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode2*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable10)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode4*/, variable8 /*pexprnode2*/) /*Array::add*/; - } - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable7 = variable9 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11531 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11533 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11534 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction690____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11534); + } + REGB0 = ATTR_parser___ReduceAction690____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction690___init(val_t p0, val_t p1, int* init_table){ + int itpos378 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction690].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos378]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11537; + fra.me.meth = LOCATE_parser___ReduceAction690___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11537 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction690____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos378] = 1; + return; +} +void parser___ReduceAction691___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11541; + fra.me.meth = LOCATE_parser___ReduceAction691___action; + fra.me.has_broke = 0; + fra.me.REG_size = 5; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11543 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11544 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11545 */ + fra.me.REG[4] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11547 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable11 = NEW_parser_prod___ABlockExpr___init_ablockexpr( variable7 /*listnode4*/); /*new ABlockExpr*/ - variable10 = variable11; - variable1 = variable10 /*pexprnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction420___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction420::init (src/parser//parser.nit:14262,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction420].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction420].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction421___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction421::action (src/parser//parser.nit:14266,2--14272:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable1 = NIT_NULL /*null*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction421___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction421::init (src/parser//parser.nit:14274,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction421].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction421].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction422___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction422::action (src/parser//parser.nit:14278,2--14283:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable1 = NIT_NULL /*null*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction422___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction422::init (src/parser//parser.nit:14285,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction422].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction422].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction423___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction423::action (src/parser//parser.nit:14289,2--14296:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14294,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction423___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction423::init (src/parser//parser.nit:14298,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction423].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction423].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction424___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction424::action (src/parser//parser.nit:14302,2--14309:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14307,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction424___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction424::init (src/parser//parser.nit:14311,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction424].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction424].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction425___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction425::action (src/parser//parser.nit:14315,2--14326:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwreturnnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwreturnnode2*/, COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14320,6--40\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AReturnExpr___init_areturnexpr( variable3 /*tkwreturnnode2*/, NIT_NULL /*null*/); /*new AReturnExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction425___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction425::init (src/parser//parser.nit:14328,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction425].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction425].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction426___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction426::action (src/parser//parser.nit:14332,2--14346:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwreturnnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwreturnnode2*/, COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14338,6--40\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14340,6--32\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AReturnExpr___init_areturnexpr( variable4 /*tkwreturnnode2*/, variable5 /*pexprnode3*/); /*new AReturnExpr*/ - variable6 = variable7; - variable1 = variable6 /*pexprnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction426___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction426::init (src/parser//parser.nit:14348,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction426].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction426].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction427___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction427::action (src/parser//parser.nit:14352,2--14362:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwbreaknode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwbreaknode2*/, COLOR_TKwbreak, ID_TKwbreak)) /*cast TKwbreak*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14357,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ABreakExpr___init_abreakexpr( variable3 /*tkwbreaknode2*/); /*new ABreakExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction427___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction427::init (src/parser//parser.nit:14364,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction427].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction427].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction428___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction428::action (src/parser//parser.nit:14368,2--14378:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwabortnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwabortnode2*/, COLOR_TKwabort, ID_TKwabort)) /*cast TKwabort*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14373,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AAbortExpr___init_aabortexpr( variable3 /*tkwabortnode2*/); /*new AAbortExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction428___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction428::init (src/parser//parser.nit:14380,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction428].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction428].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction429___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction429::action (src/parser//parser.nit:14384,2--14394:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwcontinuenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwcontinuenode2*/, COLOR_TKwcontinue, ID_TKwcontinue)) /*cast TKwcontinue*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14389,6--44\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AContinueExpr___init_acontinueexpr( variable3 /*tkwcontinuenode2*/); /*new AContinueExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction429___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction429::init (src/parser//parser.nit:14396,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction429].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction429].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction430___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction430::action (src/parser//parser.nit:14400,2--14407:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14405,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction430___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction430::init (src/parser//parser.nit:14409,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction430].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction430].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction431___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction431::action (src/parser//parser.nit:14413,2--14420:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14418,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction431___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction431::init (src/parser//parser.nit:14422,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction431].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction431].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction432___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction432::action (src/parser//parser.nit:14426,2--14433:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14431,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction432___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction432::init (src/parser//parser.nit:14435,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction432].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction432].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction433___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction433::action (src/parser//parser.nit:14439,2--14446:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14444,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction433___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction433::init (src/parser//parser.nit:14448,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction433].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction433].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction434___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction434::action (src/parser//parser.nit:14452,2--14459:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14457,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction434___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction434::init (src/parser//parser.nit:14461,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction434].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction434].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction435___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction435::action (src/parser//parser.nit:14465,2--14493:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14475,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14477,6--28\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14479,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11548 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); + } + /* ./parser//parser.nit:11550 */ + fra.me.REG[2] = fra.me.REG[4]; + /* ./parser//parser.nit:11551 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction691____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11551); + } + REGB0 = ATTR_parser___ReduceAction691____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction691___init(val_t p0, val_t p1, int* init_table){ + int itpos379 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction691].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos379]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11554; + fra.me.meth = LOCATE_parser___ReduceAction691___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11554 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction691____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos379] = 1; + return; +} +void parser___ReduceAction692___action(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[5];} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11558; + fra.me.meth = LOCATE_parser___ReduceAction692___action; + fra.me.has_broke = 0; + fra.me.REG_size = 6; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[3] = NIT_NULL; + fra.me.REG[4] = NIT_NULL; + fra.me.REG[5] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./parser//parser.nit:11560 */ + fra.me.REG[2] = NIT_NULL; + /* ./parser//parser.nit:11561 */ + fra.me.REG[3] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11562 */ + fra.me.REG[4] = CALL_parser___Parser___pop(fra.me.REG[1])(fra.me.REG[1]); + /* ./parser//parser.nit:11563 */ + fra.me.REG[5] = NEW_Array_array___Array___init(); + /* ./parser//parser.nit:11565 */ + REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_Array, ID_Array)) /*cast Array[Object]*/; + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Assert failed", NULL, LOCATE_parser, 11565); + } + /* ./parser//parser.nit:11567 */ + fra.me.REG[4] = CALL_parser___ReduceAction___concat(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[5] = fra.me.REG[4]; + /* ./parser//parser.nit:11568 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } else { + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); + REGB0 = REGB1; } } - variable12 = NEW_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction435___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction435::init (src/parser//parser.nit:14495,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction435].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction435].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction436___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction436::action (src/parser//parser.nit:14499,2--14524:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14508,6--28\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14510,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; - } - } - variable9 = NEW_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction436___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction436::init (src/parser//parser.nit:14526,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction436].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction436].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction437___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction437::action (src/parser//parser.nit:14530,2--14553:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14537,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14539,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*Array::append*/; - } - } - variable8 = NEW_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction437___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction437::init (src/parser//parser.nit:14555,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction437].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction437].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction438___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction438::action (src/parser//parser.nit:14559,2--14585:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14567,6--42\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14569,6--38\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14571,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*Array::append*/; - } - } - variable10 = NEW_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction438___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction438::init (src/parser//parser.nit:14587,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction438].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction438].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction439___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction439::action (src/parser//parser.nit:14591,2--14619:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14601,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14603,6--36\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14605,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; - } - } - variable12 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction439___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction439::init (src/parser//parser.nit:14621,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction439].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction439].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction440___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction440::action (src/parser//parser.nit:14625,2--14650:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14634,6--36\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14636,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; - } - } - variable9 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction440___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction440::init (src/parser//parser.nit:14652,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction440].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction440].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction441___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction441::action (src/parser//parser.nit:14656,2--14670:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tkwdonode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwdonode2*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14662,6--32\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14664,6--32\n"); nit_exit(1);} - variable7 = NEW_parser_prod___ADoExpr___init_adoexpr( variable4 /*tkwdonode2*/, variable5 /*pexprnode3*/); /*new ADoExpr*/ - variable6 = variable7; - variable1 = variable6 /*pexprnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(77)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction441___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction441::init (src/parser//parser.nit:14672,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction441].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction441].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction442___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction442::action (src/parser//parser.nit:14676,2--14702:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable10 = variable9 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14688,6--32\n"); nit_exit(1);} - variable11 = variable7 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14690,6--32\n"); nit_exit(1);} - variable12 = variable4 /*nodearraylist6*/; - variable13 = TAG_Bool(( variable12 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14692,6--32\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist8*/; - variable14 = TAG_Bool(( variable13 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14694,6--32\n"); nit_exit(1);} - variable15 = NEW_parser_prod___AIfExpr___init_aifexpr( variable10 /*tkwifnode2*/, variable11 /*pexprnode3*/, variable12 /*pexprnode4*/, variable13 /*pexprnode5*/); /*new AIfExpr*/ - variable14 = variable15; - variable1 = variable14 /*pexprnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(78)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction442___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction442::init (src/parser//parser.nit:14704,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction442].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction442].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction443___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction443::action (src/parser//parser.nit:14708,2--14732:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable8 = variable7 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*tkwwhilenode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwwhilenode2*/, COLOR_TKwwhile, ID_TKwwhile)) /*cast TKwwhile*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14718,6--38\n"); nit_exit(1);} - variable9 = variable5 /*nodearraylist3*/; - variable10 = TAG_Bool(( variable9 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14720,6--32\n"); nit_exit(1);} - variable10 = variable3 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*tkwdonode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwdonode4*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14722,6--32\n"); nit_exit(1);} - variable11 = variable2 /*nodearraylist6*/; - variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14724,6--32\n"); nit_exit(1);} - variable13 = NEW_parser_prod___AWhileExpr___init_awhileexpr( variable8 /*tkwwhilenode2*/, variable9 /*pexprnode3*/, variable10 /*tkwdonode4*/, variable11 /*pexprnode5*/); /*new AWhileExpr*/ - variable12 = variable13; - variable1 = variable12 /*pexprnode1*/ /*node_list=*/; - variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(79)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction443___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction443::init (src/parser//parser.nit:14734,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction443].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction443].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction444___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction444::action (src/parser//parser.nit:14738,2--14757:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14746,6--32\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist3*/; - variable8 = TAG_Bool(( variable7 /*tkwdonode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwdonode3*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14748,6--32\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist4*/; - variable9 = TAG_Bool(( variable8 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14750,6--32\n"); nit_exit(1);} - variable10 = NEW_parser_prod___AForExpr___init_aforexpr( variable6 /*pexprnode2*/, variable7 /*tkwdonode3*/, variable8 /*pexprnode4*/); /*new AForExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(80)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction444___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction444::init (src/parser//parser.nit:14759,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction444].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction444].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction445___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction445::action (src/parser//parser.nit:14763,2--14775:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14769,6--38\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AType___init_atype( variable4 /*tclassidnode2*/, variable3 /*listnode3*/); /*new AType*/ - variable5 = variable6; - variable1 = variable5 /*ptypenode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(81)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction445___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction445::init (src/parser//parser.nit:14777,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction445].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction445].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction446___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction446::action (src/parser//parser.nit:14781,2--14807:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = NEW_array___Array___init(); /*new Array[Object]*/ - variable8 = variable9; - variable9 = variable7 /*nodearraylist1*/; - variable10 = TAG_Bool(( variable9 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable9 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14792,6--38\n"); nit_exit(1);} - variable10 = variable4 /*nodearraylist4*/; - variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14794,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable8 = variable10 /*listnode3*/ /*listnode4=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable10 /*listnode3*/) /*Array::append*/; - } - } - variable12 = NEW_parser_prod___AType___init_atype( variable9 /*tclassidnode2*/, variable8 /*listnode4*/); /*new AType*/ - variable11 = variable12; - variable1 = variable11 /*ptypenode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(81)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction446___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction446::init (src/parser//parser.nit:14809,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction446].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction446].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction447___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction447::action (src/parser//parser.nit:14813,2--14820:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14818,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(82)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction447___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction447::init (src/parser//parser.nit:14822,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction447].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction447].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction448___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction448::action (src/parser//parser.nit:14826,2--14861:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable13 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14841,6--32\n"); nit_exit(1);} - variable14 = variable10 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14843,6--32\n"); nit_exit(1);} - variable15 = variable8 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tkwthennode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwthennode4*/, COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14845,6--36\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14847,6--32\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*tkwelsenode6*/==NIT_NULL) || VAL_ISA( variable17 /*tkwelsenode6*/, COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14849,6--36\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist11*/; - variable19 = TAG_Bool(( variable18 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14851,6--32\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AIfexprExpr___init_aifexprexpr( variable13 /*tkwifnode2*/, variable14 /*pexprnode3*/, variable15 /*tkwthennode4*/, variable16 /*pexprnode5*/, variable17 /*tkwelsenode6*/, variable18 /*pexprnode7*/); /*new AIfexprExpr*/ - variable19 = variable20; - variable1 = variable19 /*pexprnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(82)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction448___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction448::init (src/parser//parser.nit:14863,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction448].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction448].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction449___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction449::action (src/parser//parser.nit:14867,2--14874:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14872,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(83)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction449___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction449::init (src/parser//parser.nit:14876,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction449].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction449].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction450___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction450::action (src/parser//parser.nit:14880,2--14896:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14888,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14890,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AOrExpr___init_aorexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AOrExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(83)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction450___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction450::init (src/parser//parser.nit:14898,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction450].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction450].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction451___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction451::action (src/parser//parser.nit:14902,2--14918:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14910,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14912,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AAndExpr___init_aandexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AAndExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(83)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction451___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction451::init (src/parser//parser.nit:14920,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction451].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction451].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction452___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction452::action (src/parser//parser.nit:14924,2--14931:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14929,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(84)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction452___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction452::init (src/parser//parser.nit:14933,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction452].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction452].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction453___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction453::action (src/parser//parser.nit:14937,2--14952:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwnotnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwnotnode2*/, COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14944,6--34\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14946,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___ANotExpr___init_anotexpr( variable5 /*tkwnotnode2*/, variable6 /*pexprnode3*/); /*new ANotExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(84)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction453___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction453::init (src/parser//parser.nit:14954,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction453].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction453].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction454___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction454::action (src/parser//parser.nit:14958,2--14965:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14963,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction454___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction454::init (src/parser//parser.nit:14967,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction454].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction454].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction455___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction455::action (src/parser//parser.nit:14971,2--14987:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14979,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:14981,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AEqExpr___init_aeqexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEqExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction455___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction455::init (src/parser//parser.nit:14989,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction455].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction455].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction456___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction456::action (src/parser//parser.nit:14993,2--15009:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15001,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15003,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AEeExpr___init_aeeexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction456___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction456::init (src/parser//parser.nit:15011,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction456].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction456].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction457___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction457::action (src/parser//parser.nit:15015,2--15031:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15023,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15025,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ANeExpr___init_aneexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ANeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction457___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction457::init (src/parser//parser.nit:15033,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction457].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction457].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction458___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction458::action (src/parser//parser.nit:15037,2--15053:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15045,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15047,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ALtExpr___init_altexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALtExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction458___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction458::init (src/parser//parser.nit:15055,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction458].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction458].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction459___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction459::action (src/parser//parser.nit:15059,2--15075:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15067,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15069,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ALeExpr___init_aleexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction459___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction459::init (src/parser//parser.nit:15077,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction459].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction459].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction460___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction460::action (src/parser//parser.nit:15081,2--15097:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15089,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15091,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AGtExpr___init_agtexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGtExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction460___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction460::init (src/parser//parser.nit:15099,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction460].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction460].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction461___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction461::action (src/parser//parser.nit:15103,2--15119:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15111,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15113,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AGeExpr___init_ageexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction461___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction461::init (src/parser//parser.nit:15121,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction461].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction461].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction462___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction462::action (src/parser//parser.nit:15125,2--15141:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15133,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15135,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AStarshipExpr___init_astarshipexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarshipExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction462___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction462::init (src/parser//parser.nit:15143,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction462].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction462].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction463___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction463::action (src/parser//parser.nit:15147,2--15163:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15155,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15157,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AIsaExpr___init_aisaexpr( variable6 /*pexprnode2*/, variable7 /*ptypenode3*/); /*new AIsaExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction463___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction463::init (src/parser//parser.nit:15165,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction463].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction463].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction464___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction464::action (src/parser//parser.nit:15169,2--15176:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15174,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(86)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction464___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction464::init (src/parser//parser.nit:15178,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction464].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction464].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction465___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction465::action (src/parser//parser.nit:15182,2--15198:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15190,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15192,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___APlusExpr___init_aplusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APlusExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(86)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction465___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction465::init (src/parser//parser.nit:15200,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction465].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction465].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction466___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction466::action (src/parser//parser.nit:15204,2--15220:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15212,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15214,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AMinusExpr___init_aminusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AMinusExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(86)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction466___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction466::init (src/parser//parser.nit:15222,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction466].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction466].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction467___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction467::action (src/parser//parser.nit:15226,2--15233:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15231,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(87)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction467___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction467::init (src/parser//parser.nit:15235,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction467].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction467].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction468___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction468::action (src/parser//parser.nit:15239,2--15255:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15247,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15249,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AStarExpr___init_astarexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(87)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction468___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction468::init (src/parser//parser.nit:15257,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction468].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction468].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction469___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction469::action (src/parser//parser.nit:15261,2--15277:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15269,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15271,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ASlashExpr___init_aslashexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ASlashExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(87)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction469___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction469::init (src/parser//parser.nit:15279,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction469].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction469].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction470___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction470::action (src/parser//parser.nit:15283,2--15299:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15291,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15293,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___APercentExpr___init_apercentexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APercentExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(87)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction470___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction470::init (src/parser//parser.nit:15301,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction470].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction470].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction471___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction471::action (src/parser//parser.nit:15305,2--15312:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15310,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(88)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction471___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction471::init (src/parser//parser.nit:15314,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction471].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction471].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction472___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction472::action (src/parser//parser.nit:15318,2--15333:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15325,6--34\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15327,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AUminusExpr___init_auminusexpr( variable5 /*tminusnode2*/, variable6 /*pexprnode3*/); /*new AUminusExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(88)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction472___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction472::init (src/parser//parser.nit:15335,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction472].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction472].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction473___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction473::action (src/parser//parser.nit:15339,2--15354:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwoncenode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwoncenode2*/, COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15346,6--36\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15348,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AOnceExpr___init_aonceexpr( variable5 /*tkwoncenode2*/, variable6 /*pexprnode3*/); /*new AOnceExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(88)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction473___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction473::init (src/parser//parser.nit:15356,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction473].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction473].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction474___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction474::action (src/parser//parser.nit:15360,2--15367:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15365,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(89)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction474___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction474::init (src/parser//parser.nit:15369,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction474].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction474].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction475___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction475::action (src/parser//parser.nit:15373,2--15401:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable5 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15382,6--34\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable8 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15384,6--32\n"); nit_exit(1);} - variable9 = variable2 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15386,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*Array::append*/; - } - } - variable11 = NEW_parser_prod___ANewExpr___init_anewexpr( variable7 /*tkwnewnode2*/, variable8 /*ptypenode3*/, NIT_NULL /*null*/, variable6 /*listnode6*/); /*new ANewExpr*/ - variable10 = variable11; - variable1 = variable10 /*pexprnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(89)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction475___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction475::init (src/parser//parser.nit:15403,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction475].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction475].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction476___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction476::action (src/parser//parser.nit:15407,2--15423:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15415,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15417,6--36\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AAttrExpr___init_aattrexpr( variable6 /*pexprnode2*/, variable7 /*tattridnode3*/); /*new AAttrExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction476___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction476::init (src/parser//parser.nit:15425,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction476].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction476].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction477___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction477::action (src/parser//parser.nit:15429,2--15442:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable4 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15436,6--36\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AAttrExpr___init_aattrexpr( variable3 /*pexprnode2*/, variable4 /*tattridnode3*/); /*new AAttrExpr*/ - variable5 = variable6; - variable1 = variable5 /*pexprnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction477___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction477::init (src/parser//parser.nit:15444,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction477].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction477].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction478___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction478::action (src/parser//parser.nit:15448,2--15476:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15458,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15460,6--28\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15462,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; - } - } - variable12 = NEW_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction478___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction478::init (src/parser//parser.nit:15478,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction478].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction478].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction479___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction479::action (src/parser//parser.nit:15482,2--15507:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15491,6--28\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15493,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; - } - } - variable9 = NEW_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction479___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction479::init (src/parser//parser.nit:15509,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction479].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction479].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction480___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction480::action (src/parser//parser.nit:15513,2--15536:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15520,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15522,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*Array::append*/; - } - } - variable8 = NEW_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction480___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction480::init (src/parser//parser.nit:15538,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction480].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction480].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction481___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction481::action (src/parser//parser.nit:15542,2--15568:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15550,6--42\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15552,6--38\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15554,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*Array::append*/; - } - } - variable10 = NEW_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction481___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction481::init (src/parser//parser.nit:15570,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction481].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction481].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction482___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction482::action (src/parser//parser.nit:15574,2--15602:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = NEW_array___Array___init(); /*new Array[Object]*/ - variable7 = variable8; - variable8 = variable6 /*nodearraylist1*/; - variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15584,6--32\n"); nit_exit(1);} - variable9 = variable3 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15586,6--36\n"); nit_exit(1);} - variable10 = variable2 /*nodearraylist5*/; - variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15588,6--38\n"); nit_exit(1);} - variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable11)) { /*if*/ - variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable11)) { /*if*/ - variable7 = variable10 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*Array::append*/; - } - } - variable12 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/ - variable11 = variable12; - variable1 = variable11 /*pexprnode1*/ /*node_list=*/; - variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction482___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction482::init (src/parser//parser.nit:15604,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction482].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction482].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction483___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction483::action (src/parser//parser.nit:15608,2--15633:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable6 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable5 = variable6; - variable6 = variable3 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15617,6--36\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15619,6--38\n"); nit_exit(1);} - variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable8)) { /*if*/ - variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable8)) { /*if*/ - variable4 = variable7 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*Array::append*/; - } - } - variable9 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction483___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction483::init (src/parser//parser.nit:15635,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction483].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction483].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction484___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction484::action (src/parser//parser.nit:15639,2--15672:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable8 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15651,6--34\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15653,6--32\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist6*/; - variable13 = TAG_Bool(( variable12 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15655,6--28\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist7*/; - variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15657,6--38\n"); nit_exit(1);} - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable14)) { /*if*/ - variable14 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable14)) { /*if*/ - variable9 = variable13 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode6*/, variable13 /*listnode5*/) /*Array::append*/; - } - } - variable15 = NEW_parser_prod___ANewExpr___init_anewexpr( variable10 /*tkwnewnode2*/, variable11 /*ptypenode3*/, variable12 /*tidnode4*/, variable9 /*listnode6*/); /*new ANewExpr*/ - variable14 = variable15; - variable1 = variable14 /*pexprnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction484___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction484::init (src/parser//parser.nit:15674,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction484].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction484].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction485___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction485::action (src/parser//parser.nit:15678,2--15688:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwselfnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwselfnode2*/, COLOR_TKwself, ID_TKwself)) /*cast TKwself*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15683,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ASelfExpr___init_aselfexpr( variable3 /*tkwselfnode2*/); /*new ASelfExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction485___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction485::init (src/parser//parser.nit:15690,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction485].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction485].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction486___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction486::action (src/parser//parser.nit:15694,2--15704:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwtruenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwtruenode2*/, COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15699,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ATrueExpr___init_atrueexpr( variable3 /*tkwtruenode2*/); /*new ATrueExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction486___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction486::init (src/parser//parser.nit:15706,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction486].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction486].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction487___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction487::action (src/parser//parser.nit:15710,2--15720:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwfalsenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwfalsenode2*/, COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15715,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFalseExpr___init_afalseexpr( variable3 /*tkwfalsenode2*/); /*new AFalseExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction487___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction487::init (src/parser//parser.nit:15722,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction487].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction487].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction488___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction488::action (src/parser//parser.nit:15726,2--15736:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwnullnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwnullnode2*/, COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15731,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ANullExpr___init_anullexpr( variable3 /*tkwnullnode2*/); /*new ANullExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction488___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction488::init (src/parser//parser.nit:15738,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction488].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction488].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction489___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction489::action (src/parser//parser.nit:15742,2--15752:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tnumbernode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnumbernode2*/, COLOR_TNumber, ID_TNumber)) /*cast TNumber*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15747,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AIntExpr___init_aintexpr( variable3 /*tnumbernode2*/); /*new AIntExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction489___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction489::init (src/parser//parser.nit:15754,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction489].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction489].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction490___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction490::action (src/parser//parser.nit:15758,2--15768:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tfloatnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tfloatnode2*/, COLOR_TFloat, ID_TFloat)) /*cast TFloat*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15763,6--34\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFloatExpr___init_afloatexpr( variable3 /*tfloatnode2*/); /*new AFloatExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction490___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction490::init (src/parser//parser.nit:15770,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction490].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction490].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction491___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction491::action (src/parser//parser.nit:15774,2--15784:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tcharnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tcharnode2*/, COLOR_TChar, ID_TChar)) /*cast TChar*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15779,6--32\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ACharExpr___init_acharexpr( variable3 /*tcharnode2*/); /*new ACharExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction491___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction491::init (src/parser//parser.nit:15786,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction491].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction491].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction492___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction492::action (src/parser//parser.nit:15790,2--15800:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstringnode2*/, COLOR_TString, ID_TString)) /*cast TString*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15795,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AStringExpr___init_astringexpr( variable3 /*tstringnode2*/); /*new AStringExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction492___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction492::init (src/parser//parser.nit:15802,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction492].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction492].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction493___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction493::action (src/parser//parser.nit:15806,2--15813:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15811,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction493___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction493::init (src/parser//parser.nit:15815,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction493].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction493].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction494___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction494::action (src/parser//parser.nit:15819,2--15831:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15825,6--38\n"); nit_exit(1);} - variable6 = NEW_parser_prod___AType___init_atype( variable4 /*tclassidnode2*/, variable3 /*listnode3*/); /*new AType*/ - variable5 = variable6; - variable1 = variable5 /*ptypenode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(91)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction494___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction494::init (src/parser//parser.nit:15833,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction494].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction494].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction495___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction495::action (src/parser//parser.nit:15837,2--15844:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15842,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(92)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction495___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction495::init (src/parser//parser.nit:15846,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction495].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction495].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction496___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction496::action (src/parser//parser.nit:15850,2--15885:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - val_t variable16; - val_t variable17; - val_t variable18; - val_t variable19; - val_t variable20; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable9 = variable10; - variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable10 = variable11; - variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable11 = variable12; - variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable12 = variable13; - variable13 = variable12 /*nodearraylist1*/; - variable14 = TAG_Bool(( variable13 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable13 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15865,6--32\n"); nit_exit(1);} - variable14 = variable10 /*nodearraylist3*/; - variable15 = TAG_Bool(( variable14 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15867,6--32\n"); nit_exit(1);} - variable15 = variable8 /*nodearraylist5*/; - variable16 = TAG_Bool(( variable15 /*tkwthennode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwthennode4*/, COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/; - if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15869,6--36\n"); nit_exit(1);} - variable16 = variable6 /*nodearraylist7*/; - variable17 = TAG_Bool(( variable16 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15871,6--32\n"); nit_exit(1);} - variable17 = variable4 /*nodearraylist9*/; - variable18 = TAG_Bool(( variable17 /*tkwelsenode6*/==NIT_NULL) || VAL_ISA( variable17 /*tkwelsenode6*/, COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/; - if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15873,6--36\n"); nit_exit(1);} - variable18 = variable2 /*nodearraylist11*/; - variable19 = TAG_Bool(( variable18 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15875,6--32\n"); nit_exit(1);} - variable20 = NEW_parser_prod___AIfexprExpr___init_aifexprexpr( variable13 /*tkwifnode2*/, variable14 /*pexprnode3*/, variable15 /*tkwthennode4*/, variable16 /*pexprnode5*/, variable17 /*tkwelsenode6*/, variable18 /*pexprnode7*/); /*new AIfexprExpr*/ - variable19 = variable20; - variable1 = variable19 /*pexprnode1*/ /*node_list=*/; - variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(92)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction496___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction496::init (src/parser//parser.nit:15887,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction496].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction496].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction497___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction497::action (src/parser//parser.nit:15891,2--15898:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15896,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(93)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction497___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction497::init (src/parser//parser.nit:15900,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction497].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction497].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction498___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction498::action (src/parser//parser.nit:15904,2--15920:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15912,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15914,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AOrExpr___init_aorexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AOrExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(93)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction498___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction498::init (src/parser//parser.nit:15922,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction498].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction498].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction499___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction499::action (src/parser//parser.nit:15926,2--15942:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15934,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15936,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AAndExpr___init_aandexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AAndExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(93)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction499___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction499::init (src/parser//parser.nit:15944,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction499].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction499].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction500___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction500::action (src/parser//parser.nit:15948,2--15955:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15953,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(94)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction500___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction500::init (src/parser//parser.nit:15957,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction500].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction500].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction501___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction501::action (src/parser//parser.nit:15961,2--15976:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwnotnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwnotnode2*/, COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15968,6--34\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15970,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___ANotExpr___init_anotexpr( variable5 /*tkwnotnode2*/, variable6 /*pexprnode3*/); /*new ANotExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(94)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction501___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction501::init (src/parser//parser.nit:15978,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction501].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction501].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction502___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction502::action (src/parser//parser.nit:15982,2--15989:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:15987,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction502___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction502::init (src/parser//parser.nit:15991,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction502].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction502].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction503___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction503::action (src/parser//parser.nit:15995,2--16011:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16003,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16005,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AEqExpr___init_aeqexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEqExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction503___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction503::init (src/parser//parser.nit:16013,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction503].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction503].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction504___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction504::action (src/parser//parser.nit:16017,2--16033:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16025,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16027,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AEeExpr___init_aeeexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction504___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction504::init (src/parser//parser.nit:16035,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction504].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction504].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction505___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction505::action (src/parser//parser.nit:16039,2--16055:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16047,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16049,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ANeExpr___init_aneexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ANeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction505___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction505::init (src/parser//parser.nit:16057,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction505].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction505].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction506___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction506::action (src/parser//parser.nit:16061,2--16077:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16069,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16071,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ALtExpr___init_altexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALtExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction506___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction506::init (src/parser//parser.nit:16079,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction506].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction506].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction507___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction507::action (src/parser//parser.nit:16083,2--16099:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16091,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16093,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ALeExpr___init_aleexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction507___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction507::init (src/parser//parser.nit:16101,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction507].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction507].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction508___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction508::action (src/parser//parser.nit:16105,2--16121:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16113,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16115,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AGtExpr___init_agtexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGtExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction508___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction508::init (src/parser//parser.nit:16123,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction508].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction508].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction509___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction509::action (src/parser//parser.nit:16127,2--16143:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16135,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16137,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AGeExpr___init_ageexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGeExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction509___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction509::init (src/parser//parser.nit:16145,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction509].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction509].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction510___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction510::action (src/parser//parser.nit:16149,2--16165:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16157,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16159,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AStarshipExpr___init_astarshipexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarshipExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction510___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction510::init (src/parser//parser.nit:16167,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction510].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction510].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction511___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction511::action (src/parser//parser.nit:16171,2--16187:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16179,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16181,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AIsaExpr___init_aisaexpr( variable6 /*pexprnode2*/, variable7 /*ptypenode3*/); /*new AIsaExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction511___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction511::init (src/parser//parser.nit:16189,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction511].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction511].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction512___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction512::action (src/parser//parser.nit:16193,2--16200:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16198,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(96)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction512___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction512::init (src/parser//parser.nit:16202,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction512].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction512].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction513___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction513::action (src/parser//parser.nit:16206,2--16222:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16214,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16216,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___APlusExpr___init_aplusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APlusExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(96)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction513___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction513::init (src/parser//parser.nit:16224,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction513].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction513].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction514___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction514::action (src/parser//parser.nit:16228,2--16244:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16236,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16238,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AMinusExpr___init_aminusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AMinusExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(96)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction514___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction514::init (src/parser//parser.nit:16246,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction514].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction514].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction515___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction515::action (src/parser//parser.nit:16250,2--16257:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16255,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(97)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction515___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction515::init (src/parser//parser.nit:16259,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction515].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction515].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction516___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction516::action (src/parser//parser.nit:16263,2--16279:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16271,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16273,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___AStarExpr___init_astarexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(97)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction516___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction516::init (src/parser//parser.nit:16281,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction516].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction516].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction517___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction517::action (src/parser//parser.nit:16285,2--16301:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16293,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16295,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___ASlashExpr___init_aslashexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ASlashExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(97)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction517___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction517::init (src/parser//parser.nit:16303,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction517].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction517].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction518___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction518::action (src/parser//parser.nit:16307,2--16323:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable6 = variable5 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16315,6--32\n"); nit_exit(1);} - variable7 = variable2 /*nodearraylist4*/; - variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16317,6--32\n"); nit_exit(1);} - variable9 = NEW_parser_prod___APercentExpr___init_apercentexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APercentExpr*/ - variable8 = variable9; - variable1 = variable8 /*pexprnode1*/ /*node_list=*/; - variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(97)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction518___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction518::init (src/parser//parser.nit:16325,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction518].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction518].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction519___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction519::action (src/parser//parser.nit:16329,2--16336:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16334,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(98)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction519___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction519::init (src/parser//parser.nit:16338,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction519].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction519].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction520___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction520::action (src/parser//parser.nit:16342,2--16357:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16349,6--34\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16351,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AUminusExpr___init_auminusexpr( variable5 /*tminusnode2*/, variable6 /*pexprnode3*/); /*new AUminusExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(98)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction520___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction520::init (src/parser//parser.nit:16359,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction520].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction520].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction521___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction521::action (src/parser//parser.nit:16363,2--16378:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwoncenode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwoncenode2*/, COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16370,6--36\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist3*/; - variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16372,6--32\n"); nit_exit(1);} - variable8 = NEW_parser_prod___AOnceExpr___init_aonceexpr( variable5 /*tkwoncenode2*/, variable6 /*pexprnode3*/); /*new AOnceExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(98)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction521___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction521::init (src/parser//parser.nit:16380,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction521].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction521].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction522___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction522::action (src/parser//parser.nit:16384,2--16391:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16389,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(99)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction522___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction522::init (src/parser//parser.nit:16393,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction522].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction522].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction523___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction523::action (src/parser//parser.nit:16397,2--16425:34)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = NEW_array___Array___init(); /*new Array[Object]*/ - variable6 = variable7; - variable7 = variable5 /*nodearraylist1*/; - variable8 = TAG_Bool(( variable7 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16406,6--34\n"); nit_exit(1);} - variable8 = variable3 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable8 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16408,6--32\n"); nit_exit(1);} - variable9 = variable2 /*nodearraylist4*/; - variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16410,6--38\n"); nit_exit(1);} - variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable10)) { /*if*/ - variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable10)) { /*if*/ - variable6 = variable9 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*Array::append*/; - } - } - variable11 = NEW_parser_prod___ANewExpr___init_anewexpr( variable7 /*tkwnewnode2*/, variable8 /*ptypenode3*/, NIT_NULL /*null*/, variable6 /*listnode6*/); /*new ANewExpr*/ - variable10 = variable11; - variable1 = variable10 /*pexprnode1*/ /*node_list=*/; - variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(99)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction523___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction523::init (src/parser//parser.nit:16427,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction523].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction523].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction524___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction524::action (src/parser//parser.nit:16431,2--16445:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable4 = variable3 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16437,6--32\n"); nit_exit(1);} - variable5 = variable2 /*nodearraylist2*/; - variable6 = TAG_Bool(( variable5 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable5 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16439,6--36\n"); nit_exit(1);} - variable7 = NEW_parser_prod___AAttrExpr___init_aattrexpr( variable4 /*pexprnode2*/, variable5 /*tattridnode3*/); /*new AAttrExpr*/ - variable6 = variable7; - variable1 = variable6 /*pexprnode1*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction524___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction524::init (src/parser//parser.nit:16447,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction524].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction524].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction525___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction525::action (src/parser//parser.nit:16451,2--16477:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16459,6--32\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16461,6--28\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16463,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*Array::append*/; - } - } - variable10 = NEW_parser_prod___ACallExpr___init_acallexpr( variable6 /*pexprnode2*/, variable7 /*tidnode3*/, variable5 /*listnode5*/); /*new ACallExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction525___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction525::init (src/parser//parser.nit:16479,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction525].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction525].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction526___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction526::action (src/parser//parser.nit:16483,2--16506:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16490,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16492,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*Array::append*/; - } - } - variable8 = NEW_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/ - variable7 = variable8; - variable1 = variable7 /*pexprnode1*/ /*node_list=*/; - variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction526___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction526::init (src/parser//parser.nit:16508,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction526].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction526].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction527___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction527::action (src/parser//parser.nit:16512,2--16538:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16520,6--42\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16522,6--38\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16524,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*Array::append*/; - } - } - variable10 = NEW_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction527___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction527::init (src/parser//parser.nit:16540,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction527].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction527].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction528___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction528::action (src/parser//parser.nit:16544,2--16570:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = NEW_array___Array___init(); /*new Array[Object]*/ - variable5 = variable6; - variable6 = variable4 /*nodearraylist1*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16552,6--32\n"); nit_exit(1);} - variable7 = variable3 /*nodearraylist2*/; - variable8 = TAG_Bool(( variable7 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/; - if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16554,6--36\n"); nit_exit(1);} - variable8 = variable2 /*nodearraylist3*/; - variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16556,6--38\n"); nit_exit(1);} - variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable9)) { /*if*/ - variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable9)) { /*if*/ - variable5 = variable8 /*listnode4*/ /*listnode5=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*Array::append*/; - } - } - variable10 = NEW_parser_prod___AInitExpr___init_ainitexpr( variable6 /*pexprnode2*/, variable7 /*tkwinitnode3*/, variable5 /*listnode5*/); /*new AInitExpr*/ - variable9 = variable10; - variable1 = variable9 /*pexprnode1*/ /*node_list=*/; - variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction528___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction528::init (src/parser//parser.nit:16572,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction528].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction528].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction529___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction529::action (src/parser//parser.nit:16576,2--16609:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - val_t variable8; - val_t variable9; - val_t variable10; - val_t variable11; - val_t variable12; - val_t variable13; - val_t variable14; - val_t variable15; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable5 = variable6; - variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable6 = variable7; - variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable7 = variable8; - variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable8 = variable9; - variable10 = NEW_array___Array___init(); /*new Array[Object]*/ - variable9 = variable10; - variable10 = variable8 /*nodearraylist1*/; - variable11 = TAG_Bool(( variable10 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/; - if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16588,6--34\n"); nit_exit(1);} - variable11 = variable6 /*nodearraylist3*/; - variable12 = TAG_Bool(( variable11 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16590,6--32\n"); nit_exit(1);} - variable12 = variable3 /*nodearraylist6*/; - variable13 = TAG_Bool(( variable12 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16592,6--28\n"); nit_exit(1);} - variable13 = variable2 /*nodearraylist7*/; - variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16594,6--38\n"); nit_exit(1);} - variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable14)) { /*if*/ - variable14 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode6*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable14)) { /*if*/ - variable9 = variable13 /*listnode5*/ /*listnode6=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode6*/, variable13 /*listnode5*/) /*Array::append*/; - } - } - variable15 = NEW_parser_prod___ANewExpr___init_anewexpr( variable10 /*tkwnewnode2*/, variable11 /*ptypenode3*/, variable12 /*tidnode4*/, variable9 /*listnode6*/); /*new ANewExpr*/ - variable14 = variable15; - variable1 = variable14 /*pexprnode1*/ /*node_list=*/; - variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction529___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction529::init (src/parser//parser.nit:16611,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction529].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction529].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction530___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction530::action (src/parser//parser.nit:16615,2--16625:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwselfnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwselfnode2*/, COLOR_TKwself, ID_TKwself)) /*cast TKwself*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16620,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ASelfExpr___init_aselfexpr( variable3 /*tkwselfnode2*/); /*new ASelfExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction530___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction530::init (src/parser//parser.nit:16627,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction530].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction530].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction531___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction531::action (src/parser//parser.nit:16631,2--16641:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwtruenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwtruenode2*/, COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16636,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ATrueExpr___init_atrueexpr( variable3 /*tkwtruenode2*/); /*new ATrueExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction531___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction531::init (src/parser//parser.nit:16643,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction531].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction531].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction532___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction532::action (src/parser//parser.nit:16647,2--16657:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwfalsenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwfalsenode2*/, COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16652,6--38\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFalseExpr___init_afalseexpr( variable3 /*tkwfalsenode2*/); /*new AFalseExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction532___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction532::init (src/parser//parser.nit:16659,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction532].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction532].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction533___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction533::action (src/parser//parser.nit:16663,2--16673:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tkwnullnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwnullnode2*/, COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16668,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ANullExpr___init_anullexpr( variable3 /*tkwnullnode2*/); /*new ANullExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction533___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction533::init (src/parser//parser.nit:16675,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction533].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction533].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction534___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction534::action (src/parser//parser.nit:16679,2--16689:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tnumbernode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnumbernode2*/, COLOR_TNumber, ID_TNumber)) /*cast TNumber*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16684,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AIntExpr___init_aintexpr( variable3 /*tnumbernode2*/); /*new AIntExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction534___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction534::init (src/parser//parser.nit:16691,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction534].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction534].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction535___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction535::action (src/parser//parser.nit:16695,2--16705:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tfloatnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tfloatnode2*/, COLOR_TFloat, ID_TFloat)) /*cast TFloat*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16700,6--34\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AFloatExpr___init_afloatexpr( variable3 /*tfloatnode2*/); /*new AFloatExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction535___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction535::init (src/parser//parser.nit:16707,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction535].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction535].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction536___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction536::action (src/parser//parser.nit:16711,2--16721:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tcharnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tcharnode2*/, COLOR_TChar, ID_TChar)) /*cast TChar*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16716,6--32\n"); nit_exit(1);} - variable5 = NEW_parser_prod___ACharExpr___init_acharexpr( variable3 /*tcharnode2*/); /*new ACharExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction536___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction536::init (src/parser//parser.nit:16723,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction536].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction536].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction537___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction537::action (src/parser//parser.nit:16727,2--16737:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*tstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstringnode2*/, COLOR_TString, ID_TString)) /*cast TString*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16732,6--36\n"); nit_exit(1);} - variable5 = NEW_parser_prod___AStringExpr___init_astringexpr( variable3 /*tstringnode2*/); /*new AStringExpr*/ - variable4 = variable5; - variable1 = variable4 /*pexprnode1*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction537___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction537::init (src/parser//parser.nit:16739,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction537].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction537].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction538___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction538::action (src/parser//parser.nit:16743,2--16750:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable3 = variable2 /*nodearraylist1*/; - variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16748,6--32\n"); nit_exit(1);} - variable1 = variable3 /*pexprnode1*/ /*node_list=*/; - variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction538___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction538::init (src/parser//parser.nit:16752,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction538].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction538].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction539___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction539::action (src/parser//parser.nit:16756,2--16765:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable4 = variable5; - variable5 = variable4 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16763,6--32\n"); nit_exit(1);} - variable1 = variable5 /*pexprnode1*/ /*node_list=*/; - variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(101)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction539___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction539::init (src/parser//parser.nit:16767,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction539].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction539].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction540___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction540::action (src/parser//parser.nit:16771,2--16777:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = NEW_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/ - variable2 = variable3; - variable1 = variable2 /*pexprnode1*/ /*node_list=*/; - variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(101)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction540___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction540::init (src/parser//parser.nit:16779,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction540].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction540].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction541___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction541::action (src/parser//parser.nit:16783,2--16794:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*pimportnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pimportnode1*/, COLOR_PImport, ID_PImport)) /*cast PImport*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16789,6--36\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pimportnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pimportnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pimportnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pimportnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pimportnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pimportnode1*/, NIT_NULL /*null*/) /*PImport::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pimportnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(102)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction541___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction541::init (src/parser//parser.nit:16796,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction541].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction541].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction542___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction542::action (src/parser//parser.nit:16800,2--16821:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16807,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*pimportnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pimportnode2*/, COLOR_PImport, ID_PImport)) /*cast PImport*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16809,6--36\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pimportnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pimportnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pimportnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pimportnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pimportnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pimportnode2*/, NIT_NULL /*null*/) /*PImport::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pimportnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(102)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction542___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction542::init (src/parser//parser.nit:16823,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction542].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction542].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction543___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction543::action (src/parser//parser.nit:16827,2--16838:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*pclassdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pclassdefnode1*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16833,6--40\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pclassdefnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pclassdefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pclassdefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pclassdefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pclassdefnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pclassdefnode1*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pclassdefnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(103)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction543___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction543::init (src/parser//parser.nit:16840,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction543].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction543].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction544___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction544::action (src/parser//parser.nit:16844,2--16865:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16851,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*pclassdefnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pclassdefnode2*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16853,6--40\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pclassdefnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pclassdefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pclassdefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pclassdefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pclassdefnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pclassdefnode2*/, NIT_NULL /*null*/) /*PClassdef::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pclassdefnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(103)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction544___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction544::init (src/parser//parser.nit:16867,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction544].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction544].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction545___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction545::action (src/parser//parser.nit:16871,2--16882:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*psuperclassnode1*/==NIT_NULL) || VAL_ISA( variable4 /*psuperclassnode1*/, COLOR_PSuperclass, ID_PSuperclass)) /*cast PSuperclass*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16877,6--44\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*psuperclassnode1*/ == NIT_NULL /*null*/) || (( variable4 /*psuperclassnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*psuperclassnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*psuperclassnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*psuperclassnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*psuperclassnode1*/, NIT_NULL /*null*/) /*PSuperclass::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*psuperclassnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(104)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction545___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction545::init (src/parser//parser.nit:16884,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction545].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction545].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction546___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction546::action (src/parser//parser.nit:16888,2--16909:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16895,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*psuperclassnode2*/==NIT_NULL) || VAL_ISA( variable6 /*psuperclassnode2*/, COLOR_PSuperclass, ID_PSuperclass)) /*cast PSuperclass*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16897,6--44\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*psuperclassnode2*/ == NIT_NULL /*null*/) || (( variable6 /*psuperclassnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*psuperclassnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*psuperclassnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*psuperclassnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*psuperclassnode2*/, NIT_NULL /*null*/) /*PSuperclass::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*psuperclassnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(104)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction546___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction546::init (src/parser//parser.nit:16911,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction546].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction546].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction547___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction547::action (src/parser//parser.nit:16915,2--16926:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*pformaldefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pformaldefnode1*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16921,6--42\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pformaldefnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pformaldefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pformaldefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pformaldefnode1*/, NIT_NULL /*null*/) /*PFormaldef::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pformaldefnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(105)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction547___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction547::init (src/parser//parser.nit:16928,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction547].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction547].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction548___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction548::action (src/parser//parser.nit:16932,2--16953:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16939,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*pformaldefnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pformaldefnode2*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16941,6--42\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pformaldefnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pformaldefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pformaldefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pformaldefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pformaldefnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pformaldefnode2*/, NIT_NULL /*null*/) /*PFormaldef::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pformaldefnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(105)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction548___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction548::init (src/parser//parser.nit:16955,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction548].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction548].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction549___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction549::action (src/parser//parser.nit:16959,2--16970:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*ppropdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode1*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16965,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ppropdefnode1*/ == NIT_NULL /*null*/) || (( variable4 /*ppropdefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ppropdefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*ppropdefnode1*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*ppropdefnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(106)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction549___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction549::init (src/parser//parser.nit:16972,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction549].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction549].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction550___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction550::action (src/parser//parser.nit:16976,2--16997:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16983,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*ppropdefnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppropdefnode2*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:16985,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*ppropdefnode2*/ == NIT_NULL /*null*/) || (( variable6 /*ppropdefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*ppropdefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*ppropdefnode2*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*ppropdefnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(106)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction550___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction550::init (src/parser//parser.nit:16999,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction550].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction550].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction551___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction551::action (src/parser//parser.nit:17003,2--17014:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*ppropdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode1*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17009,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ppropdefnode1*/ == NIT_NULL /*null*/) || (( variable4 /*ppropdefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ppropdefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*ppropdefnode1*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*ppropdefnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(107)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction551___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction551::init (src/parser//parser.nit:17016,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction551].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction551].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction552___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction552::action (src/parser//parser.nit:17020,2--17041:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17027,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*ppropdefnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppropdefnode2*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17029,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*ppropdefnode2*/ == NIT_NULL /*null*/) || (( variable6 /*ppropdefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*ppropdefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*ppropdefnode2*/, NIT_NULL /*null*/) /*PPropdef::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*ppropdefnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(107)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction552___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction552::init (src/parser//parser.nit:17043,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction552].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction552].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction553___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction553::action (src/parser//parser.nit:17047,2--17058:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*pparamnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pparamnode1*/, COLOR_PParam, ID_PParam)) /*cast PParam*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17053,6--34\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pparamnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pparamnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pparamnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pparamnode1*/, NIT_NULL /*null*/) /*PParam::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pparamnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(108)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction553___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction553::init (src/parser//parser.nit:17060,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction553].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction553].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction554___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction554::action (src/parser//parser.nit:17064,2--17085:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17071,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*pparamnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pparamnode2*/, COLOR_PParam, ID_PParam)) /*cast PParam*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17073,6--34\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pparamnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pparamnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pparamnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pparamnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pparamnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pparamnode2*/, NIT_NULL /*null*/) /*PParam::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pparamnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(108)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction554___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction554::init (src/parser//parser.nit:17087,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction554].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction554].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction555___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction555::action (src/parser//parser.nit:17091,2--17102:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable4 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17097,6--32\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ptypenode1*/ == NIT_NULL /*null*/) || (( variable4 /*ptypenode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ptypenode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*ptypenode1*/, NIT_NULL /*null*/) /*PType::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*ptypenode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(109)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction555___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction555::init (src/parser//parser.nit:17104,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction555].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction555].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction556___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction556::action (src/parser//parser.nit:17108,2--17129:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17115,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*ptypenode2*/==NIT_NULL) || VAL_ISA( variable6 /*ptypenode2*/, COLOR_PType, ID_PType)) /*cast PType*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17117,6--32\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*ptypenode2*/ == NIT_NULL /*null*/) || (( variable6 /*ptypenode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*ptypenode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*ptypenode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*ptypenode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*ptypenode2*/, NIT_NULL /*null*/) /*PType::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*ptypenode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(109)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction556___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction556::init (src/parser//parser.nit:17131,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction556].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction556].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction557___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction557::action (src/parser//parser.nit:17135,2--17146:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17141,6--32\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pexprnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(110)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction557___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction557::init (src/parser//parser.nit:17148,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction557].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction557].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction558___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction558::action (src/parser//parser.nit:17152,2--17173:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17159,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17161,6--32\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pexprnode2*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pexprnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(110)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction558___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction558::init (src/parser//parser.nit:17175,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction558].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction558].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction559___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction559::action (src/parser//parser.nit:17179,2--17194:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*listnode1*/==NIT_NULL) || VAL_ISA( variable4 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17185,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode1*/ == NIT_NULL /*null*/) || (( variable4 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable4 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable5)) { /*if*/ - variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode2*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable5)) { /*if*/ - variable3 = variable4 /*listnode1*/ /*listnode2=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode2*/, variable4 /*listnode1*/) /*Array::append*/; - } - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(111)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction559___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction559::init (src/parser//parser.nit:17196,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction559].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction559].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction560___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction560::action (src/parser//parser.nit:17200,2--17225:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17207,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*listnode2*/==NIT_NULL) || VAL_ISA( variable6 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17209,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode2*/ == NIT_NULL /*null*/) || (( variable6 /*listnode2*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode2*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable6 /*listnode2*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable6 /*listnode2*/) /*Array::append*/; - } - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(111)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction560___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction560::init (src/parser//parser.nit:17227,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction560].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction560].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction561___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction561::action (src/parser//parser.nit:17231,2--17242:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17237,6--32\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pexprnode1*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pexprnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(112)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction561___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction561::init (src/parser//parser.nit:17244,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction561].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction561].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction562___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction562::action (src/parser//parser.nit:17248,2--17269:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17255,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17257,6--32\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pexprnode2*/, NIT_NULL /*null*/) /*PExpr::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pexprnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(112)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction562___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction562::init (src/parser//parser.nit:17271,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction562].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction562].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction563___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction563::action (src/parser//parser.nit:17275,2--17286:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tidnode1*/==NIT_NULL) || VAL_ISA( variable4 /*tidnode1*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17281,6--28\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*tidnode1*/ == NIT_NULL /*null*/) || (( variable4 /*tidnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*tidnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*tidnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*tidnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*tidnode1*/, NIT_NULL /*null*/) /*TId::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*tidnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(113)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction563___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction563::init (src/parser//parser.nit:17288,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction563].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction563].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction564___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction564::action (src/parser//parser.nit:17292,2--17313:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17299,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17301,6--28\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*tidnode2*/ == NIT_NULL /*null*/) || (( variable6 /*tidnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*tidnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*tidnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*tidnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*tidnode2*/, NIT_NULL /*null*/) /*TId::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*tidnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(113)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction564___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction564::init (src/parser//parser.nit:17315,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction564].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction564].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction565___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction565::action (src/parser//parser.nit:17319,2--17330:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*tcommentnode1*/==NIT_NULL) || VAL_ISA( variable4 /*tcommentnode1*/, COLOR_TComment, ID_TComment)) /*cast TComment*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17325,6--38\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*tcommentnode1*/ == NIT_NULL /*null*/) || (( variable4 /*tcommentnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*tcommentnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*tcommentnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*tcommentnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*tcommentnode1*/, NIT_NULL /*null*/) /*TComment::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*tcommentnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(114)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction565___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction565::init (src/parser//parser.nit:17332,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction565].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction565].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction566___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction566::action (src/parser//parser.nit:17336,2--17357:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17343,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*tcommentnode2*/==NIT_NULL) || VAL_ISA( variable6 /*tcommentnode2*/, COLOR_TComment, ID_TComment)) /*cast TComment*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17345,6--38\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*tcommentnode2*/ == NIT_NULL /*null*/) || (( variable6 /*tcommentnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*tcommentnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*tcommentnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*tcommentnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*tcommentnode2*/, NIT_NULL /*null*/) /*TComment::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*tcommentnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(114)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction566___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction566::init (src/parser//parser.nit:17359,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction566].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction566].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction567___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction567::action (src/parser//parser.nit:17363,2--17374:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = NEW_array___Array___init(); /*new Array[Object]*/ - variable3 = variable4; - variable4 = variable2 /*nodearraylist1*/; - variable5 = TAG_Bool(( variable4 /*teolnode1*/==NIT_NULL) || VAL_ISA( variable4 /*teolnode1*/, COLOR_TEol, ID_TEol)) /*cast TEol*/; - if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17369,6--30\n"); nit_exit(1);} - variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*teolnode1*/ == NIT_NULL /*null*/) || (( variable4 /*teolnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*teolnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*teolnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*teolnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*teolnode1*/, NIT_NULL /*null*/) /*TEol::==*/))))))); - if (UNTAG_Bool(variable5)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*teolnode1*/) /*Array::add*/; - } - variable1 = variable3 /*listnode2*/ /*node_list=*/; - variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(115)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction567___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction567::init (src/parser//parser.nit:17376,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction567].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction567].i] = 1; - tracehead = trace.prev; - return; -} -void parser___ReduceAction568___action(val_t self, val_t param0) { - struct trace_t trace = {NULL, "parser::ReduceAction568::action (src/parser//parser.nit:17380,2--17401:35)"}; - val_t variable0; - val_t variable1; - val_t variable2; - val_t variable3; - val_t variable4; - val_t variable5; - val_t variable6; - val_t variable7; - trace.prev = tracehead; tracehead = &trace; - variable0 = param0; - variable1 = NIT_NULL /*null*/; - variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable2 = variable3; - variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/; - variable3 = variable4; - variable5 = NEW_array___Array___init(); /*new Array[Object]*/ - variable4 = variable5; - variable5 = variable3 /*nodearraylist1*/; - variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/; - if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17387,6--38\n"); nit_exit(1);} - variable6 = variable2 /*nodearraylist2*/; - variable7 = TAG_Bool(( variable6 /*teolnode2*/==NIT_NULL) || VAL_ISA( variable6 /*teolnode2*/, COLOR_TEol, ID_TEol)) /*cast TEol*/; - if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert failed: src/parser//parser.nit:17389,6--30\n"); nit_exit(1);} - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Array::==*/))))); - if (UNTAG_Bool(variable7)) { /*if*/ - variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*Array::is_empty*/; - if (UNTAG_Bool(variable7)) { /*if*/ - variable4 = variable5 /*listnode1*/ /*listnode3=*/; - } else { /*if*/ - ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*Array::append*/; - } - } - variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*teolnode2*/ == NIT_NULL /*null*/) || (( variable6 /*teolnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*teolnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*teolnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*teolnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*teolnode2*/, NIT_NULL /*null*/) /*TEol::==*/))))))); - if (UNTAG_Bool(variable7)) { /*if*/ - ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*teolnode2*/) /*Array::add*/; - } - variable1 = variable4 /*listnode3*/ /*node_list=*/; - variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(115)) /*Parser::go_to*/; - ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/; - tracehead = trace.prev; - return; -} -void parser___ReduceAction568___init(val_t self, int* init_table) { - struct trace_t trace = {NULL, "parser::ReduceAction568::init (src/parser//parser.nit:17403,1--4)"}; - trace.prev = tracehead; tracehead = &trace; - if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction568].i]) return; - init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction568].i] = 1; - tracehead = trace.prev; + REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); + if (UNTAG_Bool(REGB0)) { + /* ./parser//parser.nit:11569 */ + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); + } + /* ./parser//parser.nit:11571 */ + fra.me.REG[2] = fra.me.REG[5]; + /* ./parser//parser.nit:11572 */ + REGB0 = TAG_Bool(ATTR_parser___ReduceAction692____goto(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_goto", LOCATE_parser, 11572); + } + REGB0 = ATTR_parser___ReduceAction692____goto(fra.me.REG[0]); + REGB0 = CALL_parser___Parser___go_to(fra.me.REG[1])(fra.me.REG[1], REGB0); + CALL_parser___Parser___push(fra.me.REG[1])(fra.me.REG[1], REGB0, fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; +} +void parser___ReduceAction692___init(val_t p0, val_t p1, int* init_table){ + int itpos380 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ReduceAction692].i; + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t tmp; + if (init_table[itpos380]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_parser; + fra.me.line = 11575; + fra.me.meth = LOCATE_parser___ReduceAction692___init; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + /* ./parser//parser.nit:11575 */ + fra.me.REG[1] = fra.me.REG[0]; + CALL_parser___ReduceAction___init(fra.me.REG[0])(fra.me.REG[0], init_table); + ATTR_parser___ReduceAction692____goto(fra.me.REG[1]) = REGB0; + stack_frame_head = fra.me.prev; + init_table[itpos380] = 1; return; }