+++ /dev/null
-/* This C file is generated by NIT to compile module parser___parser_prod. */
-#include "parser___parser_prod._sep.h"
-val_t parser___parser_prod___ANode___parent(val_t p0){
- 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___parser_prod;
- fra.me.line = 10;
- fra.me.meth = LOCATE_parser___parser_prod___ANode___parent;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- /* ./parser//parser_prod.nit:10 */
- fra.me.REG[0] = ATTR_parser___parser_prod___ANode____parent(fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return fra.me.REG[0];
-}
-void parser___parser_prod___ANode___parent__eq(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 10;
- fra.me.meth = LOCATE_parser___parser_prod___ANode___parent__eq;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:10 */
- ATTR_parser___parser_prod___ANode____parent(fra.me.REG[0]) = fra.me.REG[1];
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANode___remove_child(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 13;
- fra.me.meth = LOCATE_parser___parser_prod___ANode___remove_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:16 */
- CALL_parser___parser_prod___ANode___replace_child(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], NIT_NULL);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANode___replace_child(val_t p0, val_t p1, val_t p2){
- 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___parser_prod;
- fra.me.line = 19;
- fra.me.meth = LOCATE_parser___parser_prod___ANode___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 0;
- fra.me.nitni_local_ref_head = NULL;
- /* ./parser//parser_prod.nit:19 */
- nit_abort("Deferred method called", NULL, LOCATE_parser___parser_prod, 19);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANode___replace_with(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 22;
- fra.me.meth = LOCATE_parser___parser_prod___ANode___replace_with;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:25 */
- fra.me.REG[2] = ATTR_parser___parser_prod___ANode____parent(fra.me.REG[0]);
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:26 */
- fra.me.REG[2] = ATTR_parser___parser_prod___ANode____parent(fra.me.REG[0]);
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 26);
- }
- CALL_parser___parser_prod___ANode___replace_child(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0], fra.me.REG[1]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANode___visit_all(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___parser_prod;
- fra.me.line = 30;
- fra.me.meth = LOCATE_parser___parser_prod___ANode___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 0;
- fra.me.nitni_local_ref_head = NULL;
- /* ./parser//parser_prod.nit:30 */
- nit_abort("Deferred method called", NULL, LOCATE_parser___parser_prod, 30);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___Token___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 36;
- fra.me.meth = LOCATE_parser___parser_prod___Token___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___Token___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 37;
- fra.me.meth = LOCATE_parser___parser_prod___Token___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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;
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___Prod___replace_with(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___parser_prod;
- fra.me.line = 41;
- fra.me.meth = LOCATE_parser___parser_prod___Prod___replace_with;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:41 */
- fra.me.REG[2] = fra.me.REG[0];
- fra.me.REG[3] = fra.me.REG[1];
- /* ./parser//parser_prod.nit:43 */
- CALL_SUPER_parser___parser_prod___Prod___replace_with(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
- /* ./parser//parser_prod.nit:44 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___Prod, ID_parser___parser_nodes___Prod)) /*cast Prod*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 44);
- }
- /* ./parser//parser_prod.nit:45 */
- fra.me.REG[2] = CALL_parser___parser_nodes___ANode___location(fra.me.REG[2])(fra.me.REG[2]);
- CALL_parser___parser_nodes___Prod___location__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___Visitor___visit(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___parser_prod;
- fra.me.line = 51;
- fra.me.meth = LOCATE_parser___parser_prod___Visitor___visit;
- fra.me.has_broke = 0;
- fra.me.REG_size = 0;
- fra.me.nitni_local_ref_head = NULL;
- /* ./parser//parser_prod.nit:51 */
- nit_abort("Deferred method called", NULL, LOCATE_parser___parser_prod, 51);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___Visitor___enter_visit(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 55;
- fra.me.meth = LOCATE_parser___parser_prod___Visitor___enter_visit;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:60 */
- fra.me.REG[2] = ATTR_parser___parser_prod___Visitor____current_node(fra.me.REG[0]);
- /* ./parser//parser_prod.nit:61 */
- ATTR_parser___parser_prod___Visitor____current_node(fra.me.REG[0]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:62 */
- CALL_parser___parser_prod___Visitor___visit(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
- /* ./parser//parser_prod.nit:63 */
- ATTR_parser___parser_prod___Visitor____current_node(fra.me.REG[0]) = fra.me.REG[2];
- stack_frame_head = fra.me.prev;
- return;
-}
-val_t parser___parser_prod___Visitor___current_node(val_t p0){
- 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___parser_prod;
- fra.me.line = 66;
- fra.me.meth = LOCATE_parser___parser_prod___Visitor___current_node;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- /* ./parser//parser_prod.nit:66 */
- fra.me.REG[0] = ATTR_parser___parser_prod___Visitor____current_node(fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return fra.me.REG[0];
-}
-void parser___parser_prod___Visitor___init(val_t p0, int* init_table){
- int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_prod___Visitor].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos0]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___Visitor___init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 0;
- fra.me.nitni_local_ref_head = NULL;
- stack_frame_head = fra.me.prev;
- init_table[itpos0] = 1;
- return;
-}
-void parser___parser_prod___AModule___empty_init(val_t p0, int* init_table){
- int itpos1 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModule].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos1]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 71;
- fra.me.meth = LOCATE_parser___parser_prod___AModule___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos1] = 1;
- return;
-}
-void parser___parser_prod___AModule___init_amodule(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos2 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModule].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos2]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 73;
- fra.me.meth = LOCATE_parser___parser_prod___AModule___init_amodule;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:79 */
- CALL_parser___parser_prod___AModule___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- /* ./parser//parser_prod.nit:80 */
- ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:81 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:82 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 82);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- }
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModule___init_amodule_1));
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModule___init_amodule_2));
- stack_frame_head = fra.me.prev;
- init_table[itpos2] = 1;
- return;
-}
- void OC_parser___parser_prod___AModule___init_amodule_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:84 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AModule___init_amodule;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:85 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AImport, ID_parser___parser_nodes___AImport)) /*cast AImport*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 85);
- }
- /* ./parser//parser_prod.nit:86 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 86);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AModule____n_imports(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:87 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___AModule___init_amodule_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:89 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AModule___init_amodule;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:90 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClassdef, ID_parser___parser_nodes___AClassdef)) /*cast AClassdef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 90);
- }
- /* ./parser//parser_prod.nit:91 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 91);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AModule____n_classdefs(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:92 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 96;
- fra.me.meth = LOCATE_parser___parser_prod___AModule___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:98 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:99 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:100 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 100);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:101 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModuledecl, ID_parser___parser_nodes___AModuledecl)) /*cast AModuledecl*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 101);
- }
- /* ./parser//parser_prod.nit:102 */
- ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:104 */
- ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:106 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:108 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 108);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:108 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:109 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 109);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:110 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:111 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AImport, ID_parser___parser_nodes___AImport)) /*cast AImport*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 111);
- }
- /* ./parser//parser_prod.nit:112 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 112);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:113 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 113);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:115 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 115);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:117 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:120 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 120);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:120 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:121 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 121);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:122 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:123 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClassdef, ID_parser___parser_nodes___AClassdef)) /*cast AClassdef*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 123);
- }
- /* ./parser//parser_prod.nit:124 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 124);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:125 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 125);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:127 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 127);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:129 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label3;
- }
- }
- label3: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AModule___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 134;
- fra.me.meth = LOCATE_parser___parser_prod___AModule___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:134 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:136 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:137 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AModuledecl, ID_parser___parser_nodes___AModuledecl)) /*cast AModuledecl*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 137);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:139 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 139);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModule___visit_all_1));
- /* ./parser//parser_prod.nit:142 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 142);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModule___visit_all_2));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AModule___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AModule___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:140 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___AModule___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AModule___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:143 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AModuledecl___empty_init(val_t p0, int* init_table){
- int itpos3 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModuledecl].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___parser_prod;
- fra.me.line = 148;
- fra.me.meth = LOCATE_parser___parser_prod___AModuledecl___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos3] = 1;
- return;
-}
-void parser___parser_prod___AModuledecl___init_amoduledecl(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos4 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModuledecl].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos4]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 150;
- fra.me.meth = LOCATE_parser___parser_prod___AModuledecl___init_amoduledecl;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:150 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:156 */
- CALL_parser___parser_prod___AModuledecl___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:157 */
- ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:158 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:159 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 159);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:161 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 161);
- }
- ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:162 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 162);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:163 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 163);
- }
- ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:164 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 164);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos4] = 1;
- return;
-}
-void parser___parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 167;
- fra.me.meth = LOCATE_parser___parser_prod___AModuledecl___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:169 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:170 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:171 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 171);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:172 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 172);
- }
- /* ./parser//parser_prod.nit:173 */
- ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:175 */
- ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:177 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:179 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwmodule", LOCATE_parser___parser_prod, 179);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:180 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:181 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 181);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:182 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmodule, ID_parser___parser_nodes___TKwmodule)) /*cast TKwmodule*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 182);
- }
- /* ./parser//parser_prod.nit:183 */
- ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:185 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 185);
- }
- /* ./parser//parser_prod.nit:187 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:189 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_name", LOCATE_parser___parser_prod, 189);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:190 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:191 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 191);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:192 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModuleName, ID_parser___parser_nodes___AModuleName)) /*cast AModuleName*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 192);
- }
- /* ./parser//parser_prod.nit:193 */
- ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:195 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 195);
- }
- /* ./parser//parser_prod.nit:197 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AModuledecl___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 201;
- fra.me.meth = LOCATE_parser___parser_prod___AModuledecl___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:201 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:203 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:204 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 204);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:206 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwmodule", LOCATE_parser___parser_prod, 206);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:207 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_name", LOCATE_parser___parser_prod, 207);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStdImport___empty_init(val_t p0, int* init_table){
- int itpos5 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStdImport].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos5]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 211;
- fra.me.meth = LOCATE_parser___parser_prod___AStdImport___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos5] = 1;
- return;
-}
-void parser___parser_prod___AStdImport___init_astdimport(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos6 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStdImport].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 213;
- fra.me.meth = LOCATE_parser___parser_prod___AStdImport___init_astdimport;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:213 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:219 */
- CALL_parser___parser_prod___AStdImport___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:220 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 220);
- }
- ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:221 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 221);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:222 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 222);
- }
- ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:223 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 223);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:224 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 224);
- }
- ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:225 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 225);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos6] = 1;
- return;
-}
-void parser___parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 228;
- fra.me.meth = LOCATE_parser___parser_prod___AStdImport___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:230 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 230);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:231 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:232 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 232);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:233 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 233);
- }
- /* ./parser//parser_prod.nit:234 */
- ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:236 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 236);
- }
- /* ./parser//parser_prod.nit:238 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:240 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 240);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:241 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:242 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 242);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:243 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwimport, ID_parser___parser_nodes___TKwimport)) /*cast TKwimport*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 243);
- }
- /* ./parser//parser_prod.nit:244 */
- ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:246 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 246);
- }
- /* ./parser//parser_prod.nit:248 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:250 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_name", LOCATE_parser___parser_prod, 250);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:251 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:252 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 252);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:253 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModuleName, ID_parser___parser_nodes___AModuleName)) /*cast AModuleName*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 253);
- }
- /* ./parser//parser_prod.nit:254 */
- ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:256 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 256);
- }
- /* ./parser//parser_prod.nit:258 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStdImport___visit_all(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___parser_prod;
- fra.me.line = 262;
- fra.me.meth = LOCATE_parser___parser_prod___AStdImport___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:264 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 264);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:265 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 265);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:266 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_name", LOCATE_parser___parser_prod, 266);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANoImport___empty_init(val_t p0, int* init_table){
- int itpos7 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANoImport].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos7]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 270;
- fra.me.meth = LOCATE_parser___parser_prod___ANoImport___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos7] = 1;
- return;
-}
-void parser___parser_prod___ANoImport___init_anoimport(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos8 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANoImport].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 272;
- fra.me.meth = LOCATE_parser___parser_prod___ANoImport___init_anoimport;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:272 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:278 */
- CALL_parser___parser_prod___ANoImport___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:279 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 279);
- }
- ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:280 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 280);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:281 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 281);
- }
- ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:282 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 282);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:283 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 283);
- }
- ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:284 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 284);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos8] = 1;
- return;
-}
-void parser___parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 287;
- fra.me.meth = LOCATE_parser___parser_prod___ANoImport___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:289 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 289);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:290 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:291 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 291);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:292 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 292);
- }
- /* ./parser//parser_prod.nit:293 */
- ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:295 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 295);
- }
- /* ./parser//parser_prod.nit:297 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:299 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 299);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:300 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:301 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 301);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:302 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwimport, ID_parser___parser_nodes___TKwimport)) /*cast TKwimport*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 302);
- }
- /* ./parser//parser_prod.nit:303 */
- ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:305 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 305);
- }
- /* ./parser//parser_prod.nit:307 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:309 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwend", LOCATE_parser___parser_prod, 309);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:310 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:311 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 311);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:312 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwend, ID_parser___parser_nodes___TKwend)) /*cast TKwend*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 312);
- }
- /* ./parser//parser_prod.nit:313 */
- ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:315 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 315);
- }
- /* ./parser//parser_prod.nit:317 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANoImport___visit_all(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___parser_prod;
- fra.me.line = 321;
- fra.me.meth = LOCATE_parser___parser_prod___ANoImport___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:323 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 323);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:324 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 324);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:325 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwend", LOCATE_parser___parser_prod, 325);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APublicVisibility___empty_init(val_t p0, int* init_table){
- int itpos9 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APublicVisibility].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos9]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 329;
- fra.me.meth = LOCATE_parser___parser_prod___APublicVisibility___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos9] = 1;
- return;
-}
-void parser___parser_prod___APublicVisibility___init_apublicvisibility(val_t p0, int* init_table){
- int itpos10 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APublicVisibility].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos10]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 331;
- fra.me.meth = LOCATE_parser___parser_prod___APublicVisibility___init_apublicvisibility;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- /* ./parser//parser_prod.nit:333 */
- CALL_parser___parser_prod___APublicVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- stack_frame_head = fra.me.prev;
- init_table[itpos10] = 1;
- return;
-}
-void parser___parser_prod___APublicVisibility___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 336;
- fra.me.meth = LOCATE_parser___parser_prod___APublicVisibility___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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;
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APublicVisibility___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 340;
- fra.me.meth = LOCATE_parser___parser_prod___APublicVisibility___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APrivateVisibility___empty_init(val_t p0, int* init_table){
- int itpos11 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APrivateVisibility].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos11]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 345;
- fra.me.meth = LOCATE_parser___parser_prod___APrivateVisibility___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos11] = 1;
- return;
-}
-void parser___parser_prod___APrivateVisibility___init_aprivatevisibility(val_t p0, val_t p1, int* init_table){
- int itpos12 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APrivateVisibility].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 347;
- fra.me.meth = LOCATE_parser___parser_prod___APrivateVisibility___init_aprivatevisibility;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:347 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:351 */
- CALL_parser___parser_prod___APrivateVisibility___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:352 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 352);
- }
- ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:353 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 353);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos12] = 1;
- return;
-}
-void parser___parser_prod___APrivateVisibility___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 356;
- fra.me.meth = LOCATE_parser___parser_prod___APrivateVisibility___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:358 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwprivate", LOCATE_parser___parser_prod, 358);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:359 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:360 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 360);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:361 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwprivate, ID_parser___parser_nodes___TKwprivate)) /*cast TKwprivate*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 361);
- }
- /* ./parser//parser_prod.nit:362 */
- ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:364 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 364);
- }
- /* ./parser//parser_prod.nit:366 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APrivateVisibility___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 370;
- fra.me.meth = LOCATE_parser___parser_prod___APrivateVisibility___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:372 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwprivate", LOCATE_parser___parser_prod, 372);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AProtectedVisibility___empty_init(val_t p0, int* init_table){
- int itpos13 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AProtectedVisibility].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos13]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 376;
- fra.me.meth = LOCATE_parser___parser_prod___AProtectedVisibility___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos13] = 1;
- return;
-}
-void parser___parser_prod___AProtectedVisibility___init_aprotectedvisibility(val_t p0, val_t p1, int* init_table){
- int itpos14 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AProtectedVisibility].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 378;
- fra.me.meth = LOCATE_parser___parser_prod___AProtectedVisibility___init_aprotectedvisibility;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:378 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:382 */
- CALL_parser___parser_prod___AProtectedVisibility___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:383 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 383);
- }
- ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:384 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 384);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos14] = 1;
- return;
-}
-void parser___parser_prod___AProtectedVisibility___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 387;
- fra.me.meth = LOCATE_parser___parser_prod___AProtectedVisibility___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:389 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwprotected", LOCATE_parser___parser_prod, 389);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:390 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:391 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 391);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:392 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwprotected, ID_parser___parser_nodes___TKwprotected)) /*cast TKwprotected*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 392);
- }
- /* ./parser//parser_prod.nit:393 */
- ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:395 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 395);
- }
- /* ./parser//parser_prod.nit:397 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AProtectedVisibility___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 401;
- fra.me.meth = LOCATE_parser___parser_prod___AProtectedVisibility___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:403 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwprotected", LOCATE_parser___parser_prod, 403);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIntrudeVisibility___empty_init(val_t p0, int* init_table){
- int itpos15 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIntrudeVisibility].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos15]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 407;
- fra.me.meth = LOCATE_parser___parser_prod___AIntrudeVisibility___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos15] = 1;
- return;
-}
-void parser___parser_prod___AIntrudeVisibility___init_aintrudevisibility(val_t p0, val_t p1, int* init_table){
- int itpos16 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIntrudeVisibility].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 409;
- fra.me.meth = LOCATE_parser___parser_prod___AIntrudeVisibility___init_aintrudevisibility;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:409 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:413 */
- CALL_parser___parser_prod___AIntrudeVisibility___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:414 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 414);
- }
- ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:415 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 415);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos16] = 1;
- return;
-}
-void parser___parser_prod___AIntrudeVisibility___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 418;
- fra.me.meth = LOCATE_parser___parser_prod___AIntrudeVisibility___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:420 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwintrude", LOCATE_parser___parser_prod, 420);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:421 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:422 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 422);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:423 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwintrude, ID_parser___parser_nodes___TKwintrude)) /*cast TKwintrude*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 423);
- }
- /* ./parser//parser_prod.nit:424 */
- ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:426 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 426);
- }
- /* ./parser//parser_prod.nit:428 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIntrudeVisibility___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 432;
- fra.me.meth = LOCATE_parser___parser_prod___AIntrudeVisibility___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:434 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwintrude", LOCATE_parser___parser_prod, 434);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStdClassdef___empty_init(val_t p0, int* init_table){
- int itpos17 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStdClassdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos17]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 438;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos17] = 1;
- return;
-}
-void parser___parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
- int itpos18 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStdClassdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[9];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos18]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 440;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___init_astdclassdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 10;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- fra.me.REG[7] = p7;
- fra.me.REG[8] = p8;
- /* ./parser//parser_prod.nit:440 */
- fra.me.REG[9] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:451 */
- CALL_parser___parser_prod___AStdClassdef___empty_init(fra.me.REG[9])(fra.me.REG[9], init_table);
- /* ./parser//parser_prod.nit:452 */
- ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[9]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:453 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:454 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 454);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:456 */
- ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[9]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:457 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:458 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 458);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:460 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 460);
- }
- ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[9]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:461 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 461);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:462 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 462);
- }
- ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[9]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:463 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 463);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:464 */
- ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[9]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:465 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:466 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 466);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[9]);
- }
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[6])(fra.me.REG[6], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___init_astdclassdef_1));
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[7])(fra.me.REG[7], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___init_astdclassdef_2));
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[8])(fra.me.REG[8], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___init_astdclassdef_3));
- stack_frame_head = fra.me.prev;
- init_table[itpos18] = 1;
- return;
-}
- void OC_parser___parser_prod___AStdClassdef___init_astdclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:468 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___init_astdclassdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:469 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AFormaldef, ID_parser___parser_nodes___AFormaldef)) /*cast AFormaldef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 469);
- }
- /* ./parser//parser_prod.nit:470 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(closctx->REG[9])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 470);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(closctx->REG[9]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:471 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[9]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___AStdClassdef___init_astdclassdef_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:473 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___init_astdclassdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:474 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___ASuperclass, ID_parser___parser_nodes___ASuperclass)) /*cast ASuperclass*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 474);
- }
- /* ./parser//parser_prod.nit:475 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(closctx->REG[9])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 475);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(closctx->REG[9]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:476 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[9]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___AStdClassdef___init_astdclassdef_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:478 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___init_astdclassdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:479 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 479);
- }
- /* ./parser//parser_prod.nit:480 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(closctx->REG[9])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 480);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(closctx->REG[9]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:481 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[9]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 485;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:487 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:488 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:489 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 489);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:490 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 490);
- }
- /* ./parser//parser_prod.nit:491 */
- ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:493 */
- ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:495 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:497 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:498 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:499 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 499);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:500 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 500);
- }
- /* ./parser//parser_prod.nit:501 */
- ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:503 */
- ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:505 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:507 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 507);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:508 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:509 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 509);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:510 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 510);
- }
- /* ./parser//parser_prod.nit:511 */
- ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:513 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 513);
- }
- /* ./parser//parser_prod.nit:515 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:517 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classkind", LOCATE_parser___parser_prod, 517);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:518 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:519 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 519);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:520 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClasskind, ID_parser___parser_nodes___AClasskind)) /*cast AClasskind*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 520);
- }
- /* ./parser//parser_prod.nit:521 */
- ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:523 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 523);
- }
- /* ./parser//parser_prod.nit:525 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:527 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:528 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:529 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 529);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:530 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 530);
- }
- /* ./parser//parser_prod.nit:531 */
- ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:533 */
- ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:535 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:537 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 537);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:537 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:538 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 538);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:539 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:540 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AFormaldef, ID_parser___parser_nodes___AFormaldef)) /*cast AFormaldef*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 540);
- }
- /* ./parser//parser_prod.nit:541 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 541);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:542 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 542);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:544 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 544);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:546 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:549 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 549);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:549 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:550 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 550);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:551 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:552 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASuperclass, ID_parser___parser_nodes___ASuperclass)) /*cast ASuperclass*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 552);
- }
- /* ./parser//parser_prod.nit:553 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 553);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:554 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 554);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:556 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 556);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:558 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label3;
- }
- }
- label3: while(0);
- /* ./parser//parser_prod.nit:561 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 561);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:561 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:562 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 562);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:563 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:564 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 564);
- }
- /* ./parser//parser_prod.nit:565 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 565);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:566 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 566);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:568 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 568);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:570 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label4;
- }
- }
- label4: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 575;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:575 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:577 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:578 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 578);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:580 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:581 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 581);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:583 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 583);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:584 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classkind", LOCATE_parser___parser_prod, 584);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:585 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:586 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 586);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:588 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 588);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___visit_all_1));
- /* ./parser//parser_prod.nit:591 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 591);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___visit_all_2));
- /* ./parser//parser_prod.nit:594 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 594);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___visit_all_3));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AStdClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:589 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___AStdClassdef___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:592 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___AStdClassdef___visit_all_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:595 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ATopClassdef___empty_init(val_t p0, int* init_table){
- int itpos19 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATopClassdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos19]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 600;
- fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos19] = 1;
- return;
-}
-void parser___parser_prod___ATopClassdef___init_atopclassdef(val_t p0, val_t p1, int* init_table){
- int itpos20 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATopClassdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- if (init_table[itpos20]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 602;
- fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___init_atopclassdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:606 */
- CALL_parser___parser_prod___ATopClassdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ATopClassdef___init_atopclassdef_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos20] = 1;
- return;
-}
- void OC_parser___parser_prod___ATopClassdef___init_atopclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:607 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___init_atopclassdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:608 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 608);
- }
- /* ./parser//parser_prod.nit:609 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 609);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:610 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ATopClassdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 614;
- fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:616 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 616);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:616 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:617 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 617);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:618 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:619 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 619);
- }
- /* ./parser//parser_prod.nit:620 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 620);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:621 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 621);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:623 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 623);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:625 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ATopClassdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 630;
- fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:632 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 632);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ATopClassdef___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ATopClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:633 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AMainClassdef___empty_init(val_t p0, int* init_table){
- int itpos21 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMainClassdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos21]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 638;
- fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos21] = 1;
- return;
-}
-void parser___parser_prod___AMainClassdef___init_amainclassdef(val_t p0, val_t p1, int* init_table){
- int itpos22 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMainClassdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- if (init_table[itpos22]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 640;
- fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___init_amainclassdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:644 */
- CALL_parser___parser_prod___AMainClassdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AMainClassdef___init_amainclassdef_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos22] = 1;
- return;
-}
- void OC_parser___parser_prod___AMainClassdef___init_amainclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:645 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___init_amainclassdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:646 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 646);
- }
- /* ./parser//parser_prod.nit:647 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 647);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:648 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AMainClassdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 652;
- fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:654 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 654);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:654 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:655 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 655);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:656 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:657 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 657);
- }
- /* ./parser//parser_prod.nit:658 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 658);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:659 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 659);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:661 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 661);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:663 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMainClassdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 668;
- fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:670 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 670);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AMainClassdef___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AMainClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:671 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AConcreteClasskind___empty_init(val_t p0, int* init_table){
- int itpos23 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteClasskind].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos23]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 676;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteClasskind___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos23] = 1;
- return;
-}
-void parser___parser_prod___AConcreteClasskind___init_aconcreteclasskind(val_t p0, val_t p1, int* init_table){
- int itpos24 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteClasskind].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 678;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteClasskind___init_aconcreteclasskind;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:678 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:682 */
- CALL_parser___parser_prod___AConcreteClasskind___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:683 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 683);
- }
- ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:684 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 684);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos24] = 1;
- return;
-}
-void parser___parser_prod___AConcreteClasskind___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 687;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteClasskind___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:689 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser___parser_prod, 689);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:690 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:691 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 691);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:692 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwclass, ID_parser___parser_nodes___TKwclass)) /*cast TKwclass*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 692);
- }
- /* ./parser//parser_prod.nit:693 */
- ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:695 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 695);
- }
- /* ./parser//parser_prod.nit:697 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AConcreteClasskind___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 701;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteClasskind___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:703 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser___parser_prod, 703);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAbstractClasskind___empty_init(val_t p0, int* init_table){
- int itpos25 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAbstractClasskind].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos25]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 707;
- fra.me.meth = LOCATE_parser___parser_prod___AAbstractClasskind___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos25] = 1;
- return;
-}
-void parser___parser_prod___AAbstractClasskind___init_aabstractclasskind(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos26 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAbstractClasskind].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 709;
- fra.me.meth = LOCATE_parser___parser_prod___AAbstractClasskind___init_aabstractclasskind;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:709 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:714 */
- CALL_parser___parser_prod___AAbstractClasskind___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:715 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 715);
- }
- ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:716 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 716);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:717 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 717);
- }
- ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:718 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 718);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos26] = 1;
- return;
-}
-void parser___parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 721;
- fra.me.meth = LOCATE_parser___parser_prod___AAbstractClasskind___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:723 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwabstract", LOCATE_parser___parser_prod, 723);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:724 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:725 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 725);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:726 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwabstract, ID_parser___parser_nodes___TKwabstract)) /*cast TKwabstract*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 726);
- }
- /* ./parser//parser_prod.nit:727 */
- ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:729 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 729);
- }
- /* ./parser//parser_prod.nit:731 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:733 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser___parser_prod, 733);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:734 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:735 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 735);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:736 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwclass, ID_parser___parser_nodes___TKwclass)) /*cast TKwclass*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 736);
- }
- /* ./parser//parser_prod.nit:737 */
- ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:739 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 739);
- }
- /* ./parser//parser_prod.nit:741 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAbstractClasskind___visit_all(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___parser_prod;
- fra.me.line = 745;
- fra.me.meth = LOCATE_parser___parser_prod___AAbstractClasskind___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:747 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwabstract", LOCATE_parser___parser_prod, 747);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:748 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser___parser_prod, 748);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AInterfaceClasskind___empty_init(val_t p0, int* init_table){
- int itpos27 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInterfaceClasskind].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos27]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 752;
- fra.me.meth = LOCATE_parser___parser_prod___AInterfaceClasskind___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos27] = 1;
- return;
-}
-void parser___parser_prod___AInterfaceClasskind___init_ainterfaceclasskind(val_t p0, val_t p1, int* init_table){
- int itpos28 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInterfaceClasskind].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 754;
- fra.me.meth = LOCATE_parser___parser_prod___AInterfaceClasskind___init_ainterfaceclasskind;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:754 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:758 */
- CALL_parser___parser_prod___AInterfaceClasskind___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:759 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 759);
- }
- ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:760 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 760);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos28] = 1;
- return;
-}
-void parser___parser_prod___AInterfaceClasskind___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 763;
- fra.me.meth = LOCATE_parser___parser_prod___AInterfaceClasskind___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:765 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwinterface", LOCATE_parser___parser_prod, 765);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:766 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:767 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 767);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:768 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwinterface, ID_parser___parser_nodes___TKwinterface)) /*cast TKwinterface*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 768);
- }
- /* ./parser//parser_prod.nit:769 */
- ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:771 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 771);
- }
- /* ./parser//parser_prod.nit:773 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AInterfaceClasskind___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 777;
- fra.me.meth = LOCATE_parser___parser_prod___AInterfaceClasskind___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:779 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwinterface", LOCATE_parser___parser_prod, 779);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEnumClasskind___empty_init(val_t p0, int* init_table){
- int itpos29 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEnumClasskind].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos29]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 783;
- fra.me.meth = LOCATE_parser___parser_prod___AEnumClasskind___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos29] = 1;
- return;
-}
-void parser___parser_prod___AEnumClasskind___init_aenumclasskind(val_t p0, val_t p1, int* init_table){
- int itpos30 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEnumClasskind].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 785;
- fra.me.meth = LOCATE_parser___parser_prod___AEnumClasskind___init_aenumclasskind;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:785 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:789 */
- CALL_parser___parser_prod___AEnumClasskind___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:790 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 790);
- }
- ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:791 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 791);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos30] = 1;
- return;
-}
-void parser___parser_prod___AEnumClasskind___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 794;
- fra.me.meth = LOCATE_parser___parser_prod___AEnumClasskind___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:796 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwenum", LOCATE_parser___parser_prod, 796);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:797 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:798 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 798);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:799 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwenum, ID_parser___parser_nodes___TKwenum)) /*cast TKwenum*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 799);
- }
- /* ./parser//parser_prod.nit:800 */
- ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:802 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 802);
- }
- /* ./parser//parser_prod.nit:804 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEnumClasskind___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 808;
- fra.me.meth = LOCATE_parser___parser_prod___AEnumClasskind___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:810 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwenum", LOCATE_parser___parser_prod, 810);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AExternClasskind___empty_init(val_t p0, int* init_table){
- int itpos31 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternClasskind].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos31]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 814;
- fra.me.meth = LOCATE_parser___parser_prod___AExternClasskind___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos31] = 1;
- return;
-}
-void parser___parser_prod___AExternClasskind___init_aexternclasskind(val_t p0, val_t p1, int* init_table){
- int itpos32 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternClasskind].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 816;
- fra.me.meth = LOCATE_parser___parser_prod___AExternClasskind___init_aexternclasskind;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:816 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:820 */
- CALL_parser___parser_prod___AExternClasskind___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:821 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 821);
- }
- ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:822 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 822);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos32] = 1;
- return;
-}
-void parser___parser_prod___AExternClasskind___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 825;
- fra.me.meth = LOCATE_parser___parser_prod___AExternClasskind___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:827 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwextern", LOCATE_parser___parser_prod, 827);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:828 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:829 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 829);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:830 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwextern, ID_parser___parser_nodes___TKwextern)) /*cast TKwextern*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 830);
- }
- /* ./parser//parser_prod.nit:831 */
- ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:833 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 833);
- }
- /* ./parser//parser_prod.nit:835 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AExternClasskind___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 839;
- fra.me.meth = LOCATE_parser___parser_prod___AExternClasskind___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:841 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwextern", LOCATE_parser___parser_prod, 841);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AFormaldef___empty_init(val_t p0, int* init_table){
- int itpos33 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFormaldef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos33]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 845;
- fra.me.meth = LOCATE_parser___parser_prod___AFormaldef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos33] = 1;
- return;
-}
-void parser___parser_prod___AFormaldef___init_aformaldef(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos34 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFormaldef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos34]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 847;
- fra.me.meth = LOCATE_parser___parser_prod___AFormaldef___init_aformaldef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:847 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:852 */
- CALL_parser___parser_prod___AFormaldef___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:853 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 853);
- }
- ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:854 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 854);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:855 */
- ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:856 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:857 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 857);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos34] = 1;
- return;
-}
-void parser___parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 861;
- fra.me.meth = LOCATE_parser___parser_prod___AFormaldef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:863 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 863);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:864 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:865 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 865);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:866 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 866);
- }
- /* ./parser//parser_prod.nit:867 */
- ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:869 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 869);
- }
- /* ./parser//parser_prod.nit:871 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:873 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:874 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:875 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 875);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:876 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 876);
- }
- /* ./parser//parser_prod.nit:877 */
- ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:879 */
- ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:881 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AFormaldef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 885;
- fra.me.meth = LOCATE_parser___parser_prod___AFormaldef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:885 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:887 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 887);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:888 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:889 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 889);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASuperclass___empty_init(val_t p0, int* init_table){
- int itpos35 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperclass].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos35]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 894;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperclass___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos35] = 1;
- return;
-}
-void parser___parser_prod___ASuperclass___init_asuperclass(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos36 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperclass].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos36]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 896;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperclass___init_asuperclass;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:896 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:902 */
- CALL_parser___parser_prod___ASuperclass___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:903 */
- ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:904 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:905 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 905);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:907 */
- ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:908 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:909 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 909);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:911 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 911);
- }
- ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:912 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 912);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos36] = 1;
- return;
-}
-void parser___parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 915;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperclass___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:917 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:918 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:919 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 919);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:920 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwspecial, ID_parser___parser_nodes___TKwspecial)) /*cast TKwspecial*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 920);
- }
- /* ./parser//parser_prod.nit:921 */
- ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:923 */
- ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:925 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:927 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:928 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:929 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 929);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:930 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwsuper, ID_parser___parser_nodes___TKwsuper)) /*cast TKwsuper*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 930);
- }
- /* ./parser//parser_prod.nit:931 */
- ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:933 */
- ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:935 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:937 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 937);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:938 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:939 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 939);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:940 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 940);
- }
- /* ./parser//parser_prod.nit:941 */
- ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:943 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 943);
- }
- /* ./parser//parser_prod.nit:945 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASuperclass___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 949;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperclass___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:949 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:951 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:952 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwspecial, ID_parser___parser_nodes___TKwspecial)) /*cast TKwspecial*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 952);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:954 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:955 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwsuper, ID_parser___parser_nodes___TKwsuper)) /*cast TKwsuper*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 955);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:957 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 957);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAttrPropdef___empty_init(val_t p0, int* init_table){
- int itpos37 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos37]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 961;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos37] = 1;
- return;
-}
-void parser___parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, val_t p9, val_t p10, int* init_table){
- int itpos38 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[11];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos38]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 963;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrPropdef___init_aattrpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 12;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- fra.me.REG[7] = p7;
- fra.me.REG[8] = p8;
- fra.me.REG[9] = p9;
- fra.me.REG[10] = p10;
- /* ./parser//parser_prod.nit:963 */
- fra.me.REG[11] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:976 */
- CALL_parser___parser_prod___AAttrPropdef___empty_init(fra.me.REG[11])(fra.me.REG[11], init_table);
- /* ./parser//parser_prod.nit:977 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[11]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:978 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:979 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 979);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[11]);
- }
- /* ./parser//parser_prod.nit:981 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[11]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:982 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:983 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 983);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[11]);
- }
- /* ./parser//parser_prod.nit:985 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[11]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:986 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:987 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 987);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[11]);
- }
- /* ./parser//parser_prod.nit:989 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[11]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:990 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:991 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 991);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[11]);
- }
- /* ./parser//parser_prod.nit:993 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 993);
- }
- ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[11]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:994 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 994);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[11]);
- /* ./parser//parser_prod.nit:995 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 995);
- }
- ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[11]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:996 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 996);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[11]);
- /* ./parser//parser_prod.nit:997 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[11]) = fra.me.REG[7];
- /* ./parser//parser_prod.nit:998 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:999 */
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 999);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[11]);
- }
- /* ./parser//parser_prod.nit:1001 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[11]) = fra.me.REG[8];
- /* ./parser//parser_prod.nit:1002 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1003 */
- REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1003);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[11]);
- }
- /* ./parser//parser_prod.nit:1005 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[11]) = fra.me.REG[9];
- /* ./parser//parser_prod.nit:1006 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[9])(fra.me.REG[9], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1007 */
- REGB0 = TAG_Bool(fra.me.REG[9]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1007);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[9])(fra.me.REG[9], fra.me.REG[11]);
- }
- /* ./parser//parser_prod.nit:1009 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[11]) = fra.me.REG[10];
- /* ./parser//parser_prod.nit:1010 */
- REGB0 = TAG_Bool(fra.me.REG[10]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[10]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[10])(fra.me.REG[10], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1011 */
- REGB0 = TAG_Bool(fra.me.REG[10]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1011);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[10])(fra.me.REG[10], fra.me.REG[11]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos38] = 1;
- return;
-}
-void parser___parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1015;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:1017 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1018 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1019 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1019);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1020 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1020);
- }
- /* ./parser//parser_prod.nit:1021 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1023 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1025 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1027 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1028 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1029 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1029);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1030 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAble, ID_parser___parser_nodes___AAble)) /*cast AAble*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1030);
- }
- /* ./parser//parser_prod.nit:1031 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1033 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1035 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1037 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1038 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1039 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1039);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1040 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAble, ID_parser___parser_nodes___AAble)) /*cast AAble*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1040);
- }
- /* ./parser//parser_prod.nit:1041 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1043 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1045 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1047 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1048 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1049 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1049);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1050 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1050);
- }
- /* ./parser//parser_prod.nit:1051 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1053 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1055 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1057 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 1057);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1058 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1059 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1059);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1060 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1060);
- }
- /* ./parser//parser_prod.nit:1061 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1063 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1063);
- }
- /* ./parser//parser_prod.nit:1065 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1067 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser___parser_prod, 1067);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1068 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1069 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1069);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1070 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwvar, ID_parser___parser_nodes___TKwvar)) /*cast TKwvar*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1070);
- }
- /* ./parser//parser_prod.nit:1071 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1073 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1073);
- }
- /* ./parser//parser_prod.nit:1075 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1077 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1078 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1079 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1079);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1080 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1080);
- }
- /* ./parser//parser_prod.nit:1081 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1083 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1085 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1087 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1088 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1089 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1089);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1090 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1090);
- }
- /* ./parser//parser_prod.nit:1091 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1093 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1095 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1097 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1098 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1099 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1099);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1100 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1100);
- }
- /* ./parser//parser_prod.nit:1101 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1103 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1105 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1107 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1108 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1109 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1109);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1110 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1110);
- }
- /* ./parser//parser_prod.nit:1111 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1113 */
- ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1115 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1119;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:1119 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1121 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1122 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1122);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1124 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1125 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AAble, ID_parser___parser_nodes___AAble)) /*cast AAble*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1125);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1127 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1128 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AAble, ID_parser___parser_nodes___AAble)) /*cast AAble*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1128);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1130 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1131 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1131);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1133 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 1133);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1134 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser___parser_prod, 1134);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1135 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1136 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1136);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1138 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1139 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1139);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1141 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1142 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1142);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1144 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1145 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1145);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMethPropdef___empty_init(val_t p0, int* init_table){
- int itpos39 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMethPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos39]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1150;
- fra.me.meth = LOCATE_parser___parser_prod___AMethPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos39] = 1;
- return;
-}
-void parser___parser_prod___AMethPropdef___init_amethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
- int itpos40 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMethPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos40]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1152;
- fra.me.meth = LOCATE_parser___parser_prod___AMethPropdef___init_amethpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 7;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- /* ./parser//parser_prod.nit:1152 */
- fra.me.REG[6] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1160 */
- CALL_parser___parser_prod___AMethPropdef___empty_init(fra.me.REG[6])(fra.me.REG[6], init_table);
- /* ./parser//parser_prod.nit:1161 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[6]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:1162 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1163 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1163);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- }
- /* ./parser//parser_prod.nit:1165 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[6]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:1166 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1167 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1167);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
- }
- /* ./parser//parser_prod.nit:1169 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1169);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[6]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:1170 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1170);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:1171 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1171);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[6]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:1172 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1172);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:1173 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1173);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[6]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:1174 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1174);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
- stack_frame_head = fra.me.prev;
- init_table[itpos40] = 1;
- return;
-}
-void parser___parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1177;
- fra.me.meth = LOCATE_parser___parser_prod___AMethPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:1179 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1180 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1181 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1181);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1182 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1182);
- }
- /* ./parser//parser_prod.nit:1183 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1185 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1187 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1189 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1190 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1191 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1191);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1192 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1192);
- }
- /* ./parser//parser_prod.nit:1193 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1195 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1197 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1199 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1200 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1201 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1201);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1202 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1202);
- }
- /* ./parser//parser_prod.nit:1203 */
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1205 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1205);
- }
- /* ./parser//parser_prod.nit:1207 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1209 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1210 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1211 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1211);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1212 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1212);
- }
- /* ./parser//parser_prod.nit:1213 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1215 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1215);
- }
- /* ./parser//parser_prod.nit:1217 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1219 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1220 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1221 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1221);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1222 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1222);
- }
- /* ./parser//parser_prod.nit:1223 */
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1225 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1225);
- }
- /* ./parser//parser_prod.nit:1227 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMethPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1231;
- fra.me.meth = LOCATE_parser___parser_prod___AMethPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:1231 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1233 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1234 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1234);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1236 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1237 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1237);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1239 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1240 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1241 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ADeferredMethPropdef___empty_init(val_t p0, int* init_table){
- int itpos41 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADeferredMethPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos41]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1245;
- fra.me.meth = LOCATE_parser___parser_prod___ADeferredMethPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos41] = 1;
- return;
-}
-void parser___parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
- int itpos42 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADeferredMethPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos42]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1247;
- fra.me.meth = LOCATE_parser___parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 8;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- /* ./parser//parser_prod.nit:1247 */
- fra.me.REG[7] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1256 */
- CALL_parser___parser_prod___ADeferredMethPropdef___empty_init(fra.me.REG[7])(fra.me.REG[7], init_table);
- /* ./parser//parser_prod.nit:1257 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[7]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:1258 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1259 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1259);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:1261 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[7]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:1262 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1263 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1263);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:1265 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1265);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[7]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:1266 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1266);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:1267 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1267);
- }
- ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[7]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:1268 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1268);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:1269 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1269);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[7]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:1270 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1270);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:1271 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1271);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[7]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:1272 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1272);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
- stack_frame_head = fra.me.prev;
- init_table[itpos42] = 1;
- return;
-}
-void parser___parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1275;
- fra.me.meth = LOCATE_parser___parser_prod___ADeferredMethPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:1277 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1278 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1279 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1279);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1280 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1280);
- }
- /* ./parser//parser_prod.nit:1281 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1283 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1285 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1287 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1288 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1289 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1289);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1290 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1290);
- }
- /* ./parser//parser_prod.nit:1291 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1293 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1295 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1297 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1298 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1299 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1299);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1300 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1300);
- }
- /* ./parser//parser_prod.nit:1301 */
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1303 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1303);
- }
- /* ./parser//parser_prod.nit:1305 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1307 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1307);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1308 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1309 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1309);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1310 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmeth, ID_parser___parser_nodes___TKwmeth)) /*cast TKwmeth*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1310);
- }
- /* ./parser//parser_prod.nit:1311 */
- ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1313 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1313);
- }
- /* ./parser//parser_prod.nit:1315 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1317 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1318 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1319 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1319);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1320 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1320);
- }
- /* ./parser//parser_prod.nit:1321 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1323 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1323);
- }
- /* ./parser//parser_prod.nit:1325 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1327 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1328 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1329 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1329);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1330 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1330);
- }
- /* ./parser//parser_prod.nit:1331 */
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1333 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1333);
- }
- /* ./parser//parser_prod.nit:1335 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ADeferredMethPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1339;
- fra.me.meth = LOCATE_parser___parser_prod___ADeferredMethPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:1339 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1341 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1342 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1342);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1344 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1345 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1345);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1347 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1348 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1348);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1349 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1350 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AInternMethPropdef___empty_init(val_t p0, int* init_table){
- int itpos43 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInternMethPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos43]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1354;
- fra.me.meth = LOCATE_parser___parser_prod___AInternMethPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos43] = 1;
- return;
-}
-void parser___parser_prod___AInternMethPropdef___init_ainternmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
- int itpos44 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInternMethPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos44]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1356;
- fra.me.meth = LOCATE_parser___parser_prod___AInternMethPropdef___init_ainternmethpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 8;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- /* ./parser//parser_prod.nit:1356 */
- fra.me.REG[7] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1365 */
- CALL_parser___parser_prod___AInternMethPropdef___empty_init(fra.me.REG[7])(fra.me.REG[7], init_table);
- /* ./parser//parser_prod.nit:1366 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[7]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:1367 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1368 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1368);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:1370 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[7]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:1371 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1372 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1372);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:1374 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1374);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[7]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:1375 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1375);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:1376 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1376);
- }
- ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[7]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:1377 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1377);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:1378 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1378);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[7]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:1379 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1379);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:1380 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1380);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[7]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:1381 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1381);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
- stack_frame_head = fra.me.prev;
- init_table[itpos44] = 1;
- return;
-}
-void parser___parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1384;
- fra.me.meth = LOCATE_parser___parser_prod___AInternMethPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:1386 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1387 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1388 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1388);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1389 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1389);
- }
- /* ./parser//parser_prod.nit:1390 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1392 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1394 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1396 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1397 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1398 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1398);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1399 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1399);
- }
- /* ./parser//parser_prod.nit:1400 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1402 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1404 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1406 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1407 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1408 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1408);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1409 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1409);
- }
- /* ./parser//parser_prod.nit:1410 */
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1412 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1412);
- }
- /* ./parser//parser_prod.nit:1414 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1416 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1416);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1417 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1418 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1418);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1419 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmeth, ID_parser___parser_nodes___TKwmeth)) /*cast TKwmeth*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1419);
- }
- /* ./parser//parser_prod.nit:1420 */
- ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1422 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1422);
- }
- /* ./parser//parser_prod.nit:1424 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1426 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1427 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1428 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1428);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1429 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1429);
- }
- /* ./parser//parser_prod.nit:1430 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1432 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1432);
- }
- /* ./parser//parser_prod.nit:1434 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1436 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1437 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1438 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1438);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1439 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1439);
- }
- /* ./parser//parser_prod.nit:1440 */
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1442 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1442);
- }
- /* ./parser//parser_prod.nit:1444 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AInternMethPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1448;
- fra.me.meth = LOCATE_parser___parser_prod___AInternMethPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:1448 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1450 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1451 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1451);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1453 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1454 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1454);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1456 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1457 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1457);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1458 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1459 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AExternMethPropdef___empty_init(val_t p0, int* init_table){
- int itpos45 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternMethPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos45]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1463;
- fra.me.meth = LOCATE_parser___parser_prod___AExternMethPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos45] = 1;
- return;
-}
-void parser___parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
- int itpos46 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternMethPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[9];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos46]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1465;
- fra.me.meth = LOCATE_parser___parser_prod___AExternMethPropdef___init_aexternmethpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 10;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- fra.me.REG[7] = p7;
- fra.me.REG[8] = p8;
- /* ./parser//parser_prod.nit:1465 */
- fra.me.REG[9] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1476 */
- CALL_parser___parser_prod___AExternMethPropdef___empty_init(fra.me.REG[9])(fra.me.REG[9], init_table);
- /* ./parser//parser_prod.nit:1477 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[9]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:1478 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1479 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1479);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:1481 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[9]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:1482 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1483 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1483);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:1485 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1485);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[9]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:1486 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1486);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:1487 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1487);
- }
- ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[9]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:1488 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1488);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:1489 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1489);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[9]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:1490 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1490);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:1491 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1491);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[9]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:1492 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1492);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:1493 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[9]) = fra.me.REG[7];
- /* ./parser//parser_prod.nit:1494 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1495 */
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1495);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:1497 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[9]) = fra.me.REG[8];
- /* ./parser//parser_prod.nit:1498 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1499 */
- REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1499);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[9]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos46] = 1;
- return;
-}
-void parser___parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1503;
- fra.me.meth = LOCATE_parser___parser_prod___AExternMethPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:1505 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1506 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1507 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1507);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1508 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1508);
- }
- /* ./parser//parser_prod.nit:1509 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1511 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1513 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1515 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1516 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1517 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1517);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1518 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1518);
- }
- /* ./parser//parser_prod.nit:1519 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1521 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1523 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1525 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1526 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1527 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1527);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1528 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1528);
- }
- /* ./parser//parser_prod.nit:1529 */
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1531 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1531);
- }
- /* ./parser//parser_prod.nit:1533 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1535 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1535);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1536 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1537 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1537);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1538 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmeth, ID_parser___parser_nodes___TKwmeth)) /*cast TKwmeth*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1538);
- }
- /* ./parser//parser_prod.nit:1539 */
- ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1541 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1541);
- }
- /* ./parser//parser_prod.nit:1543 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1545 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1546 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1547 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1547);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1548 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1548);
- }
- /* ./parser//parser_prod.nit:1549 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1551 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1551);
- }
- /* ./parser//parser_prod.nit:1553 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1555 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1556 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1557 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1557);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1558 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1558);
- }
- /* ./parser//parser_prod.nit:1559 */
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1561 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1561);
- }
- /* ./parser//parser_prod.nit:1563 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1565 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1566 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1567 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1567);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1568 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1568);
- }
- /* ./parser//parser_prod.nit:1569 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1571 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1573 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1575 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1576 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1577 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1577);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1578 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExternCalls, ID_parser___parser_nodes___AExternCalls)) /*cast AExternCalls*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1578);
- }
- /* ./parser//parser_prod.nit:1579 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1581 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1583 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AExternMethPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1587;
- fra.me.meth = LOCATE_parser___parser_prod___AExternMethPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:1587 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1589 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1590 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1590);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1592 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1593 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1593);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1595 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1596 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1596);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1597 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1598 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1599 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1600 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1600);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1602 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1603 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExternCalls, ID_parser___parser_nodes___AExternCalls)) /*cast AExternCalls*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1603);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AConcreteMethPropdef___empty_init(val_t p0, int* init_table){
- int itpos47 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteMethPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos47]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1608;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteMethPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos47] = 1;
- return;
-}
-void parser___parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, int* init_table){
- int itpos48 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteMethPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[8];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos48]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1610;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 9;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- fra.me.REG[7] = p7;
- /* ./parser//parser_prod.nit:1610 */
- fra.me.REG[8] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1620 */
- CALL_parser___parser_prod___AConcreteMethPropdef___empty_init(fra.me.REG[8])(fra.me.REG[8], init_table);
- /* ./parser//parser_prod.nit:1621 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[8]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:1622 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1623 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1623);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[8]);
- }
- /* ./parser//parser_prod.nit:1625 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[8]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:1626 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1627 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1627);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[8]);
- }
- /* ./parser//parser_prod.nit:1629 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1629);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[8]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:1630 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1630);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[8]);
- /* ./parser//parser_prod.nit:1631 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1631);
- }
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[8]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:1632 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1632);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[8]);
- /* ./parser//parser_prod.nit:1633 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1633);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[8]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:1634 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1634);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[8]);
- /* ./parser//parser_prod.nit:1635 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1635);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[8]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:1636 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1636);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[8]);
- /* ./parser//parser_prod.nit:1637 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[8]) = fra.me.REG[7];
- /* ./parser//parser_prod.nit:1638 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1639 */
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1639);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos48] = 1;
- return;
-}
-void parser___parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1643;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteMethPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:1645 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1646 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1647 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1647);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1648 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1648);
- }
- /* ./parser//parser_prod.nit:1649 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1651 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1653 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1655 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1656 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1657 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1657);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1658 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1658);
- }
- /* ./parser//parser_prod.nit:1659 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1661 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1663 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1665 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1666 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1667 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1667);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1668 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1668);
- }
- /* ./parser//parser_prod.nit:1669 */
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1671 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1671);
- }
- /* ./parser//parser_prod.nit:1673 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1675 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1676 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1677 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1677);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1678 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmeth, ID_parser___parser_nodes___TKwmeth)) /*cast TKwmeth*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1678);
- }
- /* ./parser//parser_prod.nit:1679 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1681 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1681);
- }
- /* ./parser//parser_prod.nit:1683 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1685 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1686 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1687 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1687);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1688 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1688);
- }
- /* ./parser//parser_prod.nit:1689 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1691 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1691);
- }
- /* ./parser//parser_prod.nit:1693 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1695 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1696 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1697 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1697);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1698 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1698);
- }
- /* ./parser//parser_prod.nit:1699 */
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1701 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1701);
- }
- /* ./parser//parser_prod.nit:1703 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1705 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1706 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1707 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1707);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1708 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1708);
- }
- /* ./parser//parser_prod.nit:1709 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1711 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1713 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AConcreteMethPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1717;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteMethPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:1717 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1719 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1720 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1720);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1722 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1723 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1723);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1725 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1726 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1727 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1728 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1729 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1730 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1730);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AConcreteInitPropdef___empty_init(val_t p0, int* init_table){
- int itpos49 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteInitPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos49]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1735;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteInitPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- /* ./parser//parser_prod.nit:1735 */
- CALL_parser___parser_nodes___AInitPropdef___init(fra.me.REG[0])(fra.me.REG[0], init_table);
- stack_frame_head = fra.me.prev;
- init_table[itpos49] = 1;
- return;
-}
-void parser___parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, int* init_table){
- int itpos50 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteInitPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[8];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos50]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1737;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 9;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- fra.me.REG[7] = p7;
- /* ./parser//parser_prod.nit:1737 */
- fra.me.REG[8] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1747 */
- CALL_parser___parser_prod___AConcreteInitPropdef___empty_init(fra.me.REG[8])(fra.me.REG[8], init_table);
- /* ./parser//parser_prod.nit:1748 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[8]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:1749 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1750 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1750);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[8]);
- }
- /* ./parser//parser_prod.nit:1752 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[8]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:1753 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1754 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1754);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[8]);
- }
- /* ./parser//parser_prod.nit:1756 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1756);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[8]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:1757 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1757);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[8]);
- /* ./parser//parser_prod.nit:1758 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1758);
- }
- ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[8]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:1759 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1759);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[8]);
- /* ./parser//parser_prod.nit:1760 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[8]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:1761 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1762 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1762);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[8]);
- }
- /* ./parser//parser_prod.nit:1764 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1764);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[8]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:1765 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1765);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[8]);
- /* ./parser//parser_prod.nit:1766 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[8]) = fra.me.REG[7];
- /* ./parser//parser_prod.nit:1767 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1768 */
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1768);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos50] = 1;
- return;
-}
-void parser___parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1772;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteInitPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:1774 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1775 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1776 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1776);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1777 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1777);
- }
- /* ./parser//parser_prod.nit:1778 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1780 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1782 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1784 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1785 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1786 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1786);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1787 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1787);
- }
- /* ./parser//parser_prod.nit:1788 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1790 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1792 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1794 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1795 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1796 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1796);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1797 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1797);
- }
- /* ./parser//parser_prod.nit:1798 */
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1800 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1800);
- }
- /* ./parser//parser_prod.nit:1802 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1804 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser___parser_prod, 1804);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1805 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1806 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1806);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1807 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwinit, ID_parser___parser_nodes___TKwinit)) /*cast TKwinit*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1807);
- }
- /* ./parser//parser_prod.nit:1808 */
- ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1810 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1810);
- }
- /* ./parser//parser_prod.nit:1812 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1814 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1815 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1816 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1816);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1817 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1817);
- }
- /* ./parser//parser_prod.nit:1818 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1820 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1822 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1824 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1825 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1826 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1826);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1827 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1827);
- }
- /* ./parser//parser_prod.nit:1828 */
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1830 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1830);
- }
- /* ./parser//parser_prod.nit:1832 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1834 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1835 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1836 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1836);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1837 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1837);
- }
- /* ./parser//parser_prod.nit:1838 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1840 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1842 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AConcreteInitPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1846;
- fra.me.meth = LOCATE_parser___parser_prod___AConcreteInitPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:1846 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1848 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1849 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1849);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1851 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1852 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1852);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1854 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1855 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser___parser_prod, 1855);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1856 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1857 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1857);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1859 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:1860 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1861 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1861);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AExternInitPropdef___empty_init(val_t p0, int* init_table){
- int itpos51 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternInitPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos51]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1866;
- fra.me.meth = LOCATE_parser___parser_prod___AExternInitPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- /* ./parser//parser_prod.nit:1866 */
- CALL_parser___parser_nodes___AInitPropdef___init(fra.me.REG[0])(fra.me.REG[0], init_table);
- stack_frame_head = fra.me.prev;
- init_table[itpos51] = 1;
- return;
-}
-void parser___parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
- int itpos52 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternInitPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[9];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos52]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 1868;
- fra.me.meth = LOCATE_parser___parser_prod___AExternInitPropdef___init_aexterninitpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 10;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- fra.me.REG[7] = p7;
- fra.me.REG[8] = p8;
- /* ./parser//parser_prod.nit:1868 */
- fra.me.REG[9] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1879 */
- CALL_parser___parser_prod___AExternInitPropdef___empty_init(fra.me.REG[9])(fra.me.REG[9], init_table);
- /* ./parser//parser_prod.nit:1880 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[9]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:1881 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1882 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1882);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:1884 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[9]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:1885 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1886 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1886);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:1888 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1888);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[9]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:1889 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1889);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:1890 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1890);
- }
- ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[9]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:1891 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1891);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:1892 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[9]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:1893 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1894 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1894);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:1896 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1896);
- }
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[9]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:1897 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1897);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[9]);
- /* ./parser//parser_prod.nit:1898 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[9]) = fra.me.REG[7];
- /* ./parser//parser_prod.nit:1899 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1900 */
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1900);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[9]);
- }
- /* ./parser//parser_prod.nit:1902 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[9]) = fra.me.REG[8];
- /* ./parser//parser_prod.nit:1903 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1904 */
- REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1904);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[9]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos52] = 1;
- return;
-}
-void parser___parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1908;
- fra.me.meth = LOCATE_parser___parser_prod___AExternInitPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:1910 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1911 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1912 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1912);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1913 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1913);
- }
- /* ./parser//parser_prod.nit:1914 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1916 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1918 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1920 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1921 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1922 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1922);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1923 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1923);
- }
- /* ./parser//parser_prod.nit:1924 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1926 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1928 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1930 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1931 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1932 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1932);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1933 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1933);
- }
- /* ./parser//parser_prod.nit:1934 */
- ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1936 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1936);
- }
- /* ./parser//parser_prod.nit:1938 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1940 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser___parser_prod, 1940);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1941 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1942 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1942);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1943 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnew, ID_parser___parser_nodes___TKwnew)) /*cast TKwnew*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1943);
- }
- /* ./parser//parser_prod.nit:1944 */
- ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1946 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1946);
- }
- /* ./parser//parser_prod.nit:1948 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1950 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1951 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1952 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1952);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1953 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1953);
- }
- /* ./parser//parser_prod.nit:1954 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1956 */
- ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1958 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1960 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1961 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1962 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1962);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1963 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1963);
- }
- /* ./parser//parser_prod.nit:1964 */
- ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1966 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1966);
- }
- /* ./parser//parser_prod.nit:1968 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1970 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1971 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1972 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1972);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1973 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1973);
- }
- /* ./parser//parser_prod.nit:1974 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1976 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1978 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:1980 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1981 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1982 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1982);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:1983 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExternCalls, ID_parser___parser_nodes___AExternCalls)) /*cast AExternCalls*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1983);
- }
- /* ./parser//parser_prod.nit:1984 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:1986 */
- ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:1988 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 1992;
- fra.me.meth = LOCATE_parser___parser_prod___AExternInitPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:1992 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:1994 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1995 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1995);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:1997 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:1998 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1998);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2000 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:2001 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser___parser_prod, 2001);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:2002 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2003 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2003);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2005 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:2006 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2007 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2007);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2009 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2010 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExternCalls, ID_parser___parser_nodes___AExternCalls)) /*cast AExternCalls*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2010);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMainMethPropdef___empty_init(val_t p0, int* init_table){
- int itpos53 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMainMethPropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos53]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2015;
- fra.me.meth = LOCATE_parser___parser_prod___AMainMethPropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos53] = 1;
- return;
-}
-void parser___parser_prod___AMainMethPropdef___init_amainmethpropdef(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos54 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMainMethPropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos54]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2017;
- fra.me.meth = LOCATE_parser___parser_prod___AMainMethPropdef___init_amainmethpropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2022 */
- CALL_parser___parser_prod___AMainMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- /* ./parser//parser_prod.nit:2023 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2024 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2025 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2025);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- }
- /* ./parser//parser_prod.nit:2027 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2028 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2029 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2029);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos54] = 1;
- return;
-}
-void parser___parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2033;
- fra.me.meth = LOCATE_parser___parser_prod___AMainMethPropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2035 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2036 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2037 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2037);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2038 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2038);
- }
- /* ./parser//parser_prod.nit:2039 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2041 */
- ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:2043 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2045 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2046 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2047 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2047);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2048 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2048);
- }
- /* ./parser//parser_prod.nit:2049 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2051 */
- ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:2053 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMainMethPropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2057;
- fra.me.meth = LOCATE_parser___parser_prod___AMainMethPropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:2057 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2059 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2060 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2060);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2062 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2063 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2063);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ATypePropdef___empty_init(val_t p0, int* init_table){
- int itpos55 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATypePropdef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos55]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2068;
- fra.me.meth = LOCATE_parser___parser_prod___ATypePropdef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos55] = 1;
- return;
-}
-void parser___parser_prod___ATypePropdef___init_atypepropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
- int itpos56 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATypePropdef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos56]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2070;
- fra.me.meth = LOCATE_parser___parser_prod___ATypePropdef___init_atypepropdef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 8;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- /* ./parser//parser_prod.nit:2070 */
- fra.me.REG[7] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2079 */
- CALL_parser___parser_prod___ATypePropdef___empty_init(fra.me.REG[7])(fra.me.REG[7], init_table);
- /* ./parser//parser_prod.nit:2080 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[7]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2081 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2082 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2082);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:2084 */
- ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[7]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2085 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2086 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2086);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:2088 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2088);
- }
- ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[7]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:2089 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2089);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:2090 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2090);
- }
- ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[7]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:2091 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2091);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:2092 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2092);
- }
- ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[7]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:2093 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2093);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:2094 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2094);
- }
- ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[7]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:2095 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2095);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
- stack_frame_head = fra.me.prev;
- init_table[itpos56] = 1;
- return;
-}
-void parser___parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2098;
- fra.me.meth = LOCATE_parser___parser_prod___ATypePropdef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2100 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2101 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2102 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2102);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2103 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2103);
- }
- /* ./parser//parser_prod.nit:2104 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2106 */
- ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:2108 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2110 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2111 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2112 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2112);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2113 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2113);
- }
- /* ./parser//parser_prod.nit:2114 */
- ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2116 */
- ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:2118 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2120 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 2120);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2121 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2122 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2122);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2123 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2123);
- }
- /* ./parser//parser_prod.nit:2124 */
- ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2126 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2126);
- }
- /* ./parser//parser_prod.nit:2128 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2130 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwtype", LOCATE_parser___parser_prod, 2130);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2131 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2132 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2132);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2133 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwtype, ID_parser___parser_nodes___TKwtype)) /*cast TKwtype*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2133);
- }
- /* ./parser//parser_prod.nit:2134 */
- ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2136 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2136);
- }
- /* ./parser//parser_prod.nit:2138 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2140 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2140);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2141 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2142 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2142);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2143 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2143);
- }
- /* ./parser//parser_prod.nit:2144 */
- ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2146 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2146);
- }
- /* ./parser//parser_prod.nit:2148 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2150 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 2150);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2151 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2152 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2152);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2153 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2153);
- }
- /* ./parser//parser_prod.nit:2154 */
- ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2156 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2156);
- }
- /* ./parser//parser_prod.nit:2158 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ATypePropdef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2162;
- fra.me.meth = LOCATE_parser___parser_prod___ATypePropdef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:2162 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2164 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2165 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2165);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2167 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2168 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2168);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2170 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 2170);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:2171 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwtype", LOCATE_parser___parser_prod, 2171);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:2172 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2172);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:2173 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 2173);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AReadAble___empty_init(val_t p0, int* init_table){
- int itpos57 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AReadAble].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos57]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2177;
- fra.me.meth = LOCATE_parser___parser_prod___AReadAble___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos57] = 1;
- return;
-}
-void parser___parser_prod___AReadAble___init_areadable(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos58 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AReadAble].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos58]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2179;
- fra.me.meth = LOCATE_parser___parser_prod___AReadAble___init_areadable;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2179 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2184 */
- CALL_parser___parser_prod___AReadAble___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:2185 */
- ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2186 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2187 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2187);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2189 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2189);
- }
- ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2190 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2190);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos58] = 1;
- return;
-}
-void parser___parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2193;
- fra.me.meth = LOCATE_parser___parser_prod___AReadAble___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2195 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2196 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2197 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2197);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2198 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2198);
- }
- /* ./parser//parser_prod.nit:2199 */
- ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2201 */
- ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:2203 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2205 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwreadable", LOCATE_parser___parser_prod, 2205);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2206 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2207 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2207);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2208 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwreadable, ID_parser___parser_nodes___TKwreadable)) /*cast TKwreadable*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2208);
- }
- /* ./parser//parser_prod.nit:2209 */
- ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2211 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2211);
- }
- /* ./parser//parser_prod.nit:2213 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AReadAble___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2217;
- fra.me.meth = LOCATE_parser___parser_prod___AReadAble___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:2217 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2219 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2220 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2220);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2222 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwreadable", LOCATE_parser___parser_prod, 2222);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AWriteAble___empty_init(val_t p0, int* init_table){
- int itpos59 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AWriteAble].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos59]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2226;
- fra.me.meth = LOCATE_parser___parser_prod___AWriteAble___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos59] = 1;
- return;
-}
-void parser___parser_prod___AWriteAble___init_awriteable(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos60 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AWriteAble].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos60]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2228;
- fra.me.meth = LOCATE_parser___parser_prod___AWriteAble___init_awriteable;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:2228 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2234 */
- CALL_parser___parser_prod___AWriteAble___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:2235 */
- ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2236 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2237 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2237);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:2239 */
- ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2240 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2241 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2241);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:2243 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2243);
- }
- ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:2244 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2244);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos60] = 1;
- return;
-}
-void parser___parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2247;
- fra.me.meth = LOCATE_parser___parser_prod___AWriteAble___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2249 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2250 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2251 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2251);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2252 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2252);
- }
- /* ./parser//parser_prod.nit:2253 */
- ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2255 */
- ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:2257 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2259 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2260 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2261 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2261);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2262 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2262);
- }
- /* ./parser//parser_prod.nit:2263 */
- ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2265 */
- ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:2267 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2269 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwwritable", LOCATE_parser___parser_prod, 2269);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2270 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2271 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2271);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2272 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwwritable, ID_parser___parser_nodes___TKwwritable)) /*cast TKwwritable*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2272);
- }
- /* ./parser//parser_prod.nit:2273 */
- ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2275 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2275);
- }
- /* ./parser//parser_prod.nit:2277 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AWriteAble___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2281;
- fra.me.meth = LOCATE_parser___parser_prod___AWriteAble___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:2281 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2283 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2284 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2284);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2286 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2287 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2287);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2289 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwwritable", LOCATE_parser___parser_prod, 2289);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIdMethid___empty_init(val_t p0, int* init_table){
- int itpos61 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIdMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos61]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2293;
- fra.me.meth = LOCATE_parser___parser_prod___AIdMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos61] = 1;
- return;
-}
-void parser___parser_prod___AIdMethid___init_aidmethid(val_t p0, val_t p1, int* init_table){
- int itpos62 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIdMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2295;
- fra.me.meth = LOCATE_parser___parser_prod___AIdMethid___init_aidmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2295 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2299 */
- CALL_parser___parser_prod___AIdMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2300 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2300);
- }
- ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2301 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2301);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos62] = 1;
- return;
-}
-void parser___parser_prod___AIdMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2304;
- fra.me.meth = LOCATE_parser___parser_prod___AIdMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2306 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2306);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2307 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2308 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2308);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2309 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2309);
- }
- /* ./parser//parser_prod.nit:2310 */
- ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2312 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2312);
- }
- /* ./parser//parser_prod.nit:2314 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIdMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2318;
- fra.me.meth = LOCATE_parser___parser_prod___AIdMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2320 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2320);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APlusMethid___empty_init(val_t p0, int* init_table){
- int itpos63 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos63]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2324;
- fra.me.meth = LOCATE_parser___parser_prod___APlusMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos63] = 1;
- return;
-}
-void parser___parser_prod___APlusMethid___init_aplusmethid(val_t p0, val_t p1, int* init_table){
- int itpos64 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2326;
- fra.me.meth = LOCATE_parser___parser_prod___APlusMethid___init_aplusmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2326 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2330 */
- CALL_parser___parser_prod___APlusMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2331 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2331);
- }
- ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2332 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2332);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos64] = 1;
- return;
-}
-void parser___parser_prod___APlusMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2335;
- fra.me.meth = LOCATE_parser___parser_prod___APlusMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2337 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_plus", LOCATE_parser___parser_prod, 2337);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2338 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2339 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2339);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2340 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TPlus, ID_parser___parser_nodes___TPlus)) /*cast TPlus*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2340);
- }
- /* ./parser//parser_prod.nit:2341 */
- ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2343 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2343);
- }
- /* ./parser//parser_prod.nit:2345 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APlusMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2349;
- fra.me.meth = LOCATE_parser___parser_prod___APlusMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2351 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_plus", LOCATE_parser___parser_prod, 2351);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMinusMethid___empty_init(val_t p0, int* init_table){
- int itpos65 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos65]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2355;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos65] = 1;
- return;
-}
-void parser___parser_prod___AMinusMethid___init_aminusmethid(val_t p0, val_t p1, int* init_table){
- int itpos66 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2357;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusMethid___init_aminusmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2357 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2361 */
- CALL_parser___parser_prod___AMinusMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2362 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2362);
- }
- ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2363 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2363);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos66] = 1;
- return;
-}
-void parser___parser_prod___AMinusMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2366;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2368 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser___parser_prod, 2368);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2369 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2370 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2370);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2371 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TMinus, ID_parser___parser_nodes___TMinus)) /*cast TMinus*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2371);
- }
- /* ./parser//parser_prod.nit:2372 */
- ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2374 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2374);
- }
- /* ./parser//parser_prod.nit:2376 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMinusMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2380;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2382 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser___parser_prod, 2382);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStarMethid___empty_init(val_t p0, int* init_table){
- int itpos67 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos67]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2386;
- fra.me.meth = LOCATE_parser___parser_prod___AStarMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos67] = 1;
- return;
-}
-void parser___parser_prod___AStarMethid___init_astarmethid(val_t p0, val_t p1, int* init_table){
- int itpos68 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2388;
- fra.me.meth = LOCATE_parser___parser_prod___AStarMethid___init_astarmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2388 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2392 */
- CALL_parser___parser_prod___AStarMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2393 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2393);
- }
- ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2394 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2394);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos68] = 1;
- return;
-}
-void parser___parser_prod___AStarMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2397;
- fra.me.meth = LOCATE_parser___parser_prod___AStarMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2399 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_star", LOCATE_parser___parser_prod, 2399);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2400 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2401 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2401);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2402 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TStar, ID_parser___parser_nodes___TStar)) /*cast TStar*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2402);
- }
- /* ./parser//parser_prod.nit:2403 */
- ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2405 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2405);
- }
- /* ./parser//parser_prod.nit:2407 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStarMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2411;
- fra.me.meth = LOCATE_parser___parser_prod___AStarMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2413 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_star", LOCATE_parser___parser_prod, 2413);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASlashMethid___empty_init(val_t p0, int* init_table){
- int itpos69 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASlashMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos69]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2417;
- fra.me.meth = LOCATE_parser___parser_prod___ASlashMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos69] = 1;
- return;
-}
-void parser___parser_prod___ASlashMethid___init_aslashmethid(val_t p0, val_t p1, int* init_table){
- int itpos70 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASlashMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2419;
- fra.me.meth = LOCATE_parser___parser_prod___ASlashMethid___init_aslashmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2419 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2423 */
- CALL_parser___parser_prod___ASlashMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2424 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2424);
- }
- ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2425 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2425);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos70] = 1;
- return;
-}
-void parser___parser_prod___ASlashMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2428;
- fra.me.meth = LOCATE_parser___parser_prod___ASlashMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2430 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_slash", LOCATE_parser___parser_prod, 2430);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2431 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2432 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2432);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2433 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TSlash, ID_parser___parser_nodes___TSlash)) /*cast TSlash*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2433);
- }
- /* ./parser//parser_prod.nit:2434 */
- ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2436 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2436);
- }
- /* ./parser//parser_prod.nit:2438 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASlashMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2442;
- fra.me.meth = LOCATE_parser___parser_prod___ASlashMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2444 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_slash", LOCATE_parser___parser_prod, 2444);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APercentMethid___empty_init(val_t p0, int* init_table){
- int itpos71 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APercentMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos71]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2448;
- fra.me.meth = LOCATE_parser___parser_prod___APercentMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos71] = 1;
- return;
-}
-void parser___parser_prod___APercentMethid___init_apercentmethid(val_t p0, val_t p1, int* init_table){
- int itpos72 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APercentMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2450;
- fra.me.meth = LOCATE_parser___parser_prod___APercentMethid___init_apercentmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2450 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2454 */
- CALL_parser___parser_prod___APercentMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2455 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2455);
- }
- ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2456 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2456);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos72] = 1;
- return;
-}
-void parser___parser_prod___APercentMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2459;
- fra.me.meth = LOCATE_parser___parser_prod___APercentMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2461 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_percent", LOCATE_parser___parser_prod, 2461);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2462 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2463 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2463);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2464 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TPercent, ID_parser___parser_nodes___TPercent)) /*cast TPercent*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2464);
- }
- /* ./parser//parser_prod.nit:2465 */
- ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2467 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2467);
- }
- /* ./parser//parser_prod.nit:2469 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APercentMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2473;
- fra.me.meth = LOCATE_parser___parser_prod___APercentMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2475 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_percent", LOCATE_parser___parser_prod, 2475);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEqMethid___empty_init(val_t p0, int* init_table){
- int itpos73 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEqMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos73]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2479;
- fra.me.meth = LOCATE_parser___parser_prod___AEqMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos73] = 1;
- return;
-}
-void parser___parser_prod___AEqMethid___init_aeqmethid(val_t p0, val_t p1, int* init_table){
- int itpos74 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEqMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2481;
- fra.me.meth = LOCATE_parser___parser_prod___AEqMethid___init_aeqmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2481 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2485 */
- CALL_parser___parser_prod___AEqMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2486 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2486);
- }
- ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2487 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2487);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos74] = 1;
- return;
-}
-void parser___parser_prod___AEqMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2490;
- fra.me.meth = LOCATE_parser___parser_prod___AEqMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2492 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_eq", LOCATE_parser___parser_prod, 2492);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2493 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2494 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2494);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2495 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TEq, ID_parser___parser_nodes___TEq)) /*cast TEq*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2495);
- }
- /* ./parser//parser_prod.nit:2496 */
- ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2498 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2498);
- }
- /* ./parser//parser_prod.nit:2500 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEqMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2504;
- fra.me.meth = LOCATE_parser___parser_prod___AEqMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2506 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_eq", LOCATE_parser___parser_prod, 2506);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANeMethid___empty_init(val_t p0, int* init_table){
- int itpos75 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANeMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos75]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2510;
- fra.me.meth = LOCATE_parser___parser_prod___ANeMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos75] = 1;
- return;
-}
-void parser___parser_prod___ANeMethid___init_anemethid(val_t p0, val_t p1, int* init_table){
- int itpos76 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANeMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2512;
- fra.me.meth = LOCATE_parser___parser_prod___ANeMethid___init_anemethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2512 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2516 */
- CALL_parser___parser_prod___ANeMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2517 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2517);
- }
- ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2518 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2518);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos76] = 1;
- return;
-}
-void parser___parser_prod___ANeMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2521;
- fra.me.meth = LOCATE_parser___parser_prod___ANeMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2523 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ne", LOCATE_parser___parser_prod, 2523);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2524 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2525 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2525);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2526 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TNe, ID_parser___parser_nodes___TNe)) /*cast TNe*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2526);
- }
- /* ./parser//parser_prod.nit:2527 */
- ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2529 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2529);
- }
- /* ./parser//parser_prod.nit:2531 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANeMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2535;
- fra.me.meth = LOCATE_parser___parser_prod___ANeMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2537 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ne", LOCATE_parser___parser_prod, 2537);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALeMethid___empty_init(val_t p0, int* init_table){
- int itpos77 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALeMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos77]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2541;
- fra.me.meth = LOCATE_parser___parser_prod___ALeMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos77] = 1;
- return;
-}
-void parser___parser_prod___ALeMethid___init_alemethid(val_t p0, val_t p1, int* init_table){
- int itpos78 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALeMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2543;
- fra.me.meth = LOCATE_parser___parser_prod___ALeMethid___init_alemethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2543 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2547 */
- CALL_parser___parser_prod___ALeMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2548 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2548);
- }
- ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2549 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2549);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos78] = 1;
- return;
-}
-void parser___parser_prod___ALeMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2552;
- fra.me.meth = LOCATE_parser___parser_prod___ALeMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2554 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_le", LOCATE_parser___parser_prod, 2554);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2555 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2556 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2556);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2557 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TLe, ID_parser___parser_nodes___TLe)) /*cast TLe*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2557);
- }
- /* ./parser//parser_prod.nit:2558 */
- ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2560 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2560);
- }
- /* ./parser//parser_prod.nit:2562 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALeMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2566;
- fra.me.meth = LOCATE_parser___parser_prod___ALeMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2568 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_le", LOCATE_parser___parser_prod, 2568);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGeMethid___empty_init(val_t p0, int* init_table){
- int itpos79 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGeMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos79]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2572;
- fra.me.meth = LOCATE_parser___parser_prod___AGeMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos79] = 1;
- return;
-}
-void parser___parser_prod___AGeMethid___init_agemethid(val_t p0, val_t p1, int* init_table){
- int itpos80 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGeMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2574;
- fra.me.meth = LOCATE_parser___parser_prod___AGeMethid___init_agemethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2574 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2578 */
- CALL_parser___parser_prod___AGeMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2579 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2579);
- }
- ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2580 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2580);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos80] = 1;
- return;
-}
-void parser___parser_prod___AGeMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2583;
- fra.me.meth = LOCATE_parser___parser_prod___AGeMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2585 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ge", LOCATE_parser___parser_prod, 2585);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2586 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2587 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2587);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2588 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TGe, ID_parser___parser_nodes___TGe)) /*cast TGe*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2588);
- }
- /* ./parser//parser_prod.nit:2589 */
- ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2591 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2591);
- }
- /* ./parser//parser_prod.nit:2593 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGeMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2597;
- fra.me.meth = LOCATE_parser___parser_prod___AGeMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2599 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ge", LOCATE_parser___parser_prod, 2599);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALtMethid___empty_init(val_t p0, int* init_table){
- int itpos81 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALtMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos81]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2603;
- fra.me.meth = LOCATE_parser___parser_prod___ALtMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos81] = 1;
- return;
-}
-void parser___parser_prod___ALtMethid___init_altmethid(val_t p0, val_t p1, int* init_table){
- int itpos82 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALtMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2605;
- fra.me.meth = LOCATE_parser___parser_prod___ALtMethid___init_altmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2605 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2609 */
- CALL_parser___parser_prod___ALtMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2610 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2610);
- }
- ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2611 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2611);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos82] = 1;
- return;
-}
-void parser___parser_prod___ALtMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2614;
- fra.me.meth = LOCATE_parser___parser_prod___ALtMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2616 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_lt", LOCATE_parser___parser_prod, 2616);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2617 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2618 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2618);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2619 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TLt, ID_parser___parser_nodes___TLt)) /*cast TLt*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2619);
- }
- /* ./parser//parser_prod.nit:2620 */
- ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2622 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2622);
- }
- /* ./parser//parser_prod.nit:2624 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALtMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2628;
- fra.me.meth = LOCATE_parser___parser_prod___ALtMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2630 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_lt", LOCATE_parser___parser_prod, 2630);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGtMethid___empty_init(val_t p0, int* init_table){
- int itpos83 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGtMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos83]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2634;
- fra.me.meth = LOCATE_parser___parser_prod___AGtMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos83] = 1;
- return;
-}
-void parser___parser_prod___AGtMethid___init_agtmethid(val_t p0, val_t p1, int* init_table){
- int itpos84 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGtMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2636;
- fra.me.meth = LOCATE_parser___parser_prod___AGtMethid___init_agtmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2636 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2640 */
- CALL_parser___parser_prod___AGtMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2641 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2641);
- }
- ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2642 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2642);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos84] = 1;
- return;
-}
-void parser___parser_prod___AGtMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2645;
- fra.me.meth = LOCATE_parser___parser_prod___AGtMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2647 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_gt", LOCATE_parser___parser_prod, 2647);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2648 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2649 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2649);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2650 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TGt, ID_parser___parser_nodes___TGt)) /*cast TGt*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2650);
- }
- /* ./parser//parser_prod.nit:2651 */
- ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2653 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2653);
- }
- /* ./parser//parser_prod.nit:2655 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGtMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2659;
- fra.me.meth = LOCATE_parser___parser_prod___AGtMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2661 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_gt", LOCATE_parser___parser_prod, 2661);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALlMethid___empty_init(val_t p0, int* init_table){
- int itpos85 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALlMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos85]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2665;
- fra.me.meth = LOCATE_parser___parser_prod___ALlMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos85] = 1;
- return;
-}
-void parser___parser_prod___ALlMethid___init_allmethid(val_t p0, val_t p1, int* init_table){
- int itpos86 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALlMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2667;
- fra.me.meth = LOCATE_parser___parser_prod___ALlMethid___init_allmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2667 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2671 */
- CALL_parser___parser_prod___ALlMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2672 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2672);
- }
- ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2673 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2673);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos86] = 1;
- return;
-}
-void parser___parser_prod___ALlMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2676;
- fra.me.meth = LOCATE_parser___parser_prod___ALlMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2678 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ll", LOCATE_parser___parser_prod, 2678);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2679 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2680 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2680);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2681 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TLl, ID_parser___parser_nodes___TLl)) /*cast TLl*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2681);
- }
- /* ./parser//parser_prod.nit:2682 */
- ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2684 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2684);
- }
- /* ./parser//parser_prod.nit:2686 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALlMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2690;
- fra.me.meth = LOCATE_parser___parser_prod___ALlMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2692 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ll", LOCATE_parser___parser_prod, 2692);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGgMethid___empty_init(val_t p0, int* init_table){
- int itpos87 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGgMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos87]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2696;
- fra.me.meth = LOCATE_parser___parser_prod___AGgMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos87] = 1;
- return;
-}
-void parser___parser_prod___AGgMethid___init_aggmethid(val_t p0, val_t p1, int* init_table){
- int itpos88 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGgMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2698;
- fra.me.meth = LOCATE_parser___parser_prod___AGgMethid___init_aggmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2698 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2702 */
- CALL_parser___parser_prod___AGgMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2703 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2703);
- }
- ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2704 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2704);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos88] = 1;
- return;
-}
-void parser___parser_prod___AGgMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2707;
- fra.me.meth = LOCATE_parser___parser_prod___AGgMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2709 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_gg", LOCATE_parser___parser_prod, 2709);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2710 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2711 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2711);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2712 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TGg, ID_parser___parser_nodes___TGg)) /*cast TGg*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2712);
- }
- /* ./parser//parser_prod.nit:2713 */
- ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2715 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2715);
- }
- /* ./parser//parser_prod.nit:2717 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGgMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2721;
- fra.me.meth = LOCATE_parser___parser_prod___AGgMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2723 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_gg", LOCATE_parser___parser_prod, 2723);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABraMethid___empty_init(val_t p0, int* init_table){
- int itpos89 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos89]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2727;
- fra.me.meth = LOCATE_parser___parser_prod___ABraMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos89] = 1;
- return;
-}
-void parser___parser_prod___ABraMethid___init_abramethid(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos90 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2729;
- fra.me.meth = LOCATE_parser___parser_prod___ABraMethid___init_abramethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2729 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2734 */
- CALL_parser___parser_prod___ABraMethid___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:2735 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2735);
- }
- ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2736 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2736);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:2737 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2737);
- }
- ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2738 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2738);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos90] = 1;
- return;
-}
-void parser___parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2741;
- fra.me.meth = LOCATE_parser___parser_prod___ABraMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2743 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser___parser_prod, 2743);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2744 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2745 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2745);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2746 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TObra, ID_parser___parser_nodes___TObra)) /*cast TObra*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2746);
- }
- /* ./parser//parser_prod.nit:2747 */
- ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2749 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2749);
- }
- /* ./parser//parser_prod.nit:2751 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2753 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser___parser_prod, 2753);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2754 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2755 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2755);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2756 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TCbra, ID_parser___parser_nodes___TCbra)) /*cast TCbra*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2756);
- }
- /* ./parser//parser_prod.nit:2757 */
- ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2759 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2759);
- }
- /* ./parser//parser_prod.nit:2761 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABraMethid___visit_all(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___parser_prod;
- fra.me.line = 2765;
- fra.me.meth = LOCATE_parser___parser_prod___ABraMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2767 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser___parser_prod, 2767);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:2768 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser___parser_prod, 2768);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStarshipMethid___empty_init(val_t p0, int* init_table){
- int itpos91 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarshipMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos91]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2772;
- fra.me.meth = LOCATE_parser___parser_prod___AStarshipMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos91] = 1;
- return;
-}
-void parser___parser_prod___AStarshipMethid___init_astarshipmethid(val_t p0, val_t p1, int* init_table){
- int itpos92 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarshipMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 2774;
- fra.me.meth = LOCATE_parser___parser_prod___AStarshipMethid___init_astarshipmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2774 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2778 */
- CALL_parser___parser_prod___AStarshipMethid___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:2779 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2779);
- }
- ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2780 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2780);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos92] = 1;
- return;
-}
-void parser___parser_prod___AStarshipMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2783;
- fra.me.meth = LOCATE_parser___parser_prod___AStarshipMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2785 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_starship", LOCATE_parser___parser_prod, 2785);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2786 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2787 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2787);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2788 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TStarship, ID_parser___parser_nodes___TStarship)) /*cast TStarship*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2788);
- }
- /* ./parser//parser_prod.nit:2789 */
- ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2791 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2791);
- }
- /* ./parser//parser_prod.nit:2793 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStarshipMethid___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2797;
- fra.me.meth = LOCATE_parser___parser_prod___AStarshipMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:2799 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_starship", LOCATE_parser___parser_prod, 2799);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAssignMethid___empty_init(val_t p0, int* init_table){
- int itpos93 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAssignMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos93]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2803;
- fra.me.meth = LOCATE_parser___parser_prod___AAssignMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos93] = 1;
- return;
-}
-void parser___parser_prod___AAssignMethid___init_aassignmethid(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos94 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAssignMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2805;
- fra.me.meth = LOCATE_parser___parser_prod___AAssignMethid___init_aassignmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2805 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2810 */
- CALL_parser___parser_prod___AAssignMethid___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:2811 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2811);
- }
- ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2812 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2812);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:2813 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2813);
- }
- ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2814 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2814);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos94] = 1;
- return;
-}
-void parser___parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2817;
- fra.me.meth = LOCATE_parser___parser_prod___AAssignMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2819 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2819);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2820 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2821 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2821);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2822 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2822);
- }
- /* ./parser//parser_prod.nit:2823 */
- ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2825 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2825);
- }
- /* ./parser//parser_prod.nit:2827 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2829 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 2829);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2830 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2831 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2831);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2832 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2832);
- }
- /* ./parser//parser_prod.nit:2833 */
- ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2835 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2835);
- }
- /* ./parser//parser_prod.nit:2837 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAssignMethid___visit_all(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___parser_prod;
- fra.me.line = 2841;
- fra.me.meth = LOCATE_parser___parser_prod___AAssignMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2843 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2843);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:2844 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 2844);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABraassignMethid___empty_init(val_t p0, int* init_table){
- int itpos95 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraassignMethid].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos95]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2848;
- fra.me.meth = LOCATE_parser___parser_prod___ABraassignMethid___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos95] = 1;
- return;
-}
-void parser___parser_prod___ABraassignMethid___init_abraassignmethid(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos96 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraassignMethid].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 2850;
- fra.me.meth = LOCATE_parser___parser_prod___ABraassignMethid___init_abraassignmethid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:2850 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2856 */
- CALL_parser___parser_prod___ABraassignMethid___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:2857 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2857);
- }
- ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2858 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2858);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:2859 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2859);
- }
- ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2860 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2860);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:2861 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2861);
- }
- ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:2862 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2862);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos96] = 1;
- return;
-}
-void parser___parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2865;
- fra.me.meth = LOCATE_parser___parser_prod___ABraassignMethid___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2867 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser___parser_prod, 2867);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2868 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2869 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2869);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2870 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TObra, ID_parser___parser_nodes___TObra)) /*cast TObra*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2870);
- }
- /* ./parser//parser_prod.nit:2871 */
- ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2873 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2873);
- }
- /* ./parser//parser_prod.nit:2875 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2877 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser___parser_prod, 2877);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2878 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2879 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2879);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2880 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TCbra, ID_parser___parser_nodes___TCbra)) /*cast TCbra*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2880);
- }
- /* ./parser//parser_prod.nit:2881 */
- ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2883 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2883);
- }
- /* ./parser//parser_prod.nit:2885 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2887 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 2887);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2888 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2889 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2889);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2890 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2890);
- }
- /* ./parser//parser_prod.nit:2891 */
- ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2893 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2893);
- }
- /* ./parser//parser_prod.nit:2895 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABraassignMethid___visit_all(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___parser_prod;
- fra.me.line = 2899;
- fra.me.meth = LOCATE_parser___parser_prod___ABraassignMethid___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:2901 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser___parser_prod, 2901);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:2902 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser___parser_prod, 2902);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:2903 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 2903);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASignature___empty_init(val_t p0, int* init_table){
- int itpos97 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASignature].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos97]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2907;
- fra.me.meth = LOCATE_parser___parser_prod___ASignature___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos97] = 1;
- return;
-}
-void parser___parser_prod___ASignature___init_asignature(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos98 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASignature].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos98]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2909;
- fra.me.meth = LOCATE_parser___parser_prod___ASignature___init_asignature;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:2915 */
- CALL_parser___parser_prod___ASignature___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASignature___init_asignature_1));
- /* ./parser//parser_prod.nit:2921 */
- ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2922 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2923 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2923);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- }
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASignature___init_asignature_2));
- stack_frame_head = fra.me.prev;
- init_table[itpos98] = 1;
- return;
-}
- void OC_parser___parser_prod___ASignature___init_asignature_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:2916 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ASignature___init_asignature;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:2917 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AParam, ID_parser___parser_nodes___AParam)) /*cast AParam*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2917);
- }
- /* ./parser//parser_prod.nit:2918 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2918);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ASignature____n_params(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2919 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___ASignature___init_asignature_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:2925 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ASignature___init_asignature;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:2926 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClosureDecl, ID_parser___parser_nodes___AClosureDecl)) /*cast AClosureDecl*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2926);
- }
- /* ./parser//parser_prod.nit:2927 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2927);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2928 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2932;
- fra.me.meth = LOCATE_parser___parser_prod___ASignature___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:2934 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2934);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:2934 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:2935 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2935);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:2936 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:2937 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AParam, ID_parser___parser_nodes___AParam)) /*cast AParam*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2937);
- }
- /* ./parser//parser_prod.nit:2938 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2938);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:2939 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2939);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:2941 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2941);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:2943 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:2946 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2947 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2948 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2948);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:2949 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2949);
- }
- /* ./parser//parser_prod.nit:2950 */
- ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:2952 */
- ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:2954 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:2956 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2956);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:2956 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:2957 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2957);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:2958 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:2959 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureDecl, ID_parser___parser_nodes___AClosureDecl)) /*cast AClosureDecl*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2959);
- }
- /* ./parser//parser_prod.nit:2960 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2960);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:2961 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2961);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:2963 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2963);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:2965 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label3;
- }
- }
- label3: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASignature___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 2970;
- fra.me.meth = LOCATE_parser___parser_prod___ASignature___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:2970 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2972 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2972);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASignature___visit_all_1));
- /* ./parser//parser_prod.nit:2975 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2976 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2976);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:2978 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2978);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASignature___visit_all_2));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ASignature___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ASignature___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:2973 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___ASignature___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ASignature___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:2979 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AParam___empty_init(val_t p0, int* init_table){
- int itpos99 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AParam].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos99]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2984;
- fra.me.meth = LOCATE_parser___parser_prod___AParam___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos99] = 1;
- return;
-}
-void parser___parser_prod___AParam___init_aparam(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos100 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AParam].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos100]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 2986;
- fra.me.meth = LOCATE_parser___parser_prod___AParam___init_aparam;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:2986 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:2992 */
- CALL_parser___parser_prod___AParam___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:2993 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2993);
- }
- ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:2994 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2994);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:2995 */
- ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:2996 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:2997 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2997);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:2999 */
- ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3000 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3001 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3001);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos100] = 1;
- return;
-}
-void parser___parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3005;
- fra.me.meth = LOCATE_parser___parser_prod___AParam___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3007 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3007);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3008 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3009 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3009);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3010 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3010);
- }
- /* ./parser//parser_prod.nit:3011 */
- ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3013 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3013);
- }
- /* ./parser//parser_prod.nit:3015 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3017 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3018 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3019 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3019);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3020 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3020);
- }
- /* ./parser//parser_prod.nit:3021 */
- ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3023 */
- ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3025 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3027 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3028 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3029 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3029);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3030 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TDotdotdot, ID_parser___parser_nodes___TDotdotdot)) /*cast TDotdotdot*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3030);
- }
- /* ./parser//parser_prod.nit:3031 */
- ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3033 */
- ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3035 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AParam___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3039;
- fra.me.meth = LOCATE_parser___parser_prod___AParam___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3039 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3041 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3041);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3042 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3043 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3043);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3045 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3046 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TDotdotdot, ID_parser___parser_nodes___TDotdotdot)) /*cast TDotdotdot*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3046);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AClosureDecl___empty_init(val_t p0, int* init_table){
- int itpos101 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureDecl].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos101]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3051;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDecl___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos101] = 1;
- return;
-}
-void parser___parser_prod___AClosureDecl___init_aclosuredecl(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
- int itpos102 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureDecl].i;
- struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos102]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3053;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDecl___init_aclosuredecl;
- fra.me.has_broke = 0;
- fra.me.REG_size = 7;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- /* ./parser//parser_prod.nit:3053 */
- fra.me.REG[6] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3061 */
- CALL_parser___parser_prod___AClosureDecl___empty_init(fra.me.REG[6])(fra.me.REG[6], init_table);
- /* ./parser//parser_prod.nit:3062 */
- ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[6]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3063 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3064 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3064);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- }
- /* ./parser//parser_prod.nit:3066 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3066);
- }
- ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[6]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3067 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3067);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:3068 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3068);
- }
- ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[6]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3069 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3069);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:3070 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3070);
- }
- ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[6]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:3071 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3071);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:3072 */
- ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[6]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:3073 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3074 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3074);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos102] = 1;
- return;
-}
-void parser___parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3078;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDecl___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3080 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3081 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3082 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3082);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3083 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwbreak, ID_parser___parser_nodes___TKwbreak)) /*cast TKwbreak*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3083);
- }
- /* ./parser//parser_prod.nit:3084 */
- ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3086 */
- ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3088 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3090 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser___parser_prod, 3090);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3091 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3092 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3092);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3093 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TBang, ID_parser___parser_nodes___TBang)) /*cast TBang*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3093);
- }
- /* ./parser//parser_prod.nit:3094 */
- ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3096 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3096);
- }
- /* ./parser//parser_prod.nit:3098 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3100 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3100);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3101 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3102 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3102);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3103 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3103);
- }
- /* ./parser//parser_prod.nit:3104 */
- ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3106 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3106);
- }
- /* ./parser//parser_prod.nit:3108 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3110 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_signature", LOCATE_parser___parser_prod, 3110);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3111 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3112 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3112);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3113 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3113);
- }
- /* ./parser//parser_prod.nit:3114 */
- ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3116 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3116);
- }
- /* ./parser//parser_prod.nit:3118 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3120 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3121 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3122 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3122);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3123 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3123);
- }
- /* ./parser//parser_prod.nit:3124 */
- ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3126 */
- ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3128 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AClosureDecl___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3132;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDecl___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3132 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3134 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3135 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwbreak, ID_parser___parser_nodes___TKwbreak)) /*cast TKwbreak*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3135);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3137 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser___parser_prod, 3137);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3138 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3138);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3139 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_signature", LOCATE_parser___parser_prod, 3139);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3140 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3141 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3141);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AType___empty_init(val_t p0, int* init_table){
- int itpos103 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AType].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos103]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3146;
- fra.me.meth = LOCATE_parser___parser_prod___AType___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos103] = 1;
- return;
-}
-void parser___parser_prod___AType___init_atype(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos104 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AType].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos104]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3148;
- fra.me.meth = LOCATE_parser___parser_prod___AType___init_atype;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:3148 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3154 */
- CALL_parser___parser_prod___AType___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:3155 */
- ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3156 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3157 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3157);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:3159 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3159);
- }
- ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3160 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3160);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AType___init_atype_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos104] = 1;
- return;
-}
- void OC_parser___parser_prod___AType___init_atype_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:3161 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AType___init_atype;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:3162 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3162);
- }
- /* ./parser//parser_prod.nit:3163 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(closctx->REG[4])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3163);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AType____n_types(closctx->REG[4]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3164 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[4]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3168;
- fra.me.meth = LOCATE_parser___parser_prod___AType___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3170 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3171 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3172 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3172);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3173 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnullable, ID_parser___parser_nodes___TKwnullable)) /*cast TKwnullable*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3173);
- }
- /* ./parser//parser_prod.nit:3174 */
- ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3176 */
- ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3178 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3180 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3180);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3181 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3182 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3182);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3183 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3183);
- }
- /* ./parser//parser_prod.nit:3184 */
- ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3186 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3186);
- }
- /* ./parser//parser_prod.nit:3188 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3190 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3190);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:3190 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:3191 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3191);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:3192 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:3193 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3193);
- }
- /* ./parser//parser_prod.nit:3194 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3194);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:3195 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3195);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:3197 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3197);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:3199 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AType___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3204;
- fra.me.meth = LOCATE_parser___parser_prod___AType___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3204 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3206 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3207 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwnullable, ID_parser___parser_nodes___TKwnullable)) /*cast TKwnullable*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3207);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3209 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3209);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3210 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3210);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AType___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AType___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AType___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:3211 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ALabel___empty_init(val_t p0, int* init_table){
- int itpos105 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALabel].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos105]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3216;
- fra.me.meth = LOCATE_parser___parser_prod___ALabel___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos105] = 1;
- return;
-}
-void parser___parser_prod___ALabel___init_alabel(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos106 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALabel].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3218;
- fra.me.meth = LOCATE_parser___parser_prod___ALabel___init_alabel;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3218 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3223 */
- CALL_parser___parser_prod___ALabel___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:3224 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3224);
- }
- ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3225 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3225);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3226 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3226);
- }
- ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3227 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3227);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos106] = 1;
- return;
-}
-void parser___parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3230;
- fra.me.meth = LOCATE_parser___parser_prod___ALabel___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3232 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwlabel", LOCATE_parser___parser_prod, 3232);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3233 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3234 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3234);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3235 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwlabel, ID_parser___parser_nodes___TKwlabel)) /*cast TKwlabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3235);
- }
- /* ./parser//parser_prod.nit:3236 */
- ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3238 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3238);
- }
- /* ./parser//parser_prod.nit:3240 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3242 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3242);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3243 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3244 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3244);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3245 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3245);
- }
- /* ./parser//parser_prod.nit:3246 */
- ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3248 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3248);
- }
- /* ./parser//parser_prod.nit:3250 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALabel___visit_all(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___parser_prod;
- fra.me.line = 3254;
- fra.me.meth = LOCATE_parser___parser_prod___ALabel___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:3256 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwlabel", LOCATE_parser___parser_prod, 3256);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:3257 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3257);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABlockExpr___empty_init(val_t p0, int* init_table){
- int itpos107 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABlockExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos107]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3261;
- fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos107] = 1;
- return;
-}
-void parser___parser_prod___ABlockExpr___init_ablockexpr(val_t p0, val_t p1, int* init_table){
- int itpos108 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABlockExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- if (init_table[itpos108]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3263;
- fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___init_ablockexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:3267 */
- CALL_parser___parser_prod___ABlockExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABlockExpr___init_ablockexpr_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos108] = 1;
- return;
-}
- void OC_parser___parser_prod___ABlockExpr___init_ablockexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:3268 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___init_ablockexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:3269 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3269);
- }
- /* ./parser//parser_prod.nit:3270 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3270);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3271 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ABlockExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3275;
- fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3277 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3277);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:3277 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:3278 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3278);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:3279 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:3280 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3280);
- }
- /* ./parser//parser_prod.nit:3281 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3281);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:3282 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3282);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:3284 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3284);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:3286 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABlockExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3291;
- fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:3293 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3293);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABlockExpr___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ABlockExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:3294 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AVardeclExpr___empty_init(val_t p0, int* init_table){
- int itpos109 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVardeclExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos109]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3299;
- fra.me.meth = LOCATE_parser___parser_prod___AVardeclExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos109] = 1;
- return;
-}
-void parser___parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
- int itpos110 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVardeclExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos110]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3301;
- fra.me.meth = LOCATE_parser___parser_prod___AVardeclExpr___init_avardeclexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 7;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- /* ./parser//parser_prod.nit:3301 */
- fra.me.REG[6] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3309 */
- CALL_parser___parser_prod___AVardeclExpr___empty_init(fra.me.REG[6])(fra.me.REG[6], init_table);
- /* ./parser//parser_prod.nit:3310 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3310);
- }
- ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[6]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3311 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3311);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:3312 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3312);
- }
- ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[6]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3313 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3313);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:3314 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[6]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3315 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3316 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3316);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[6]);
- }
- /* ./parser//parser_prod.nit:3318 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[6]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:3319 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3320 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3320);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[6]);
- }
- /* ./parser//parser_prod.nit:3322 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[6]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:3323 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3324 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3324);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos110] = 1;
- return;
-}
-void parser___parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3328;
- fra.me.meth = LOCATE_parser___parser_prod___AVardeclExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3330 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser___parser_prod, 3330);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3331 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3332 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3332);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3333 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwvar, ID_parser___parser_nodes___TKwvar)) /*cast TKwvar*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3333);
- }
- /* ./parser//parser_prod.nit:3334 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3336 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3336);
- }
- /* ./parser//parser_prod.nit:3338 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3340 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3340);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3341 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3342 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3342);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3343 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3343);
- }
- /* ./parser//parser_prod.nit:3344 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3346 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3346);
- }
- /* ./parser//parser_prod.nit:3348 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3350 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3351 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3352 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3352);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3353 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3353);
- }
- /* ./parser//parser_prod.nit:3354 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3356 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3358 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3360 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3361 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3362 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3362);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3363 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3363);
- }
- /* ./parser//parser_prod.nit:3364 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3366 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3368 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3370 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3371 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3372 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3372);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3373 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3373);
- }
- /* ./parser//parser_prod.nit:3374 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3376 */
- ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3378 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AVardeclExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3382;
- fra.me.meth = LOCATE_parser___parser_prod___AVardeclExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3382 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3384 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser___parser_prod, 3384);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3385 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3385);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3386 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3387 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3387);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3389 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3390 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3390);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3392 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3393 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3393);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AReturnExpr___empty_init(val_t p0, int* init_table){
- int itpos111 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AReturnExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos111]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3398;
- fra.me.meth = LOCATE_parser___parser_prod___AReturnExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos111] = 1;
- return;
-}
-void parser___parser_prod___AReturnExpr___init_areturnexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos112 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AReturnExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos112]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3400;
- fra.me.meth = LOCATE_parser___parser_prod___AReturnExpr___init_areturnexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:3405 */
- CALL_parser___parser_prod___AReturnExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- /* ./parser//parser_prod.nit:3406 */
- ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3407 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3408 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3408);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- }
- /* ./parser//parser_prod.nit:3410 */
- ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3411 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3412 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3412);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos112] = 1;
- return;
-}
-void parser___parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3416;
- fra.me.meth = LOCATE_parser___parser_prod___AReturnExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3418 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3419 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3420 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3420);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3421 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwreturn, ID_parser___parser_nodes___TKwreturn)) /*cast TKwreturn*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3421);
- }
- /* ./parser//parser_prod.nit:3422 */
- ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3424 */
- ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3426 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3428 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3429 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3430 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3430);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3431 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3431);
- }
- /* ./parser//parser_prod.nit:3432 */
- ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3434 */
- ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3436 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AReturnExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3440;
- fra.me.meth = LOCATE_parser___parser_prod___AReturnExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3440 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3442 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3443 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwreturn, ID_parser___parser_nodes___TKwreturn)) /*cast TKwreturn*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3443);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3445 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3446 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3446);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABreakExpr___empty_init(val_t p0, int* init_table){
- int itpos113 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABreakExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos113]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3451;
- fra.me.meth = LOCATE_parser___parser_prod___ABreakExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos113] = 1;
- return;
-}
-void parser___parser_prod___ABreakExpr___init_abreakexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos114 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABreakExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos114]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3453;
- fra.me.meth = LOCATE_parser___parser_prod___ABreakExpr___init_abreakexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:3453 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3459 */
- CALL_parser___parser_prod___ABreakExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:3460 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3460);
- }
- ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3461 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3461);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:3462 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3463 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3464 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3464);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:3466 */
- ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3467 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3468 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3468);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos114] = 1;
- return;
-}
-void parser___parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3472;
- fra.me.meth = LOCATE_parser___parser_prod___ABreakExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3474 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser___parser_prod, 3474);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3475 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3476 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3476);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3477 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwbreak, ID_parser___parser_nodes___TKwbreak)) /*cast TKwbreak*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3477);
- }
- /* ./parser//parser_prod.nit:3478 */
- ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3480 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3480);
- }
- /* ./parser//parser_prod.nit:3482 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3484 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3485 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3486 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3486);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3487 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3487);
- }
- /* ./parser//parser_prod.nit:3488 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3490 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3492 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3494 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3495 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3496 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3496);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3497 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3497);
- }
- /* ./parser//parser_prod.nit:3498 */
- ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3500 */
- ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3502 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABreakExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3506;
- fra.me.meth = LOCATE_parser___parser_prod___ABreakExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3506 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3508 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser___parser_prod, 3508);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3509 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3510 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3510);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3512 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3513 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3513);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAbortExpr___empty_init(val_t p0, int* init_table){
- int itpos115 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAbortExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos115]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3518;
- fra.me.meth = LOCATE_parser___parser_prod___AAbortExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos115] = 1;
- return;
-}
-void parser___parser_prod___AAbortExpr___init_aabortexpr(val_t p0, val_t p1, int* init_table){
- int itpos116 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAbortExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 3520;
- fra.me.meth = LOCATE_parser___parser_prod___AAbortExpr___init_aabortexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:3520 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3524 */
- CALL_parser___parser_prod___AAbortExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:3525 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3525);
- }
- ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3526 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3526);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos116] = 1;
- return;
-}
-void parser___parser_prod___AAbortExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3529;
- fra.me.meth = LOCATE_parser___parser_prod___AAbortExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3531 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwabort", LOCATE_parser___parser_prod, 3531);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3532 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3533 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3533);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3534 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwabort, ID_parser___parser_nodes___TKwabort)) /*cast TKwabort*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3534);
- }
- /* ./parser//parser_prod.nit:3535 */
- ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3537 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3537);
- }
- /* ./parser//parser_prod.nit:3539 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAbortExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3543;
- fra.me.meth = LOCATE_parser___parser_prod___AAbortExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:3545 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwabort", LOCATE_parser___parser_prod, 3545);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AContinueExpr___empty_init(val_t p0, int* init_table){
- int itpos117 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AContinueExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos117]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3549;
- fra.me.meth = LOCATE_parser___parser_prod___AContinueExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos117] = 1;
- return;
-}
-void parser___parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos118 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AContinueExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos118]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3551;
- fra.me.meth = LOCATE_parser___parser_prod___AContinueExpr___init_acontinueexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:3557 */
- CALL_parser___parser_prod___AContinueExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- /* ./parser//parser_prod.nit:3558 */
- ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3559 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3560 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3560);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- }
- /* ./parser//parser_prod.nit:3562 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3563 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3564 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3564);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- }
- /* ./parser//parser_prod.nit:3566 */
- ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3567 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3568 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3568);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos118] = 1;
- return;
-}
-void parser___parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3572;
- fra.me.meth = LOCATE_parser___parser_prod___AContinueExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3574 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3575 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3576 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3576);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3577 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwcontinue, ID_parser___parser_nodes___TKwcontinue)) /*cast TKwcontinue*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3577);
- }
- /* ./parser//parser_prod.nit:3578 */
- ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3580 */
- ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3582 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3584 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3585 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3586 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3586);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3587 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3587);
- }
- /* ./parser//parser_prod.nit:3588 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3590 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3592 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3594 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3595 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3596 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3596);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3597 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3597);
- }
- /* ./parser//parser_prod.nit:3598 */
- ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3600 */
- ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3602 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AContinueExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3606;
- fra.me.meth = LOCATE_parser___parser_prod___AContinueExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3606 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3608 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3609 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwcontinue, ID_parser___parser_nodes___TKwcontinue)) /*cast TKwcontinue*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3609);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3611 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3612 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3612);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3614 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3615 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3615);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ADoExpr___empty_init(val_t p0, int* init_table){
- int itpos119 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADoExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos119]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3620;
- fra.me.meth = LOCATE_parser___parser_prod___ADoExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos119] = 1;
- return;
-}
-void parser___parser_prod___ADoExpr___init_adoexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos120 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADoExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos120]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3622;
- fra.me.meth = LOCATE_parser___parser_prod___ADoExpr___init_adoexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:3622 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3628 */
- CALL_parser___parser_prod___ADoExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:3629 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3629);
- }
- ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3630 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3630);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:3631 */
- ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3632 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3633 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3633);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:3635 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3636 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3637 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3637);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos120] = 1;
- return;
-}
-void parser___parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3641;
- fra.me.meth = LOCATE_parser___parser_prod___ADoExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3643 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 3643);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3644 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3645 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3645);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3646 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3646);
- }
- /* ./parser//parser_prod.nit:3647 */
- ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3649 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3649);
- }
- /* ./parser//parser_prod.nit:3651 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3653 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3654 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3655 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3655);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3656 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3656);
- }
- /* ./parser//parser_prod.nit:3657 */
- ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3659 */
- ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3661 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3663 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3664 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3665 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3665);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3666 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3666);
- }
- /* ./parser//parser_prod.nit:3667 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3669 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3671 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ADoExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3675;
- fra.me.meth = LOCATE_parser___parser_prod___ADoExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3675 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3677 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 3677);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3678 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3679 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3679);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3681 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3682 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3682);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIfExpr___empty_init(val_t p0, int* init_table){
- int itpos121 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIfExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos121]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3687;
- fra.me.meth = LOCATE_parser___parser_prod___AIfExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos121] = 1;
- return;
-}
-void parser___parser_prod___AIfExpr___init_aifexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos122 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIfExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos122]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3689;
- fra.me.meth = LOCATE_parser___parser_prod___AIfExpr___init_aifexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:3689 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3696 */
- CALL_parser___parser_prod___AIfExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:3697 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3697);
- }
- ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3698 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3698);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:3699 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3699);
- }
- ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[5]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3700 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3700);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:3701 */
- ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3702 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3703 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3703);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- }
- /* ./parser//parser_prod.nit:3705 */
- ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[5]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:3706 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3707 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3707);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos122] = 1;
- return;
-}
-void parser___parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3711;
- fra.me.meth = LOCATE_parser___parser_prod___AIfExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3713 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser___parser_prod, 3713);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3714 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3715 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3715);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3716 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwif, ID_parser___parser_nodes___TKwif)) /*cast TKwif*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3716);
- }
- /* ./parser//parser_prod.nit:3717 */
- ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3719 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3719);
- }
- /* ./parser//parser_prod.nit:3721 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3723 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3723);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3724 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3725 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3725);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3726 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3726);
- }
- /* ./parser//parser_prod.nit:3727 */
- ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3729 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3729);
- }
- /* ./parser//parser_prod.nit:3731 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3733 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3734 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3735 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3735);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3736 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3736);
- }
- /* ./parser//parser_prod.nit:3737 */
- ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3739 */
- ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3741 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3743 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3744 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3745 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3745);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3746 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3746);
- }
- /* ./parser//parser_prod.nit:3747 */
- ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3749 */
- ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3751 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIfExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3755;
- fra.me.meth = LOCATE_parser___parser_prod___AIfExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3755 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3757 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser___parser_prod, 3757);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3758 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3758);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3759 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3760 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3760);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3762 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3763 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3763);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIfexprExpr___empty_init(val_t p0, int* init_table){
- int itpos123 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIfexprExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos123]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3768;
- fra.me.meth = LOCATE_parser___parser_prod___AIfexprExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos123] = 1;
- return;
-}
-void parser___parser_prod___AIfexprExpr___init_aifexprexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
- int itpos124 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIfexprExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[7];} 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___parser_prod;
- fra.me.line = 3770;
- fra.me.meth = LOCATE_parser___parser_prod___AIfexprExpr___init_aifexprexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 8;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- /* ./parser//parser_prod.nit:3770 */
- fra.me.REG[7] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3779 */
- CALL_parser___parser_prod___AIfexprExpr___empty_init(fra.me.REG[7])(fra.me.REG[7], init_table);
- /* ./parser//parser_prod.nit:3780 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3780);
- }
- ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[7]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3781 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3781);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:3782 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3782);
- }
- ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[7]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3783 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3783);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:3784 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3784);
- }
- ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[7]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3785 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3785);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:3786 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3786);
- }
- ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[7]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:3787 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3787);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:3788 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3788);
- }
- ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[7]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:3789 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3789);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:3790 */
- REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3790);
- }
- ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[7]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:3791 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3791);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
- stack_frame_head = fra.me.prev;
- init_table[itpos124] = 1;
- return;
-}
-void parser___parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3794;
- fra.me.meth = LOCATE_parser___parser_prod___AIfexprExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3796 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser___parser_prod, 3796);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3797 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3798 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3798);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3799 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwif, ID_parser___parser_nodes___TKwif)) /*cast TKwif*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3799);
- }
- /* ./parser//parser_prod.nit:3800 */
- ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3802 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3802);
- }
- /* ./parser//parser_prod.nit:3804 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3806 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3806);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3807 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3808 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3808);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3809 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3809);
- }
- /* ./parser//parser_prod.nit:3810 */
- ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3812 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3812);
- }
- /* ./parser//parser_prod.nit:3814 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3816 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwthen", LOCATE_parser___parser_prod, 3816);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3817 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3818 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3818);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3819 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwthen, ID_parser___parser_nodes___TKwthen)) /*cast TKwthen*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3819);
- }
- /* ./parser//parser_prod.nit:3820 */
- ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3822 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3822);
- }
- /* ./parser//parser_prod.nit:3824 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3826 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_then", LOCATE_parser___parser_prod, 3826);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3827 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3828 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3828);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3829 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3829);
- }
- /* ./parser//parser_prod.nit:3830 */
- ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3832 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3832);
- }
- /* ./parser//parser_prod.nit:3834 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3836 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwelse", LOCATE_parser___parser_prod, 3836);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3837 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3838 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3838);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3839 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwelse, ID_parser___parser_nodes___TKwelse)) /*cast TKwelse*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3839);
- }
- /* ./parser//parser_prod.nit:3840 */
- ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3842 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3842);
- }
- /* ./parser//parser_prod.nit:3844 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3846 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_else", LOCATE_parser___parser_prod, 3846);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3847 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3848 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3848);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3849 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3849);
- }
- /* ./parser//parser_prod.nit:3850 */
- ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3852 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3852);
- }
- /* ./parser//parser_prod.nit:3854 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIfexprExpr___visit_all(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___parser_prod;
- fra.me.line = 3858;
- fra.me.meth = LOCATE_parser___parser_prod___AIfexprExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:3860 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser___parser_prod, 3860);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:3861 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3861);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:3862 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwthen", LOCATE_parser___parser_prod, 3862);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:3863 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_then", LOCATE_parser___parser_prod, 3863);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:3864 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwelse", LOCATE_parser___parser_prod, 3864);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:3865 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_else", LOCATE_parser___parser_prod, 3865);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AWhileExpr___empty_init(val_t p0, int* init_table){
- int itpos125 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AWhileExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos125]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3869;
- fra.me.meth = LOCATE_parser___parser_prod___AWhileExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos125] = 1;
- return;
-}
-void parser___parser_prod___AWhileExpr___init_awhileexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
- int itpos126 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AWhileExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos126]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3871;
- fra.me.meth = LOCATE_parser___parser_prod___AWhileExpr___init_awhileexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 7;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- /* ./parser//parser_prod.nit:3871 */
- fra.me.REG[6] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3879 */
- CALL_parser___parser_prod___AWhileExpr___empty_init(fra.me.REG[6])(fra.me.REG[6], init_table);
- /* ./parser//parser_prod.nit:3880 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3880);
- }
- ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[6]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3881 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3881);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:3882 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3882);
- }
- ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[6]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3883 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3883);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:3884 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3884);
- }
- ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[6]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3885 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3885);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:3886 */
- ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[6]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:3887 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3888 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3888);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[6]);
- }
- /* ./parser//parser_prod.nit:3890 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[6]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:3891 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3892 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3892);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos126] = 1;
- return;
-}
-void parser___parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3896;
- fra.me.meth = LOCATE_parser___parser_prod___AWhileExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3898 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwwhile", LOCATE_parser___parser_prod, 3898);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3899 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3900 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3900);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3901 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwwhile, ID_parser___parser_nodes___TKwwhile)) /*cast TKwwhile*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3901);
- }
- /* ./parser//parser_prod.nit:3902 */
- ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3904 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3904);
- }
- /* ./parser//parser_prod.nit:3906 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3908 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3908);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3909 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3910 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3910);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3911 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3911);
- }
- /* ./parser//parser_prod.nit:3912 */
- ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3914 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3914);
- }
- /* ./parser//parser_prod.nit:3916 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3918 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 3918);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3919 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3920 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3920);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3921 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3921);
- }
- /* ./parser//parser_prod.nit:3922 */
- ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3924 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3924);
- }
- /* ./parser//parser_prod.nit:3926 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3928 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3929 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3930 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3930);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3931 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3931);
- }
- /* ./parser//parser_prod.nit:3932 */
- ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3934 */
- ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3936 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3938 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3939 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3940 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3940);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3941 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3941);
- }
- /* ./parser//parser_prod.nit:3942 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3944 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:3946 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AWhileExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3950;
- fra.me.meth = LOCATE_parser___parser_prod___AWhileExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:3950 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3952 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwwhile", LOCATE_parser___parser_prod, 3952);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3953 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3953);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3954 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 3954);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:3955 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3956 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3956);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:3958 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3959 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3959);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALoopExpr___empty_init(val_t p0, int* init_table){
- int itpos127 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALoopExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos127]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3964;
- fra.me.meth = LOCATE_parser___parser_prod___ALoopExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos127] = 1;
- return;
-}
-void parser___parser_prod___ALoopExpr___init_aloopexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos128 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALoopExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos128]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 3966;
- fra.me.meth = LOCATE_parser___parser_prod___ALoopExpr___init_aloopexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:3966 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:3972 */
- CALL_parser___parser_prod___ALoopExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:3973 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3973);
- }
- ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:3974 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3974);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:3975 */
- ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:3976 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3977 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3977);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:3979 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:3980 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3981 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3981);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos128] = 1;
- return;
-}
-void parser___parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 3985;
- fra.me.meth = LOCATE_parser___parser_prod___ALoopExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:3987 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwloop", LOCATE_parser___parser_prod, 3987);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3988 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3989 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3989);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:3990 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwloop, ID_parser___parser_nodes___TKwloop)) /*cast TKwloop*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3990);
- }
- /* ./parser//parser_prod.nit:3991 */
- ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:3993 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3993);
- }
- /* ./parser//parser_prod.nit:3995 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:3997 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3998 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:3999 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3999);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4000 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4000);
- }
- /* ./parser//parser_prod.nit:4001 */
- ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4003 */
- ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:4005 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4007 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4008 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4009 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4009);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4010 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4010);
- }
- /* ./parser//parser_prod.nit:4011 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4013 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:4015 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALoopExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4019;
- fra.me.meth = LOCATE_parser___parser_prod___ALoopExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:4019 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4021 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwloop", LOCATE_parser___parser_prod, 4021);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4022 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4023 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4023);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:4025 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4026 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4026);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AForExpr___empty_init(val_t p0, int* init_table){
- int itpos129 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AForExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos129]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4031;
- fra.me.meth = LOCATE_parser___parser_prod___AForExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos129] = 1;
- return;
-}
-void parser___parser_prod___AForExpr___init_aforexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
- int itpos130 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AForExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos130]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4033;
- fra.me.meth = LOCATE_parser___parser_prod___AForExpr___init_aforexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 8;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- /* ./parser//parser_prod.nit:4033 */
- fra.me.REG[7] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4042 */
- CALL_parser___parser_prod___AForExpr___empty_init(fra.me.REG[7])(fra.me.REG[7], init_table);
- /* ./parser//parser_prod.nit:4043 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4043);
- }
- ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[7]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4044 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4044);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AForExpr___init_aforexpr_1));
- /* ./parser//parser_prod.nit:4050 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4050);
- }
- ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[7]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:4051 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4051);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:4052 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4052);
- }
- ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[7]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:4053 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4053);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:4054 */
- ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[7]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:4055 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4056 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4056);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:4058 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[7]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:4059 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4060 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4060);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos130] = 1;
- return;
-}
- void OC_parser___parser_prod___AForExpr___init_aforexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:4045 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AForExpr___init_aforexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:4046 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4046);
- }
- /* ./parser//parser_prod.nit:4047 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(closctx->REG[7])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4047);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AForExpr____n_ids(closctx->REG[7]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4048 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[7]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4064;
- fra.me.meth = LOCATE_parser___parser_prod___AForExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4066 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwfor", LOCATE_parser___parser_prod, 4066);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4067 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4068 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4068);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4069 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwfor, ID_parser___parser_nodes___TKwfor)) /*cast TKwfor*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4069);
- }
- /* ./parser//parser_prod.nit:4070 */
- ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4072 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4072);
- }
- /* ./parser//parser_prod.nit:4074 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4076 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4076);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:4076 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:4077 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4077);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:4078 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:4079 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4079);
- }
- /* ./parser//parser_prod.nit:4080 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4080);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4081 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4081);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:4083 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4083);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:4085 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:4088 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4088);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4089 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4090 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4090);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4091 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4091);
- }
- /* ./parser//parser_prod.nit:4092 */
- ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4094 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4094);
- }
- /* ./parser//parser_prod.nit:4096 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4098 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 4098);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4099 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4100 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4100);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4101 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4101);
- }
- /* ./parser//parser_prod.nit:4102 */
- ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4104 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4104);
- }
- /* ./parser//parser_prod.nit:4106 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4108 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4109 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4110 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4110);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4111 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4111);
- }
- /* ./parser//parser_prod.nit:4112 */
- ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4114 */
- ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:4116 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4118 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4119 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4120 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4120);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4121 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4121);
- }
- /* ./parser//parser_prod.nit:4122 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4124 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:4126 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AForExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4130;
- fra.me.meth = LOCATE_parser___parser_prod___AForExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:4130 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4132 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwfor", LOCATE_parser___parser_prod, 4132);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4133 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4133);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AForExpr___visit_all_1));
- /* ./parser//parser_prod.nit:4136 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4136);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4137 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 4137);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4138 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4139 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4139);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:4141 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4142 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4142);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AForExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AForExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:4134 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AAssertExpr___empty_init(val_t p0, int* init_table){
- int itpos131 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAssertExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos131]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4147;
- fra.me.meth = LOCATE_parser___parser_prod___AAssertExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos131] = 1;
- return;
-}
-void parser___parser_prod___AAssertExpr___init_aassertexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos132 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAssertExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos132]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4149;
- fra.me.meth = LOCATE_parser___parser_prod___AAssertExpr___init_aassertexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:4149 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4156 */
- CALL_parser___parser_prod___AAssertExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:4157 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4157);
- }
- ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4158 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4158);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:4159 */
- ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[5]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4160 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4161 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4161);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
- }
- /* ./parser//parser_prod.nit:4163 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4163);
- }
- ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:4164 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4164);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:4165 */
- ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[5]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:4166 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4167 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4167);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos132] = 1;
- return;
-}
-void parser___parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4171;
- fra.me.meth = LOCATE_parser___parser_prod___AAssertExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4173 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwassert", LOCATE_parser___parser_prod, 4173);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4174 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4175 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4175);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4176 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwassert, ID_parser___parser_nodes___TKwassert)) /*cast TKwassert*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4176);
- }
- /* ./parser//parser_prod.nit:4177 */
- ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4179 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4179);
- }
- /* ./parser//parser_prod.nit:4181 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4183 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4184 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4185 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4185);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4186 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4186);
- }
- /* ./parser//parser_prod.nit:4187 */
- ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4189 */
- ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:4191 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4193 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4193);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4194 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4195 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4195);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4196 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4196);
- }
- /* ./parser//parser_prod.nit:4197 */
- ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4199 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4199);
- }
- /* ./parser//parser_prod.nit:4201 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4203 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4204 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4205 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4205);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4206 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4206);
- }
- /* ./parser//parser_prod.nit:4207 */
- ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4209 */
- ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:4211 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAssertExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4215;
- fra.me.meth = LOCATE_parser___parser_prod___AAssertExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:4215 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4217 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwassert", LOCATE_parser___parser_prod, 4217);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4218 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4219 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4219);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:4221 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4221);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4222 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4223 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4223);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AOnceExpr___empty_init(val_t p0, int* init_table){
- int itpos133 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOnceExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos133]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4228;
- fra.me.meth = LOCATE_parser___parser_prod___AOnceExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos133] = 1;
- return;
-}
-void parser___parser_prod___AOnceExpr___init_aonceexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos134 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOnceExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4230;
- fra.me.meth = LOCATE_parser___parser_prod___AOnceExpr___init_aonceexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4230 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4235 */
- CALL_parser___parser_prod___AOnceExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4236 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4236);
- }
- ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4237 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4237);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4238 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4238);
- }
- ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4239 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4239);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos134] = 1;
- return;
-}
-void parser___parser_prod___AOnceExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4242;
- fra.me.meth = LOCATE_parser___parser_prod___AOnceExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4244 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwonce", LOCATE_parser___parser_prod, 4244);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4245 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4246 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4246);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4247 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwonce, ID_parser___parser_nodes___TKwonce)) /*cast TKwonce*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4247);
- }
- /* ./parser//parser_prod.nit:4248 */
- ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4250 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4250);
- }
- /* ./parser//parser_prod.nit:4252 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4254 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4254);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4255 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4256 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4256);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4257 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4257);
- }
- /* ./parser//parser_prod.nit:4258 */
- ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4260 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4260);
- }
- /* ./parser//parser_prod.nit:4262 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AOnceExpr___visit_all(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___parser_prod;
- fra.me.line = 4266;
- fra.me.meth = LOCATE_parser___parser_prod___AOnceExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4268 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwonce", LOCATE_parser___parser_prod, 4268);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4269 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4269);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASendExpr___empty_init(val_t p0, int* init_table){
- int itpos135 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASendExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos135]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4273;
- fra.me.meth = LOCATE_parser___parser_prod___ASendExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos135] = 1;
- return;
-}
-void parser___parser_prod___ASendExpr___init_asendexpr(val_t p0, val_t p1, int* init_table){
- int itpos136 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASendExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 4275;
- fra.me.meth = LOCATE_parser___parser_prod___ASendExpr___init_asendexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4275 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4279 */
- CALL_parser___parser_prod___ASendExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:4280 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4280);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4281 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4281);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos136] = 1;
- return;
-}
-void parser___parser_prod___ASendExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4284;
- fra.me.meth = LOCATE_parser___parser_prod___ASendExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4286 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4286);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4287 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4288 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4288);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4289 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4289);
- }
- /* ./parser//parser_prod.nit:4290 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4292 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4292);
- }
- /* ./parser//parser_prod.nit:4294 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASendExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4298;
- fra.me.meth = LOCATE_parser___parser_prod___ASendExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:4300 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4300);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABinopExpr___empty_init(val_t p0, int* init_table){
- int itpos137 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABinopExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos137]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4304;
- fra.me.meth = LOCATE_parser___parser_prod___ABinopExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos137] = 1;
- return;
-}
-void parser___parser_prod___ABinopExpr___init_abinopexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos138 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABinopExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4306;
- fra.me.meth = LOCATE_parser___parser_prod___ABinopExpr___init_abinopexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4306 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4311 */
- CALL_parser___parser_prod___ABinopExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4312 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4312);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4313 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4313);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4314 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4314);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4315 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4315);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos138] = 1;
- return;
-}
-void parser___parser_prod___ABinopExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4318;
- fra.me.meth = LOCATE_parser___parser_prod___ABinopExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4320 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4320);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4321 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4322 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4322);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4323 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4323);
- }
- /* ./parser//parser_prod.nit:4324 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4326 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4326);
- }
- /* ./parser//parser_prod.nit:4328 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4330 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4330);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4331 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4332 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4332);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4333 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4333);
- }
- /* ./parser//parser_prod.nit:4334 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4336 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4336);
- }
- /* ./parser//parser_prod.nit:4338 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABinopExpr___visit_all(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___parser_prod;
- fra.me.line = 4342;
- fra.me.meth = LOCATE_parser___parser_prod___ABinopExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4344 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4344);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4345 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4345);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AOrExpr___empty_init(val_t p0, int* init_table){
- int itpos139 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos139]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4349;
- fra.me.meth = LOCATE_parser___parser_prod___AOrExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos139] = 1;
- return;
-}
-void parser___parser_prod___AOrExpr___init_aorexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos140 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4351;
- fra.me.meth = LOCATE_parser___parser_prod___AOrExpr___init_aorexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4351 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4356 */
- CALL_parser___parser_prod___AOrExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4357 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4357);
- }
- ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4358 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4358);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4359 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4359);
- }
- ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4360 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4360);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos140] = 1;
- return;
-}
-void parser___parser_prod___AOrExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4363;
- fra.me.meth = LOCATE_parser___parser_prod___AOrExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4365 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4365);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4366 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4367 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4367);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4368 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4368);
- }
- /* ./parser//parser_prod.nit:4369 */
- ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4371 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4371);
- }
- /* ./parser//parser_prod.nit:4373 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4375 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4375);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4376 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4377 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4377);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4378 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4378);
- }
- /* ./parser//parser_prod.nit:4379 */
- ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4381 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4381);
- }
- /* ./parser//parser_prod.nit:4383 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AOrExpr___visit_all(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___parser_prod;
- fra.me.line = 4387;
- fra.me.meth = LOCATE_parser___parser_prod___AOrExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4389 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4389);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4390 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4390);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAndExpr___empty_init(val_t p0, int* init_table){
- int itpos141 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAndExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos141]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4394;
- fra.me.meth = LOCATE_parser___parser_prod___AAndExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos141] = 1;
- return;
-}
-void parser___parser_prod___AAndExpr___init_aandexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos142 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAndExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4396;
- fra.me.meth = LOCATE_parser___parser_prod___AAndExpr___init_aandexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4396 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4401 */
- CALL_parser___parser_prod___AAndExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4402 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4402);
- }
- ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4403 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4403);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4404 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4404);
- }
- ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4405 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4405);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos142] = 1;
- return;
-}
-void parser___parser_prod___AAndExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4408;
- fra.me.meth = LOCATE_parser___parser_prod___AAndExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4410 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4410);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4411 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4412 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4412);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4413 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4413);
- }
- /* ./parser//parser_prod.nit:4414 */
- ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4416 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4416);
- }
- /* ./parser//parser_prod.nit:4418 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4420 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4420);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4421 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4422 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4422);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4423 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4423);
- }
- /* ./parser//parser_prod.nit:4424 */
- ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4426 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4426);
- }
- /* ./parser//parser_prod.nit:4428 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAndExpr___visit_all(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___parser_prod;
- fra.me.line = 4432;
- fra.me.meth = LOCATE_parser___parser_prod___AAndExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4434 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4434);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4435 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4435);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AOrElseExpr___empty_init(val_t p0, int* init_table){
- int itpos143 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrElseExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos143]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4439;
- fra.me.meth = LOCATE_parser___parser_prod___AOrElseExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos143] = 1;
- return;
-}
-void parser___parser_prod___AOrElseExpr___init_aorelseexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos144 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrElseExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4441;
- fra.me.meth = LOCATE_parser___parser_prod___AOrElseExpr___init_aorelseexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4441 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4446 */
- CALL_parser___parser_prod___AOrElseExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4447 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4447);
- }
- ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4448 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4448);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4449 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4449);
- }
- ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4450 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4450);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos144] = 1;
- return;
-}
-void parser___parser_prod___AOrElseExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4453;
- fra.me.meth = LOCATE_parser___parser_prod___AOrElseExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4455 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4455);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4456 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4457 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4457);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4458 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4458);
- }
- /* ./parser//parser_prod.nit:4459 */
- ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4461 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4461);
- }
- /* ./parser//parser_prod.nit:4463 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4465 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4465);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4466 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4467 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4467);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4468 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4468);
- }
- /* ./parser//parser_prod.nit:4469 */
- ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4471 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4471);
- }
- /* ./parser//parser_prod.nit:4473 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AOrElseExpr___visit_all(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___parser_prod;
- fra.me.line = 4477;
- fra.me.meth = LOCATE_parser___parser_prod___AOrElseExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4479 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4479);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4480 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4480);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANotExpr___empty_init(val_t p0, int* init_table){
- int itpos145 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANotExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos145]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4484;
- fra.me.meth = LOCATE_parser___parser_prod___ANotExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos145] = 1;
- return;
-}
-void parser___parser_prod___ANotExpr___init_anotexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos146 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANotExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4486;
- fra.me.meth = LOCATE_parser___parser_prod___ANotExpr___init_anotexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4486 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4491 */
- CALL_parser___parser_prod___ANotExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4492 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4492);
- }
- ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4493 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4493);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4494 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4494);
- }
- ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4495 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4495);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos146] = 1;
- return;
-}
-void parser___parser_prod___ANotExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4498;
- fra.me.meth = LOCATE_parser___parser_prod___ANotExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4500 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 4500);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4501 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4502 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4502);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4503 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnot, ID_parser___parser_nodes___TKwnot)) /*cast TKwnot*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4503);
- }
- /* ./parser//parser_prod.nit:4504 */
- ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4506 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4506);
- }
- /* ./parser//parser_prod.nit:4508 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4510 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4510);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4511 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4512 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4512);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4513 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4513);
- }
- /* ./parser//parser_prod.nit:4514 */
- ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4516 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4516);
- }
- /* ./parser//parser_prod.nit:4518 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANotExpr___visit_all(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___parser_prod;
- fra.me.line = 4522;
- fra.me.meth = LOCATE_parser___parser_prod___ANotExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4524 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 4524);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4525 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4525);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEqExpr___empty_init(val_t p0, int* init_table){
- int itpos147 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEqExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos147]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4529;
- fra.me.meth = LOCATE_parser___parser_prod___AEqExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos147] = 1;
- return;
-}
-void parser___parser_prod___AEqExpr___init_aeqexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos148 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEqExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4531;
- fra.me.meth = LOCATE_parser___parser_prod___AEqExpr___init_aeqexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4531 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4536 */
- CALL_parser___parser_prod___AEqExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4537 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4537);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4538 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4538);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4539 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4539);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4540 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4540);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos148] = 1;
- return;
-}
-void parser___parser_prod___AEqExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4543;
- fra.me.meth = LOCATE_parser___parser_prod___AEqExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4545 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4545);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4546 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4547 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4547);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4548 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4548);
- }
- /* ./parser//parser_prod.nit:4549 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4551 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4551);
- }
- /* ./parser//parser_prod.nit:4553 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4555 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4555);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4556 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4557 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4557);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4558 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4558);
- }
- /* ./parser//parser_prod.nit:4559 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4561 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4561);
- }
- /* ./parser//parser_prod.nit:4563 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEqExpr___visit_all(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___parser_prod;
- fra.me.line = 4567;
- fra.me.meth = LOCATE_parser___parser_prod___AEqExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4569 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4569);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4570 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4570);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEeExpr___empty_init(val_t p0, int* init_table){
- int itpos149 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEeExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos149]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4574;
- fra.me.meth = LOCATE_parser___parser_prod___AEeExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos149] = 1;
- return;
-}
-void parser___parser_prod___AEeExpr___init_aeeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos150 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEeExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4576;
- fra.me.meth = LOCATE_parser___parser_prod___AEeExpr___init_aeeexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4576 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4581 */
- CALL_parser___parser_prod___AEeExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4582 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4582);
- }
- ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4583 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4583);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4584 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4584);
- }
- ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4585 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4585);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos150] = 1;
- return;
-}
-void parser___parser_prod___AEeExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4588;
- fra.me.meth = LOCATE_parser___parser_prod___AEeExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4590 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4590);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4591 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4592 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4592);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4593 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4593);
- }
- /* ./parser//parser_prod.nit:4594 */
- ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4596 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4596);
- }
- /* ./parser//parser_prod.nit:4598 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4600 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4600);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4601 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4602 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4602);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4603 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4603);
- }
- /* ./parser//parser_prod.nit:4604 */
- ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4606 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4606);
- }
- /* ./parser//parser_prod.nit:4608 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEeExpr___visit_all(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___parser_prod;
- fra.me.line = 4612;
- fra.me.meth = LOCATE_parser___parser_prod___AEeExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4614 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4614);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4615 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4615);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANeExpr___empty_init(val_t p0, int* init_table){
- int itpos151 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANeExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos151]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4619;
- fra.me.meth = LOCATE_parser___parser_prod___ANeExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos151] = 1;
- return;
-}
-void parser___parser_prod___ANeExpr___init_aneexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos152 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANeExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4621;
- fra.me.meth = LOCATE_parser___parser_prod___ANeExpr___init_aneexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4621 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4626 */
- CALL_parser___parser_prod___ANeExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4627 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4627);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4628 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4628);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4629 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4629);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4630 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4630);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos152] = 1;
- return;
-}
-void parser___parser_prod___ANeExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4633;
- fra.me.meth = LOCATE_parser___parser_prod___ANeExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4635 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4635);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4636 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4637 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4637);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4638 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4638);
- }
- /* ./parser//parser_prod.nit:4639 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4641 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4641);
- }
- /* ./parser//parser_prod.nit:4643 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4645 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4645);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4646 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4647 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4647);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4648 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4648);
- }
- /* ./parser//parser_prod.nit:4649 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4651 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4651);
- }
- /* ./parser//parser_prod.nit:4653 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANeExpr___visit_all(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___parser_prod;
- fra.me.line = 4657;
- fra.me.meth = LOCATE_parser___parser_prod___ANeExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4659 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4659);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4660 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4660);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALtExpr___empty_init(val_t p0, int* init_table){
- int itpos153 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALtExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos153]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4664;
- fra.me.meth = LOCATE_parser___parser_prod___ALtExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos153] = 1;
- return;
-}
-void parser___parser_prod___ALtExpr___init_altexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos154 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALtExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4666;
- fra.me.meth = LOCATE_parser___parser_prod___ALtExpr___init_altexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4666 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4671 */
- CALL_parser___parser_prod___ALtExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4672 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4672);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4673 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4673);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4674 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4674);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4675 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4675);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos154] = 1;
- return;
-}
-void parser___parser_prod___ALtExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4678;
- fra.me.meth = LOCATE_parser___parser_prod___ALtExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4680 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4680);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4681 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4682 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4682);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4683 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4683);
- }
- /* ./parser//parser_prod.nit:4684 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4686 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4686);
- }
- /* ./parser//parser_prod.nit:4688 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4690 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4690);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4691 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4692 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4692);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4693 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4693);
- }
- /* ./parser//parser_prod.nit:4694 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4696 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4696);
- }
- /* ./parser//parser_prod.nit:4698 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALtExpr___visit_all(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___parser_prod;
- fra.me.line = 4702;
- fra.me.meth = LOCATE_parser___parser_prod___ALtExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4704 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4704);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4705 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4705);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALeExpr___empty_init(val_t p0, int* init_table){
- int itpos155 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALeExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos155]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4709;
- fra.me.meth = LOCATE_parser___parser_prod___ALeExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos155] = 1;
- return;
-}
-void parser___parser_prod___ALeExpr___init_aleexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos156 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALeExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4711;
- fra.me.meth = LOCATE_parser___parser_prod___ALeExpr___init_aleexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4711 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4716 */
- CALL_parser___parser_prod___ALeExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4717 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4717);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4718 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4718);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4719 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4719);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4720 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4720);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos156] = 1;
- return;
-}
-void parser___parser_prod___ALeExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4723;
- fra.me.meth = LOCATE_parser___parser_prod___ALeExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4725 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4725);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4726 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4727 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4727);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4728 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4728);
- }
- /* ./parser//parser_prod.nit:4729 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4731 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4731);
- }
- /* ./parser//parser_prod.nit:4733 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4735 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4735);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4736 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4737 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4737);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4738 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4738);
- }
- /* ./parser//parser_prod.nit:4739 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4741 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4741);
- }
- /* ./parser//parser_prod.nit:4743 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALeExpr___visit_all(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___parser_prod;
- fra.me.line = 4747;
- fra.me.meth = LOCATE_parser___parser_prod___ALeExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4749 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4749);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4750 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4750);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALlExpr___empty_init(val_t p0, int* init_table){
- int itpos157 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALlExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos157]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4754;
- fra.me.meth = LOCATE_parser___parser_prod___ALlExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos157] = 1;
- return;
-}
-void parser___parser_prod___ALlExpr___init_allexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos158 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALlExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4756;
- fra.me.meth = LOCATE_parser___parser_prod___ALlExpr___init_allexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4756 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4761 */
- CALL_parser___parser_prod___ALlExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4762 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4762);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4763 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4763);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4764 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4764);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4765 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4765);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos158] = 1;
- return;
-}
-void parser___parser_prod___ALlExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4768;
- fra.me.meth = LOCATE_parser___parser_prod___ALlExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4770 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4770);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4771 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4772 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4772);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4773 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4773);
- }
- /* ./parser//parser_prod.nit:4774 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4776 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4776);
- }
- /* ./parser//parser_prod.nit:4778 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4780 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4780);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4781 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4782 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4782);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4783 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4783);
- }
- /* ./parser//parser_prod.nit:4784 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4786 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4786);
- }
- /* ./parser//parser_prod.nit:4788 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALlExpr___visit_all(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___parser_prod;
- fra.me.line = 4792;
- fra.me.meth = LOCATE_parser___parser_prod___ALlExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4794 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4794);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4795 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4795);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGtExpr___empty_init(val_t p0, int* init_table){
- int itpos159 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGtExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos159]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4799;
- fra.me.meth = LOCATE_parser___parser_prod___AGtExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos159] = 1;
- return;
-}
-void parser___parser_prod___AGtExpr___init_agtexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos160 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGtExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4801;
- fra.me.meth = LOCATE_parser___parser_prod___AGtExpr___init_agtexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4801 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4806 */
- CALL_parser___parser_prod___AGtExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4807 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4807);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4808 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4808);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4809 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4809);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4810 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4810);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos160] = 1;
- return;
-}
-void parser___parser_prod___AGtExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4813;
- fra.me.meth = LOCATE_parser___parser_prod___AGtExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4815 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4815);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4816 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4817 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4817);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4818 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4818);
- }
- /* ./parser//parser_prod.nit:4819 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4821 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4821);
- }
- /* ./parser//parser_prod.nit:4823 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4825 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4825);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4826 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4827 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4827);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4828 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4828);
- }
- /* ./parser//parser_prod.nit:4829 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4831 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4831);
- }
- /* ./parser//parser_prod.nit:4833 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGtExpr___visit_all(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___parser_prod;
- fra.me.line = 4837;
- fra.me.meth = LOCATE_parser___parser_prod___AGtExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4839 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4839);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4840 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4840);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGeExpr___empty_init(val_t p0, int* init_table){
- int itpos161 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGeExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos161]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4844;
- fra.me.meth = LOCATE_parser___parser_prod___AGeExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos161] = 1;
- return;
-}
-void parser___parser_prod___AGeExpr___init_ageexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos162 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGeExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4846;
- fra.me.meth = LOCATE_parser___parser_prod___AGeExpr___init_ageexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4846 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4851 */
- CALL_parser___parser_prod___AGeExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4852 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4852);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4853 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4853);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4854 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4854);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4855 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4855);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos162] = 1;
- return;
-}
-void parser___parser_prod___AGeExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4858;
- fra.me.meth = LOCATE_parser___parser_prod___AGeExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4860 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4860);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4861 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4862 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4862);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4863 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4863);
- }
- /* ./parser//parser_prod.nit:4864 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4866 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4866);
- }
- /* ./parser//parser_prod.nit:4868 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4870 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4870);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4871 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4872 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4872);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4873 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4873);
- }
- /* ./parser//parser_prod.nit:4874 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4876 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4876);
- }
- /* ./parser//parser_prod.nit:4878 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGeExpr___visit_all(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___parser_prod;
- fra.me.line = 4882;
- fra.me.meth = LOCATE_parser___parser_prod___AGeExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4884 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4884);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4885 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4885);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGgExpr___empty_init(val_t p0, int* init_table){
- int itpos163 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGgExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos163]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4889;
- fra.me.meth = LOCATE_parser___parser_prod___AGgExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos163] = 1;
- return;
-}
-void parser___parser_prod___AGgExpr___init_aggexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos164 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGgExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4891;
- fra.me.meth = LOCATE_parser___parser_prod___AGgExpr___init_aggexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4891 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4896 */
- CALL_parser___parser_prod___AGgExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4897 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4897);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4898 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4898);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4899 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4899);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4900 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4900);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos164] = 1;
- return;
-}
-void parser___parser_prod___AGgExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4903;
- fra.me.meth = LOCATE_parser___parser_prod___AGgExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4905 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4905);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4906 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4907 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4907);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4908 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4908);
- }
- /* ./parser//parser_prod.nit:4909 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4911 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4911);
- }
- /* ./parser//parser_prod.nit:4913 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4915 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4915);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4916 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4917 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4917);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4918 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4918);
- }
- /* ./parser//parser_prod.nit:4919 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4921 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4921);
- }
- /* ./parser//parser_prod.nit:4923 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AGgExpr___visit_all(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___parser_prod;
- fra.me.line = 4927;
- fra.me.meth = LOCATE_parser___parser_prod___AGgExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4929 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4929);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4930 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4930);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIsaExpr___empty_init(val_t p0, int* init_table){
- int itpos165 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIsaExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos165]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4934;
- fra.me.meth = LOCATE_parser___parser_prod___AIsaExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos165] = 1;
- return;
-}
-void parser___parser_prod___AIsaExpr___init_aisaexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos166 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIsaExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4936;
- fra.me.meth = LOCATE_parser___parser_prod___AIsaExpr___init_aisaexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4936 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4941 */
- CALL_parser___parser_prod___AIsaExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4942 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4942);
- }
- ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4943 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4943);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4944 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4944);
- }
- ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4945 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4945);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos166] = 1;
- return;
-}
-void parser___parser_prod___AIsaExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4948;
- fra.me.meth = LOCATE_parser___parser_prod___AIsaExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4950 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4950);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4951 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4952 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4952);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4953 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4953);
- }
- /* ./parser//parser_prod.nit:4954 */
- ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4956 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4956);
- }
- /* ./parser//parser_prod.nit:4958 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:4960 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 4960);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4961 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4962 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4962);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4963 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4963);
- }
- /* ./parser//parser_prod.nit:4964 */
- ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:4966 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4966);
- }
- /* ./parser//parser_prod.nit:4968 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIsaExpr___visit_all(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___parser_prod;
- fra.me.line = 4972;
- fra.me.meth = LOCATE_parser___parser_prod___AIsaExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:4974 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4974);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:4975 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 4975);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APlusExpr___empty_init(val_t p0, int* init_table){
- int itpos167 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos167]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 4979;
- fra.me.meth = LOCATE_parser___parser_prod___APlusExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos167] = 1;
- return;
-}
-void parser___parser_prod___APlusExpr___init_aplusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos168 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4981;
- fra.me.meth = LOCATE_parser___parser_prod___APlusExpr___init_aplusexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4981 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:4986 */
- CALL_parser___parser_prod___APlusExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:4987 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4987);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:4988 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4988);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:4989 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4989);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:4990 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4990);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos168] = 1;
- return;
-}
-void parser___parser_prod___APlusExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 4993;
- fra.me.meth = LOCATE_parser___parser_prod___APlusExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:4995 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4995);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4996 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:4997 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4997);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:4998 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4998);
- }
- /* ./parser//parser_prod.nit:4999 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5001 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5001);
- }
- /* ./parser//parser_prod.nit:5003 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5005 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5005);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5006 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5007 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5007);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5008 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5008);
- }
- /* ./parser//parser_prod.nit:5009 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5011 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5011);
- }
- /* ./parser//parser_prod.nit:5013 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APlusExpr___visit_all(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___parser_prod;
- fra.me.line = 5017;
- fra.me.meth = LOCATE_parser___parser_prod___APlusExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5019 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5019);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5020 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5020);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMinusExpr___empty_init(val_t p0, int* init_table){
- int itpos169 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos169]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5024;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos169] = 1;
- return;
-}
-void parser___parser_prod___AMinusExpr___init_aminusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos170 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5026;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusExpr___init_aminusexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5026 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5031 */
- CALL_parser___parser_prod___AMinusExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:5032 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5032);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5033 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5033);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5034 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5034);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5035 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5035);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos170] = 1;
- return;
-}
-void parser___parser_prod___AMinusExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5038;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5040 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5040);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5041 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5042 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5042);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5043 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5043);
- }
- /* ./parser//parser_prod.nit:5044 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5046 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5046);
- }
- /* ./parser//parser_prod.nit:5048 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5050 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5050);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5051 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5052 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5052);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5053 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5053);
- }
- /* ./parser//parser_prod.nit:5054 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5056 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5056);
- }
- /* ./parser//parser_prod.nit:5058 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMinusExpr___visit_all(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___parser_prod;
- fra.me.line = 5062;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5064 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5064);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5065 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5065);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStarshipExpr___empty_init(val_t p0, int* init_table){
- int itpos171 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarshipExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos171]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5069;
- fra.me.meth = LOCATE_parser___parser_prod___AStarshipExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos171] = 1;
- return;
-}
-void parser___parser_prod___AStarshipExpr___init_astarshipexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos172 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarshipExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5071;
- fra.me.meth = LOCATE_parser___parser_prod___AStarshipExpr___init_astarshipexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5071 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5076 */
- CALL_parser___parser_prod___AStarshipExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:5077 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5077);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5078 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5078);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5079 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5079);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5080 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5080);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos172] = 1;
- return;
-}
-void parser___parser_prod___AStarshipExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5083;
- fra.me.meth = LOCATE_parser___parser_prod___AStarshipExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5085 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5085);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5086 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5087 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5087);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5088 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5088);
- }
- /* ./parser//parser_prod.nit:5089 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5091 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5091);
- }
- /* ./parser//parser_prod.nit:5093 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5095 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5095);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5096 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5097 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5097);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5098 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5098);
- }
- /* ./parser//parser_prod.nit:5099 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5101 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5101);
- }
- /* ./parser//parser_prod.nit:5103 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStarshipExpr___visit_all(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___parser_prod;
- fra.me.line = 5107;
- fra.me.meth = LOCATE_parser___parser_prod___AStarshipExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5109 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5109);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5110 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5110);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStarExpr___empty_init(val_t p0, int* init_table){
- int itpos173 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos173]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5114;
- fra.me.meth = LOCATE_parser___parser_prod___AStarExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos173] = 1;
- return;
-}
-void parser___parser_prod___AStarExpr___init_astarexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos174 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5116;
- fra.me.meth = LOCATE_parser___parser_prod___AStarExpr___init_astarexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5116 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5121 */
- CALL_parser___parser_prod___AStarExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:5122 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5122);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5123 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5123);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5124 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5124);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5125 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5125);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos174] = 1;
- return;
-}
-void parser___parser_prod___AStarExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5128;
- fra.me.meth = LOCATE_parser___parser_prod___AStarExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5130 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5130);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5131 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5132 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5132);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5133 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5133);
- }
- /* ./parser//parser_prod.nit:5134 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5136 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5136);
- }
- /* ./parser//parser_prod.nit:5138 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5140 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5140);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5141 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5142 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5142);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5143 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5143);
- }
- /* ./parser//parser_prod.nit:5144 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5146 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5146);
- }
- /* ./parser//parser_prod.nit:5148 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStarExpr___visit_all(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___parser_prod;
- fra.me.line = 5152;
- fra.me.meth = LOCATE_parser___parser_prod___AStarExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5154 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5154);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5155 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5155);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASlashExpr___empty_init(val_t p0, int* init_table){
- int itpos175 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASlashExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos175]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5159;
- fra.me.meth = LOCATE_parser___parser_prod___ASlashExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos175] = 1;
- return;
-}
-void parser___parser_prod___ASlashExpr___init_aslashexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos176 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASlashExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5161;
- fra.me.meth = LOCATE_parser___parser_prod___ASlashExpr___init_aslashexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5161 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5166 */
- CALL_parser___parser_prod___ASlashExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:5167 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5167);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5168 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5168);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5169 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5169);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5170 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5170);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos176] = 1;
- return;
-}
-void parser___parser_prod___ASlashExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5173;
- fra.me.meth = LOCATE_parser___parser_prod___ASlashExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5175 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5175);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5176 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5177 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5177);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5178 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5178);
- }
- /* ./parser//parser_prod.nit:5179 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5181 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5181);
- }
- /* ./parser//parser_prod.nit:5183 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5185 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5185);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5186 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5187 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5187);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5188 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5188);
- }
- /* ./parser//parser_prod.nit:5189 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5191 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5191);
- }
- /* ./parser//parser_prod.nit:5193 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASlashExpr___visit_all(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___parser_prod;
- fra.me.line = 5197;
- fra.me.meth = LOCATE_parser___parser_prod___ASlashExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5199 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5199);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5200 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5200);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APercentExpr___empty_init(val_t p0, int* init_table){
- int itpos177 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APercentExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos177]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5204;
- fra.me.meth = LOCATE_parser___parser_prod___APercentExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos177] = 1;
- return;
-}
-void parser___parser_prod___APercentExpr___init_apercentexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos178 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APercentExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5206;
- fra.me.meth = LOCATE_parser___parser_prod___APercentExpr___init_apercentexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5206 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5211 */
- CALL_parser___parser_prod___APercentExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:5212 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5212);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5213 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5213);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5214 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5214);
- }
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5215 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5215);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos178] = 1;
- return;
-}
-void parser___parser_prod___APercentExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5218;
- fra.me.meth = LOCATE_parser___parser_prod___APercentExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5220 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5220);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5221 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5222 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5222);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5223 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5223);
- }
- /* ./parser//parser_prod.nit:5224 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5226 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5226);
- }
- /* ./parser//parser_prod.nit:5228 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5230 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5230);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5231 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5232 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5232);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5233 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5233);
- }
- /* ./parser//parser_prod.nit:5234 */
- ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5236 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5236);
- }
- /* ./parser//parser_prod.nit:5238 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APercentExpr___visit_all(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___parser_prod;
- fra.me.line = 5242;
- fra.me.meth = LOCATE_parser___parser_prod___APercentExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5244 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5244);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5245 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5245);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AUminusExpr___empty_init(val_t p0, int* init_table){
- int itpos179 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AUminusExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos179]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5249;
- fra.me.meth = LOCATE_parser___parser_prod___AUminusExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos179] = 1;
- return;
-}
-void parser___parser_prod___AUminusExpr___init_auminusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos180 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AUminusExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5251;
- fra.me.meth = LOCATE_parser___parser_prod___AUminusExpr___init_auminusexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5251 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5256 */
- CALL_parser___parser_prod___AUminusExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:5257 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5257);
- }
- ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5258 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5258);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5259 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5259);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5260 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5260);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos180] = 1;
- return;
-}
-void parser___parser_prod___AUminusExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5263;
- fra.me.meth = LOCATE_parser___parser_prod___AUminusExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5265 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser___parser_prod, 5265);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5266 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5267 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5267);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5268 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TMinus, ID_parser___parser_nodes___TMinus)) /*cast TMinus*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5268);
- }
- /* ./parser//parser_prod.nit:5269 */
- ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5271 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5271);
- }
- /* ./parser//parser_prod.nit:5273 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5275 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5275);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5276 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5277 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5277);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5278 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5278);
- }
- /* ./parser//parser_prod.nit:5279 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5281 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5281);
- }
- /* ./parser//parser_prod.nit:5283 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AUminusExpr___visit_all(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___parser_prod;
- fra.me.line = 5287;
- fra.me.meth = LOCATE_parser___parser_prod___AUminusExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5289 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser___parser_prod, 5289);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5290 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5290);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANewExpr___empty_init(val_t p0, int* init_table){
- int itpos181 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANewExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos181]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5294;
- fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos181] = 1;
- return;
-}
-void parser___parser_prod___ANewExpr___init_anewexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos182 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANewExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos182]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5296;
- fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___init_anewexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:5296 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5303 */
- CALL_parser___parser_prod___ANewExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:5304 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5304);
- }
- ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5305 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5305);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5306 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5306);
- }
- ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[5]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5307 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5307);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5308 */
- ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:5309 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5310 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5310);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- }
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[4])(fra.me.REG[4], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ANewExpr___init_anewexpr_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos182] = 1;
- return;
-}
- void OC_parser___parser_prod___ANewExpr___init_anewexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5312 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___init_anewexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5313 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5313);
- }
- /* ./parser//parser_prod.nit:5314 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(closctx->REG[5])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5314);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ANewExpr____n_args(closctx->REG[5]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5315 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[5]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5319;
- fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5321 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser___parser_prod, 5321);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5322 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5323 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5323);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5324 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnew, ID_parser___parser_nodes___TKwnew)) /*cast TKwnew*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5324);
- }
- /* ./parser//parser_prod.nit:5325 */
- ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5327 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5327);
- }
- /* ./parser//parser_prod.nit:5329 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5331 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 5331);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5332 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5333 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5333);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5334 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5334);
- }
- /* ./parser//parser_prod.nit:5335 */
- ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5337 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5337);
- }
- /* ./parser//parser_prod.nit:5339 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5341 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5342 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5343 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5343);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5344 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5344);
- }
- /* ./parser//parser_prod.nit:5345 */
- ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5347 */
- ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:5349 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5351 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5351);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:5351 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:5352 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5352);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5353 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5354 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5354);
- }
- /* ./parser//parser_prod.nit:5355 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5355);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5356 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5356);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:5358 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5358);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:5360 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANewExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5365;
- fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:5365 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5367 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser___parser_prod, 5367);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5368 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 5368);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5369 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5370 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5370);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:5372 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5372);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ANewExpr___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ANewExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5373 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AAttrExpr___empty_init(val_t p0, int* init_table){
- int itpos183 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos183]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5378;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos183] = 1;
- return;
-}
-void parser___parser_prod___AAttrExpr___init_aattrexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos184 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5380;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrExpr___init_aattrexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5380 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5385 */
- CALL_parser___parser_prod___AAttrExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:5386 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5386);
- }
- ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5387 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5387);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5388 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5388);
- }
- ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5389 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5389);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos184] = 1;
- return;
-}
-void parser___parser_prod___AAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5392;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5394 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5394);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5395 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5396 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5396);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5397 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5397);
- }
- /* ./parser//parser_prod.nit:5398 */
- ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5400 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5400);
- }
- /* ./parser//parser_prod.nit:5402 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5404 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5404);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5405 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5406 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5406);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5407 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5407);
- }
- /* ./parser//parser_prod.nit:5408 */
- ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5410 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5410);
- }
- /* ./parser//parser_prod.nit:5412 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAttrExpr___visit_all(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___parser_prod;
- fra.me.line = 5416;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5418 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5418);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5419 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5419);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAttrAssignExpr___empty_init(val_t p0, int* init_table){
- int itpos185 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrAssignExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos185]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5423;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrAssignExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos185] = 1;
- return;
-}
-void parser___parser_prod___AAttrAssignExpr___init_aattrassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos186 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrAssignExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} 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___parser_prod;
- fra.me.line = 5425;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrAssignExpr___init_aattrassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:5425 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5432 */
- CALL_parser___parser_prod___AAttrAssignExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:5433 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5433);
- }
- ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5434 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5434);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5435 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5435);
- }
- ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[5]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5436 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5436);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5437 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5437);
- }
- ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:5438 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5438);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5439 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5439);
- }
- ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[5]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:5440 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5440);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
- stack_frame_head = fra.me.prev;
- init_table[itpos186] = 1;
- return;
-}
-void parser___parser_prod___AAttrAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5443;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrAssignExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5445 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5445);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5446 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5447 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5447);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5448 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5448);
- }
- /* ./parser//parser_prod.nit:5449 */
- ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5451 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5451);
- }
- /* ./parser//parser_prod.nit:5453 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5455 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5455);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5456 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5457 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5457);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5458 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5458);
- }
- /* ./parser//parser_prod.nit:5459 */
- ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5461 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5461);
- }
- /* ./parser//parser_prod.nit:5463 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5465 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 5465);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5466 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5467 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5467);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5468 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5468);
- }
- /* ./parser//parser_prod.nit:5469 */
- ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5471 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5471);
- }
- /* ./parser//parser_prod.nit:5473 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5475 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5475);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5476 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5477 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5477);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5478 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5478);
- }
- /* ./parser//parser_prod.nit:5479 */
- ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5481 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5481);
- }
- /* ./parser//parser_prod.nit:5483 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAttrAssignExpr___visit_all(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___parser_prod;
- fra.me.line = 5487;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrAssignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5489 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5489);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5490 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5490);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5491 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 5491);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5492 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5492);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAttrReassignExpr___empty_init(val_t p0, int* init_table){
- int itpos187 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrReassignExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos187]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5496;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrReassignExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos187] = 1;
- return;
-}
-void parser___parser_prod___AAttrReassignExpr___init_aattrreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos188 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrReassignExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} 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___parser_prod;
- fra.me.line = 5498;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrReassignExpr___init_aattrreassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:5498 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5505 */
- CALL_parser___parser_prod___AAttrReassignExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:5506 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5506);
- }
- ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5507 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5507);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5508 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5508);
- }
- ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[5]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5509 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5509);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5510 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5510);
- }
- ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:5511 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5511);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5512 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5512);
- }
- ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[5]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:5513 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5513);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
- stack_frame_head = fra.me.prev;
- init_table[itpos188] = 1;
- return;
-}
-void parser___parser_prod___AAttrReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5516;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrReassignExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5518 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5518);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5519 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5520 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5520);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5521 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5521);
- }
- /* ./parser//parser_prod.nit:5522 */
- ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5524 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5524);
- }
- /* ./parser//parser_prod.nit:5526 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5528 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5528);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5529 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5530 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5530);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5531 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5531);
- }
- /* ./parser//parser_prod.nit:5532 */
- ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5534 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5534);
- }
- /* ./parser//parser_prod.nit:5536 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5538 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 5538);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5539 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5540 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5540);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5541 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAssignOp, ID_parser___parser_nodes___AAssignOp)) /*cast AAssignOp*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5541);
- }
- /* ./parser//parser_prod.nit:5542 */
- ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5544 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5544);
- }
- /* ./parser//parser_prod.nit:5546 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5548 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5548);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5549 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5550 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5550);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5551 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5551);
- }
- /* ./parser//parser_prod.nit:5552 */
- ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5554 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5554);
- }
- /* ./parser//parser_prod.nit:5556 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAttrReassignExpr___visit_all(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___parser_prod;
- fra.me.line = 5560;
- fra.me.meth = LOCATE_parser___parser_prod___AAttrReassignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5562 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5562);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5563 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5563);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5564 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 5564);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5565 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5565);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACallExpr___empty_init(val_t p0, int* init_table){
- int itpos189 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos189]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5569;
- fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos189] = 1;
- return;
-}
-void parser___parser_prod___ACallExpr___init_acallexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos190 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} 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___parser_prod;
- fra.me.line = 5571;
- fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___init_acallexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:5571 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5578 */
- CALL_parser___parser_prod___ACallExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:5579 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5579);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5580 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5580);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:5581 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5581);
- }
- ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[5]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5582 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5582);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallExpr___init_acallexpr_1));
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[4])(fra.me.REG[4], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallExpr___init_acallexpr_2));
- stack_frame_head = fra.me.prev;
- init_table[itpos190] = 1;
- return;
-}
- void OC_parser___parser_prod___ACallExpr___init_acallexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5583 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___init_acallexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5584 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5584);
- }
- /* ./parser//parser_prod.nit:5585 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[5])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5585);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[5]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5586 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[5]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___ACallExpr___init_acallexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5588 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___init_acallexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5589 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5589);
- }
- /* ./parser//parser_prod.nit:5590 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(closctx->REG[5])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5590);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(closctx->REG[5]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5591 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[5]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5595;
- fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5597 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5597);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5598 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5599 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5599);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5600 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5600);
- }
- /* ./parser//parser_prod.nit:5601 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5603 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5603);
- }
- /* ./parser//parser_prod.nit:5605 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5607 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5607);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5608 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5609 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5609);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5610 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5610);
- }
- /* ./parser//parser_prod.nit:5611 */
- ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5613 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5613);
- }
- /* ./parser//parser_prod.nit:5615 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5617 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5617);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:5617 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:5618 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5618);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5619 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5620 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5620);
- }
- /* ./parser//parser_prod.nit:5621 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5621);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5622 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5622);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:5624 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5624);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:5626 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:5629 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5629);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:5629 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:5630 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5630);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5631 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5632 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5632);
- }
- /* ./parser//parser_prod.nit:5633 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5633);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5634 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5634);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:5636 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5636);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:5638 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label3;
- }
- }
- label3: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACallExpr___visit_all(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___parser_prod;
- fra.me.line = 5643;
- fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5645 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5645);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5646 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5646);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5647 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5647);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallExpr___visit_all_1));
- /* ./parser//parser_prod.nit:5650 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5650);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallExpr___visit_all_2));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ACallExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5648 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___ACallExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5651 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ACallAssignExpr___empty_init(val_t p0, int* init_table){
- int itpos191 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallAssignExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos191]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5656;
- fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos191] = 1;
- return;
-}
-void parser___parser_prod___ACallAssignExpr___init_acallassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
- int itpos192 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallAssignExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[6];} 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___parser_prod;
- fra.me.line = 5658;
- fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___init_acallassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 7;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- /* ./parser//parser_prod.nit:5658 */
- fra.me.REG[6] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5666 */
- CALL_parser___parser_prod___ACallAssignExpr___empty_init(fra.me.REG[6])(fra.me.REG[6], init_table);
- /* ./parser//parser_prod.nit:5667 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5667);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[6]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5668 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5668);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:5669 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5669);
- }
- ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[6]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5670 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5670);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallAssignExpr___init_acallassignexpr_1));
- /* ./parser//parser_prod.nit:5676 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5676);
- }
- ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[6]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:5677 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5677);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:5678 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5678);
- }
- ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[6]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:5679 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5679);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
- stack_frame_head = fra.me.prev;
- init_table[itpos192] = 1;
- return;
-}
- void OC_parser___parser_prod___ACallAssignExpr___init_acallassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5671 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___init_acallassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5672 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5672);
- }
- /* ./parser//parser_prod.nit:5673 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[6])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5673);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[6]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5674 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[6]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5682;
- fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5684 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5684);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5685 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5686 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5686);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5687 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5687);
- }
- /* ./parser//parser_prod.nit:5688 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5690 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5690);
- }
- /* ./parser//parser_prod.nit:5692 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5694 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5694);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5695 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5696 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5696);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5697 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5697);
- }
- /* ./parser//parser_prod.nit:5698 */
- ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5700 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5700);
- }
- /* ./parser//parser_prod.nit:5702 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5704 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5704);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:5704 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:5705 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5705);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5706 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5707 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5707);
- }
- /* ./parser//parser_prod.nit:5708 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5708);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5709 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5709);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:5711 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5711);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:5713 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:5716 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 5716);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5717 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5718 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5718);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5719 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5719);
- }
- /* ./parser//parser_prod.nit:5720 */
- ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5722 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5722);
- }
- /* ./parser//parser_prod.nit:5724 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5726 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5726);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5727 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5728 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5728);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5729 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5729);
- }
- /* ./parser//parser_prod.nit:5730 */
- ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5732 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5732);
- }
- /* ./parser//parser_prod.nit:5734 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACallAssignExpr___visit_all(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___parser_prod;
- fra.me.line = 5738;
- fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5740 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5740);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5741 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5741);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5742 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5742);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallAssignExpr___visit_all_1));
- /* ./parser//parser_prod.nit:5745 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 5745);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5746 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5746);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ACallAssignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5743 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ACallReassignExpr___empty_init(val_t p0, int* init_table){
- int itpos193 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallReassignExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos193]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5750;
- fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos193] = 1;
- return;
-}
-void parser___parser_prod___ACallReassignExpr___init_acallreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
- int itpos194 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallReassignExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[6];} 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___parser_prod;
- fra.me.line = 5752;
- fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___init_acallreassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 7;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- /* ./parser//parser_prod.nit:5752 */
- fra.me.REG[6] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5760 */
- CALL_parser___parser_prod___ACallReassignExpr___empty_init(fra.me.REG[6])(fra.me.REG[6], init_table);
- /* ./parser//parser_prod.nit:5761 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5761);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[6]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5762 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5762);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:5763 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5763);
- }
- ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[6]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5764 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5764);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallReassignExpr___init_acallreassignexpr_1));
- /* ./parser//parser_prod.nit:5770 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5770);
- }
- ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[6]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:5771 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5771);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[6]);
- /* ./parser//parser_prod.nit:5772 */
- REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5772);
- }
- ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[6]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:5773 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5773);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
- stack_frame_head = fra.me.prev;
- init_table[itpos194] = 1;
- return;
-}
- void OC_parser___parser_prod___ACallReassignExpr___init_acallreassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5765 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___init_acallreassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5766 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5766);
- }
- /* ./parser//parser_prod.nit:5767 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[6])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5767);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[6]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5768 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[6]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5776;
- fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5778 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5778);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5779 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5780 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5780);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5781 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5781);
- }
- /* ./parser//parser_prod.nit:5782 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5784 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5784);
- }
- /* ./parser//parser_prod.nit:5786 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5788 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5788);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5789 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5790 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5790);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5791 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5791);
- }
- /* ./parser//parser_prod.nit:5792 */
- ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5794 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5794);
- }
- /* ./parser//parser_prod.nit:5796 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5798 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5798);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:5798 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:5799 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5799);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5800 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5801 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5801);
- }
- /* ./parser//parser_prod.nit:5802 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5802);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5803 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5803);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:5805 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5805);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:5807 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:5810 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 5810);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5811 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5812 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5812);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5813 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAssignOp, ID_parser___parser_nodes___AAssignOp)) /*cast AAssignOp*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5813);
- }
- /* ./parser//parser_prod.nit:5814 */
- ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5816 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5816);
- }
- /* ./parser//parser_prod.nit:5818 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5820 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5820);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5821 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5822 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5822);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5823 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5823);
- }
- /* ./parser//parser_prod.nit:5824 */
- ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5826 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5826);
- }
- /* ./parser//parser_prod.nit:5828 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACallReassignExpr___visit_all(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___parser_prod;
- fra.me.line = 5832;
- fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5834 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5834);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5835 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5835);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5836 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5836);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallReassignExpr___visit_all_1));
- /* ./parser//parser_prod.nit:5839 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 5839);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5840 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5840);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ACallReassignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5837 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ASuperExpr___empty_init(val_t p0, int* init_table){
- int itpos195 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos195]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5844;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos195] = 1;
- return;
-}
-void parser___parser_prod___ASuperExpr___init_asuperexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos196 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos196]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5846;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___init_asuperexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:5846 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5852 */
- CALL_parser___parser_prod___ASuperExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:5853 */
- ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5854 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5855 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5855);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:5857 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5857);
- }
- ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5858 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5858);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASuperExpr___init_asuperexpr_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos196] = 1;
- return;
-}
- void OC_parser___parser_prod___ASuperExpr___init_asuperexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5859 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___init_asuperexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5860 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5860);
- }
- /* ./parser//parser_prod.nit:5861 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(closctx->REG[4])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5861);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ASuperExpr____n_args(closctx->REG[4]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5862 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[4]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5866;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5868 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5869 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5870 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5870);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5871 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AQualified, ID_parser___parser_nodes___AQualified)) /*cast AQualified*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5871);
- }
- /* ./parser//parser_prod.nit:5872 */
- ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5874 */
- ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:5876 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5878 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser___parser_prod, 5878);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5879 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5880 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5880);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5881 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwsuper, ID_parser___parser_nodes___TKwsuper)) /*cast TKwsuper*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5881);
- }
- /* ./parser//parser_prod.nit:5882 */
- ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5884 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5884);
- }
- /* ./parser//parser_prod.nit:5886 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5888 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5888);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:5888 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:5889 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5889);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5890 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5891 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5891);
- }
- /* ./parser//parser_prod.nit:5892 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5892);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5893 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5893);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:5895 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5895);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:5897 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASuperExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 5902;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:5902 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5904 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5905 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AQualified, ID_parser___parser_nodes___AQualified)) /*cast AQualified*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5905);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:5907 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser___parser_prod, 5907);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:5908 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5908);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASuperExpr___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ASuperExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5909 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AInitExpr___empty_init(val_t p0, int* init_table){
- int itpos197 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInitExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos197]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5914;
- fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos197] = 1;
- return;
-}
-void parser___parser_prod___AInitExpr___init_ainitexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos198 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInitExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 5916;
- fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___init_ainitexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:5916 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5922 */
- CALL_parser___parser_prod___AInitExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:5923 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5923);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5924 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5924);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:5925 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5925);
- }
- ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:5926 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5926);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AInitExpr___init_ainitexpr_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos198] = 1;
- return;
-}
- void OC_parser___parser_prod___AInitExpr___init_ainitexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5927 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___init_ainitexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5928 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5928);
- }
- /* ./parser//parser_prod.nit:5929 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(closctx->REG[4])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5929);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AInitExpr____n_args(closctx->REG[4]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5930 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[4]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5934;
- fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:5936 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5936);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5937 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5938 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5938);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5939 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5939);
- }
- /* ./parser//parser_prod.nit:5940 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5942 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5942);
- }
- /* ./parser//parser_prod.nit:5944 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5946 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser___parser_prod, 5946);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5947 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:5948 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5948);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5949 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwinit, ID_parser___parser_nodes___TKwinit)) /*cast TKwinit*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5949);
- }
- /* ./parser//parser_prod.nit:5950 */
- ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:5952 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5952);
- }
- /* ./parser//parser_prod.nit:5954 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:5956 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5956);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:5956 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:5957 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5957);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5958 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:5959 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5959);
- }
- /* ./parser//parser_prod.nit:5960 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5960);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5961 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5961);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:5963 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5963);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:5965 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AInitExpr___visit_all(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___parser_prod;
- fra.me.line = 5970;
- fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:5972 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5972);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5973 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser___parser_prod, 5973);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:5974 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5974);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AInitExpr___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AInitExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5975 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ABraExpr___empty_init(val_t p0, int* init_table){
- int itpos199 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos199]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 5980;
- fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos199] = 1;
- return;
-}
-void parser___parser_prod___ABraExpr___init_abraexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos200 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 5982;
- fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___init_abraexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:5982 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:5988 */
- CALL_parser___parser_prod___ABraExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:5989 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5989);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:5990 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5990);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraExpr___init_abraexpr_1));
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraExpr___init_abraexpr_2));
- stack_frame_head = fra.me.prev;
- init_table[itpos200] = 1;
- return;
-}
- void OC_parser___parser_prod___ABraExpr___init_abraexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5991 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___init_abraexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5992 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5992);
- }
- /* ./parser//parser_prod.nit:5993 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[4])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5993);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[4]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5994 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[4]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___ABraExpr___init_abraexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:5996 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___init_abraexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:5997 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5997);
- }
- /* ./parser//parser_prod.nit:5998 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(closctx->REG[4])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5998);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(closctx->REG[4]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:5999 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[4]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6003;
- fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6005 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6005);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6006 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6007 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6007);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6008 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6008);
- }
- /* ./parser//parser_prod.nit:6009 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6011 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6011);
- }
- /* ./parser//parser_prod.nit:6013 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6015 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6015);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:6015 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:6016 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6016);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6017 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6018 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6018);
- }
- /* ./parser//parser_prod.nit:6019 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6019);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6020 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6020);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:6022 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6022);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:6024 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:6027 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6027);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:6027 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:6028 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6028);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6029 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6030 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6030);
- }
- /* ./parser//parser_prod.nit:6031 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6031);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6032 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6032);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:6034 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6034);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:6036 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label3;
- }
- }
- label3: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABraExpr___visit_all(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___parser_prod;
- fra.me.line = 6041;
- fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6043 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6043);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6044 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6044);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraExpr___visit_all_1));
- /* ./parser//parser_prod.nit:6047 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6047);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraExpr___visit_all_2));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ABraExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6045 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___ABraExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6048 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ABraAssignExpr___empty_init(val_t p0, int* init_table){
- int itpos201 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraAssignExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos201]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6053;
- fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos201] = 1;
- return;
-}
-void parser___parser_prod___ABraAssignExpr___init_abraassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos202 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraAssignExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} 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___parser_prod;
- fra.me.line = 6055;
- fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___init_abraassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:6055 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6062 */
- CALL_parser___parser_prod___ABraAssignExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:6063 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6063);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6064 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6064);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraAssignExpr___init_abraassignexpr_1));
- /* ./parser//parser_prod.nit:6070 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6070);
- }
- ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:6071 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6071);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:6072 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6072);
- }
- ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[5]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:6073 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6073);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
- stack_frame_head = fra.me.prev;
- init_table[itpos202] = 1;
- return;
-}
- void OC_parser___parser_prod___ABraAssignExpr___init_abraassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:6065 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___init_abraassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6066 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6066);
- }
- /* ./parser//parser_prod.nit:6067 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[5])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6067);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[5]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6068 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[5]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6076;
- fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6078 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6078);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6079 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6080 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6080);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6081 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6081);
- }
- /* ./parser//parser_prod.nit:6082 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6084 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6084);
- }
- /* ./parser//parser_prod.nit:6086 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6088 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6088);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:6088 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:6089 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6089);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6090 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6091 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6091);
- }
- /* ./parser//parser_prod.nit:6092 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6092);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6093 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6093);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:6095 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6095);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:6097 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:6100 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 6100);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6101 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6102 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6102);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6103 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6103);
- }
- /* ./parser//parser_prod.nit:6104 */
- ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6106 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6106);
- }
- /* ./parser//parser_prod.nit:6108 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6110 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6110);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6111 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6112 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6112);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6113 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6113);
- }
- /* ./parser//parser_prod.nit:6114 */
- ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6116 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6116);
- }
- /* ./parser//parser_prod.nit:6118 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABraAssignExpr___visit_all(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___parser_prod;
- fra.me.line = 6122;
- fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6124 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6124);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6125 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6125);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraAssignExpr___visit_all_1));
- /* ./parser//parser_prod.nit:6128 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 6128);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6129 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6129);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ABraAssignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6126 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ABraReassignExpr___empty_init(val_t p0, int* init_table){
- int itpos203 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraReassignExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos203]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6133;
- fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos203] = 1;
- return;
-}
-void parser___parser_prod___ABraReassignExpr___init_abrareassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos204 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraReassignExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} 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___parser_prod;
- fra.me.line = 6135;
- fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___init_abrareassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:6135 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6142 */
- CALL_parser___parser_prod___ABraReassignExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:6143 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6143);
- }
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6144 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6144);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraReassignExpr___init_abrareassignexpr_1));
- /* ./parser//parser_prod.nit:6150 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6150);
- }
- ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:6151 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6151);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:6152 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6152);
- }
- ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[5]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:6153 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6153);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
- stack_frame_head = fra.me.prev;
- init_table[itpos204] = 1;
- return;
-}
- void OC_parser___parser_prod___ABraReassignExpr___init_abrareassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:6145 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___init_abrareassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6146 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6146);
- }
- /* ./parser//parser_prod.nit:6147 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[5])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6147);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[5]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6148 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[5]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6156;
- fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6158 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6158);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6159 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6160 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6160);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6161 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6161);
- }
- /* ./parser//parser_prod.nit:6162 */
- ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6164 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6164);
- }
- /* ./parser//parser_prod.nit:6166 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6168 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6168);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:6168 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:6169 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6169);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6170 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6171 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6171);
- }
- /* ./parser//parser_prod.nit:6172 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6172);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6173 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6173);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:6175 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6175);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:6177 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:6180 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 6180);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6181 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6182 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6182);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6183 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAssignOp, ID_parser___parser_nodes___AAssignOp)) /*cast AAssignOp*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6183);
- }
- /* ./parser//parser_prod.nit:6184 */
- ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6186 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6186);
- }
- /* ./parser//parser_prod.nit:6188 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6190 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6190);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6191 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6192 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6192);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6193 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6193);
- }
- /* ./parser//parser_prod.nit:6194 */
- ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6196 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6196);
- }
- /* ./parser//parser_prod.nit:6198 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABraReassignExpr___visit_all(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___parser_prod;
- fra.me.line = 6202;
- fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6204 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6204);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6205 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6205);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraReassignExpr___visit_all_1));
- /* ./parser//parser_prod.nit:6208 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 6208);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6209 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6209);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ABraReassignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6206 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AClosureCallExpr___empty_init(val_t p0, int* init_table){
- int itpos205 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureCallExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos205]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6213;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos205] = 1;
- return;
-}
-void parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos206 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureCallExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 6215;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:6215 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6221 */
- CALL_parser___parser_prod___AClosureCallExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:6222 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6222);
- }
- ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6223 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6223);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr_1));
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr_2));
- stack_frame_head = fra.me.prev;
- init_table[itpos206] = 1;
- return;
-}
- void OC_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:6224 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6225 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6225);
- }
- /* ./parser//parser_prod.nit:6226 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(closctx->REG[4])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6226);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(closctx->REG[4]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6227 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[4]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:6229 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6230 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6230);
- }
- /* ./parser//parser_prod.nit:6231 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(closctx->REG[4])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6231);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(closctx->REG[4]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6232 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[4]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6236;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6238 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6238);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6239 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6240 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6240);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6241 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6241);
- }
- /* ./parser//parser_prod.nit:6242 */
- ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6244 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6244);
- }
- /* ./parser//parser_prod.nit:6246 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6248 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6248);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:6248 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:6249 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6249);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6250 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6251 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6251);
- }
- /* ./parser//parser_prod.nit:6252 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6252);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6253 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6253);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:6255 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6255);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:6257 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:6260 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6260);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:6260 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:6261 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6261);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6262 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6263 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6263);
- }
- /* ./parser//parser_prod.nit:6264 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6264);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6265 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6265);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:6267 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6267);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:6269 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label3;
- }
- }
- label3: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AClosureCallExpr___visit_all(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___parser_prod;
- fra.me.line = 6274;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6276 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6276);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6277 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6277);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureCallExpr___visit_all_1));
- /* ./parser//parser_prod.nit:6280 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6280);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureCallExpr___visit_all_2));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AClosureCallExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6278 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
- void OC_parser___parser_prod___AClosureCallExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6281 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AVarExpr___empty_init(val_t p0, int* init_table){
- int itpos207 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos207]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6286;
- fra.me.meth = LOCATE_parser___parser_prod___AVarExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos207] = 1;
- return;
-}
-void parser___parser_prod___AVarExpr___init_avarexpr(val_t p0, val_t p1, int* init_table){
- int itpos208 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6288;
- fra.me.meth = LOCATE_parser___parser_prod___AVarExpr___init_avarexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6288 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6292 */
- CALL_parser___parser_prod___AVarExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6293 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6293);
- }
- ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6294 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6294);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos208] = 1;
- return;
-}
-void parser___parser_prod___AVarExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6297;
- fra.me.meth = LOCATE_parser___parser_prod___AVarExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6299 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6299);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6300 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6301 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6301);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6302 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6302);
- }
- /* ./parser//parser_prod.nit:6303 */
- ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6305 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6305);
- }
- /* ./parser//parser_prod.nit:6307 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AVarExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6311;
- fra.me.meth = LOCATE_parser___parser_prod___AVarExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6313 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6313);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AVarAssignExpr___empty_init(val_t p0, int* init_table){
- int itpos209 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarAssignExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos209]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6317;
- fra.me.meth = LOCATE_parser___parser_prod___AVarAssignExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos209] = 1;
- return;
-}
-void parser___parser_prod___AVarAssignExpr___init_avarassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos210 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarAssignExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 6319;
- fra.me.meth = LOCATE_parser___parser_prod___AVarAssignExpr___init_avarassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:6319 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6325 */
- CALL_parser___parser_prod___AVarAssignExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:6326 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6326);
- }
- ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6327 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6327);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:6328 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6328);
- }
- ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:6329 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6329);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:6330 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6330);
- }
- ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:6331 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6331);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos210] = 1;
- return;
-}
-void parser___parser_prod___AVarAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6334;
- fra.me.meth = LOCATE_parser___parser_prod___AVarAssignExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6336 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6336);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6337 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6338 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6338);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6339 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6339);
- }
- /* ./parser//parser_prod.nit:6340 */
- ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6342 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6342);
- }
- /* ./parser//parser_prod.nit:6344 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6346 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 6346);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6347 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6348 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6348);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6349 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6349);
- }
- /* ./parser//parser_prod.nit:6350 */
- ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6352 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6352);
- }
- /* ./parser//parser_prod.nit:6354 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6356 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6356);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6357 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6358 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6358);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6359 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6359);
- }
- /* ./parser//parser_prod.nit:6360 */
- ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6362 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6362);
- }
- /* ./parser//parser_prod.nit:6364 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AVarAssignExpr___visit_all(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___parser_prod;
- fra.me.line = 6368;
- fra.me.meth = LOCATE_parser___parser_prod___AVarAssignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6370 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6370);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6371 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 6371);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6372 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6372);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AVarReassignExpr___empty_init(val_t p0, int* init_table){
- int itpos211 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarReassignExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos211]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6376;
- fra.me.meth = LOCATE_parser___parser_prod___AVarReassignExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos211] = 1;
- return;
-}
-void parser___parser_prod___AVarReassignExpr___init_avarreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos212 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarReassignExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 6378;
- fra.me.meth = LOCATE_parser___parser_prod___AVarReassignExpr___init_avarreassignexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:6378 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6384 */
- CALL_parser___parser_prod___AVarReassignExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:6385 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6385);
- }
- ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6386 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6386);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:6387 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6387);
- }
- ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:6388 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6388);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:6389 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6389);
- }
- ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:6390 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6390);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos212] = 1;
- return;
-}
-void parser___parser_prod___AVarReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6393;
- fra.me.meth = LOCATE_parser___parser_prod___AVarReassignExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6395 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6395);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6396 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6397 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6397);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6398 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6398);
- }
- /* ./parser//parser_prod.nit:6399 */
- ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6401 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6401);
- }
- /* ./parser//parser_prod.nit:6403 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6405 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 6405);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6406 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6407 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6407);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6408 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAssignOp, ID_parser___parser_nodes___AAssignOp)) /*cast AAssignOp*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6408);
- }
- /* ./parser//parser_prod.nit:6409 */
- ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6411 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6411);
- }
- /* ./parser//parser_prod.nit:6413 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6415 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6415);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6416 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6417 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6417);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6418 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6418);
- }
- /* ./parser//parser_prod.nit:6419 */
- ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6421 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6421);
- }
- /* ./parser//parser_prod.nit:6423 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AVarReassignExpr___visit_all(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___parser_prod;
- fra.me.line = 6427;
- fra.me.meth = LOCATE_parser___parser_prod___AVarReassignExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6429 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6429);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6430 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 6430);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6431 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6431);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ARangeExpr___empty_init(val_t p0, int* init_table){
- int itpos213 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ARangeExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos213]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6435;
- fra.me.meth = LOCATE_parser___parser_prod___ARangeExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos213] = 1;
- return;
-}
-void parser___parser_prod___ARangeExpr___init_arangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos214 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ARangeExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6437;
- fra.me.meth = LOCATE_parser___parser_prod___ARangeExpr___init_arangeexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6437 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6442 */
- CALL_parser___parser_prod___ARangeExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:6443 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6443);
- }
- ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6444 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6444);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:6445 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6445);
- }
- ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:6446 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6446);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos214] = 1;
- return;
-}
-void parser___parser_prod___ARangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6449;
- fra.me.meth = LOCATE_parser___parser_prod___ARangeExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6451 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6451);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6452 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6453 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6453);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6454 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6454);
- }
- /* ./parser//parser_prod.nit:6455 */
- ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6457 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6457);
- }
- /* ./parser//parser_prod.nit:6459 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6461 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6461);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6462 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6463 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6463);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6464 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6464);
- }
- /* ./parser//parser_prod.nit:6465 */
- ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6467 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6467);
- }
- /* ./parser//parser_prod.nit:6469 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ARangeExpr___visit_all(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___parser_prod;
- fra.me.line = 6473;
- fra.me.meth = LOCATE_parser___parser_prod___ARangeExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6475 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6475);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6476 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6476);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACrangeExpr___empty_init(val_t p0, int* init_table){
- int itpos215 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACrangeExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos215]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6480;
- fra.me.meth = LOCATE_parser___parser_prod___ACrangeExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos215] = 1;
- return;
-}
-void parser___parser_prod___ACrangeExpr___init_acrangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos216 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACrangeExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6482;
- fra.me.meth = LOCATE_parser___parser_prod___ACrangeExpr___init_acrangeexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6482 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6487 */
- CALL_parser___parser_prod___ACrangeExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:6488 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6488);
- }
- ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6489 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6489);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:6490 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6490);
- }
- ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:6491 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6491);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos216] = 1;
- return;
-}
-void parser___parser_prod___ACrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6494;
- fra.me.meth = LOCATE_parser___parser_prod___ACrangeExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6496 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6496);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6497 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6498 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6498);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6499 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6499);
- }
- /* ./parser//parser_prod.nit:6500 */
- ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6502 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6502);
- }
- /* ./parser//parser_prod.nit:6504 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6506 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6506);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6507 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6508 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6508);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6509 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6509);
- }
- /* ./parser//parser_prod.nit:6510 */
- ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6512 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6512);
- }
- /* ./parser//parser_prod.nit:6514 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACrangeExpr___visit_all(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___parser_prod;
- fra.me.line = 6518;
- fra.me.meth = LOCATE_parser___parser_prod___ACrangeExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6520 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6520);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6521 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6521);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AOrangeExpr___empty_init(val_t p0, int* init_table){
- int itpos217 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrangeExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos217]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6525;
- fra.me.meth = LOCATE_parser___parser_prod___AOrangeExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos217] = 1;
- return;
-}
-void parser___parser_prod___AOrangeExpr___init_aorangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos218 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrangeExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6527;
- fra.me.meth = LOCATE_parser___parser_prod___AOrangeExpr___init_aorangeexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6527 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6532 */
- CALL_parser___parser_prod___AOrangeExpr___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:6533 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6533);
- }
- ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6534 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6534);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:6535 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6535);
- }
- ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[3]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:6536 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6536);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- stack_frame_head = fra.me.prev;
- init_table[itpos218] = 1;
- return;
-}
-void parser___parser_prod___AOrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6539;
- fra.me.meth = LOCATE_parser___parser_prod___AOrangeExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6541 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6541);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6542 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6543 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6543);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6544 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6544);
- }
- /* ./parser//parser_prod.nit:6545 */
- ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6547 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6547);
- }
- /* ./parser//parser_prod.nit:6549 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:6551 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6551);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6552 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6553 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6553);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6554 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6554);
- }
- /* ./parser//parser_prod.nit:6555 */
- ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6557 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6557);
- }
- /* ./parser//parser_prod.nit:6559 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AOrangeExpr___visit_all(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___parser_prod;
- fra.me.line = 6563;
- fra.me.meth = LOCATE_parser___parser_prod___AOrangeExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6565 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6565);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6566 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6566);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AArrayExpr___empty_init(val_t p0, int* init_table){
- int itpos219 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AArrayExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos219]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6570;
- fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos219] = 1;
- return;
-}
-void parser___parser_prod___AArrayExpr___init_aarrayexpr(val_t p0, val_t p1, int* init_table){
- int itpos220 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AArrayExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- if (init_table[itpos220]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6572;
- fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___init_aarrayexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6576 */
- CALL_parser___parser_prod___AArrayExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AArrayExpr___init_aarrayexpr_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos220] = 1;
- return;
-}
- void OC_parser___parser_prod___AArrayExpr___init_aarrayexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:6577 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___init_aarrayexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6578 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6578);
- }
- /* ./parser//parser_prod.nit:6579 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6579);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6580 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AArrayExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6584;
- fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6586 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6586);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:6586 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:6587 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6587);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6588 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6589 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6589);
- }
- /* ./parser//parser_prod.nit:6590 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6590);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6591 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6591);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:6593 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6593);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:6595 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AArrayExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6600;
- fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6602 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6602);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AArrayExpr___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AArrayExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6603 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ASelfExpr___empty_init(val_t p0, int* init_table){
- int itpos221 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASelfExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos221]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6608;
- fra.me.meth = LOCATE_parser___parser_prod___ASelfExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos221] = 1;
- return;
-}
-void parser___parser_prod___ASelfExpr___init_aselfexpr(val_t p0, val_t p1, int* init_table){
- int itpos222 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASelfExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6610;
- fra.me.meth = LOCATE_parser___parser_prod___ASelfExpr___init_aselfexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6610 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6614 */
- CALL_parser___parser_prod___ASelfExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6615 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6615);
- }
- ATTR_parser___parser_nodes___ASelfExpr____n_kwself(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6616 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6616);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos222] = 1;
- return;
-}
-void parser___parser_prod___ASelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6619;
- fra.me.meth = LOCATE_parser___parser_prod___ASelfExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6621 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6622 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6623 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6623);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6624 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwself, ID_parser___parser_nodes___TKwself)) /*cast TKwself*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6624);
- }
- /* ./parser//parser_prod.nit:6625 */
- ATTR_parser___parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6627 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6627);
- }
- /* ./parser//parser_prod.nit:6629 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASelfExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6633;
- fra.me.meth = LOCATE_parser___parser_prod___ASelfExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6635 */
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AImplicitSelfExpr___empty_init(val_t p0, int* init_table){
- int itpos223 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AImplicitSelfExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos223]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6639;
- fra.me.meth = LOCATE_parser___parser_prod___AImplicitSelfExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos223] = 1;
- return;
-}
-void parser___parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(val_t p0, int* init_table){
- int itpos224 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AImplicitSelfExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos224]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6641;
- fra.me.meth = LOCATE_parser___parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- /* ./parser//parser_prod.nit:6643 */
- CALL_parser___parser_prod___AImplicitSelfExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- stack_frame_head = fra.me.prev;
- init_table[itpos224] = 1;
- return;
-}
-void parser___parser_prod___AImplicitSelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6646;
- fra.me.meth = LOCATE_parser___parser_prod___AImplicitSelfExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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;
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AImplicitSelfExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6650;
- fra.me.meth = LOCATE_parser___parser_prod___AImplicitSelfExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ATrueExpr___empty_init(val_t p0, int* init_table){
- int itpos225 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATrueExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos225]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6655;
- fra.me.meth = LOCATE_parser___parser_prod___ATrueExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos225] = 1;
- return;
-}
-void parser___parser_prod___ATrueExpr___init_atrueexpr(val_t p0, val_t p1, int* init_table){
- int itpos226 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATrueExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6657;
- fra.me.meth = LOCATE_parser___parser_prod___ATrueExpr___init_atrueexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6657 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6661 */
- CALL_parser___parser_prod___ATrueExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6662 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6662);
- }
- ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6663 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6663);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos226] = 1;
- return;
-}
-void parser___parser_prod___ATrueExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6666;
- fra.me.meth = LOCATE_parser___parser_prod___ATrueExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6668 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwtrue", LOCATE_parser___parser_prod, 6668);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6669 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6670 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6670);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6671 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwtrue, ID_parser___parser_nodes___TKwtrue)) /*cast TKwtrue*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6671);
- }
- /* ./parser//parser_prod.nit:6672 */
- ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6674 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6674);
- }
- /* ./parser//parser_prod.nit:6676 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ATrueExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6680;
- fra.me.meth = LOCATE_parser___parser_prod___ATrueExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6682 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwtrue", LOCATE_parser___parser_prod, 6682);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AFalseExpr___empty_init(val_t p0, int* init_table){
- int itpos227 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFalseExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos227]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6686;
- fra.me.meth = LOCATE_parser___parser_prod___AFalseExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos227] = 1;
- return;
-}
-void parser___parser_prod___AFalseExpr___init_afalseexpr(val_t p0, val_t p1, int* init_table){
- int itpos228 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFalseExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6688;
- fra.me.meth = LOCATE_parser___parser_prod___AFalseExpr___init_afalseexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6688 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6692 */
- CALL_parser___parser_prod___AFalseExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6693 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6693);
- }
- ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6694 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6694);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos228] = 1;
- return;
-}
-void parser___parser_prod___AFalseExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6697;
- fra.me.meth = LOCATE_parser___parser_prod___AFalseExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6699 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwfalse", LOCATE_parser___parser_prod, 6699);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6700 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6701 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6701);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6702 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwfalse, ID_parser___parser_nodes___TKwfalse)) /*cast TKwfalse*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6702);
- }
- /* ./parser//parser_prod.nit:6703 */
- ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6705 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6705);
- }
- /* ./parser//parser_prod.nit:6707 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AFalseExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6711;
- fra.me.meth = LOCATE_parser___parser_prod___AFalseExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6713 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwfalse", LOCATE_parser___parser_prod, 6713);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANullExpr___empty_init(val_t p0, int* init_table){
- int itpos229 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANullExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos229]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6717;
- fra.me.meth = LOCATE_parser___parser_prod___ANullExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos229] = 1;
- return;
-}
-void parser___parser_prod___ANullExpr___init_anullexpr(val_t p0, val_t p1, int* init_table){
- int itpos230 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANullExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6719;
- fra.me.meth = LOCATE_parser___parser_prod___ANullExpr___init_anullexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6719 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6723 */
- CALL_parser___parser_prod___ANullExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6724 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6724);
- }
- ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6725 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6725);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos230] = 1;
- return;
-}
-void parser___parser_prod___ANullExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6728;
- fra.me.meth = LOCATE_parser___parser_prod___ANullExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6730 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser___parser_prod, 6730);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6731 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6732 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6732);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6733 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnull, ID_parser___parser_nodes___TKwnull)) /*cast TKwnull*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6733);
- }
- /* ./parser//parser_prod.nit:6734 */
- ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6736 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6736);
- }
- /* ./parser//parser_prod.nit:6738 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ANullExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6742;
- fra.me.meth = LOCATE_parser___parser_prod___ANullExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6744 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser___parser_prod, 6744);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIntExpr___empty_init(val_t p0, int* init_table){
- int itpos231 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIntExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos231]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6748;
- fra.me.meth = LOCATE_parser___parser_prod___AIntExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos231] = 1;
- return;
-}
-void parser___parser_prod___AIntExpr___init_aintexpr(val_t p0, val_t p1, int* init_table){
- int itpos232 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIntExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6750;
- fra.me.meth = LOCATE_parser___parser_prod___AIntExpr___init_aintexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6750 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6754 */
- CALL_parser___parser_prod___AIntExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6755 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6755);
- }
- ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6756 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6756);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos232] = 1;
- return;
-}
-void parser___parser_prod___AIntExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6759;
- fra.me.meth = LOCATE_parser___parser_prod___AIntExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6761 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_number", LOCATE_parser___parser_prod, 6761);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6762 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6763 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6763);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6764 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TNumber, ID_parser___parser_nodes___TNumber)) /*cast TNumber*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6764);
- }
- /* ./parser//parser_prod.nit:6765 */
- ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6767 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6767);
- }
- /* ./parser//parser_prod.nit:6769 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIntExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6773;
- fra.me.meth = LOCATE_parser___parser_prod___AIntExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6775 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_number", LOCATE_parser___parser_prod, 6775);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AFloatExpr___empty_init(val_t p0, int* init_table){
- int itpos233 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFloatExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos233]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6779;
- fra.me.meth = LOCATE_parser___parser_prod___AFloatExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos233] = 1;
- return;
-}
-void parser___parser_prod___AFloatExpr___init_afloatexpr(val_t p0, val_t p1, int* init_table){
- int itpos234 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFloatExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6781;
- fra.me.meth = LOCATE_parser___parser_prod___AFloatExpr___init_afloatexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6781 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6785 */
- CALL_parser___parser_prod___AFloatExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6786 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6786);
- }
- ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6787 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6787);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos234] = 1;
- return;
-}
-void parser___parser_prod___AFloatExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6790;
- fra.me.meth = LOCATE_parser___parser_prod___AFloatExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6792 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_float", LOCATE_parser___parser_prod, 6792);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6793 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6794 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6794);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6795 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TFloat, ID_parser___parser_nodes___TFloat)) /*cast TFloat*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6795);
- }
- /* ./parser//parser_prod.nit:6796 */
- ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6798 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6798);
- }
- /* ./parser//parser_prod.nit:6800 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AFloatExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6804;
- fra.me.meth = LOCATE_parser___parser_prod___AFloatExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6806 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_float", LOCATE_parser___parser_prod, 6806);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACharExpr___empty_init(val_t p0, int* init_table){
- int itpos235 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACharExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos235]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6810;
- fra.me.meth = LOCATE_parser___parser_prod___ACharExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos235] = 1;
- return;
-}
-void parser___parser_prod___ACharExpr___init_acharexpr(val_t p0, val_t p1, int* init_table){
- int itpos236 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACharExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6812;
- fra.me.meth = LOCATE_parser___parser_prod___ACharExpr___init_acharexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6812 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6816 */
- CALL_parser___parser_prod___ACharExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6817 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6817);
- }
- ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6818 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6818);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos236] = 1;
- return;
-}
-void parser___parser_prod___ACharExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6821;
- fra.me.meth = LOCATE_parser___parser_prod___ACharExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6823 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_char", LOCATE_parser___parser_prod, 6823);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6824 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6825 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6825);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6826 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TChar, ID_parser___parser_nodes___TChar)) /*cast TChar*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6826);
- }
- /* ./parser//parser_prod.nit:6827 */
- ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6829 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6829);
- }
- /* ./parser//parser_prod.nit:6831 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACharExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6835;
- fra.me.meth = LOCATE_parser___parser_prod___ACharExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6837 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_char", LOCATE_parser___parser_prod, 6837);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStringExpr___empty_init(val_t p0, int* init_table){
- int itpos237 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStringExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos237]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6841;
- fra.me.meth = LOCATE_parser___parser_prod___AStringExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos237] = 1;
- return;
-}
-void parser___parser_prod___AStringExpr___init_astringexpr(val_t p0, val_t p1, int* init_table){
- int itpos238 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStringExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6843;
- fra.me.meth = LOCATE_parser___parser_prod___AStringExpr___init_astringexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6843 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6847 */
- CALL_parser___parser_prod___AStringExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6848 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6848);
- }
- ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6849 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6849);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos238] = 1;
- return;
-}
-void parser___parser_prod___AStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6852;
- fra.me.meth = LOCATE_parser___parser_prod___AStringExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6854 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6854);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6855 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6856 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6856);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6857 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6857);
- }
- /* ./parser//parser_prod.nit:6858 */
- ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6860 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6860);
- }
- /* ./parser//parser_prod.nit:6862 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStringExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6866;
- fra.me.meth = LOCATE_parser___parser_prod___AStringExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6868 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6868);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStartStringExpr___empty_init(val_t p0, int* init_table){
- int itpos239 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStartStringExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos239]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6872;
- fra.me.meth = LOCATE_parser___parser_prod___AStartStringExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos239] = 1;
- return;
-}
-void parser___parser_prod___AStartStringExpr___init_astartstringexpr(val_t p0, val_t p1, int* init_table){
- int itpos240 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStartStringExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6874;
- fra.me.meth = LOCATE_parser___parser_prod___AStartStringExpr___init_astartstringexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6874 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6878 */
- CALL_parser___parser_prod___AStartStringExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6879 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6879);
- }
- ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6880 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6880);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos240] = 1;
- return;
-}
-void parser___parser_prod___AStartStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6883;
- fra.me.meth = LOCATE_parser___parser_prod___AStartStringExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6885 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6885);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6886 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6887 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6887);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6888 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TStartString, ID_parser___parser_nodes___TStartString)) /*cast TStartString*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6888);
- }
- /* ./parser//parser_prod.nit:6889 */
- ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6891 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6891);
- }
- /* ./parser//parser_prod.nit:6893 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AStartStringExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6897;
- fra.me.meth = LOCATE_parser___parser_prod___AStartStringExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6899 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6899);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMidStringExpr___empty_init(val_t p0, int* init_table){
- int itpos241 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMidStringExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos241]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6903;
- fra.me.meth = LOCATE_parser___parser_prod___AMidStringExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos241] = 1;
- return;
-}
-void parser___parser_prod___AMidStringExpr___init_amidstringexpr(val_t p0, val_t p1, int* init_table){
- int itpos242 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMidStringExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6905;
- fra.me.meth = LOCATE_parser___parser_prod___AMidStringExpr___init_amidstringexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6905 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6909 */
- CALL_parser___parser_prod___AMidStringExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6910 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6910);
- }
- ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6911 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6911);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos242] = 1;
- return;
-}
-void parser___parser_prod___AMidStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6914;
- fra.me.meth = LOCATE_parser___parser_prod___AMidStringExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6916 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6916);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6917 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6918 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6918);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6919 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TMidString, ID_parser___parser_nodes___TMidString)) /*cast TMidString*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6919);
- }
- /* ./parser//parser_prod.nit:6920 */
- ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6922 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6922);
- }
- /* ./parser//parser_prod.nit:6924 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMidStringExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6928;
- fra.me.meth = LOCATE_parser___parser_prod___AMidStringExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6930 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6930);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEndStringExpr___empty_init(val_t p0, int* init_table){
- int itpos243 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEndStringExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos243]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6934;
- fra.me.meth = LOCATE_parser___parser_prod___AEndStringExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos243] = 1;
- return;
-}
-void parser___parser_prod___AEndStringExpr___init_aendstringexpr(val_t p0, val_t p1, int* init_table){
- int itpos244 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEndStringExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 6936;
- fra.me.meth = LOCATE_parser___parser_prod___AEndStringExpr___init_aendstringexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:6936 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:6940 */
- CALL_parser___parser_prod___AEndStringExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:6941 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6941);
- }
- ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:6942 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6942);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos244] = 1;
- return;
-}
-void parser___parser_prod___AEndStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 6945;
- fra.me.meth = LOCATE_parser___parser_prod___AEndStringExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6947 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6947);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6948 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:6949 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6949);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6950 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TEndString, ID_parser___parser_nodes___TEndString)) /*cast TEndString*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6950);
- }
- /* ./parser//parser_prod.nit:6951 */
- ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:6953 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6953);
- }
- /* ./parser//parser_prod.nit:6955 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AEndStringExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6959;
- fra.me.meth = LOCATE_parser___parser_prod___AEndStringExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6961 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6961);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASuperstringExpr___empty_init(val_t p0, int* init_table){
- int itpos245 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperstringExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos245]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6965;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos245] = 1;
- return;
-}
-void parser___parser_prod___ASuperstringExpr___init_asuperstringexpr(val_t p0, val_t p1, int* init_table){
- int itpos246 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperstringExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- if (init_table[itpos246]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6967;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___init_asuperstringexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6971 */
- CALL_parser___parser_prod___ASuperstringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASuperstringExpr___init_asuperstringexpr_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos246] = 1;
- return;
-}
- void OC_parser___parser_prod___ASuperstringExpr___init_asuperstringexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:6972 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___init_asuperstringexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6973 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6973);
- }
- /* ./parser//parser_prod.nit:6974 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6974);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:6975 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ASuperstringExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6979;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:6981 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6981);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:6981 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:6982 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6982);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6983 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:6984 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6984);
- }
- /* ./parser//parser_prod.nit:6985 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6985);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:6986 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6986);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:6988 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6988);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:6990 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASuperstringExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 6995;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:6997 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6997);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASuperstringExpr___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ASuperstringExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:6998 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AParExpr___empty_init(val_t p0, int* init_table){
- int itpos247 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AParExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos247]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7003;
- fra.me.meth = LOCATE_parser___parser_prod___AParExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos247] = 1;
- return;
-}
-void parser___parser_prod___AParExpr___init_aparexpr(val_t p0, val_t p1, int* init_table){
- int itpos248 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AParExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 7005;
- fra.me.meth = LOCATE_parser___parser_prod___AParExpr___init_aparexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7005 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7009 */
- CALL_parser___parser_prod___AParExpr___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:7010 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7010);
- }
- ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7011 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7011);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos248] = 1;
- return;
-}
-void parser___parser_prod___AParExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7014;
- fra.me.meth = LOCATE_parser___parser_prod___AParExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7016 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7016);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7017 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7018 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7018);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7019 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7019);
- }
- /* ./parser//parser_prod.nit:7020 */
- ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7022 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7022);
- }
- /* ./parser//parser_prod.nit:7024 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AParExpr___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7028;
- fra.me.meth = LOCATE_parser___parser_prod___AParExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:7030 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7030);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAsCastExpr___empty_init(val_t p0, int* init_table){
- int itpos249 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsCastExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos249]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7034;
- fra.me.meth = LOCATE_parser___parser_prod___AAsCastExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos249] = 1;
- return;
-}
-void parser___parser_prod___AAsCastExpr___init_aascastexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos250 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsCastExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 7036;
- fra.me.meth = LOCATE_parser___parser_prod___AAsCastExpr___init_aascastexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:7036 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7042 */
- CALL_parser___parser_prod___AAsCastExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:7043 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7043);
- }
- ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7044 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7044);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7045 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7045);
- }
- ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7046 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7046);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7047 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7047);
- }
- ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:7048 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7048);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos250] = 1;
- return;
-}
-void parser___parser_prod___AAsCastExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7051;
- fra.me.meth = LOCATE_parser___parser_prod___AAsCastExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7053 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7053);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7054 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7055 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7055);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7056 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7056);
- }
- /* ./parser//parser_prod.nit:7057 */
- ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7059 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7059);
- }
- /* ./parser//parser_prod.nit:7061 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7063 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7063);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7064 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7065 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7065);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7066 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7066);
- }
- /* ./parser//parser_prod.nit:7067 */
- ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7069 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7069);
- }
- /* ./parser//parser_prod.nit:7071 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7073 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7073);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7074 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7075 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7075);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7076 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7076);
- }
- /* ./parser//parser_prod.nit:7077 */
- ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7079 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7079);
- }
- /* ./parser//parser_prod.nit:7081 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAsCastExpr___visit_all(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___parser_prod;
- fra.me.line = 7085;
- fra.me.meth = LOCATE_parser___parser_prod___AAsCastExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7087 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7087);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7088 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7088);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7089 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7089);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAsNotnullExpr___empty_init(val_t p0, int* init_table){
- int itpos251 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNotnullExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos251]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7093;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNotnullExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos251] = 1;
- return;
-}
-void parser___parser_prod___AAsNotnullExpr___init_aasnotnullexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos252 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNotnullExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} 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___parser_prod;
- fra.me.line = 7095;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNotnullExpr___init_aasnotnullexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:7095 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7102 */
- CALL_parser___parser_prod___AAsNotnullExpr___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:7103 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7103);
- }
- ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7104 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7104);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:7105 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7105);
- }
- ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[5]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7106 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7106);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:7107 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7107);
- }
- ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:7108 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7108);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:7109 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7109);
- }
- ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[5]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:7110 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7110);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
- stack_frame_head = fra.me.prev;
- init_table[itpos252] = 1;
- return;
-}
-void parser___parser_prod___AAsNotnullExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7113;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNotnullExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7115 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7115);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7116 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7117 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7117);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7118 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7118);
- }
- /* ./parser//parser_prod.nit:7119 */
- ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7121 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7121);
- }
- /* ./parser//parser_prod.nit:7123 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7125 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7125);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7126 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7127 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7127);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7128 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7128);
- }
- /* ./parser//parser_prod.nit:7129 */
- ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7131 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7131);
- }
- /* ./parser//parser_prod.nit:7133 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7135 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 7135);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7136 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7137 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7137);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7138 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnot, ID_parser___parser_nodes___TKwnot)) /*cast TKwnot*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7138);
- }
- /* ./parser//parser_prod.nit:7139 */
- ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7141 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7141);
- }
- /* ./parser//parser_prod.nit:7143 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7145 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser___parser_prod, 7145);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7146 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7147 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7147);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7148 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnull, ID_parser___parser_nodes___TKwnull)) /*cast TKwnull*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7148);
- }
- /* ./parser//parser_prod.nit:7149 */
- ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7151 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7151);
- }
- /* ./parser//parser_prod.nit:7153 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAsNotnullExpr___visit_all(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___parser_prod;
- fra.me.line = 7157;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNotnullExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7159 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7159);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7160 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7160);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7161 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 7161);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7162 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser___parser_prod, 7162);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIssetAttrExpr___empty_init(val_t p0, int* init_table){
- int itpos253 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIssetAttrExpr].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos253]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7166;
- fra.me.meth = LOCATE_parser___parser_prod___AIssetAttrExpr___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos253] = 1;
- return;
-}
-void parser___parser_prod___AIssetAttrExpr___init_aissetattrexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos254 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIssetAttrExpr].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 7168;
- fra.me.meth = LOCATE_parser___parser_prod___AIssetAttrExpr___init_aissetattrexpr;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:7168 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7174 */
- CALL_parser___parser_prod___AIssetAttrExpr___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:7175 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7175);
- }
- ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7176 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7176);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7177 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7177);
- }
- ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7178 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7178);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7179 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7179);
- }
- ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:7180 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7180);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos254] = 1;
- return;
-}
-void parser___parser_prod___AIssetAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7183;
- fra.me.meth = LOCATE_parser___parser_prod___AIssetAttrExpr___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7185 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwisset", LOCATE_parser___parser_prod, 7185);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7186 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7187 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7187);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7188 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwisset, ID_parser___parser_nodes___TKwisset)) /*cast TKwisset*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7188);
- }
- /* ./parser//parser_prod.nit:7189 */
- ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7191 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7191);
- }
- /* ./parser//parser_prod.nit:7193 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7195 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7195);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7196 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7197 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7197);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7198 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7198);
- }
- /* ./parser//parser_prod.nit:7199 */
- ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7201 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7201);
- }
- /* ./parser//parser_prod.nit:7203 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7205 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7205);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7206 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7207 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7207);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7208 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7208);
- }
- /* ./parser//parser_prod.nit:7209 */
- ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7211 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7211);
- }
- /* ./parser//parser_prod.nit:7213 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AIssetAttrExpr___visit_all(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___parser_prod;
- fra.me.line = 7217;
- fra.me.meth = LOCATE_parser___parser_prod___AIssetAttrExpr___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7219 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwisset", LOCATE_parser___parser_prod, 7219);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7220 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7220);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7221 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7221);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APlusAssignOp___empty_init(val_t p0, int* init_table){
- int itpos255 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusAssignOp].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos255]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7225;
- fra.me.meth = LOCATE_parser___parser_prod___APlusAssignOp___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos255] = 1;
- return;
-}
-void parser___parser_prod___APlusAssignOp___init_aplusassignop(val_t p0, val_t p1, int* init_table){
- int itpos256 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusAssignOp].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 7227;
- fra.me.meth = LOCATE_parser___parser_prod___APlusAssignOp___init_aplusassignop;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7227 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7231 */
- CALL_parser___parser_prod___APlusAssignOp___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:7232 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7232);
- }
- ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7233 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7233);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos256] = 1;
- return;
-}
-void parser___parser_prod___APlusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7236;
- fra.me.meth = LOCATE_parser___parser_prod___APlusAssignOp___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7238 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_pluseq", LOCATE_parser___parser_prod, 7238);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7239 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7240 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7240);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7241 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TPluseq, ID_parser___parser_nodes___TPluseq)) /*cast TPluseq*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7241);
- }
- /* ./parser//parser_prod.nit:7242 */
- ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7244 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7244);
- }
- /* ./parser//parser_prod.nit:7246 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___APlusAssignOp___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7250;
- fra.me.meth = LOCATE_parser___parser_prod___APlusAssignOp___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:7252 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_pluseq", LOCATE_parser___parser_prod, 7252);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMinusAssignOp___empty_init(val_t p0, int* init_table){
- int itpos257 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusAssignOp].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos257]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7256;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusAssignOp___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos257] = 1;
- return;
-}
-void parser___parser_prod___AMinusAssignOp___init_aminusassignop(val_t p0, val_t p1, int* init_table){
- int itpos258 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusAssignOp].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 7258;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusAssignOp___init_aminusassignop;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7258 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7262 */
- CALL_parser___parser_prod___AMinusAssignOp___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:7263 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7263);
- }
- ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7264 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7264);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos258] = 1;
- return;
-}
-void parser___parser_prod___AMinusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7267;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusAssignOp___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7269 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_minuseq", LOCATE_parser___parser_prod, 7269);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7270 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7271 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7271);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7272 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TMinuseq, ID_parser___parser_nodes___TMinuseq)) /*cast TMinuseq*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7272);
- }
- /* ./parser//parser_prod.nit:7273 */
- ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7275 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7275);
- }
- /* ./parser//parser_prod.nit:7277 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AMinusAssignOp___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7281;
- fra.me.meth = LOCATE_parser___parser_prod___AMinusAssignOp___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:7283 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_minuseq", LOCATE_parser___parser_prod, 7283);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AClosureDef___empty_init(val_t p0, int* init_table){
- int itpos259 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureDef].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos259]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7287;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos259] = 1;
- return;
-}
-void parser___parser_prod___AClosureDef___init_aclosuredef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
- int itpos260 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureDef].i;
- struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos260]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7289;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___init_aclosuredef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 8;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- fra.me.REG[5] = p5;
- fra.me.REG[6] = p6;
- /* ./parser//parser_prod.nit:7289 */
- fra.me.REG[7] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7298 */
- CALL_parser___parser_prod___AClosureDef___empty_init(fra.me.REG[7])(fra.me.REG[7], init_table);
- /* ./parser//parser_prod.nit:7299 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7299);
- }
- ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[7]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7300 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7300);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- /* ./parser//parser_prod.nit:7301 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7301);
- }
- ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[7]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7302 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7302);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureDef___init_aclosuredef_1));
- /* ./parser//parser_prod.nit:7308 */
- ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[7]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:7309 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7310 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7310);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:7312 */
- ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[7]) = fra.me.REG[5];
- /* ./parser//parser_prod.nit:7313 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7314 */
- REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7314);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
- }
- /* ./parser//parser_prod.nit:7316 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[7]) = fra.me.REG[6];
- /* ./parser//parser_prod.nit:7317 */
- 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_standard___kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7318 */
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7318);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos260] = 1;
- return;
-}
- void OC_parser___parser_prod___AClosureDef___init_aclosuredef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:7303 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___init_aclosuredef;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:7304 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7304);
- }
- /* ./parser//parser_prod.nit:7305 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(closctx->REG[7])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7305);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AClosureDef____n_ids(closctx->REG[7]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7306 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[7]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7322;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7324 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser___parser_prod, 7324);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7325 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7326 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7326);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7327 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TBang, ID_parser___parser_nodes___TBang)) /*cast TBang*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7327);
- }
- /* ./parser//parser_prod.nit:7328 */
- ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7330 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7330);
- }
- /* ./parser//parser_prod.nit:7332 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7334 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7334);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7335 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7336 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7336);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7337 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureId, ID_parser___parser_nodes___AClosureId)) /*cast AClosureId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7337);
- }
- /* ./parser//parser_prod.nit:7338 */
- ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7340 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7340);
- }
- /* ./parser//parser_prod.nit:7342 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7344 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7344);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:7344 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:7345 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7345);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:7346 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:7347 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7347);
- }
- /* ./parser//parser_prod.nit:7348 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7348);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7349 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7349);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:7351 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7351);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:7353 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:7356 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7357 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7358 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7358);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7359 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7359);
- }
- /* ./parser//parser_prod.nit:7360 */
- ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7362 */
- ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:7364 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7366 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7367 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7368 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7368);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7369 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7369);
- }
- /* ./parser//parser_prod.nit:7370 */
- ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7372 */
- ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:7374 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7376 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7377 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7378 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7378);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7379 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7379);
- }
- /* ./parser//parser_prod.nit:7380 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7382 */
- ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:7384 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AClosureDef___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7388;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:7388 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7390 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser___parser_prod, 7390);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:7391 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7391);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:7392 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7392);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureDef___visit_all_1));
- /* ./parser//parser_prod.nit:7395 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7396 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7396);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:7398 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7399 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7399);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:7401 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7402 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7402);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AClosureDef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:7393 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ASimpleClosureId___empty_init(val_t p0, int* init_table){
- int itpos261 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASimpleClosureId].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos261]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7407;
- fra.me.meth = LOCATE_parser___parser_prod___ASimpleClosureId___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos261] = 1;
- return;
-}
-void parser___parser_prod___ASimpleClosureId___init_asimpleclosureid(val_t p0, val_t p1, int* init_table){
- int itpos262 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASimpleClosureId].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 7409;
- fra.me.meth = LOCATE_parser___parser_prod___ASimpleClosureId___init_asimpleclosureid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7409 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7413 */
- CALL_parser___parser_prod___ASimpleClosureId___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:7414 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7414);
- }
- ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7415 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7415);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos262] = 1;
- return;
-}
-void parser___parser_prod___ASimpleClosureId___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7418;
- fra.me.meth = LOCATE_parser___parser_prod___ASimpleClosureId___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7420 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7420);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7421 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7422 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7422);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7423 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7423);
- }
- /* ./parser//parser_prod.nit:7424 */
- ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7426 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7426);
- }
- /* ./parser//parser_prod.nit:7428 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASimpleClosureId___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7432;
- fra.me.meth = LOCATE_parser___parser_prod___ASimpleClosureId___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:7434 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7434);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABreakClosureId___empty_init(val_t p0, int* init_table){
- int itpos263 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABreakClosureId].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos263]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7438;
- fra.me.meth = LOCATE_parser___parser_prod___ABreakClosureId___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos263] = 1;
- return;
-}
-void parser___parser_prod___ABreakClosureId___init_abreakclosureid(val_t p0, val_t p1, int* init_table){
- int itpos264 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABreakClosureId].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 7440;
- fra.me.meth = LOCATE_parser___parser_prod___ABreakClosureId___init_abreakclosureid;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7440 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7444 */
- CALL_parser___parser_prod___ABreakClosureId___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:7445 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7445);
- }
- ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7446 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7446);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos264] = 1;
- return;
-}
-void parser___parser_prod___ABreakClosureId___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7449;
- fra.me.meth = LOCATE_parser___parser_prod___ABreakClosureId___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7451 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser___parser_prod, 7451);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7452 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7453 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7453);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7454 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwbreak, ID_parser___parser_nodes___TKwbreak)) /*cast TKwbreak*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7454);
- }
- /* ./parser//parser_prod.nit:7455 */
- ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7457 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7457);
- }
- /* ./parser//parser_prod.nit:7459 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ABreakClosureId___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7463;
- fra.me.meth = LOCATE_parser___parser_prod___ABreakClosureId___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:7465 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser___parser_prod, 7465);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AModuleName___empty_init(val_t p0, int* init_table){
- int itpos265 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModuleName].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos265]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7469;
- fra.me.meth = LOCATE_parser___parser_prod___AModuleName___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos265] = 1;
- return;
-}
-void parser___parser_prod___AModuleName___init_amodulename(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos266 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModuleName].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos266]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7471;
- fra.me.meth = LOCATE_parser___parser_prod___AModuleName___init_amodulename;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:7471 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7477 */
- CALL_parser___parser_prod___AModuleName___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:7478 */
- ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7479 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7480 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7480);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- }
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModuleName___init_amodulename_1));
- /* ./parser//parser_prod.nit:7487 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7487);
- }
- ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:7488 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7488);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos266] = 1;
- return;
-}
- void OC_parser___parser_prod___AModuleName___init_amodulename_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:7482 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AModuleName___init_amodulename;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:7483 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7483);
- }
- /* ./parser//parser_prod.nit:7484 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(closctx->REG[4])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7484);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AModuleName____n_path(closctx->REG[4]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7485 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[4]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AModuleName___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7491;
- fra.me.meth = LOCATE_parser___parser_prod___AModuleName___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7493 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7494 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7495 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7495);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7496 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TQuad, ID_parser___parser_nodes___TQuad)) /*cast TQuad*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7496);
- }
- /* ./parser//parser_prod.nit:7497 */
- ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7499 */
- ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:7501 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7503 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7503);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:7503 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:7504 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7504);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:7505 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:7506 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7506);
- }
- /* ./parser//parser_prod.nit:7507 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7507);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7508 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7508);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:7510 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7510);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:7512 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:7515 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7515);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7516 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7517 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7517);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7518 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7518);
- }
- /* ./parser//parser_prod.nit:7519 */
- ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7521 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7521);
- }
- /* ./parser//parser_prod.nit:7523 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AModuleName___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7527;
- fra.me.meth = LOCATE_parser___parser_prod___AModuleName___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:7527 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7529 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7530 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TQuad, ID_parser___parser_nodes___TQuad)) /*cast TQuad*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7530);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:7532 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7532);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModuleName___visit_all_1));
- /* ./parser//parser_prod.nit:7535 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7535);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AModuleName___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AModuleName___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:7533 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AExternCalls___empty_init(val_t p0, int* init_table){
- int itpos267 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternCalls].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos267]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7539;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos267] = 1;
- return;
-}
-void parser___parser_prod___AExternCalls___init_aexterncalls(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos268 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternCalls].i;
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7541;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___init_aexterncalls;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7541 */
- fra.me.REG[3] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7546 */
- CALL_parser___parser_prod___AExternCalls___empty_init(fra.me.REG[3])(fra.me.REG[3], init_table);
- /* ./parser//parser_prod.nit:7547 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7547);
- }
- ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[3]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7548 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7548);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AExternCalls___init_aexterncalls_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos268] = 1;
- return;
-}
- void OC_parser___parser_prod___AExternCalls___init_aexterncalls_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:7549 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___init_aexterncalls;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:7550 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExternCall, ID_parser___parser_nodes___AExternCall)) /*cast AExternCall*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7550);
- }
- /* ./parser//parser_prod.nit:7551 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(closctx->REG[3])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7551);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(closctx->REG[3]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7552 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[3]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7556;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7558 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 7558);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7559 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7560 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7560);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7561 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwimport, ID_parser___parser_nodes___TKwimport)) /*cast TKwimport*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7561);
- }
- /* ./parser//parser_prod.nit:7562 */
- ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7564 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7564);
- }
- /* ./parser//parser_prod.nit:7566 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7568 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7568);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:7568 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:7569 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7569);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:7570 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:7571 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExternCall, ID_parser___parser_nodes___AExternCall)) /*cast AExternCall*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7571);
- }
- /* ./parser//parser_prod.nit:7572 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7572);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7573 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7573);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:7575 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7575);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:7577 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AExternCalls___visit_all(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___parser_prod;
- fra.me.line = 7582;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7584 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 7584);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7585 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7585);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AExternCalls___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AExternCalls___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:7586 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AExternCall___empty_init(val_t p0, int* init_table){
- int itpos269 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos269]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7591;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCall___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos269] = 1;
- return;
-}
-void parser___parser_prod___AExternCall___init_aexterncall(val_t p0, int* init_table){
- int itpos270 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos270]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7593;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCall___init_aexterncall;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- /* ./parser//parser_prod.nit:7595 */
- CALL_parser___parser_prod___AExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- stack_frame_head = fra.me.prev;
- init_table[itpos270] = 1;
- return;
-}
-void parser___parser_prod___AExternCall___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7598;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCall___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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;
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AExternCall___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7602;
- fra.me.meth = LOCATE_parser___parser_prod___AExternCall___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASuperExternCall___empty_init(val_t p0, int* init_table){
- int itpos271 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos271]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7607;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExternCall___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos271] = 1;
- return;
-}
-void parser___parser_prod___ASuperExternCall___init_asuperexterncall(val_t p0, val_t p1, int* init_table){
- int itpos272 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperExternCall].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 7609;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExternCall___init_asuperexterncall;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7609 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7613 */
- CALL_parser___parser_prod___ASuperExternCall___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:7614 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7614);
- }
- ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7615 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7615);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos272] = 1;
- return;
-}
-void parser___parser_prod___ASuperExternCall___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7618;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExternCall___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7620 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser___parser_prod, 7620);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7621 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7622 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7622);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7623 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwsuper, ID_parser___parser_nodes___TKwsuper)) /*cast TKwsuper*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7623);
- }
- /* ./parser//parser_prod.nit:7624 */
- ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7626 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7626);
- }
- /* ./parser//parser_prod.nit:7628 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ASuperExternCall___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7632;
- fra.me.meth = LOCATE_parser___parser_prod___ASuperExternCall___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:7634 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser___parser_prod, 7634);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALocalPropExternCall___empty_init(val_t p0, int* init_table){
- int itpos273 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALocalPropExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos273]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7638;
- fra.me.meth = LOCATE_parser___parser_prod___ALocalPropExternCall___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos273] = 1;
- return;
-}
-void parser___parser_prod___ALocalPropExternCall___init_alocalpropexterncall(val_t p0, val_t p1, int* init_table){
- int itpos274 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALocalPropExternCall].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 7640;
- fra.me.meth = LOCATE_parser___parser_prod___ALocalPropExternCall___init_alocalpropexterncall;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7640 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7644 */
- CALL_parser___parser_prod___ALocalPropExternCall___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:7645 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7645);
- }
- ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7646 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7646);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos274] = 1;
- return;
-}
-void parser___parser_prod___ALocalPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7649;
- fra.me.meth = LOCATE_parser___parser_prod___ALocalPropExternCall___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7651 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser___parser_prod, 7651);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7652 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7653 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7653);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7654 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7654);
- }
- /* ./parser//parser_prod.nit:7655 */
- ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7657 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7657);
- }
- /* ./parser//parser_prod.nit:7659 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ALocalPropExternCall___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7663;
- fra.me.meth = LOCATE_parser___parser_prod___ALocalPropExternCall___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:7665 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser___parser_prod, 7665);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AFullPropExternCall___empty_init(val_t p0, int* init_table){
- int itpos275 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFullPropExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos275]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7669;
- fra.me.meth = LOCATE_parser___parser_prod___AFullPropExternCall___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos275] = 1;
- return;
-}
-void parser___parser_prod___AFullPropExternCall___init_afullpropexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos276 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFullPropExternCall].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos276]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7671;
- fra.me.meth = LOCATE_parser___parser_prod___AFullPropExternCall___init_afullpropexterncall;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:7671 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7677 */
- CALL_parser___parser_prod___AFullPropExternCall___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:7678 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7678);
- }
- ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7679 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7679);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7680 */
- ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7681 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7682 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7682);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- }
- /* ./parser//parser_prod.nit:7684 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7684);
- }
- ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:7685 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7685);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos276] = 1;
- return;
-}
-void parser___parser_prod___AFullPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7688;
- fra.me.meth = LOCATE_parser___parser_prod___AFullPropExternCall___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7690 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser___parser_prod, 7690);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7691 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7692 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7692);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7693 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7693);
- }
- /* ./parser//parser_prod.nit:7694 */
- ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7696 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7696);
- }
- /* ./parser//parser_prod.nit:7698 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7700 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7701 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7702 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7702);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7703 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TQuad, ID_parser___parser_nodes___TQuad)) /*cast TQuad*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7703);
- }
- /* ./parser//parser_prod.nit:7704 */
- ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7706 */
- ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:7708 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7710 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser___parser_prod, 7710);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7711 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7712 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7712);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7713 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7713);
- }
- /* ./parser//parser_prod.nit:7714 */
- ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7716 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7716);
- }
- /* ./parser//parser_prod.nit:7718 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AFullPropExternCall___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7722;
- fra.me.meth = LOCATE_parser___parser_prod___AFullPropExternCall___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:7722 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7724 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser___parser_prod, 7724);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- /* ./parser//parser_prod.nit:7725 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7726 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___TQuad, ID_parser___parser_nodes___TQuad)) /*cast TQuad*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7726);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:7728 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser___parser_prod, 7728);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AInitPropExternCall___empty_init(val_t p0, int* init_table){
- int itpos277 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInitPropExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos277]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7732;
- fra.me.meth = LOCATE_parser___parser_prod___AInitPropExternCall___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos277] = 1;
- return;
-}
-void parser___parser_prod___AInitPropExternCall___init_ainitpropexterncall(val_t p0, val_t p1, int* init_table){
- int itpos278 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInitPropExternCall].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} 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___parser_prod;
- fra.me.line = 7734;
- fra.me.meth = LOCATE_parser___parser_prod___AInitPropExternCall___init_ainitpropexterncall;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7734 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7738 */
- CALL_parser___parser_prod___AInitPropExternCall___empty_init(fra.me.REG[2])(fra.me.REG[2], init_table);
- /* ./parser//parser_prod.nit:7739 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7739);
- }
- ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[2]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7740 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7740);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- init_table[itpos278] = 1;
- return;
-}
-void parser___parser_prod___AInitPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7743;
- fra.me.meth = LOCATE_parser___parser_prod___AInitPropExternCall___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7745 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser___parser_prod, 7745);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7746 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7747 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7747);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7748 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7748);
- }
- /* ./parser//parser_prod.nit:7749 */
- ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7751 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7751);
- }
- /* ./parser//parser_prod.nit:7753 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AInitPropExternCall___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7757;
- fra.me.meth = LOCATE_parser___parser_prod___AInitPropExternCall___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:7759 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser___parser_prod, 7759);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACastAsExternCall___empty_init(val_t p0, int* init_table){
- int itpos279 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACastAsExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos279]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7763;
- fra.me.meth = LOCATE_parser___parser_prod___ACastAsExternCall___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos279] = 1;
- return;
-}
-void parser___parser_prod___ACastAsExternCall___init_acastasexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos280 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACastAsExternCall].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 7765;
- fra.me.meth = LOCATE_parser___parser_prod___ACastAsExternCall___init_acastasexterncall;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:7765 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7771 */
- CALL_parser___parser_prod___ACastAsExternCall___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:7772 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7772);
- }
- ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7773 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7773);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7774 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7774);
- }
- ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7775 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7775);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7776 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7776);
- }
- ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:7777 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7777);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos280] = 1;
- return;
-}
-void parser___parser_prod___ACastAsExternCall___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7780;
- fra.me.meth = LOCATE_parser___parser_prod___ACastAsExternCall___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7782 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_from_type", LOCATE_parser___parser_prod, 7782);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7783 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7784 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7784);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7785 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7785);
- }
- /* ./parser//parser_prod.nit:7786 */
- ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7788 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7788);
- }
- /* ./parser//parser_prod.nit:7790 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7792 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7792);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7793 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7794 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7794);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7795 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7795);
- }
- /* ./parser//parser_prod.nit:7796 */
- ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7798 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7798);
- }
- /* ./parser//parser_prod.nit:7800 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7802 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_to_type", LOCATE_parser___parser_prod, 7802);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7803 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7804 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7804);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7805 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7805);
- }
- /* ./parser//parser_prod.nit:7806 */
- ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7808 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7808);
- }
- /* ./parser//parser_prod.nit:7810 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ACastAsExternCall___visit_all(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___parser_prod;
- fra.me.line = 7814;
- fra.me.meth = LOCATE_parser___parser_prod___ACastAsExternCall___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7816 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_from_type", LOCATE_parser___parser_prod, 7816);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7817 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7817);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7818 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_to_type", LOCATE_parser___parser_prod, 7818);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAsNullableExternCall___empty_init(val_t p0, int* init_table){
- int itpos281 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNullableExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos281]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7822;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNullableExternCall___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos281] = 1;
- return;
-}
-void parser___parser_prod___AAsNullableExternCall___init_aasnullableexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos282 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNullableExternCall].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} 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___parser_prod;
- fra.me.line = 7824;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNullableExternCall___init_aasnullableexterncall;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- /* ./parser//parser_prod.nit:7824 */
- fra.me.REG[4] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7830 */
- CALL_parser___parser_prod___AAsNullableExternCall___empty_init(fra.me.REG[4])(fra.me.REG[4], init_table);
- /* ./parser//parser_prod.nit:7831 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7831);
- }
- ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[4]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7832 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7832);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7833 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7833);
- }
- ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[4]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7834 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7834);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./parser//parser_prod.nit:7835 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7835);
- }
- ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[4]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:7836 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7836);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- stack_frame_head = fra.me.prev;
- init_table[itpos282] = 1;
- return;
-}
-void parser___parser_prod___AAsNullableExternCall___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7839;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNullableExternCall___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7841 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7841);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7842 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7843 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7843);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7844 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7844);
- }
- /* ./parser//parser_prod.nit:7845 */
- ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7847 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7847);
- }
- /* ./parser//parser_prod.nit:7849 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7851 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7851);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7852 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7853 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7853);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7854 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7854);
- }
- /* ./parser//parser_prod.nit:7855 */
- ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7857 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7857);
- }
- /* ./parser//parser_prod.nit:7859 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7861 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser___parser_prod, 7861);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7862 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7863 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7863);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7864 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnullable, ID_parser___parser_nodes___TKwnullable)) /*cast TKwnullable*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7864);
- }
- /* ./parser//parser_prod.nit:7865 */
- ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7867 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7867);
- }
- /* ./parser//parser_prod.nit:7869 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAsNullableExternCall___visit_all(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___parser_prod;
- fra.me.line = 7873;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNullableExternCall___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7875 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7875);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7876 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7876);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7877 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser___parser_prod, 7877);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAsNotNullableExternCall___empty_init(val_t p0, int* init_table){
- int itpos283 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNotNullableExternCall].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos283]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7881;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNotNullableExternCall___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos283] = 1;
- return;
-}
-void parser___parser_prod___AAsNotNullableExternCall___init_aasnotnullableexterncall(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
- int itpos284 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNotNullableExternCall].i;
- struct {struct stack_frame_t me; val_t MORE_REG[5];} 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___parser_prod;
- fra.me.line = 7883;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNotNullableExternCall___init_aasnotnullableexterncall;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = p4;
- /* ./parser//parser_prod.nit:7883 */
- fra.me.REG[5] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:7890 */
- CALL_parser___parser_prod___AAsNotNullableExternCall___empty_init(fra.me.REG[5])(fra.me.REG[5], init_table);
- /* ./parser//parser_prod.nit:7891 */
- REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7891);
- }
- ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[5]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:7892 */
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7892);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:7893 */
- REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7893);
- }
- ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[5]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7894 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7894);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:7895 */
- REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7895);
- }
- ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[5]) = fra.me.REG[3];
- /* ./parser//parser_prod.nit:7896 */
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7896);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- /* ./parser//parser_prod.nit:7897 */
- REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7897);
- }
- ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[5]) = fra.me.REG[4];
- /* ./parser//parser_prod.nit:7898 */
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7898);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
- stack_frame_head = fra.me.prev;
- init_table[itpos284] = 1;
- return;
-}
-void parser___parser_prod___AAsNotNullableExternCall___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7901;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNotNullableExternCall___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7903 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7903);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7904 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7905 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7905);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7906 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7906);
- }
- /* ./parser//parser_prod.nit:7907 */
- ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7909 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7909);
- }
- /* ./parser//parser_prod.nit:7911 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7913 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7913);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7914 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7915 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7915);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7916 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7916);
- }
- /* ./parser//parser_prod.nit:7917 */
- ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7919 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7919);
- }
- /* ./parser//parser_prod.nit:7921 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7923 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 7923);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7924 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7925 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7925);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7926 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnot, ID_parser___parser_nodes___TKwnot)) /*cast TKwnot*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7926);
- }
- /* ./parser//parser_prod.nit:7927 */
- ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7929 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7929);
- }
- /* ./parser//parser_prod.nit:7931 */
- goto label1;
- }
- /* ./parser//parser_prod.nit:7933 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser___parser_prod, 7933);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7934 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7935 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7935);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7936 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnullable, ID_parser___parser_nodes___TKwnullable)) /*cast TKwnullable*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7936);
- }
- /* ./parser//parser_prod.nit:7937 */
- ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7939 */
- nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7939);
- }
- /* ./parser//parser_prod.nit:7941 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AAsNotNullableExternCall___visit_all(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___parser_prod;
- fra.me.line = 7945;
- fra.me.meth = LOCATE_parser___parser_prod___AAsNotNullableExternCall___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7947 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7947);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7948 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7948);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7949 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 7949);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7950 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser___parser_prod, 7950);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AQualified___empty_init(val_t p0, int* init_table){
- int itpos285 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AQualified].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos285]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7954;
- fra.me.meth = LOCATE_parser___parser_prod___AQualified___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos285] = 1;
- return;
-}
-void parser___parser_prod___AQualified___init_aqualified(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos286 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AQualified].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- if (init_table[itpos286]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7956;
- fra.me.meth = LOCATE_parser___parser_prod___AQualified___init_aqualified;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:7961 */
- CALL_parser___parser_prod___AQualified___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AQualified___init_aqualified_1));
- /* ./parser//parser_prod.nit:7967 */
- ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]) = fra.me.REG[2];
- /* ./parser//parser_prod.nit:7968 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7969 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7969);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- }
- stack_frame_head = fra.me.prev;
- init_table[itpos286] = 1;
- return;
-}
- void OC_parser___parser_prod___AQualified___init_aqualified_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:7962 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AQualified___init_aqualified;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:7963 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7963);
- }
- /* ./parser//parser_prod.nit:7964 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7964);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___AQualified____n_id(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7965 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 7973;
- fra.me.meth = LOCATE_parser___parser_prod___AQualified___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:7975 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7975);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:7975 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:7976 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7976);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:7977 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:7978 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7978);
- }
- /* ./parser//parser_prod.nit:7979 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7979);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:7980 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7980);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:7982 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7982);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:7984 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- /* ./parser//parser_prod.nit:7987 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7988 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:7989 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7989);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:7990 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7990);
- }
- /* ./parser//parser_prod.nit:7991 */
- ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]) = fra.me.REG[2];
- } else {
- /* ./parser//parser_prod.nit:7993 */
- ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]) = NIT_NULL;
- }
- /* ./parser//parser_prod.nit:7995 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___AQualified___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 7999;
- fra.me.meth = LOCATE_parser___parser_prod___AQualified___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:7999 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:8001 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 8001);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[2]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AQualified___visit_all_1));
- /* ./parser//parser_prod.nit:8004 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:8005 */
- fra.me.REG[2] = ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 8005);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- }
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___AQualified___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___AQualified___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:8002 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ADoc___empty_init(val_t p0, int* init_table){
- int itpos287 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADoc].i;
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- if (init_table[itpos287]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 8010;
- fra.me.meth = LOCATE_parser___parser_prod___ADoc___empty_init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- stack_frame_head = fra.me.prev;
- init_table[itpos287] = 1;
- return;
-}
-void parser___parser_prod___ADoc___init_adoc(val_t p0, val_t p1, int* init_table){
- int itpos288 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADoc].i;
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t tmp;
- if (init_table[itpos288]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 8012;
- fra.me.meth = LOCATE_parser___parser_prod___ADoc___init_adoc;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:8016 */
- CALL_parser___parser_prod___ADoc___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ADoc___init_adoc_1));
- stack_frame_head = fra.me.prev;
- init_table[itpos288] = 1;
- return;
-}
- void OC_parser___parser_prod___ADoc___init_adoc_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- fun_t CREG[1];
- val_t tmp;
- /* ./parser//parser_prod.nit:8017 */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ADoc___init_adoc;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:8018 */
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TComment, ID_parser___parser_nodes___TComment)) /*cast TComment*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 8018);
- }
- /* ./parser//parser_prod.nit:8019 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(closctx->REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8019);
- }
- fra.me.REG[1] = ATTR_parser___parser_nodes___ADoc____n_comment(closctx->REG[0]);
- CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:8020 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___ADoc___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t REGB2;
- val_t REGB3;
- val_t REGB4;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 8024;
- fra.me.meth = LOCATE_parser___parser_prod___ADoc___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:8026 */
- REGB0 = TAG_Int(0);
- REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8026);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
- REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
- /* ./../lib/standard//kernel.nit:352 */
- while(1) {
- REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
- }
- /* ./../lib/standard//kernel.nit:232 */
- REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
- /* ./../lib/standard//kernel.nit:352 */
- if (UNTAG_Bool(REGB2)) {
- /* ./parser//parser_prod.nit:8026 */
- REGB2 = REGB0;
- /* ./parser//parser_prod.nit:8027 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8027);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
- fra.me.REG[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
- REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB3 = REGB4;
- }
- }
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:8028 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB4)) {
- REGB4 = TAG_Bool(false);
- REGB3 = REGB4;
- } else {
- REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB3 = REGB4;
- }
- }
- REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
- if (UNTAG_Bool(REGB3)) {
- /* ./parser//parser_prod.nit:8029 */
- REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TComment, ID_parser___parser_nodes___TComment)) /*cast TComment*/;
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 8029);
- }
- /* ./parser//parser_prod.nit:8030 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8030);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
- /* ./parser//parser_prod.nit:8031 */
- REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 8031);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- } else {
- /* ./parser//parser_prod.nit:8033 */
- REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB3)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8033);
- }
- fra.me.REG[3] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Sequence___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
- }
- /* ./parser//parser_prod.nit:8035 */
- goto label1;
- }
- /* ./../lib/standard//kernel.nit:354 */
- REGB2 = TAG_Int(1);
- /* ./../lib/standard//kernel.nit:235 */
- REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
- /* ./../lib/standard//kernel.nit:354 */
- REGB0 = REGB2;
- } else {
- /* ./../lib/standard//kernel.nit:352 */
- goto label2;
- }
- }
- label2: while(0);
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___ADoc___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 8040;
- fra.me.meth = LOCATE_parser___parser_prod___ADoc___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 2;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- /* ./parser//parser_prod.nit:8042 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8042);
- }
- fra.me.REG[0] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
- CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ADoc___visit_all_1));
- stack_frame_head = fra.me.prev;
- return;
-}
- void OC_parser___parser_prod___ADoc___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
- struct {struct stack_frame_t me;} fra;
- fun_t CREG[1];
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 0;
- fra.me.meth = LOCATE_parser___parser_prod___ADoc___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[0] = NIT_NULL;
- fra.me.closure_ctx = closctx_param;
- fra.me.closure_funs = CREG;
- fra.me.REG[0] = p0;
- CREG[0] = clos_fun0;
- /* ./parser//parser_prod.nit:8043 */
- CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return;
- }
-void parser___parser_prod___Start___init(val_t p0, val_t p1, val_t p2, int* init_table){
- int itpos289 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___Start].i;
- struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
- val_t tmp;
- if (init_table[itpos289]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_parser___parser_prod;
- fra.me.line = 8049;
- fra.me.meth = LOCATE_parser___parser_prod___Start___init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 3;
- fra.me.nitni_local_ref_head = NULL;
- 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_prod.nit:8053 */
- ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[0]) = fra.me.REG[1];
- /* ./parser//parser_prod.nit:8054 */
- ATTR_parser___parser_nodes___Start____n_eof(fra.me.REG[0]) = fra.me.REG[2];
- stack_frame_head = fra.me.prev;
- init_table[itpos289] = 1;
- return;
-}
-void parser___parser_prod___Start___replace_child(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 8057;
- fra.me.meth = LOCATE_parser___parser_prod___Start___replace_child;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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;
- fra.me.REG[2] = p2;
- /* ./parser//parser_prod.nit:8059 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[0]);
- REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:8060 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- } else {
- /* ./parser//parser_prod.nit:8062 */
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 8062);
- }
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
- /* ./parser//parser_prod.nit:8063 */
- REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModule, ID_parser___parser_nodes___AModule)) /*cast AModule*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 8063);
- }
- /* ./parser//parser_prod.nit:8064 */
- ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[0]) = fra.me.REG[2];
- }
- /* ./parser//parser_prod.nit:8066 */
- CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
- /* ./parser//parser_prod.nit:8067 */
- goto label1;
- }
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
-void parser___parser_prod___Start___visit_all(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} 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___parser_prod;
- fra.me.line = 8071;
- fra.me.meth = LOCATE_parser___parser_prod___Start___visit_all;
- fra.me.has_broke = 0;
- fra.me.REG_size = 4;
- fra.me.nitni_local_ref_head = NULL;
- fra.me.REG[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_prod.nit:8071 */
- fra.me.REG[2] = fra.me.REG[0];
- /* ./parser//parser_prod.nit:8073 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[2]);
- 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_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- /* ./parser//parser_prod.nit:8074 */
- fra.me.REG[3] = ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[2]);
- REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___AModule, ID_parser___parser_nodes___AModule)) /*cast AModule*/;
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 8074);
- }
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- /* ./parser//parser_prod.nit:8076 */
- REGB0 = TAG_Bool(ATTR_parser___parser_nodes___Start____n_eof(fra.me.REG[2])!=NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- nit_abort("Uninitialized attribute %s", "_n_eof", LOCATE_parser___parser_prod, 8076);
- }
- fra.me.REG[2] = ATTR_parser___parser_nodes___Start____n_eof(fra.me.REG[2]);
- CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- stack_frame_head = fra.me.prev;
- return;
-}